基于高速同步485总线通信的多通道伺服控制器设计
2017-03-27白玉新张天琪秦二卫
王 恒,白玉新,张天琪,张 达,秦二卫
(北京精密机电控制设备研究所,北京 100076)
基于高速同步485总线通信的多通道伺服控制器设计
王 恒,白玉新,张天琪,张 达,秦二卫
(北京精密机电控制设备研究所,北京 100076)
文章介绍了一种四通道数字伺服控制器的系统设计和实现方案;针对研制任务中高通信波特率和多路控制的要求,设计了以XC164为主控制芯片,基于JS71175型485协议处理器的高速同步485总线通信的多通道伺服控制器,该控制器在提高了同步485通信速率的同时可以实现四路伺服机构的控制、伺服机构动作的锁定及解除锁定,具有体积小、功率大、集成度高特点;实验结果表明,在保证通信稳定的前提下,通信波特率可达2 Mbit/s ,总功率可达1 600 W,满足任务要求。
485协议处理器;高速;同步485总线;多通道;控制器
0 引言
伺服机构作为伺服控制系统中的不可缺少的关键部分,是伺服控制系统的执行机构,伺服机构的性能直接影响伺服控制系统的机动性能和精度。一般根据动力源的不同,常用的伺服控制系统可分为气动、液动和电动3种,与气动和液动相比,电动具有能源需求单一,结构简单,制造及维修方便,且易于实现多余度控制,可靠性高[1-2]等特点,因而在军用和其他先进民用的产品中得到越来越广泛的应用[3-4]。传统的模拟控制器虽然发展的比较成熟了,但模拟控制器一旦设计完成,参数调整比较困难,互换匹配性比较差,因此其固有的缺点限制了模拟控制器的广泛使用[5]。近年来,随着高性能电机控制芯片的出现,为设计小体积、低功耗、高可靠性、高性能的数字控制器提供了方便,数字控制器以其灵活、可靠、运算能力强逐渐成为电机控制的主流技术。传统的485总线通信基本上是异步通信,同时以高的波特率通信时,传输距离较短,传输误码率比较高,大大降低了通信的可靠性。为了实现稳定可靠的高速同步485总线通信,同时实现4路伺服机构的控制,设计了基于JS71175的高速同步485总线通信的多通道伺服控制器。
1 系统构成与工作原理
1.1 系统构成
如图1所示,该系统主要由电源模块、主控单元、驱动单元、隔离保护单元、通信单元、AD采集单元、4路伺服机构及伺服控制计算机组成。伺服控制计算机为电源模块提供一级28 V电源,同时与伺服控制器间进行485通信,进行指令发送和反馈接收,伺服控制器根据伺服计算机发送的控制指令进行数据解析,从而控制各路伺服机构动作;电源模块作为伺服控制器的电源来源,为主控单元、驱动单元、通信单元、AD采集单元和伺服机构反馈提供所需电源;通信单元实现伺服控制计算机与伺服控制器主控单元间的高速同步485通信,伺服计算机每间隔一定时间通过485总线向伺服控制器发送控制指令,伺服控制器根据接收的控制指令控制伺服机构动作的同时,在很小的时间间隔内向伺服控制计算机和伺服遥测系统反馈当前伺服控制器的参数,为伺服控制计算机发送下一次控制指令提供数据依据;主控单元用于接收伺服控制计算机指令和AD采集伺服机构位移反馈进行闭环运算,产生PWM和伺服机构方向信号,同时向伺服控制计算机及伺服机构遥测系统反馈数据;驱动单元根据主控单元的发出的PWM信号和伺服机构方向信号驱动4路伺服机构,实现伺服机构的快速动作;AD采集单元采集4路伺服机构的位移反馈,确定当前伺服机构所处的位置,为主控单元进行位置闭环提供数据。
1.2 系统工作原理
伺服控制计算机为伺服控制器提供28 V电源,同时提供遥测及隔离5 V电源。电源模块将28 V电源转换为控制器需要的5 V、2.5 V、±10 V和15 V电源,满足伺服控制器工作所需的电源,其中伺服控制器的主控制芯片需2.5 V和5 V两种电源;AD采集、485 V通信处理芯片和隔离保护需5 V电源;电机驱动需5 V、15 V和28 V电源,28 V电源作为伺服机构动作的功率电;±10 V为4路伺服机构中位移传感器的工作电源。JS71175型485协议处理芯片接收伺服控制计算机发来的指令数据,此时XC164控制芯片将JS71175型485协议处理芯片接收的数据通过总线读取,进行解析判读,根据协议进行自检、解锁或者数据采集,同时将指令执行情况反馈给JS71175型485协议处理芯片,启动发送,此时JS71175型485协议处理芯片将反馈的指令执行信息发送给伺服控制计算机,XC164控制芯片在将指令信息反馈给伺服控制计算机的同时,根据协议及时间要求也将指令执行情况通过JS71175型485协议处理芯片反馈给伺服遥测系统,实现遥测。
当伺服控制器接到解锁信号时,发出一定占空比的PWM信号解除对伺服机构位置的锁定,此时伺服机构才可以按照伺服控制器指令动作,否则伺服机构被锁死,无法动作,伺服机构在动作之前必须进行解锁的主要目为防止伺服机构误动作,损坏其它机构,伺服机构在接到解锁信号之前,其动作部件回缩在伺服机构内部,无法动作,必须进行解锁后才能恢复到可动作位置;当伺服控制器通过JS71175型485协议处理芯片接收到伺服控制计算机的数据采集命令时,伺服控制器根据伺服控制计算机发来的位置指令及AD采集芯片采集的伺服机构实际位置信息进行位置闭环运算,产生不同占空比的PWM及电机方向信号,无刷直流电机驱动单元根据伺服控制器主芯片发出的PWM和方向信号驱动伺服机构中电机转动,从而实现对伺服机构位置的精确控制,在控制伺服机构动作的同时,完整接收到伺服控制计算机发送指令信息后必须在200 μs内开始将数据反馈给伺服控制计算机,并且在500 μs之内将数据反馈完毕,否则伺服计算机将按照伺服控制器无法响应处理;当伺服控制器接收到伺服计算机发来的自检指令后,伺服控制器检测供电电压、伺服机构位置信息、通信状态信息等参数,并判断各参数是否正常,按照协议向伺服控制计算机反馈自检信息。
图2 系统工作原理图
2 系统软硬件设计及算法描述
2.1 系统硬件设计
2.1.1 主控芯片
主控芯片选用英飞凌公司XC166系列的16位微控制器XC164CS-16F,具有128KB程序Flash,6KB片上RAM,14路模拟输入通道,6个串行接口(2xASC,2xSSC,2xCAN)。
英飞凌的16位微控制器系列是用来满足实时嵌入式控制应用的高性能需求,具有以下特性:五级流线型高性能16位CPU和MAC单元;高效的控制指令集;高效的功率管理;集成的片上存储器(2KB双口RAM,2KB高速数据SRAM,2KB的高速程序/数据SRAM,128KB的片上程序存储器);外部总线接口(12MB的外部寻址空间,8位或16位数据总线);16级优先级的中断系统;8通道的外围时间控制器;智能片上外设子系统(14通道模数转换,两个捕获/比较单元,捕获比较单元灵活产生PWM信号,两个多功能通用定时器单元,两个异步/同步串行通道),79个具有独立位寻址功能的IO引脚等[6]。
2.1.2 485协议处理器
485协议处理器选用我国自行研发的JS71175型协议处理器,该处理器实现双总线上485协议数据同步串行通信,内嵌4Kx8Bit双口SRAM,电路工作电压为+5 V,兼容+5 V/+3.3 V,主时钟工作频率为40 MHz,工作温度为-55~125℃。
JS71175型485协议处理器内含两个相互独立的半双工发送/接收器,经过编程可独立进行同步串行通讯,并以DMA方式与内部RAM进行数据交换。电路CPU接口和双口RAM外端接口复用,支持SDLC同步通讯协议,有普通接收、地址识别、广播监听等模式,接收和发送数据具有CRC校验,电路还具有波特率选择、中断屏蔽等功能,功能框图如图3所示[7]。
图3 JS71175功能框图
在使用中,JS71175的12位地址总线和8位数据总线分别与主控芯片XC164的地址及数据总线相连。
2.1.3 隔离保护
伺服控制器主控制芯片XC164控制芯片根据伺服控制计算机指令以及伺服机构的位移反馈信号实时计算PWM的占空比和方向信号,并将该信号实时发送给电机驱动,从而控制伺服机构的运动。由于电机驱动功率较大,为了避免伺服机构动作干扰伺服控制器,在XC164控制芯片和电机驱动间加入隔离单元。
在XC164芯片输出给电机驱动的PWM和方向信号上加入光耦进行隔离,避免因伺服机构动作干扰控制系统。
同时为了避免伺服控制计算机与伺服控制器间产生相互干扰,在伺服控制器与伺服控制计算机间增加数字隔离,选用SILICON LABS公司的SI8462芯片,该芯片具备体积小、功耗低、通信波特率高达150 Mbps,同时隔离电压高达2.5 kV。
2.1.4 主控芯片与485协议处理器间通信
本伺服控制器选用16位XC164芯片作为主控芯片和8位的JS71175作为485协议处理器,两者之间采用地址和数据总线进行通信。但由于两者位宽不同,因此如果直接将数据和地址总线相连,必然导致通信出错。
为了确保主控芯片与485协议处理芯片间总线通信正常,将485协议处理芯片的8位数据总线与主控芯片的数据总线连接,即将485协议处理芯片的数据总线D0-D7分别与主控芯片的D0-D7总线直接相连;但由于两芯片位数不同,地址总线不能直接一一相连,采用错位相连技术,可避免因位数不同导致的通信错误,即将将485协议处理芯片的12位地址总线A0-A11分别与主控芯片的A1-A12相连,即可实现主控芯片与485协议处理芯片间正常总线通信。
2.2 系统软件设计
伺服控制器的控制程序主要功能是通过高速同步485总线接收伺服控制计算机的指令,采集伺服机构的反馈信号,通过指令信息与反馈位置信息进行位置闭环运算,精确控制伺服机构运动至指定位置,同时将指令执行情况反馈给伺服控制计算机及遥测系统。控制程序主要包括控制主程序、定时器中断子程序和外部中断子程序三部分。
2.2.1 控制主程序
控制主程序主要完成系统初始化、看门狗初始化、功能寄存器初始化、全局变量初始化、定时器及外部中断初始化、JS71175型485协议处理器初始化,初始化伺服控制器的初始参数等,主程序流程图如图4所示。
图4 主程序流程图
2.2.2 定时器中断子程序
定时器中断子程序主要完成清除看门狗、判断伺服控制计算机指令大小并进行限幅、采集4路伺服机构位置反馈信号并进行滤波等处理、闭环运算并根据运算结果进行PWM占空比和电机转向设置、将伺服机构反馈信息及伺服控制计算机指令信息反馈给遥测系统,为了精确控制伺服机构高速动态响应,该定时器每间隔0.5 ms一次中断进行伺服机构位置闭环运算,精确实时调整PWM占空比和方向信号,由于遥测系统需至少间隔2.5 s才能接收伺服控制器反馈的遥测信数据,因此在该定时器中断中进行向遥测系统反馈数据时间间隔判断,及时准确的将遥测数据反馈给遥测系统,定时器中断子程序流程图如图5所示。
图5 定时器中断子程序流程图
2.2.3 外部中断子程序
外部中断子程序主要完成清除JS71175型485协议处理器中断信号、判断是接收还是发送中断、读取协议处理器中的伺服控制计算机发送的指令、解析伺服控制计算机指令、将指令执行情况反馈给伺服控制计算机,伺服计算机发送完整伺服控制指令后,伺服控制器必须在200 μs之内开始按照协议将数据反馈给伺服计算机,同时在500 μs之内将数据反馈完毕,否则伺服计算机将按照伺服控制器无法响应进行处理,启用应急机制,因此为了避免在伺服控制器完好情况下因数据响应慢导致启用应急机制问题,该软件外部中断优先级在程序中为最高优先级,在接收到伺服控制计算机发送的指令后,首先进行指令解析和数据反馈,每次数据发送完成后,伺服控制器需将JS71175型485协议处理器置为等待接收状态,以备第一时间接收伺服计算机发送的指令并进行数据反馈,外部中断子程序流程图如图6所示。
图6 外部中断子程序流程图
3 实验及结果分析
选用4个伺服机构和本文设计的控制器组成一套伺服控制系统,每个伺服机构功率为400 W,利用地面测试仪模拟伺服控制计算机,测试仪每间隔1 ms以2Mbit/s的速度向伺服控制器发送指令,测试仪接收并记录伺服机构控制器反馈的指令执行情况及反馈的数据,同时测试仪接收并记录伺服机构反馈的遥测信号。地面测试仪配置为Intel 2.6 GHz,双核CPU,2 G内存,配备专用双通道高速同步485板卡,利用LabWindows开发上位机测试软件。
地面测试仪在发送伺服机构自检和解锁指令后,每间隔1 ms向伺服控制器发送一次数据采集指令,伺服控制器接收到完整的指令后向地面测试仪反馈数据并根据接收的指令完成闭环运算控制伺服机构动作,利用TEK示波器监视通信情况在伺服计算机将一帧指令发送完毕后,伺服控制器在50 μs之内开始响应反馈数据,在300 μs之内完成所有数据反馈,伺服计算机接收到伺服控制器反馈数据,监测数据显示伺服控制器满足伺服计算机要求在接收到指令200 μs之内开始反馈数据和在500 μs之内将数据反馈完毕的要求,满足快速、高速485通信要求。
利用测试仪向伺服控制器发送指令,控制伺服机构实现0.2 Hz,15°正弦响应,如图7所示,图中蓝色曲线为测试仪指令信息,红色曲线为伺服控制器反馈给测试仪的伺服机构位置信息,图中已用文字标明实验结果如下:伺服机构正向最大摆角为14.979°,负向最大摆角为-14.953°,回环宽度为0.357°。
测试仪发送指令,伺服控制器控制伺服机构实现0.2 Hz,10.5°阶跃响应,如图8所示,实验结果如下:伺服机构正向最大摆角为10.986°,负向最大摆角为-11.195°,最大线速度为486.782°/s。
图7 0.2 Hz 15°正弦响应曲线
图8 0.2 Hz 10.5°阶跃响应曲线
任务要求伺服机构0.2 Hz,15°正弦响应摆角偏差为±0.2°;0.2 Hz,10.5°阶跃响应摆角偏差为±0.8°,伺服机构最大线速度不小于400°/s,试验结果表明:伺服控制器控制精度均在要求范围之内,满足要求。
4 结论
本文结合无刷直流电机控制系统的具体应用和实际控制要求,对基于英飞凌XC164和JS71175型485协议处理器的硬件进行了设计和开发,编写了嵌入式控制软件和测试仪软件。试验结果表明:基于JS71175高速同步485总线通信的多通道伺服控制器在在保证通信稳定的前提下,通信波特率可达2 Mbit/s,大大提高了基于485通信协议的通信速率,同时具有体积小、功率大、集成度高、可实现多路控制的特点。
[1] 骆光照,王 鹏,吴 梅,等. 弹用电动舵机的混合H2/H∞控制器设计[J]. 弹舰与制导学报,2003,23(3):4-6.
[2] 朱忠惠. 推力矢量控制伺服系统[M].北京:宇航出版社,1995.
[3] Atallah K, Maxwell C, Permanent magnet brushless drives for aircraft flight control surface actuation [J]. IEE Colloq. On All-Electric Aircraft, Savoy place, London, 1999: pp. 8/1-8/5.
[4] Lyshevski S E, High-torque density integra-ted electro-mechanical flight actuators[J]. IEEE trans. On Aerospace and electronic systems, Jan. 2002, 38(1):174-183.
[5] 无人机舵机控制系统的硬件设计与实现[J].计算机测量与控制,2010,18(5):1076-1078.
[6] Infineon XC164CS 16-Bit single-Chip Micorcontroller Data Sheet[Z].V2.1,Jun.2003.
[7] JS71175型485协议处理器手册[Z].
Multi-channel Servo Controller Design Base on High-speed Synchronization 485 Bus Communication
Wang Heng,Bai Yuxin,Zhang Tianqi,Zhang Da,Qin Erwei
(Beijing Research Institute of Precise Mechanical and Electronic Control Equipment, Beijing 100076,China)
A four-channel servo controller designing and realizing scheme for guided missiles is provided in this paper. According to high communication rate and multi-channel servo control requirements to the research task, the servo controller is designed base on 485 protocol processor of JS71175 and XC164 as main control chip, this controller improve synchronization 485 bus communication rate, meanwhile, realize for-channel servo mechanism control and lock or unlock servo mechanism action, have the characteristics of small volume, high power and high integration. The tests indicate that, under the premise of stable communication, communication rate up to 2Mbit/s, total power up to 1 600 w, and satisfies the task needs.
485 protocol processor; high-speed; Synchronization 485 Bus; multi-channel; controller
2016-12-19;
2017-01-16。
王 恒(1985-),男,硕士研究生,工程师,主要从事伺服控制方向的研究。
1671-4598(2017)03-0093-05
10.16526/j.cnki.11-4762/tp.2017.03.026
TP3
A