当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]基于CAN总线的分布式位置伺服系统设计

伺服系统(servo system)亦称随动系统,其在军事、工业和日常生活中都有着广泛的应用。随着计算机技术和现场总线技术的发展和成熟,也促使伺服系统的实现方式和体系结构在不断地发展,将现场总线应用于运动控制,构成分布式控制的数字控制伺服系统日益受到人们的重视。基于现场总线的分布式伺服系统有很多优点,如连线少、可靠性高、易于系统的维护和扩展等。目前,国外的Siemens、ORM EC Systems、Rexroth等公司已经有各自的分布式伺服系统产品推出;国内有一些单位和学者也进行了该方面的研究,但相关的论文并不多,更没有形成系列产品[1]。
    分布式伺服系统中,电机控制性能和多电机间协调控制性能的好坏直接影响生产过程质量,如何实现系统的高效管理、方便应用和实时控制都是需要解决的关键问题。CAN总线是一种有效支持分布式控制或实时控制的串行通信局域网络,以其结构简单、可靠性高、成本低廉等优点非常适合分布式伺服系统中数据通信的实现。通过CAN总线进行数据传输与控制,使伺服电机的性能更加稳定,能更好、更灵活地应用于分布式运动控制系统中[2]。
1 系统的总体结构和原理
    本文设计的分布式伺服系统的总体结构如图1所示。系统由主控制器PLC、CAN总线和现场伺服单元节点组成。PLC是整个系统的主控制器,除了对各个伺服电机发送实时控制命令外,还需要接收各驱动器节点的工作状态信息,并进行判断给操作人员以提示或报警。系统中所有的伺服电机系统都有各自的CAN接口,都挂接在CAN总线上构成如图1所示的分布式控制系统。系统中若有节点同时向总线发送CAN信息时,根据每条信息的标识符(ID)进行仲裁,决定占用总线的优先级,信息的ID越小优先级越高。这就是CAN总线的非破坏性总线仲裁机制,由此决定同时发送到总线上的不同报文对总线的占用权[3-4]。

2 系统硬件构成
2.1 主控制器PLC模块

    本系统的主控制器PLC选用的是芬兰EPEC公司生产的EPEC 3G系列控制模块中的一种,该模块功能强大,性能优越;坚固、体积小、耐低温、抗振动、抗强电磁干扰,并具有高压、过载、过热和输出短路保护功能;16位的高性能微处理器和超大容量的内存空间使其具有很强的数字处理能力,可以完成较复杂的算法;具有丰富的I/O口资源,包括AI、DI、DO和PWM输出等,还具有CANopen和CAN2.0B 两个总线接口,可以与很多标准的CAN总线产品直接连接,而且接线简单方便,可靠性高。本系统利用的是该模块的CAN2.0B总线接口。
2.2 伺服驱动器节点硬件原理
  本系统目前的工程应用是控制油门阀的开度,图1中的每1个伺服电机系统就是一个集成的直流电动推杆,其包括DC 24 V直流电机、推杆机构和推杆位置传感器。通过电机的正反转带动推杆机构直线运动从而控制某型号油门阀的开度大小。
  伺服驱动器的CAN节点主要由单片机AT89C52、AD芯片、CAN控制器82527、收发器PCA82C250和继电器构成,其硬件原理如图2所示。单片机从CAN总线上接收PLC发送的位置给定命令,推杆位置传感器的反馈电压信号经AD转换后进入单片机,与位置给定量进行比较,然后完成推杆位置的闭环控制算法。控制量通过单片机的I/O_1和I/O_2输出,经过驱动芯片后,I/O_1的信号控制1个双刀双掷继电器实现电机的正反转切换,I/O_1的信号控制1个单刀继电器以控制电机的启动和停止[5]。

3 系统软件设计
  系统CAN总线网络的通信协议是按照CAN2.0B标准设计的,采用11位标识符的标准帧格式,初始波特率为250 Kb/s(可修改),各节点的数据发送方式都采用广播式,接收数据时采用报文标识符过滤的方式从总线上接收本地所需要的数据。
3.1 PLC控制程序
  系统选用的PLC的软件开发环境是CoDeSys,它是德国3S公司开发的一种可视化PLC编程环境,支持IEC11311-3标准的指令表、梯形图、功能模块图、顺序流程图、结构化文本、连续功能图等6种编程语言,用户可在同1个项目中选择不同的语言编写程序。CoDeSys以工程文件的形式组织程序的各个对象。1个工程文件包含PLC程序里的所有对象:POUs(Program Organization Units)、数据类型和资源。1个POUs包括主程序(PLC_PRG)、子程序(PRG)、功能块(FB)、函数(FUN)及语句,其中主程序必须命名为PLC_PRG。子程序可以调用函数和功能块,但函数和功能块不能调用子程序,且当程序在线运行时,子程序中的中间变量值是可视的。另外,CoDeSys还具有丰富的库文件资源,编程过程中可以灵活调用,大大节省了软件开发时间。
    根据CoDeSys程序编写的特点,系统的PLC程序是用结构化文本语言编写的。程序的主要功能是把由AI口输入的油门控制脚踏板的模拟电压进行一定调理后通过CAN总线发送给各个被控节点,并从CAN总线上接收各节点的状态信息,进行判断后对操作人员给出提示或报警信号。PLC的CAN总线通信初始化的主要设置有:波特率等相关参数、报文滤波参数、创建接收报文的数据缓存区等,这些设置都可以直接调用CAN2.0的库函数实现,十分方便。PLC在发送数据时,调用库函数CAN_IITX(),设置ID、DLC等参数,把数据打包给每帧数据段的相应字节即可;接收数据时,需要先调用库函数CAN_II_GET_MSG()创建接收数据缓存区,设置OBJ、ID等参数(OBJ是缓存初始化序号, ID是接收数据的标识符),实现报文过滤。然后调用库函数GET_MSG(),其参数MESSAGE必须与缓存区初始化序号OBJ相等,才能读入相应缓存区的数据。函数GET_MSG()读数据是分字节读取的,可以很容易实现数据的字节操作和位操作,可为数据的计算和处理提供方便。顺序循环执行PLC程序,本系统设计的循环周期为10 ms,可以满足控制系统实时性的要求。[!--empirenews.page--]
3.2 单片机程序
    单片机的主程序流程如图3所示,包括单片机与82527的初始化程序和各子程序。对反复执行的程序段利用主程序调用子程序的方式实现。子程序主要有闭环控制子程序、故障处理子程序和参数修改子程序[6]。

    系统的闭环控制采用的是Bang-Bang算法。该算法是一种时间最优控制,且算法简单,便于单片机实现,又能满足系统控制精度的要求。设精度允许的推杆位置误差带为[-Δ12],当前偏差为e(t),-Δ1≤e(t)≤Δ2时,可认为推杆当前位置即为给定要求的位置。若把控制量u(t)归一化处理,则此算法可以表示为:
  
   由于伺服电机正转和反转时推杆运动的惯性不同,所以正、反向最大误差允许值Δ2和Δ1一般是不相等的。图4是Bang-Bang算法子程序流图。

    故障处理程序处理的故障包括CAN通信中断故障、位置反馈断线故障、电机堵转故障等,通过对这些故障的自动处理或给出提示信息提高了系统的可靠性。控制器在不同场合使用时,对一些参数的要求也不相同,如控制器CAN报文的ID、通信波特率、控制死区、位置标定等参数的值都可以通过CAN总线报文进行人工修改。本设计选用的X5045芯片带有512字节的E2PROM,可由单片机对其存储空间进行串行读写,因此,X5045芯片除了实现单片机的上电复位和看门狗功能外,还可把需要进行修改的参数存放在其E2PROM空间中。对故障处理和参数修改子程序的具体编写这里不再详述。
4 实验结果及分析
    本系统实现1个脚踏板同时对2个油门阀的控制,脚踏板电位器输出的电压信号经主控制器PLC的模拟量输入口进行A/D转换,再通过CAN总线接口发给2个伺服驱动节点,控制油门阀的开度快速精确跟踪脚踏板的运动变化。在实际应用过程中,PLC还用于整车的其他控制功能。由于通信线使用的是普通双绞线的特征阻抗120 Ω,所以需要在CAN总线两端的CANH和CANL之间各加1个120 Ω的终端电阻,使总线阻抗匹配,以较好地抑制干扰。
   经过实验,系统能够达到以下要求:
   (1)在波特率250 Kb/s、总线长度100 m的情况下,各节点之间通信正常,2个伺服驱动节点能正常工作。
   (2)推杆的有效运动长度约为50 mm,5 s内可实现全程运动,可满足油门阀调节快速性的要求。
   (3)图5是调试过程中通过CodeSys开发环境的变量观察窗口绘出的2个推杆运动的阶跃响应曲线,其中图5(a)是控制推杆伸出的情况,图5(b)是缩回的情况。图中,x表示位置给定量的阶跃变化,y1、y2分别表示2个推杆位置对阶跃给定的动态响应曲线。由图可以看出,2个推杆的位置均能及时跟随给定量的变化,并能达到控制精度的要求。

   本文设计的分布式直流电动伺服系统已经应用在某大型工程运输车的油门阀控制中,其工作稳定可靠,与气动油门相比,大大提高了油门控制的响应速度和系统的可靠性。该系统的伺服驱动节点结构简单、成本低廉,CAN总线网络的应用使整个系统具有很强的通用性和可扩展性,根据应用需要可以方便地增减驱动节点的数量,实现更多轴和多点的伺服控制系统,并进一步实现多电机的协同控制。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

今天,小编将在这篇文章中为大家带来大数据的有关报道,通过阅读这篇文章,大家可以对大数据具备清晰的认识,主要内容如下。

关键字: 大数据 分布式 Kafka

北京2022年10月17日 /美通社/ -- 存储设备对于客户的核心价值就是要稳定可靠,无需什么星辰大海也不用玄妙推演,踏实将稳定可靠做到位、保护好客户的数据,即是最大的意义所在。 北有中关村 南有马栏山 这里的马栏...

关键字: AI 云平台 分布式 存储设备

大数据将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对它的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 大数据 物联网 分布式

北京2022年10月11日 /美通社/ -- 在1992年出版的《雪崩》一书中,作者尼尔·史蒂芬森第一次提出Metaverse(元宇宙)这一概念;斗转星移,三十年之后,随着Roblox上市、Facebook...

关键字: 区块链 存储技术 带宽 分布式

大家好,我是鲏。认识我的朋友都知道,我是一个实践派,相比研究枯燥的理论知识,我更喜欢做自己想做的项目,用技术来实现自己的想法的感觉真的很棒。所以从大学期间一直到现在,除了工作中的项目外,我依然保持着自己做项目的习惯,有坚...

关键字: 系统设计 技术选型 需求分析

智慧光储进万家 苏州2022年9月27日 /美通社/ -- 北京时间2022年9月22日,晟高能源科技对外宣布与康佳集团达成全面战略合作,成为康佳集团在国内户用及工商业光伏产品领域战略合作单位。  ...

关键字: 分布式 康佳 光伏组件 新能源

北京2022年9月23日 /美通社/ -- 9月21日,国家原子能机构在京举办2022年第三季论坛,发布核技术应用领域十件大事,展示了核技术近年来在国民经济领域的重大应用成果。同方威视自主研发的世界首套基于碳纳米管冷阴极...

关键字: X射线 分布式 碳纳米管 BSP

(全球TMT2022年9月20日讯)9月16日至18日,借第19届中国—东盟博览会开展之机,首届中国—东盟和平利用核技术论坛在广西南宁召开。中核集团同方股份有限公司出席活动,并联合核安保技术中心、中国原子能工业有限公司...

关键字: 分布式 器件 安防 并联

北京, 2022年9月20日 /美通社/ -- 9月16日至18日,借第19届中国—东盟博览会开展之机,首届中国—东盟和平利用核技术论坛在广西南宁召开。中核集团同方股份有限公司出席活动,并联合核安保技术中心、中...

关键字: BSP 全自动 分布式 器件

西安2022年9月9日 /美通社/ -- 9月7日,由工业和信息化部节能与综合利用司、国家能源局能源节约和科技装备司与浙江省能源局联合指导,中国化学与物理电源行业协会联合232余家机构共同支持的第十二届中国国际储能大会在...

关键字: 电力系统 分布式 变流器 新能源汽车

嵌入式教程

6897 篇文章

关注

发布文章

编辑精选

技术子站

关闭