APP下载

一种新型多电机同步控制平台研制*

2016-11-09刘星桥徐迎辉

电机与控制应用 2016年9期
关键词:同步控制字节报文

刘星桥, 徐迎辉

(江苏大学 电气信息工程学院,江苏 镇江 212013)



一种新型多电机同步控制平台研制*

刘星桥,徐迎辉

(江苏大学 电气信息工程学院,江苏 镇江212013)

多电机同步控制广泛应用于工业生产中,同步控制的性能直接影响产品质量的好坏。设计了由MCU+DSP+CPLD组成的多电机同步控制平台。平台运用C语言编写了MCU与DSP部分的程序,采用VHDL硬件描述语言来书写CPLD部分的程序,从而实现了MCU对张力的高速采集,DSP对控制算法的高速运算及DSP对CPLD高速传输指令,CPLD对DSP、变频器及上位机串口的通信。平台采用基于RS- 485接口的USS协议实现与变频器的通信。对该平台进行了速度响应及张力稳定为一体的试验,试验证明其可以稳定控制3台电机,且控制性能优于PLC控制,具有良好的控制性能。

多电机同步控制; 控制平台; 微控制单元; 数字信号处理器; 复杂可编程逻辑控制器

0 引 言

多电机同步控制中多采用PLC进行控制,PLC多采用结构化程序设计,程序执行时调用功能块、组织块、系统功能块或功能调用功能(Function Call, FC)和功能调用系统(Function Call System, SFC)来完成,程序周期性执行,控制周期较长,一般约100ms,直接导致了控制性能的降低,因此缩短控制周期很有必要。近年来多电机同步控制平台的研究越来越热,平台设计有几种主流方式: 第一种是采用单微处理器(MCU或DSP),文献[1-3]中便采用了单DSP设计;第二种是采用多处理器,文献[4]就采用这种结构。由于FPGA可以替代复杂的逻辑电路,在简化系统结构、实现控制器小型化等方面发挥重要作用,因此,基于DSP+FPGA的控制平台技术是目前多电机驱动伺服领域的研究热点之一[5-12]。本文设计了一种采用MCU+DSP+CPLD实现对变频器的控制,同时根据USS协议格式通过RS- 485接口实现对变频器的通信。通信速率采用19200bit/s,可以实现3台电机的同时指令送达,喂送指令周期为10ms,相比于PLC 100ms的指令控制周期,快速性提高了10倍,从而能够实现控制性能要求高的高速控制,减小了因指令喂送过慢而产生的控制误差;同时该系统还具有成本低廉、灵活方便、可靠性高、应用范围广等特点。

1 系统的总体设计

试验需要的多电机系统的总体架构图如图1所示。由图1可知: 控制平台对3台变频器周期喂送指令,同时可以将速度张力参数传送至上位机,控制平台采用USS通信协议通过变频器自带的RS- 485接口实现通信,并通过串口观察数据。框架中交流电机为异步电机,3台电机之间通过皮带连接,交流电机由MicroMaster vector系列变频器驱动,试验系统中所测张力由皮带对浮动辊的压力产生,张力传感器1测量电机1、2之间的张力,张力传感器2测量电机2、3之间的张力,光电编码器连接在主电机轴上,测量主电机转速。

图1 控制系统结构

2 平台的结构和功能

设计的控制平台以DSP(TMS320F2812)和低成本CPLD(EPM1270T144C5)为核心,需要完成的功能包括:

(1) 主电机转速的测量;

(2) 控制算法的运算;

(3) 输出3路基于USS协议的通信报文;

(4) 采集2路张力信息;

(5) 可以通过上位机观察控制效果。

DSP适合完成算法运算,CPLD用于逻辑时序电路,具有高速与并行运行的优点。因此,DSP作为主控制单元要求实现功能(2),CPLD的工作量最大要求实现功能(1)、(3)和(5),功能(4)由MCU完成。MCU、CPLD和DSP之间的数据交换如下: MCU将采集到的张力值传送给CPLD,CPLD将包括主电机速度值、张力F12的值、张力F23的值传送给DSP,DSP将3台电机的控制字发送给CPLD。控制平台的内部结构如图2所示。图2中矩阵键盘用于设定参数及电机起停控制,串口转USB电路用于上位机USB接口通信。A、B、C分别对应3路变频器接口。

图2 控制平台内部结构图

3 DSP的功能设计

3.1系统试验算法

DSP的功能主要是控制算法的计算及对CPLD传送控制指令。平台试验采用优化后的一阶自抗扰控制器(Active Disturbance Rejection Controller, ADRC)控制算法。图3给出了结构优化后转速的一阶ADRC控制框图。

图3 优化后转速的一阶ADRC控制原理框图

优化后的转速控制器的完整算法为

(1)

式中:ωr1——主电机速度反馈量;

z1——反馈输出ωr1的跟踪信号;

z2——总和扰动w(t)的观测值;

u——控制量;

β01、β02——ADRC输出误差校正增益;

h——采样周期;

kp——反馈控制律比例系数;

b0——补偿因子,试验中通过整定kp、b0来调整系统的控制性能;

fal(e,α,δ)——选取的最优综合函数;

δ——滤波因子;

α——非线性因子。

图4 基于一阶ADRC的三电机同步控制策略

综合整个系统的完整控制算法为

(2)

(3)

(4)

ωr1、F12、F23——分别为主电机速度反馈量、1号电机和2号电机之间的张力反馈量、2号电机和3号电机之间的张力反馈量。

式(2)对应图4中的速度一阶ADRC控制器,式(3)对应图4中张力一阶ADRC控制器1,式(4)对应图4中张力一阶ADRC控制器2。

3.2DSP对CPLD的指令传输

DSP与CPLD之间的通信通道的设计采用DSP的GPIO口来模拟SPI总线时序。该接口用于DSP将计算得到的3台电机各自的控制命令字传送给CPLD,数据位数定义为64位。

3.3DSP总程序流程图

DSP部分的程序运行流程图如图5所示。上电后首先等待一组反馈数据接收完毕,其中包括速度、张力信息,反馈数据接收完成后,开始计算主电机ADRC控制器下的转速控制字,接着在张力ADRC控制器下根据张力的情况,计算得到第2、第3台电机的控制字,最后通过SPI接口送数据给CPLD,之后等待下组反馈数据来临,进入下一计算周期。

4 CPLD的功能设计

在从控制器CPLD的设计中,采用自顶至下的设计方法。将CPLD需要完成的功能划分为若

图5 DSP总程序流程图

干个功能独立的功能模块,各个模块可以单独进行测试、验证,然后在顶层实体中直接调用。根据实际的功能需要划分了如图6所示的从Module1-11的功能模块。其中主要功能模块为Module1、Module5、Module7、Module4、Module6、Module9-11。CPLD主要设计流程如下:

图6 CPLD内部电路框架图

(1) 采用VHDL完成设计输入;

(2) 综合和逻辑优化;

(3) 布局、布线;

(4) 功能仿真和时序仿真;

(5) 布局优化;

(6) 配置到EMP1270T144C5中,硬件调试。

4.1CPLD接收DSP控制指令设计(Module7)

CPLD中该模块用于接收DSP控制运算结果中变频器的命令字。由于DSP发送的控制指令通过SPI接口传递,要求CPLD能够识别DSP对应接口上的时序信号,在Dsp_spi_rst线上出现高电平时,CPLD从有限状态机回到初始状态,开始在Dsp_spi_clk的上升沿读取数据,每读取1次状态转移1次,共64个状态分别读取了64个数据(低48位为控制字)。该功能模块定位于图6中的Module7。

4.2CPLD反馈给DSP数据的通道(Module6)

控制平台的速度、张力参数的反馈通过DSP与CPLD之间的8位并口数据线来完成,2个参数数据获取都是通过CPLD来完成的。CPLD每10ms将速度、张力参数整合成6个字节的数据,其中速度占2个字节,两张力各占2个字节,分6次通过CPLD与DSP之间的8位并口数据通道传输给DSP,每送一个字节CPLD指定的引脚由interrupt信号线产生一个下降沿触发DSP中断,在中断中DSP读取CPLD送来的数据,分6次中断完成一组反馈数据的接收。该功能模块定位于图6中的Module6。

4.3CPLD与变频器之间的通信(Module9-11)

USS是西门子公司为变频器开发的通信协议。其协议的通信字符格式为一位起始位、一位停止位、一位偶校验位和八位数据位。数据报文最大长度为256个字节,包括3字节的头部、一字节的校验码和主数据块,数据块按照字的方式组织,高字节在前。通信数据格式如表1所示。

表1 USS通信数据格式

其中: STX——起始字符,为02Hex;

LGE——报文长度;

ADR——从站地址码;

BCC——校验字符,为从STX开始所有字节的异或和。

USS报文长度分长报文和短报文,短报文LGE=6,长报文=12(十进制)。在此选择短报文即LGE=0x06H,故PKE、IND、和VAL将不出现在报文中。STW表示控制字用于变频器的起停控制,ZSW(状态位)表征变频器运行的当前状态。因此,平台中采用的短报文格式如表2所示。

表2 短报文格式

为缩短DSP的控制指令长度,报文中只有HSW由DSP传输给CPLD,其他内容由CPLD中特定的功能模块自动填充。STW受外部按键控制,当矩阵键盘中的起动键(自设定为任意键)按下时,电机开始转动,按下停止键电机停转。这就使得在调试时出现意外能快速停转电机。

4.4MCU与CPLD的通信(Module5)

从A/D转换器读取的是12位的张力数据,MCU将采集到的张力数据整合为16位,系统中张力参数有2个,分别为F12、F23,MCU将两张力数据整合为32位长度的数据以SPI时序发送出去,经过电平转换芯片SN74LVC8T245将电平转换为3.3V之后传送给CPLD,CPLD内部对应有SPI时序的接收电路,用以接收张力参数数据。CPLD内部综合生成的接收电路如图6中Module5所示。

4.5主电机速度的采集(Module2)

主电机速度参数通过光电编码器采集,型号为YP-H2,试验中光电编码器输出的方波个数通过CPLD每10ms对光电编码器输出的方波个数计数,获取滞后小于10ms的速度信息。其功能模块位于CPLD中的Module2。由于电机运行对电源的干扰,使得光电编码器输出波形带有波纹或毛刺,在输入前要对编码器输出信号波形整形,由Module1完成整形,整形后的波形输出给计数模块Module2。

4.6上位机串口电路(Module4)

图6中的Module4电路用于上位机监测试验中参数的接口。其能够以19200bit/s的速率通过串口转USB接口模块向PC机发送实时采集到的速度和张力信息,以便于试验观测与分析。

5 MCU的功能设计

MCU的功能主要是进行高速张力数据采集,张力传感器输出为模拟信号,数模转换采用的数模转换器型号为TL2543。该芯片转换速度快、精度高,转换通道多达12个。张力模拟信号要经过高频滤波后传入A/D转换器。TL2543支持SPI时序的数据访问与读取,故MCU对其进行操作采用的是SPI接口时序。MCU的工作流程图如图7所示。

图7 MCU程序流程图

6 上位机界面设计

上位机界面使用VB程序设计,用以方便程序调试,实时观察试验数据,能够将实时接收的速度、张力以曲线的形式绘制在计算机界面中,可以实时观察数据的细节变化。这与平台中LCD屏的功能一致,但LCD无法观察到细节数据及存储数据。

7 仿真结果及分析

CPLD总程序仿真图如图8所示。仿真中code_in 信号为光电编码器输入信号,周期为100μs,MCU的SPI接口传输数据即张力的数据分别为0x0000h和0xffffh,data_out[7..0]表示为反馈给DSP的8位并行数据输出线,依次输出速度信息、F12的A/D转换值及F23的A/D转换值。从data_out[7..0]中可以看出仿真正确,速度及张力信息分别为0x01h、0x00h、0x00h、0x00h、0xffh、0xffh,前2个字节是速度信息(10ms内计数得到100个脉冲),其中速度数据占一个字长,从高位到低位每4位表示一个十进制数,依次表示千、百、十、个位。中间2个字节为张力F12的信息,最后2个字节为F23的值,结合code_in信号分析CPLD反馈DSP数据的仿真结果正确。仿真中模拟DSP的频率字(STW)指令为0x0000h、0xffffh、0x0000h及0xffffh,分别对应电机1、2、3及4(保留),从Tx_485_1、Tx_485_2、Tx_485_3发送出去,对比USS协议格式在仿真图中观察输出结果,发现对应位置的字符信息与模拟STW一致,因此仿真结果正确。图8中MCU_spi_datai,MCU_spi_rst,MCU_spi_clk为MCU的SPI接口线,DSP_spi_datai,DSP_spi_rst,DSP_spi_clk为DSP的SPI接口线。

图8 CPLD总程序仿真图

8 试验结果

为了测试控制平台的控制效果,采用基于PLC S7-300的Profibus总线控制的张力稳定试验与该平台基于USS协议控制的张力稳定试验进行对比。基于PLC的控制周期为100ms,后者则为10ms。试验中主电机转速初始速度都设定在200r/min,张力设定值分别为F12=150N、F23=100N。图9与图10为由试验数据生成的曲线图,纵坐标右侧表示转速,左侧为张力值,横坐标为时间。从图9、图10中可以看到主电机的速度阶跃响应: 图9中主电机速度进入稳态需要 1.5s,对应地,图10中只需要0.6s,在速度响应上该控制平台比PLC快了2.5倍。在40s的时刻将主电机速度设定突变为300r/min,用来检验转速与张力解耦效果,对比图9、图10可以看出PLC控制下的张力曲线此时出现了较大的波动,而平台控制下的张力曲线未发生明显波动,说明后者能够更快地将张力稳定下来。同时不难看出无论是速度还是张力在该平台控制下稳态误差更小、性能更优,因此该平台有更好的控制效果。

图9 PLC张力稳定试验结果

图10 控制平台张力稳定试验结果

9 结 语

设计了一种基于MCU、DSP和CPLD的多电机控制平台。试验结果表明,该平台不仅能够在控制算法下实现3台电机的同步平稳运行及皮带张力的稳定,而且能够较传统的PLC控制有更好的控制效果。该方案结构简单、成本低、易于开发,在高速控制中也具有良好的前景。

[1]朱伟兴,张建.采用DSP的多电机同步控制系统[J].电机与控制应用,2012,39(2): 31-35.

[2]杨士河,刘景林,张金萍,等.基于DSP的多电机协同控制系统设计[J].测控技术,2010,29(6): 45- 47.

[3]葛研军,赵杨,杨均悦.基于双DSP的多电机协同控制系统[J].电机与控制应用,2012,39(2): 21-24.

[4]于凯平,郭宏,吴海洋.采用DSP和FPGA多电机速度伺服驱动控制平台[J].电机与控制学报,2011,15(9): 39- 43.

[5]聂宜云,孟凡军,颜肖平.基于DSP_FPGA架构的嵌入式运动控制平台设计[J].测控技术,2015,34(5): 69-71.[6]於新华.基于DSP+FPGA的多电机同步控制系统研究[D].北京: 北京印刷学院,2011.

[7]贺星,单鹏.基于DSP_FPGA的电机伺服控制[J].航空计算技术,2012,42(5): 120-123.

[8]吴磊.基于双DSP和FPGA的无刷直流电机伺服控制系统的设计[D].成都: 电子科技大学,2010.

[9]丁金林,张浩,刘国海.基于USS协议的变频器计算机通信设计[J].自动化与仪表,2004,19(4): 61- 64.

[10]李建勇,王勤,戴先中,等.多电机同步系统的解耦控制[J].控制工程,2003,10(2): 169-172.

[11]韩京清.从PID技术到“自抗扰控制”技术[J].控制工程,2002,3(4): 13-18.

[12]李慧,刘星桥,李景,等.多电机同步协调系统控制策略[J].电机与控制应用,2014,41(3): 6-11.

Development of a Novel Multi-Motor Synchronous Control Platform*

LIUXingqiao,XUYinghui

(School of Electrical and Information Engineering, Jiangsu University, Zhenjiang 212013, China)

Multi-motor synchronous control is widely used in industrial production.The performance of synchronous control directly affects the quality of the product.A multi-motor synchronization control platform composed of MCU、DSP and CPLD was designed. MCU and DSP was programed by using C language in the platform and the part in CPLD was programed by using VHDL language.In the platform,MCU was responsible for the high speed acquisition of tension and DSP was responsible for the high speed operation of the control algorithm, transmiting instructions to the CPLD.The function of CPLD was communicating with DSP and inverter as well upper computer.The platform communicates with inverter by using USS protocol format through the RS- 485 interface.A velocity response experiment combined with tension stability has been carried out by using the platform.The experimental results showed that the platform could stably control 3 motors and was better comparing with PLC in control performance.

multi-motor synchronous control; control platform; microcontroller unit(MCU); digital signal processing(DSP); complex programmable logic device(CPLD)

国家自然科学基金资助项目(60874014);江苏高校优势学科建设工程资助项目(PAPD,NO.6-2011)

刘星桥(1960—),男,博士,教授,博士生导师,研究方向为多电机和其他复杂系统控制理论及应用。

徐迎辉(1989—),男,硕士研究生,研究方向为多电机控制算法。

TM 301.2

A

1673-6540(2016)09- 0008- 06

2016-03-10

猜你喜欢

同步控制字节报文
基于J1939 协议多包报文的时序研究及应用
No.8 字节跳动将推出独立出口电商APP
CTCS-2级报文数据管理需求分析和实现
浅析反驳类报文要点
No.10 “字节跳动手机”要来了?
简谈MC7字节码
基于EtherCAT网络的金刚线多线切割机双主轴同步控制
ATS与列车通信报文分析
基于云模型的舵机同步控制
基于广义预测的双转动扫描系统同步控制