你当前的位置:首页>>液压与气动>>技术论文资料  
                      CAN总线在高速液压多缸同步运动控制中的应用
      Control System of Synchronous Motion of High Speed Hydraulic
                  Multi-cylinder Based on CAN Bus
                     
严景常 李晓明
         (浙江理工大学浙江省现代纺织装备技术重点实验室,浙江杭州 310018)

      摘 要:高速液压多缸同步运动装置有瞬时大功率的特点,其高速液压缸要求达到24m/s的速度,需要采集的数
据量大,控制算法也较复杂,所以选用分布式的控制系统。大量的信号在系统中需实时交换,传统线束已不能满足要求,所以用CAN总线来完成测控中的数据传送。CAN总线有易扩充、易实现多主结构、可靠性高、实时性强、通信介质无特殊要求的特点。设计了总体结构,具体的方案,对针对本系统自己定义的CAN应用层协议进行说明。实践证明,该系统成本低,运行稳定。
   关键字:CAN总线;应用层协议;数据;高速液压系统多缸同步运动装置.
    1、引 言
   弹射装置在航空航天领域应用很广泛,如舰载飞机的弹射。从空间站发射卫生及无人飞机等。以液压缸为执行元件的高速液压弹射是新型发射弹射技术,有隐蔽性强、发射使用频率高等特点。目
前提高系统有效发射载荷以及液压缸极限运动速度的最佳方法是多缸并联同步控制驱动。原因有几点:(1)多缸并联同步驱动能加倍地增大系统的最大负载。(2)可分散压力和流量,让每路的驱动液压回路的压力和流量相对仅用单缸驱动变小。(3)恰当的安置驱动点,并考虑被发射物运动中重心变化情况,弹射装置就可发射多种物体,其使用范围扩大。
  由于高速液压系统多缸并联驱动装置的工作时间短,485总线的传输速率不能满足各控制器或数据采集模块之间的高速通讯,常通信失败,所以选用基于CAN总线故采取分布式的数字测控系统。
   目前,CAN总线在车辆、工程机械上有一些应用,但在高速液压方面,CAN总线使用很少。如何清华、纪云锋等人以CAN总线连接挖掘机的电子控制系统中控制器与位于现场的测量变送器、开关、马达、电液阀等执行器。付永领提出了PB-211喷漆机器人的基于CAN总线的上、下位微机控制系统,上位机为一台PC工控机,主要负责机器人的路径规划,任务分配,系统监视等,下位机为6个单片机,主要负责伺服阀的控制和位置传感器的信号采集等。
    2、系统的总体方案
   如图1所示,高速液压系统多缸并联驱动装置模拟实验台由各种传感器、数据采集和伺服控制器模块、同步控制器、CAN总线、泵和蓄能器组、大流量控制阀、多级液压缸、负载组成。
      
           图(1): 高速液压系统多缸并联驱动装置模拟实验台
   多缸并联同步运动控制方案是在虚轴法改进后的基础上进行同步运动系统建模和控制。虚轴法是比较新的多轴同步运动的方法,可自动改变单轴驱动的能量转化速度,让各轴的加速度耦合,并能适应变化的负载。原理如图2所示,它是一个虚拟的主轴,与其他运动元件间机械耦合装置,以多轴运动之间的力矩耦合来协调使各轴同步运动。可以用计算机来模拟虚拟的主轴。
         
                  图(2): 虚拟同步机械装置
   每路液压缸的伺服控制由单独的伺服控制器实现,为CAN总线上的一个节点,其任务有参数设置、节点状态查询、控制大流量阀等。
   PC机通过CAN接口卡连在CAN总线上作一节点,CAN接口卡选用周立功单片机发展有限公司的
PCI-9810,作用有:① 监控高速液压系统的运行状态,② 承担同步控制器的功能,③ 提供一个良好的操作整个液压装置的界面。PC机根据数据采集和伺服控制器模块节点通过CAN总线发送来的每路液压缸的工作状态数据计算同步参数,然后由CAN总线送到每路伺服控制器动态调整其控制输出。可在PC机上设置或修改液压装置的一些参数。

    这样既能够独立的驱动单个液压缸,也能够接收由同步控制器的输出调整其控制器参数,实现多缸同步控制驱动高速液压弹射过程。
   本系统有瞬时大流量的特征,若大流量控制阀用价格较贵的大流量伺服阀,不能物尽其用。高速液压弹射在单行程伺服控制即可,执行机构不需位置伺服。可在主进油路上控制流量,采取以一高频响小流量阀控缸伺服系统代替常用的大流量插装阀的先导回路,对大量伺流服控制。并把拖动用液压缸和插装阀阀芯、阀套做成一个整体,来提高系统的响应能力。
     3、数据采集和伺服控制器模块节点的硬件设计
   数据采集和伺服控制器模块节点的CAN部分电路总体结构如图3所示。
        
          图3 数据采集和伺服控制器模块节点的CAN部分电路总体图

   单片机节点的主控制器采用ATMEL公司的80C51系列的AT89S52。
   按键采用行列式键盘。如图4所示,每个按键的一端接在行线,另一端接在列线上。列线通过二极管接到AT89S52的P3.2中断引脚。开始Pl口的P1.2 P1.3输出低电平,P1.0 P1.l为上拉。单片机的P3.2设置为内部上拉,低电平触发中断。当某按键按下时P3.2变成低电平,触发中断,由系统决定在适当的时候进行处理。键盘中断子程序被调用,程序扫描键盘,确定哪个键被按下,不同的键再调用对应的自定义的函数。不同的自定义函数有各自的功能。如数据采集和处理、通讯
(向其他节点发送数据)等。

          
               图4 键盘与AT89S52的连接图

   AT89S52的ADO/PO.0~AD7/PO.7分别与SJA1000的AD0~AD7相连,AT89S52的P2.0接SJA1000
片选信号,AT89S52的ALE/PROG接SJA1000的ALE,AT89S52的WR及RD与SJA1000的WR和RD分别连接,SJA1000的中断输出引脚到AT89S52的外部中断0。
   SJA10O0的XTAL1和XTAL2之间接16MHz的晶振,并各通过15pF的电容接地。其复位由主控制器AT89S52的一个IO引脚P1.7来控制。SJA1O00的CLKOUT向主控制器输出时钟频率。和SJA1000
相连的AT89S52为80C51系列,所以SJA1000的11脚MODE接高电平,即Intel模式。
   CAN收发器用PHILIPS公司的TJA1050高速收发器。CAN控制器和收发器以串行数据输出线和串行数据输入线相连接。收发器通过可差动接收和发送的引脚CANH和CANL接到CAN总线上。
      4、软件设计
   在本装置中CAN为多主工作方式,总线上任一节点都可主动发送数据到其他节点。PC机节点或数据采集和伺服控制器节点中的任意两节点可直接通讯。
      4.1 CAN初始化
   CAN控制器在复位后,要配置相关的寄存器,然后才可收发数据。如图5所示。

         
                  图5 CAN初始化示意图

     4.2 CAN总线上发送和接收数据流程
   以PC机把同步参数送到伺服控制器为例说明收发流程。
   PC机首先把计算好的同步参数以应用层协议规定的帧格式存放,然后调用将数据包转换成多个CAN报文的函数,将标识符和数据送入发送缓冲区,然后置位命令寄存器中的发送请求位,启动CAN
核心模块读取发送缓冲区中的数据,按CAN协议封装成一完整CAN信息帧通过收发器发往总线。
   由于CAN报文含有接收节点地址,已被设置节点地址的伺服控制器经过其验收滤波器的滤波,
确定是传送到本节点的信息,节点才把CAN报文送入接收FIFO缓冲区,并置位接收缓冲区状态标志。节点从CAN总线上接收到CAN报文先存贮,当某一数据包的所有CAN报文全部接收完后,就调用将多个CAN报文转换成数据包的函数,以应用层协议规定的帧格式存放PC机发来的同步参数,供本节点的应用(如:控制)程序使用,调整伺服控制器的输出,从而完成多缸的并联同步运动。
      4.3 节点地址的设置
   节点地址由单片机对节点初始化的程序中,用BasicCAN模式里的验收滤波时设置CAN控制器的验收码寄存器和验收屏蔽寄存器确定。验收屏蔽寄存器的第5、6、7位置0,其它位置1。验收码寄存器的第5、6、7位设为节点地址。
     4.4 CAN报文标识符分配
  本系统使用2.0A规范,标识符分配以信息类型为最高优先级,选用标准格式。CAN报文的ID越小,它在CAN总线上传送的优先级越高。ID28-ID27为信息标识,越重要或紧急的信息标识越小,也就是此CAN报文传送的优先级越高,如表1所示。ID26是否需要应答标识,需应答为1,不需应答为0。ID26-ID22为目的节点地址标识,ID21-ID19为源节点地址标识。ID18为数据是否大于8个字节标识,小于或等于8字节为0,大于8字节为1。
          

      4.5 自定义应用层协议
  目前比较流行的标准化应用层协议有CANopen和DeviceNet。这些协议价格昂贵,而本系统使用自定义的应用层协议即可满足。自定义的这一协议具有通用性,可在同类系统中使用。
    4.5.1 自定义应用层协议规定的帧格式
  应用程序以此格式存放数据,所使用的数据也要是这种格式。
  第0个字节代表数据包的长度,第1个字节代表信息功能标识,信息功能标识越小则优先级越高。此数据第2个字节代表其它功能标识如是否要求应答,第3个字节代表源节点地址标识,第4个字节代表目的节点地址标识,其它字节为传送的数据。
    4.5.2 大于8个字节的数据包传送
  当发传的数据大于8个字节时,将应用层协议规定的帧格式的数据包分为多个CAN格式的帧。每个帧的数据场的第一个字节为索引,表示此帧为数据的第几浈,最后一帧的第一个字节各位规定为0,表示这个数据包传送完毕。当某一数据包的所有CAN报文全部接收完后,就将多个CAN报文转换成应用层协议规定的帧格式数据包然后存储。
     4.6 PC机节点通讯程序的编写
  PC机通过CAN接口卡接入CAN总线。CAN接口卡分为PCI总线接口和CAN总线通讯部分。PCI总线
接口部分是连接PC机的PCI总线的。CAN总线部分完成数据的发送和接收、数据包的拆合、解码、编码等任务。
  PC机上的程序使用Borland C++Builder6.0实现。调用CAN接口卡提供的接口函数来进行打开或关闭CAN接口卡、接受数据、获得当前接收缓冲数据的帧数量等操作,完成PC机节点与其它节点的CAN通讯。
      5、结束语
  CAN总线有很高的实时性能,有强有力的检错功能,可在高噪声干扰环境中使用.由于本液压系统有高速、瞬时大流量等独特之处,数据处理量大,如对这些数据集中处理和运算,难以保证快速性。而这种基于CAN总线的分布结构,能较好地分散处理数据和运算的负担,可大幅度地提高控制系统的响应,让整个装置可靠地运行。
            参 考 文 献
[1] M.Anibal Valenzuela,RobertD.Lorenz.Electronic Line-shafting shafting    Control for Paper Machine Drivers[J]。IEEE Transactions on
   Industry,37(1),2OOl.
[2] 陶小军,李晓明,朱祖超.高速液压弹射实验装置中高速液压缸的设计[J]。
   液压气动与密封,2006(6)。
[3] 何清华,纪云锋,陈欠根等。基于CAN总线技术的挖掘机电子控制系统设计[J]。
   机床与液压,2O04(5)。
[4] 付永领,王岩,裴忠才。基于CAN总线液压喷漆机器人控制系统设计与实现[J]。
   机床与液压,2003(6).
[5] 金凤莲,兰振平,牛悦苓.基于CAN总线的电除尘器远程监控系统的设计[J]。
   仪表技术与传感器2007(5).

  版权所有 民众工作室.制作