历史上的今天
返回首页

历史上的今天

今天是:2025年04月02日(星期三)

正在发生

2021年04月02日 | 基于MSP430的变频伺服系统设计

2021-04-02 来源:eefocus

近年来,伺服系统的发展始终以稳定性、响应性与精度为发展主轴,这也是用户在使用过程中最为看重的几大因素。在机床伺服系统、机器人控制系统、雷达天线控制系统等场合大都由直流伺服电机和直流伺服控制器来完成控制。在这些控制领域中,主要以负载的位置或角度等为控制对象的伺服控制系统[1]。随着变频器技术的高速发展,在伺服系统中交流变频传动因其功率因数高、反应速度快、精度高、适合在恶劣环境中使用等优点得到了越来越广泛的应用。本文提出一种基于高性能单片机MSP430F149、变频器、变频电机组成的数字式变频伺服系统,并将数字PID算法引入到此系统中,使系统获得了良好的系统静、动态性能。


1变频伺服系统的功能


为达到变频伺服系统的运行可靠、良好的静态以及动态的性能要求,其功能如下:


1)精确的伺服控制功能


高精度、高速度、大功率是伺服系统的发展趋势,系统采用高速单片机作为核心控制器,对变频器进行控制,使伺服系统的控制达到更高的精度。


2)通信功能


单片机与上位机之间必须确保通信的正常与正确,单片机将接收到来自上位机的控制命令与采样到的反馈信号相比较得到偏移控制量,只有得到相应的偏移量,单片机才对变频器输出相应控制信号。


3)反馈量精确采集功能


反馈量采集的精确度直接关系到控制精度,系统采用变M/T方法对伺服电机进行转速采样,采样精度较M法、T法更加精确,从而确保了更加精确的控制。


2系统硬件设计


系统以单片机MSP430F149为核心控制器[2],集成变频器、变频电机、采样编码器以及PC上位机组成。其系统原理框图如图1所示。

图1系统框图


其控制过程为:单片机MSP430F149控制协调系统各功能模块工作;PC上位机通过串口UART0将控制信号传输给MSP430F149,单片机通过对反馈信号采样后进行处理,将处理后的数据与来自上位机的控制信号相互比较,得到误差量,再将误差量经过相应的运算得到伺服系统控制量;MSP430F149将得到控制量通过串口UART1直接转换成RS485信号输出至变频器,变频器根据接收到的控制信号产生变频变压的电源信号以驱动电机完成期望动作;同时上位机通过MSP430F149的串口UART0获取变频电机的速度、系统参数等形成打印报表,为操作人员良好人机操作界面。


2.1单片机单元


MSP430F149是变频交流伺服系统的核心控制器,完成系统控制信号与测量信号的传递及复杂的控制决策,协调各模块进行工作,操作控制指令的接收与识别。此单片机是一种超低功耗微控器,采用16位的体系结构,16位的CPU集成寄存器和常数发生器,实现了最大化的代码效率。包括2个内置16位的定时器、一个快速12位A/D转换器,两个通用串行同步异步通讯接口和48个I/O端口,片内包含60KFLASHROM和2KBRAM。本设计是实时控制系统,需对数据进行实时采集和传输。MSP430F149中60KFLASH存储器可满足系统程序对烧录存储空间的需要,内部数据RAM(2K)保证了数据实时采集、处理和传输,48个数字外设端口方便地实现了与外围器件的数据传输与控制,16位的体系结构保证了系统能够完成复杂的控制决策,而双串口UART则满足了控制器与上位机及变频器的实时通信需要。


2.2光电编码器及变M/T测速MSP430F149内部实现


伺服系统的精度控制主要取决于电机转速信号的测量精度,本系统采用增量式光电编码器作为电机转速为检测元件。比较常见的电编码器测速方法有M法、T法和M/T法。M法是在规定时间间隔内,测量光电编码器输出的脉冲数量来获得被测电机转速的速度值,适合高速测量场合。T法测量是测量相邻两个脉冲间隔时间来确定被测电机的转速速度的方法,此方法在高速场合测量时精确度性较差,因此一般只适用于低速测量的场合。M/T法是通过同时测量检测时间和在此检测时间内所发生的脉冲数来确定转速。在整个速度范围内有着较好的测速精度,但在低速时随着频率的降低,需要较长的测量时间,无法满足伺服系统的快速动态响应性能指标[2]。近年来变M/T测速方法逐渐被使用,是指在测速过程中,不仅检测光电编码器脉冲M1和高频时钟脉冲M2随电机转速不同而变化,而且检测时间Tg也在变化,它始终等于光电编码器M1个脉冲周期之和(测速原理如图2所示)。Tg的大小由高频时钟脉冲M2计取,则电机速度计可由以下公式确定[3]。


式中:M1为预置脉冲数;M2为高频时钟脉冲数;fc为高频时钟频率;λ为光电编码器倍频系数;P为光电编码器线数。


图2变M/T法测速原理


在电机低速运行时变M/T法的检测时间Tg明显比M/T法检测时间要短,由此可见用变M/T法转速测量能够满足控制系统对转速测量的精度及实时性的要求。


利用MSP430F149内部定时器A和B可以完成对电机转速的变M/T法的测量,可以简化外围电路的设计,减小了系统功耗。定时器A对外部光电编码器脉冲进行计数,定时器B对系统内部高频时钟进行计数;定时器A工作于16位计数方式,将测量值M1装入定时器A的寄存器内,在定时器A计数达到M1个脉冲时,定时器产生中断,程序读取定时器B的计数值M2,由于M1已知依据式(1)可快速而准确计算出电机转速。


2.3变频器


变频器是整个伺服系统的主要执行元件。其工作原理是:在主电路中采用交直交变换方式将220V、50Hz的交流电通过整流器变成平滑直流,然后通过半导体IGBT组成的三相逆变器,将直流电变成可变电压、可变频率的交流电。其变频控制方式主要有V/F控制、空间矢量控制(VC)及直接转矩控制(DTC)方式。V/F变频控制方式在低速时因定子电阻和逆变器死区效应以及变频器低压导致的转矩受定子电阻压降影响较大等原因而使系统性能下降、稳定性变差,从而只适用于转速变化范围小机械特性要求不高的场合。空间矢量控制(VC)方式由于在实际应用中转子磁链难以准确观测,系统特性受电动机参数的影响较大导致实际的控制效果难以达到理想水平。而直接转矩控制(DTC)则摒弃了矢量控制中复杂的解耦运算,直接在定子坐标系下分析交流电动机的数学模型来控制电动机的磁链和转矩,简化了主电路、提高了系统的可靠性,从而适用于转速和负载变化范围较大的场合[4-5]。


综上,本伺服系统采用台达VFD-V型高频变频器。其内含PID反馈控制及V/F、向量控制和转矩控制等多种控制方式(系统采用转矩控制方式),并且零速转矩可达150%以上,保证了系统具有良好的静态性能。


3系统软件设计


为方便系统维护与升级,系统软件设计采用模块化程序结构,主要有主程序、电机伺服中断服务程序、测速服务子程序等组成。


3.1主程序


主程序在完成系统初始化后,进入上位机通信查询及显示子程序循环,等待中断的发生,电机速度采集采用定时中断方式来实现。主程序流程图如图3a所示。


3.2电动机伺服中断程序


变频电机伺服中断程序由MSP430F149内部定时器A完成中断并且执行,电机控制中断程序流程图如图3b所示。

图3程序流程图


3.3数字PID调节器设计


在数字PID调节控制系统中,加入积分校正后,系统会产生过大超调,这是伺服系统所不允许的[6-7]。为减少超调对控制系统动态性能的影响,需要在电机伺服过程中的启动、停车或大幅度偏离给定时采用积分分离PID控制算法,只加比例、微分运算取消积分校正。而当被控制量接近给定值时,才使用积分校正以消除静态误差。为减少超调量,提高系统的稳态控制精度,使系统拥有较高的控制品质本伺服系统引进积分分离PID控制算法。具体算法实现如下:


(1)根据实际情况,设定阀值ε>0。


(2)当

时,采PD控制,避免系统过大超调,同时使系统有较快响应速度。


(3)当

时,采用PID控制,可保证伺服控制的精度。


控制算法公式:

4结束语


本文设计的交流变频伺服系统将新一代高速单片机MSP430F149与台达转矩控制变频器VFD-V型相结合,基于上位机通讯方式进行控制,提高了系统的可控性能及稳定性,以单片机代替了传统的PLC控制,并与上位机联动进行系统参数调节,实现了良好的人机人机交互平台,同时降低了系统的开发成本以及周期,并在实际应用中取得良好的控制精度及可靠性能,为伺服系统设计开发提供了更好的系统解决方案。


推荐阅读

史海拾趣

Dalian Dlicap Corporation公司的发展小趣事

面对激烈的市场竞争和行业变革,达利凯普积极推进数字化转型和产业升级。公司引入了先进的生产设备和管理系统,实现了生产过程的自动化和智能化。同时,公司还加大了对新材料、新工艺的研发力度,不断提升产品的性能和品质。这些举措使达利凯普在激烈的市场竞争中保持了领先地位,也为公司的持续发展奠定了坚实基础。

Axon' Cable公司的发展小趣事

为了进一步扩大市场份额和提升竞争力,Axon' Cable公司开始实施全球化战略。公司在全球范围内设立了多个生产基地和研发中心,积极开拓国际市场。同时,Axon' Cable还加强了与国际知名企业的合作,共同推动技术创新和产业升级。这些举措使得Axon' Cable的产品在全球范围内得到了广泛应用,公司的国际影响力也逐步提升。

港源(GANGYUAN)公司的发展小趣事

品质是Axon' Cable公司的生命线。公司始终坚持以客户需求为导向,不断提升产品品质和服务水平。Axon' Cable建立了完善的质量管理体系,并通过了多项国际认证。同时,公司还注重持续改进和创新,不断优化生产流程和提高生产效率。这些努力使得Axon' Cable的产品在品质上始终保持领先地位,赢得了客户的信任和好评。

这些故事虽然无法涵盖Axon' Cable公司发展的全部细节,但试图展现了其在电子行业中的成长轨迹和取得的成就。通过这些故事,我们可以看到Axon' Cable公司凭借其坚定的信念、不懈的努力和创新精神,在电子行业中不断发展壮大,成为了一家具有全球影响力的知名企业。

Collins Electronics Corp公司的发展小趣事

随着全球环保意识的提高,Collins Electronics Corp开始关注其生产活动对环境的影响。他们引入了环保材料和生产工艺,减少了废弃物和有害物质的排放。同时,公司还开展了一系列环保宣传活动,提高员工和客户的环保意识。这些举措不仅提升了公司的社会责任形象,也为其赢得了更多消费者的青睐。公司还研发了节能型电子产品,为推动行业的绿色发展做出了贡献。

Acutechnology公司的发展小趣事

随着技术的不断进步,Acutechnology公司不断对产品进行升级和优化。公司投入大量研发资源,推出了一系列高性能、高可靠性的电子产品,满足了市场的多样化需求。同时,公司积极拓展销售渠道,与国内外多家知名企业建立了长期合作关系,产品销量逐年攀升。

Anaren公司的发展小趣事

随着国内市场的逐渐饱和,Acutechnology公司开始将目光投向国际市场。公司制定了国际化发展战略,通过在海外设立分支机构、参加国际展会等方式拓展海外业务。同时,公司还积极引进国际先进技术和管理经验,提升企业的整体竞争力。这些举措为公司的长远发展注入了新的活力。

问答坊 | AI 解惑

Wince下如何使用CreateDIBSection第四个参数返回的指针

我在Wince下打开了一张图片并且成功截取了图片  保存截图 使用CreateDIBSection大概如下(我那个也差不多是这样子,因为程序我没有拿回来): hBitmap=CreateDIBSection(hDc,(BITMAPINFO *)lpImgData,DIB_RGB_COLORS,    &n ...…

查看全部问答>

Windows CE 支持 跨进程的com组件吗?

想在ce下做一个com server(exe),然后多个com client(exe)访问server服务,但是CoCreateInstance总取不上接口:( 看见Microsoft Windows CE 5.0 、Windows Mobile 6 SDK 上对CoCreateInstance的第三个参数DWORD dwClsContext,有如下描述: ...…

查看全部问答>

config.status: error: cannot find input file: config.h.in

[root@localhost ntop-3.2]# make cd . && /bin/sh ./missing --run echo cd  && /bin/sh /ntop-3.2/config.status config.h config.status: creating config.h config.status: error: cannot find input file: config.h.in make: * ...…

查看全部问答>

LED封装的取光效率

replyreload += \',\' + 757718;Timson,如果您要查看本帖隐藏内容请回复…

查看全部问答>

下载程序的问题

我在下载程序的时候碰到一个问题,前面下载程序可以,就是校验这一步就说ID号不一样,这样的问题是什么原因造成的多? 下载电路是自己设计制作的 [ 本帖最后由 wurongyan 于 2010-12-20 10:09 编辑 ]…

查看全部问答>

omap-l138 DDR驱动问题

 最近在搞omap-l138 DDR2驱动,DDR芯片是:FMD4A16LCx–30A,遇到问题卡住了。问题是这样的:  发现DDR在操作时,会刷新数据也会变。  测试伪代码:  for(i = 0; i <length;i++) {    p = ddr_addrbase ...…

查看全部问答>

为什么我的ADC12MEM0寄存器读出来最大值是255

为什么我的ADC12MEM0寄存器读出来最大值是255 #include   unsigned char i=0,qianwei=0,baiwei=0,shiwei=0,gewei=0; #include \"1602.c\" unsigned int a[32]; unsigned int sum=0; unsigned int temp=0; void main() {  &n ...…

查看全部问答>

【靠谱例程联盟】20131218 C风格字符串处理模块

20131218 C风格字符串处理模块        这是顺着之前那个 malloc/realloc 内存在函数之间传递 的 帖子的后续。        采用了重新封装一个结构体,虽然相较于 C++,必须自己调用 在地位上 类似于 Cpp类的 ...…

查看全部问答>

Helper2416-00——从单片机到ARM9

从单片机到ARM9 参与Helper2416开发板助学计划心得   在ARM9之前学习过51、MSP430、STM32,从8位到16位再到32位的单片机,每一次的跨越无疑都是一次挑战。其中最明显的就是使用单片机实现某一相同的功能需要配置的寄存器越来越多。 ...…

查看全部问答>