基于TMS320F28377D的微型舵机控制系统设计

2019-07-06 11:43:36唐瑞敏王洪生陈子玮
航天制造技术 2019年3期
关键词:共享内存流程图舵机

唐瑞敏 王洪生 杨 茜 刘 佳 陈子玮



基于TMS320F28377D的微型舵机控制系统设计

唐瑞敏 王洪生 杨 茜 刘 佳 陈子玮

(湖北三江航天红峰控制有限公司,孝感 432000)

利用TMS320F28377D双核CPU,实现了飞控和舵控集中在一个CPU,通过CPU1核与CPU2核之间内部信息共享区(IPC)实现信息交互,解决传统飞控计算机与舵控计算机需要通过外接通信接口实现通信的问题。舵系统采用片内AD采样设计,大大减少电源模块,其次实现了片内AD低电压状态下,舵反馈仍旧保持较高采样精度。最后通过仿真和实验论证该设计可靠性高,具有较强抗干扰性,工程价值较高,并能够实现舵系统微型化。

微型舵机;控制系统;双核;IPC;片内AD

1 引言

传统基于有刷直流电机的舵系统控制芯片一般采用TI公司C2000系列运动控制芯片,以TMS320F2812、TMS320F28335居多,通过片外AD采样芯片采集舵反馈信息,然后通过数据端口传递给CPU,CPU按一定的控制规律解算出伺服系统控制信号控制驱动芯片,最后达到控制电机的目的[1]。传统舵机控制系统为了达到高精度位置反馈信息,基本采用片外16位精度采样芯片,以AD7606采样芯片为例,需要额外提供±10V正常工作电压。传统DSP内部结果寄存器均为12位精度AD,当角度传感器供电电压过低时出现电压较小波动时,会出现较大跳数现象,因此传统角度传感器一般采用±10V、±12V、±15V供电[2],精度提高同时也会增加电源模块数量,直接增加硬件成本及布局空间,无法实现舵系统小型化,本文设计舵机角度传感器采用+3.3V供电,无需额外电源芯片供电。

2 微型舵系统基本工作原理

2.1 舵系统基本工作原理

微型舵系统工作原理框图见图1,其工作原理是产品工作时弹上一体化控制组件舵控制单元接收舵机控制信号,并将控制信号、舵机反馈信号按照一定的控制规律生成PWM方波信号,经驱动器功率放大后驱动电机转动,电机带动由谐波减速器构成的减速机构带动输出轴偏转,实现角度和力矩输出。舵系统采用位置传感器敏感舵轴位置并转换为电压信号反馈至控制器,实现舵机位置闭环[3]。

图1 伺服机构工作原理框图

2.2 TMS320F28377D基本工作原理

飞控程序通过CPU1核实现舵控指令计算,通过CPU1核与CPU2核之间的共享存储区(IPC)实现信息交互,CPU2核为舵控程序,CPU2核通过寻址方式读取CPU1核存储在共享区相应地址的数据,通过片内AD实时读取舵反馈信息,按一定控制算法结算四个舵机控制量。TMS320F28377D内部工作原理如图2所示。

图2 TMS320F28377D工作原理示意图

3 硬件实现

整个舵系统电路分为控制电路和驱动电路,由于控制电路与飞控电路集成,功率放大器只承担驱动电机作用,通过接收控制信号,驱动电机按指令转动。硬件电路采用DSP发出控制信号,经过SN74LVC4245A实现+3.3V转+5V,最后控制驱动芯片,实现控制四路舵机。

3.1 电源管理电路设计

通过图3所示电路,实现28V转+5V,最大输出电流达3A,其中输出电压电阻可通过调节1、2匹配输出,计算如式(1)、式(2)所示。如图4为5V转3.3V电路,通过式(3)~式(5)调节1、2进行匹配输出3.3V。+3.3V不仅提供DSP正常供电,也提供角度传感器电源电压,因此3.3V电压是否稳定决定角度传感器输出精度。

图3 28V转5V电路

(2)

3.2 信号转换电路设计

信号转换电路实现控制PWM信号到4路舵机电机驱动模块输入信号电平变换,增加PWM信号的驱动能力。其转换电路原理图如图5所示。

图5 信号转换电路

3.3 驱动电路设计

电机驱动电路采用H桥驱动设计方式,如图6示,选用L6206驱动芯片实现,该芯片最大工作电压52V,额定输出电流达到2.8A。通过控制芯片使能端ENA、ENB信号,达到控制驱动芯片输出通断。该电路具有体积小、输出功率大、效率高、响应速度快等特点。

图6 驱动电路

4 软件实现

控制软件固化嵌入于DSP内,是电动伺服系统的核心部分。控制软件结合硬件实现DSP控制器的数据通信功能,实现电动伺服系统的闭环控制功能等。其控制回路算法设计见图7所示。

图7 控制回路算法设计

4.1 CPU1核工作流程

CPU1核完成在上述两个内存地址中分别提取舵控指令和舵反馈信息。

CPU1核通过CAN总线接收到的舵控指令,并将接收到的舵控指令放入IPC共享内存区舵控内存地址中。for(i=0;i<4;i++)

{

DcdyRegs.dcdy_data.rudder_ctrl_data.DK[i]=(int)(sRXCANMessage.pucMsgData[i*2]+sRXCANMessage.pucMsgData[i*2+1]*256);//CAN总线接收到的舵控指令

DcdyRegs.dcdy_data.rudder_ctrl_data.DK[i]=DcdyRegs.dcdy_data.rudder_ctrl_data.DK[i]*MAXVOLT/TRANS;

DcdyRegs.dcdy_ipc_com.com_dk_Pt[i]=DcdyRegs.dcdy_data.rudder_ctrl_data.DK[i];//将接收到的舵控指令放入IPC共享内存区舵控内存地址中

}

CPU1核从IPC共享内存区提取舵反馈信息,并通过CAN总线发送给上位机。

for(i=0;i<4;i++)

{

DcdyRegs.dcdy_data.rudder_ctrl_data.DF[i]=DcdyRegs.dcdy_ipc_com.com_fk_Pt[i];//从IPC共享内存区提取舵反馈信息

DcdyRegs.dcdy_data.rudder_ctrl_data.DFK[i]=(int16)(DcdyRegs.dcdy_data.rudder_ctrl_data.DF[i]*TRANS/MAXVOLT);

sTXCANMessage.pucMsgData[i*2]=(unsignedint)DcdyRegs.dcdy_data.rudder_ctrl_data.DFK[i]&0xff;

sTXCANMessage.pucMsgData[i*2+1]=(unsignedint)DcdyRegs.dcdy_data.rudder_ctrl_data.DFK[i]/256;

}

CANMessageSet(CANA_BASE,25,&sTXCANMessage, MSG_OBJ_TYPE_TX);//通过CAN总线发送给上位机

CPU1核具体实现流程图见图8所示。CPU1核除了完成系统初始化外,还完成了对PWM、ADC、GSmemory及LED灯控制权的配置,实现了对外CAN通讯过程。

图8 CPU1核软件工作流程图

4.2 CPU2核工作流程

CPU2核定义的上述两个内存地址,一个用于读CPU1的舵控,一个用于写舵反馈给CPU1。CPU2核主要完成了从IPC共享内存区读取舵控指令,并往IPC共享内存区写舵反馈信息,完成了舵控制循环,及时往IPC共享内存区更新舵反馈信息。

DcdyRegs2.dcdy_data.rudder_ctrl_data.DK[i]=DcdyRegs2.dcdy_ipc_com.com_dk_Pt[i];//从IPC共享内存区读取舵控指令

for(i=0;i<4;i++)

{

DcdyRegs2.dcdy_ipc_com.com_fk_Pt[i]=DcdyRegs2.dcdy_data.rudder_ctrl_data.DF[i];//及时往IPC共享内存区更新舵反馈信息

}

CPU2核具体实现流程图如图9所示。其中控制循环流程图如图10所示。

图9 CPU2核软件工作流程图

图10 控制循环软件工作流程图

CPU1核和CPU2核之间通过共享交互区IPC实现数据在两核之间的传递,其实现过程参见图11所示。

图11 CPU1核和CPU2核数据交互原理图

5 舵系统仿真与实验对比

建立系统的数学模型如图12所示,模型由位置环、位置经滤波、微分后的速度环组成。

图12 系统仿真模型

5.1 时域特性

图13 时域特性仿真结果

图14 时域特性实测结果

给系统2°阶跃信号时,舵机的阶跃响应曲线如图13所示,可以看出系统在2°范围内的超调量小于5%,图14为测试软件实测舵机响应2°阶跃时,采集舵反馈绘制图形,从图中得到舵机调整时间为36ms,超调量为0%,半振荡次数为0,具有较快动态响应能力。

5.2 频率特性

额定3Nm弹性负载条件下,2°10Hz正弦波信号响应曲线见图15。幅频值约为-1.3dB,相频值约为-60°,具有较快动态响应能力。图16为频带特性实测结果,幅频值为-1.145dB,相频值为-64.761°,对比图16仿真结果,性能指标基本一致,舵机能够满足输出幅值衰减3dB或相移大于90°时,频带不小于12Hz。

图15 频带特性仿真结果

图16 频带特性实测结果

5.3 波形跟踪

通过测试软件给定35°,0.1Hz正弦波,通过测试软件绘制波形如图17所示,从图中看出整个指令周期内,舵机能够平稳跟随指令信号,小信号干扰较少,舵反馈波形较为干净。

图17 波形跟踪舵反馈图

6 结束语

基于TMS320F28377D的微型舵系统控制系统通过仿真结果与实验仿真证实具有可行性,该设计不仅能够大大减少硬件电路,也提高系统可靠性,舵系统能够实现微型化。以上分析仿真结果与实测结果基本吻合,但也存在差异。总体来说,仿真结果整体优于物理样机实测结果。分析引起差异原因及解决办法主要如下:

a. 仿真模型为理想模型,传递运动时不存在传动间隙,实测物理样机中由于加工工艺限制,无法消除间隙,只能尽量减小。理想仿真模型传递运动时不存在摩擦。物理样机中,各个运动副之间传递运动时均存在动摩擦力。造成系统上升时间的滞后。

b. 理想仿真模型中AD采样不会出现供电不稳或者干扰造成跳数现象,实测物理样机由于布板工艺,电磁兼容考虑不全,会造成AD采样出现较小跳数,引起小信号干扰。布线时考虑对电源线、地线与信号线分开,强、弱信号线分开,数字信号与模拟信号分开,电缆信号线双绞,减少对信号干扰[4,5]。

c. 理想仿真模型通过理论计算可整定控制参数,实测物理样机控制参数与理论计算结果存在差异,只能通过不断尝试调节出最优控制参数。

1 秦文甫. 基于DSP 的数字化舵机系统设计与实现[D]. 北京:清华大学,2004

2 齐欢,王小平. 系统建模与仿真[M]. 北京:清华大学出版社,2006

3 夏长亮. 无刷直流电机控制系统[M]. 北京:科学出版社,2009

4 宋科璞. 基于DSP的数字式伺服控制系统[D]. 西安:西北工业大学

5 庄凯,廖勇. 基于DSP的永磁无刷直流电机控制系统设计[J]. 微电机,2007,40(2):55~57

Design of Micro Steering Gear Control System Based on TMS320F28377D

Tang Ruimin Wang Hongsheng Yang Xi Liu Jia Chen Ziwei

(Hubei Sanjiang Aerospace Hongfeng Control Co., Ltd., Xiaogan 432000)

By using the TMS320F28377D dual-core CPU, this thesis puts flight control and rudder control together in a CPU, and gets information interaction through internal information sharing area (IPC) between CPU1 core and CPU2 core. It solves the communication problem of traditional flight control computer and rudder control computer which was depended on the external interface in tradition. First of all, the steering gear adopts AD sampling design in the chip, which greatly reduces the power supply module. Secondly, the steering gear feedback keeps high sampling accuracy even the AD on the chip is under low voltage. Finally, it is proved that the design of the steering gear has characters of high reliability, strong anti-interference, high engineering value and miniaturization through simulation and experiment.

micro steering gear;control system;dual-core;IPC;AD on chip

唐瑞敏(1988),工程师,控制工程专业;研究方向:伺服电气设计。

2019-04-12

猜你喜欢
共享内存流程图舵机
通过QT实现进程间的通信
含齿隙弹载舵机的全局反步模糊自适应控制
自动化学报(2019年6期)2019-07-23 01:18:36
基于dsPIC单片机的飞艇舵机控制实现
电子制作(2018年1期)2018-04-04 01:48:14
基于PCI总线的多处理器协同机制研究
科技风(2017年20期)2017-07-10 18:56:06
基于高速同步485总线通信的多通道舵机控制器设计
专利申请审批流程图
河南科技(2016年8期)2016-09-03 08:08:22
专利申请审批流程图
河南科技(2016年6期)2016-08-13 08:18:29
基于云模型的舵机同步控制
宁海县村级权力清单36条
QNX下PEX8311多路实时数据采集的驱动设计
电子世界(2014年21期)2014-04-29 06:41:36