作者简介:孙超(1992—),男,硕士,研究领域为嵌入式开发,电机控制。
Xi'an Aerospace Propulsion Institute,Xi'an 710100,China
liquid rocket engine trial; integrated control system; CAN bus; CANopen protocol; intelligent servo contorl
备注
作者简介:孙超(1992—),男,硕士,研究领域为嵌入式开发,电机控制。
为了解决以往液体火箭发动机试车测控系统数据总线带宽及可靠性低,实时性、系统维护性及拓展性差等问题,首次建立了基于工业控制总线CAN总线和CANopen应用层运动控制子协议的综合测控系统,并且针对以往基于RS—422串口数据总线的“点对点”结构数据通讯速率低、可靠性低、维护性差的缺点,构建“一主多从”式节点可拓展的组网式总线拓扑结构。经过X型液氧煤油火箭发动机试车验证,证明该系统已实现高可靠、长距离、高实时的数据通讯和高精度伺服控制,实现了完整的CANopen运动控制协议软件驱动层设计。利用该发动机综合测控系统的研制方法与思路,可在未来的发动机测控系统中实现多节点、智能化伺服控制,为新一代液体火箭发动机智能化控制器和测控系统的研制提供新思路。
In order to solve the problems of past liquid rocket engine trial system such as low bandwidth,low reliability and real-time performance,poor system maintainability and expansibility,a integrated measurement and control system was established,which is based on industrial control bus CAN bus and CANopen motion control sub-protocol in application layer the first time,and contraposing the past RS422 serial data bus's "peer-to-peer" structure disadvantages such as low data communication rate,low reliability,poor maintenance.A node scalable "one master many slave" mode data bus topology structure was established.This integrated control system was verified by X type liquid oxygen kerosene rocket engine trial to achieve high reliability,long distance,high real-time performance data communication and high precision servo control,and a complete CANopen motion control sub-protocol driver layer software was designed.Using this liquid rocket engine trial's integrated measurement and control system can achieve multi-mode and intelligent servo control in future engine measurement and control system,which provides a neoteric method for a new generation of liquid rocket engine intelligent contoller and control system research.
引言
0 引言
为满足预研液体火箭发动机测控系统[1-3]结构复杂化、控制需求的高精度、高实时、控制任务及控制对象多样化的需求,保证发动机在研制过程的各项试验顺利进行,本文研究一种以工业控制总线控制器局域网(controller area network,CAN)[4-5]和应用层协议CANopen[6-7]为基础架构的综合测控系统。CAN是一种高性能、高可靠性、易开发低成本的多主总线结构,是20世纪80年代创立以来应用最广泛的工业控制总线之一,CANopen[8-10]协议是CAN-in-automation(CiA)定义的标准之一,建立在CAN总线的物理层之上,基于CANopen协议的CAN总线与以往基于RS422总线的发动机测控系统相比,具备以下优势:
1)CAN总线使用多主从方式工作,总线网络中各节点可采用无损结构的仲裁方式向总线中任意节点发送数据。RS422只能工作于单主从方式,通讯方式只能按照主节点轮询的方式进行,不利于数据通讯实时性和后期系统主节点拓展。
2)CAN总线通讯距离长,可靠性高,最多可支持110个节点,CAN总线通讯速率与距离的关系如表1所示,RS422最大传输距离为1 200 m,最多只支持10个接收节点,最大距离只支持最大100 kbps。
3)采用对通信数据编码的方式代替地址编码,可以使不同节点同时接收数据,使CAN总线具备通讯高实时性。
4)开发周期短,维护成本低。
本文研究的液体火箭发动机试车综合测控系统可以满足液体火箭发动机试车长距离、高可靠数据通讯需求,并且对于实现分布式伺服控制系统[11-13],液体火箭发动机智能化控制[14-15]的研制具有深远的意义。
1 综合测控系统设计
1.1 系统结构及工作原理测控系统[16]由试验台、控制器和电源模块构成,其中试验台包括工业控制计算机、CAN通讯模块组成; 控制器包括伺服驱动器、直流电源模块、LVDT线性位移传感器; 电源模块为28 V/5 A直流电源和220 V电源。测控系统的控制对象为滚轴丝杠机组,滚轴丝杠机组是交流永磁同步电机旋转位移和燃气分流阀线性位移之间的转换和传动装置,滚轴丝杠机组的线性位移对应燃气分流阀的开度位置,控制器通过改变滚轴丝杠机组的线性位置从而改变燃气分流阀的开度,最终调节发动机推力大小,系统结构及工作原理如图1所示。
1.2 系统功能模块本文所述的综合测控系统按照系统功能主要分为:
1)燃气分流阀开度位置及速度控制功能。可根据用户的控制指令控制伺服电机的位置和速度从而达到控制燃气分流阀开度的目的。
2)实时运动数据监测及存储功能。可在燃气分流阀动作过程中实时上传位置、速度、电流等重要过程数据并存储。
3)伺服驱动器参数管理功能:查询或更新伺服驱动器的重要参数,例如电机加速度、PID参数等。
4)燃气分流阀开度自动时序控制功能:主要是针对试车过程中分流阀的开度时序控制,预配置开度值与时刻的序列表,待启动信号触发后自动执行对燃气分流阀的开度控制。
5)系统故障监测及保护功能:监测伺服驱动器电压、电流等参数信息,设置燃气分流阀位置及转速超差保护功能,避免损坏控制对象机械结构。
6)人机界面交互功能。主要指运行与工业控制计算机中的综合控制软件可响应用户输入的操作指令和参数值,并发送至控制器完成相应的动作。
2 综合测控系统软件设计
3 系统功能验证
本文所研究的综合控制系统实物如图 12所示,该系统已经过伺服电机性能试验、燃气分流阀总装、发动机液流试验、发动机半系统联试的验证。系统重要参数配置为:
1)CAN设备通信波特率[23-25]配置为250 kbps。
2)心跳周期为100 ms。
3)PDO发送/接收周期为20 ms,SDO发送/接收周期为20 ms。
4)电机控制采用位置环控制模式。以下是应用综合控制系统的试验结果,各控制性能指标完全满足系统要求。
3.1 CAN总线重要参数综合测控系统关于CAN总线通讯的重要参数如表 2所示,主要包括CAN通讯波特率、心跳周期、PDO通讯周期、SDO通讯周期等参数。根据发动机试验台环境需求,在综合测控系统过程中必须使用长度150 m的电缆,CAN通讯使用500 kbps波特率出现总线数据阻塞,数据通讯异常现象,因此将波特率配置改为250 kbps,能够满足发动机试车的通讯速度需求。
4 结语
本文详细论述了基于CANopen协议的综合测控系统工作原理、系统架构及软件设计等内容,并且首次在发动机测控系统中应用。对于CANopen协议的研究和基于C/C++语言的CAN总线通讯及CANopen协议栈的开发,其通用性和易拓展性对后续发动机测控系统研发工作的推进具有研究意义和实用价值。
- [1] 刘瑞敏,卜玉,孙德,等.新一代运载火箭动力系统试车总体试验技术研究[J].火箭推进,2017,43(1): 72-77.LIU R M,BU Y,SUN D,et al.Research on overall test technology of power system for a new generation launch vehicle[J].Journal of Rocket Propulsion,2017,43(1): 72-77.
- [2] 祝敏,张辉,雷震.分布式测控系统在发动机试验中的应用[J].火箭推进,2013,39(5): 98-102.ZHU M,ZHANG H,LEI Z.Application of distributed measurement and control system in liquid rocket engine test[J].Journal of Rocket Propulsion,2013,39(5): 98-102.
- [3] 刘万龙,牛向楠,李全令,等.一种姿轨控发动机地面试验控制系统设计[J].火箭推进,2015,41(2): 114-117.LIU W L,NIU X N,LI Q L,et al.Design of a ground test control system for attitude and orbital control engine[J].Journal of Rocket Propulsion,2015,41(2): 114-117.
- [4] 白蒲江,王建军.一种基于CAN通讯的测控系统设计[J].汽车实用技术,2020,45(18): 41-43.
- [5] 程鲲鹏,杨杰,刘新辉,等.基于CAN总线的多通道开度阀控制系统的设计[J].机械与电子,2020,38(9): 65-68.
- [6] HOLGER Z.现场总线CANopen设计与应用[M].周立功,黄晓清,严寒亮,译.北京: 北京航空航天大学出版社,2011.
- [7] 夏勇,叶晓东,赵江海.基于CANopen协议的数字伺服控制[J].电气自动化,2014,36(1): 57-59.
- [8] 徐喆,闫士珍,宋威.基于散列表的CANopen对象字典的设计[J].计算机工程,2009,35(8): 44-46.
- [9] DUAN J M,XIAO J J,ZHANG M J.Framework of CANopen protocol for a hybrid electric vehicle[C]//2007 IEEE Intelligent Vehicles Symposium.Istanbul,Turkey:IEEE,2007.
- [10] BOTERENBROOD H.CANopen high-level protocol for CAN-bus[Z].NIKHEF Internal Documentation NIKHEF Amsterdam Version,2000,3: 1-23.
- [11] 卢雁.多机通信在自动控制系统中的应用[J].电子质量,2020(7): 69-72.
- [12] 汤雨雷.多电机同步控制系统研究与设计[D].西安: 西安工业大学,2019.
- [13] 马维华.电推进飞行器的多舵机控制系统设计与研究[D].上海: 上海应用技术大学,2019.
- [14] 杨弘枨,刘山,焦玮玮,等.智能控制在航天推力矢量伺服系统中的应用及展望[J].航天控制,2020,38(3): 3-9.
- [15] 吴宇.基于智能PID的交流伺服电机控制研究[D].大连: 大连交通大学,2016.
- [16] 樊垚,李亮,祁鹏,等.基于特征模型的火箭发动机伺服控制系统设计[J].固体火箭技术,2015,38(1): 145-150.
- [17] 曾武.CANopen协议在伺服控制系统中的应用研究[D].湘潭: 湘潭大学,2014.
- [18] 吴爱国,刘莉.CAN总线控制系统的应用层协议CANopen剖析[J].微计算机信息,2003,19(3): 27-28.
- [19] 王愈凌.基于CANopen通信的变频器控制系统设计[J].机电信息,2019(36): 161-162.
- [20] 邢月华,付磊,赵海院.基于CANopen协议的网络控制系统研究与开发[J].铁道机车车辆,2019,39(6): 54-57.
- [21] 徐征辉,刘凤秋,张梦博.基于STM32的CANopen协议的实现[D].哈尔滨:哈尔滨工业大学,2012.
- [22] 刘思捷.CANopen协议在伺服系统中的软件实现与植入研究[D].武汉: 华中科技大学,2011.
- [23] 罗峰,孙泽昌.汽车CAN总线系统原理、设计与应用[M].北京: 电子工业出版社,2010.
- [24] 史久根,张培仁,陈真勇.CAN现场总线系统设计技术[M].北京: 国防工业出版社,2004.
2.1 CANopen协议在试车测控软件中的应用2.1.1 运动控制子协议DSP402及其应用伺服驱动器嵌入式软件中使用了标准伺服运动控制子协议DSP402[17-18],该协议是工作状态跳转的控制流程,其运动控制状态机如图2所示。
在发动机燃气分流阀早期研制阶段,使用综合测控系统进行分流阀开度调节时需要实时监测分流阀开度位置,分流阀开度位置到达开度限位时,需要立即控制伺服电机停止动作,避免损坏分流阀整体机械结构,综合测控软件使用DSP402运动控制子协议控制状态机进行设计,在驱动器监测到电流过流后,立即执行“错误”处理策略,驱动器立即中断电机控制使能信号,控制电机停止转动。
2.1.2 CANopen协议模型及其应用CANopen设备包括通讯模型、对象字典、应用程序3部分[19-20],如图3所示。其中对象字典是设备与设备之间进行交互的接口,提供了完全访问应用程序的途径。通讯模型指CANopen网络中的通讯消息(报文)的内容和功能,主要分为:管理报文、特殊功能对象、服务数据对象SDO及过程数据对象PDO[21-23]。
本文所述的试车综合测控系统的核心任务之一是通过长距离可靠数据通讯控制伺服电机按照既定的工况时序点序列(指令位置—时间)执行动作,从而达到调节控制燃气分流阀出口压力的目的。
在完成此任务时,需要保证控制指令响应延时小于10 ms,同时需要在试验过程中以20 ms周期上传电机实际位置、电机实际转速、电机母线电流及电压等过程数据,以实现对试车现场被控对象的监测及故障保护。为完成上述的过程数据的同步实时传输并保证控制指令实时响应,使用CANopen协议独特的数据字典及PDO/SDO数据通讯方式可以高效完成此项任务。
2.1.3 数据字典的应用在进行力矩特性分析试验过程中,由于伺服电机带负载特性需要进行试验验证,因此综合测控软件需要根据试验时电机负载特性实时更改伺服驱动器的运动控制参数。CANopen协议的数据字典可以使用标准的伺服控制协议对伺服驱动器的运动参数进行在线下载/上传,实现试验过程中对伺服电机转速、加速度、母线电流保护等参数的在线更新,以满足研制阶段不断变化的负载特性对于运动控制参数的要求,其使用方式如图4所示。
2.1.4 SDO和PDO对象的应用服务数据对象SDO通过索引和子索引访问服务器对象字典,通讯采用请求/应答的方式,作为参数配置、信息查询的方式,具体实现方式如图5所示。
过程数据对象PDO:通过索引和子索引传输实时数据,PDO映射可以实现指定数据字典数据项发送/接收,分为TPDO和RPDO,PDO数据对象的触发方式可分为同步触发和异步触发方式,PDO通道传输数据的内容和传输方式均需要通过SDO对象进行预配置[24-25],PDO通道配置方式如图6所示。
本文所述综合测控系统将试车台和现场的CAN总线通讯数据类型分为参数类型和过程类型,参数类型数据指不需要在试验过程中实时下载/上传的数据,例如伺服驱动器PID控制参数、电机极对数等参数; 过程类型数据指需要在试验过程中实时下载/上传的数据,例如电机实际位置、实际转速、母线电压和电流等。对于以上两种类型的数据,参数类型数据使用SDO服务数据对象进行数据封装和传输,过程类型数据使用PDO过程数据对象进行封装并完成周期同步传输,SDO和PDO在综合测控系统中使用方式如图7所示。其中:
步骤①是根据PDO通道携带的物理数据,使用SDO对象配置PDO通道的载体数据的索引值。
步骤②使用SDO对象使能PDO通道数据的传输。
步骤③表示TPDO和RPDO对象传输的测控系统物理数据。使用这种方式可以实现过程数据实时上传,并且数据的替换和后期维护方便,不需要更改数据通讯协议数据区的内容,只需要替换对象的索引,增强了测控系统软件的维护性。
2.2 基于CANopen协议的综合控制软件2.2.1 综合控制软件架构综合控制软件设计按照功能划分为前台程序和后台程序,前台程序响应人机交互的指令和数据,在发送线程中响应用户通过人机交互界面执行的操作指令,进行数据处理后按照CANopen协议要求构建CAN数据报文放入发送数据队列,同时在接收线程中获取伺服驱动器上传的CAN报文并根据CANopen协议进行数据包解析,获取伺服驱动器上传的运动数据、状态信息和参数值; 后台程序按照20 ms周期发送/接收CAN总线报文,发送与接收操作间隔10 ms,保证CAN总线数据交互稳定性,综合控制软件架构如图8所示。
2.2.2 综合控制软件功能模块根据发动机试车功能需求,将综合控制软件进行了逻辑功能划分,主要包括:机组找零模块、动作检查模块、试车参数模块、试车模块及设备参数/信息模块。
1)机组找零模块
该模块实现滚轴丝杠机组运动至机械限位点的功能,需要向伺服驱动器发送“找零”指令并对机组“找零”动作过程进行实时监测,该模块支持找零运动模式(Home)参数在线配置。找零功能配置/启动/停止按照伺服驱动器指令集要求进行适配,具体方式如图9所示。
找零模块使用伺服驱动器的特殊控制模式提供了试车试验前燃气分流阀自动调节至最小开度的功能——燃气分流阀停留在任意开度位置时,需要将燃气分流阀调节至最小开度。为完成此功能采用上述的电机找零控制功能,在此功能模式下电机堵转电流门限值较小,燃气分流阀开度在到达最小开度位置时可以立即控制电机停止转动,避免对机械结构进行损伤。
2)动作检查及试车模块
动作检查模块能够按照预配置的运动参数(曲线类型、指令速度、指令加/减速度)控制滚轴丝杠机组运动,并对机组运动过程进行实时数据/状态监测。试车模块能够响应触发信号后自动按照预配置的时间—位置序列控制机组完成指令位置运动,并对机组运动过程进行实时数据/状态监测。机组按照指令位置模式配置启动/停止按照伺服驱动器指令集要求进行适配,具体实现方式如图 10所示,试车模块UI界面如图 11所示。
3)试车参数模块
试车参数模块提供发动机试车试验参数管理配置接口,采用时刻—位置序列表的方式配置机组时序工况,并提供机组运动参数配置接口,是试车自动时序的设定窗口。
4)设备参数/信息模块
设备参数/信息模块提供伺服驱动器工作参数查看和配置模块,包括伺服驱动器的保护参数、伺服控制参数、设备信息参数等。