技术频道

娓娓工业
您现在的位置: 中国传动网 > 技术频道 > 技术百科 > 驱动器集成多种工业实时总线的方法

驱动器集成多种工业实时总线的方法

时间:2018-03-09 13:21:39来源:中国传动网

导语:​本文提出了一种驱动器(如伺服、变频器)集成多种工业总线(ETHERNETPowerlink,EtherCAT,CANOpen)的方法,主要解决多总线统一、多轴在驱动控制级别(如PWM中断)的同步问题。

摘要:随着工业4.0的提出,网络化是工业产品发展的必然趋势。本文提出了一种驱动器(如伺服、变频器)集成多种工业总线(ETHERNETPowerlink,EtherCAT,CANOpen)的方法,主要解决多总线统一、多轴在驱动控制级别(如PWM中断)的同步问题。与采用多个总线并行实现的方法不同,本文提供了一种基于IEC61800-7的统一架构和接口。该架构的通信模型分为物理层、协议层、接口层和驱动应用层。协议层主要基于IEC61800-7-301标准,它是一种基于对象字典、包含周期数据(PDO)、非周期数据(SDO)等数据交换的协议;接口层则对协议层进行封装,提供面向驱动的、统一的函数接口、对象集合和对象字典,最关键的是多轴驱动的同步接口;驱动应用层用于实现IEC61800-7-201协议的功能,并以该协议作为驱动开发的核心,而不仅仅作为数据接口。然后,本文在驱动器上实现了上述多工业总线的集成功能,它具有较高的灵活性和可扩展性。最后,通过实验验证了该方法的可行性,以及多轴的同步性能。

1引言

网络化是工业发展的重要方向之一。工业4.0发展战略,对网络化产品提出了更高的要求。网络型驱动器,包含网络型伺服、网络型变频器,是运动控制发展的重要方向,它可以提高系统的扩展性、减少布线,通讯速率高、信息量大等特点。

为了统一工业控制网络,IEC组织推出了IEC61158/ISASP50.02标准。该标准由于市场应用、厂商推广等原因并没给出统一的网络标准,第四版限定了主流的20个总线。显然多种网络接口阻碍了工业运动控制的发展,一方面,驱动制造商需要支持多种总线接口、服务与支持;另一方面,控制器制造商以及系统集成者要考虑如何集成,而同一个网络接口也有不同的应用层控制协议。因此,催生了IEC61800-7标准,该标准定义描述了电驱动系统(PowerDriveSystems)在工业自动化中统一的网络映射层规范IEC61800-7-300和应用层规范IEC61800-7-200,如图1所示。

该标准给出了4大类应用协议Cia402,CIPMotion,PROFIdrive,SERCOS。虽不是一个协议,但依然极大地方便了驱动、控制器、系统集成三者交互。其中Cia402协议由于其历史、开放性,在运动控制器应用广泛。它最早由CANinAutomation(CiA)组织制定,是CANOpen众多应用协议里的一种,早期依赖于CAN总线,现在由IEC61800-7-201收录并扩展使其支持工业实时以太网,如ETHERNETPowerlink(以下简称Powerlink)、EtherCAT。网络型伺服可以分为两类接口,一类是传统的现场总线,一类是较新的实时以太网。实时以太网则是近年来现场总线的新发展方向,是工业以太网中实时性最好的工业网络。在运动控制领域中,Powerlink和EtherCAT市场占有率和通用性较好。

网络型伺服对主站的依赖度较高,由于行业、市场等原因,市场上有各种控制器,很难一种总线可以适应所有应用,因此集成Powerlink、EtherCAT、CANOpen的驱动产品,更能满足市场的需求,也是本文研究的重点。另外,传统的脉冲型伺服已很难应对现代控制系统的要求,比如工业机器人拥有多个伺服,其脉冲布线会很复杂,无法传输报警、力矩等高级信息。

国内还没有同时集成Powerlink、EtherCAT、CANOpen的驱动器,国外伺服产品如伦茨伺服采用插通讯卡的方式,支持多种总线。JuKyungLee给出了基于IEC61800及EtherCAT的实现方式,其控制器及驱动均按标准实现,但只一种实时以太网的应用接口。山东大学丁信忠给出了一种基于EtherMAC总线的伺服,其采用的自定义、未标准化的控制协议。一些总线的厂商给出了各自的集成方法,有的是对硬件和协议的简单集成(如PORTING、IXXAT公司的总线产品),有的面向通信提供了统一的接口(如Softing公司、赫优讯),而没有面向驱动应用提供统一接口,并且由于各总线差异较大,配置和使用过程依然较繁琐。通常,一种集成总线的驱动器的实现都采用并行方法,如图2所示。图中的API代表函数应用接口。

该解决方案的缺点是:每种工业总线协议都要有自己的对象字典与对象、需要协议转换,并且需要各自的协议栈运行接口。可见其交换过程复杂,而且没有为驱动专门提供同步接口。

介于当前还没有面向驱动的、同时支持Powerlink、EtherCAT、CANOpen总线的统一接口架构的论述,本文将阐述解决方法。本项目的驱动应用层不进行Cia402的转换,直接以它作为开发指南,规划内部的状态机与控制接口,同时对多总线以及多轴同步提供协议和接口。标准中只有通讯级同步报文,本文将通讯级的同步上升到驱动控制中断(PWM中断)的同步上。

2系统结构

本文将基于IEC61800-7针对驱动封装底层通讯,并提供统一的驱动应用层接口。其通讯模型架构和硬件平台如下文所示。

2.1通讯模型架构

该驱动器的通信模型分为物理层、协议层、接口层和驱动应用层。整体的架构图如图3所示。

物理层位于最底层,包括以太网硬件接口(如PHY芯片)和CAN硬件接口,用于将总线数据通过网线硬件与协议栈交互。

协议层位于物理层与接口层之间,包括Powerlink、EtherCAT和CANOpenCia301协议栈。该层将上层对象集合按照各自的协议进行打包发送给物理层,并将物理层的数据解包后发送给接口层;提供接口层可以访问的接口。在报文解析上,三个总线各不相同,需要针对驱动进行一定的裁剪和统一,比如EtherCAT支持多种通讯协议,如SERCOSonEtherCAT(SOE)、EthernetOnEtherCAT、CANOpenonEtherCAT(简称COE)、FileOnEtherCAT(FOE)。这里选择Cia301为上层通讯协议。IEC61800-7-301对Cia301的映射有详细描述,它包括对象字典、周期通讯对象PDO、非周期通讯对象SDO以及它们的链路定义等,这是统一应用层协议Cia402的基础。

接口层包括函数接口、对象集合和对象字典。函数接口用于实现对通信类型的设置,访问协议层,进而进行通信参数的配置、对象字典的访问与管理、对协议栈的状态进行管理以及对同步中断和异步中断进行处理。对象字典主要分为IEC61800-7-301和IEC61800-7-201定义。

驱动应用层位于接口层的上方,用于实现IEC61800-7-201协议。应用协议的统一是驱动器集成多种工业总线的最终目的。IEC61800-7-201定义了驱动的10种工作模式、核心控制状态机。其中同步周期位置/速度/转矩模式为后来新增,由于Powerlink和EtherCAT接口的同步性较好,这些模式应用广泛。而CANOpen接口,因其通讯速度以及同步精度的原因,不适合同步周期模式,但可以用插补位置模式替换。各种模式均由主站配置使用。

2.2平台搭建

本系统采用基于ZynQ硬件平台搭建,如图4所示。ZynQ是一款集成了ARMcortexA9和FPGA的芯片,比较适合做带总线通讯的应用。Powerlink与EtherCAT的网络硬件可统一(均支持MII、RMII接口)。三种总线从站均采用FPGA实现。其中,CANOpen只用了FPGA中的软核Microblaze,并未用FPGA资源;Powerlink则即使用FPGA实现OpenHUB转发以太网报文和OpenMAC管理MAC的功能,又使用软核Microblaze实现报文解析;EtherCATIP则通过FPGA实现分布时钟DC、地址映射管理FMMU、同步管理器SM等功能。各总线需要提供符合AXI的接口供ARM使用。

ARMCortexA9中,则包括:用来实现伺服应用程序ServoApp;封装隔离总线的接口层Interface;三种总线的库如CANOpenLib等,则提供了协议栈相关的处理以及对FPGA接口的访问。该方案可使用单芯片即实现了常用总线的集成并可根据现场应用来切换。

3接口定义

根据以上技术方案,本节对接口层实施进行详细说明。接口层是本方案的重要组成部分,可分为数据接口与函数接口。

3.1对象字典与对象集合

数据接口包括前述的对象字典和对象集合,对象集合是对象字典的实例。其中对象字典主要包括对象定义,如类型、索引、长度、读写属性等。如前所述,包括Cia301和Cia402两大类对象定义,前者和通讯参数、映射相关,后者和驱动应用相关。IEC61800-7-301基于Cia301针对

CANOpen、Powerlink、EtherCAT总线分别提供了更具体的映射定义,如DeviceType定义、数据类型定义等。本文在实例化对象时,Cia301中的对象按三种总线中子索引最多的定义;Cia402对象则直接可以统一的。Cia402中的对象由主站决定哪些映射到PDO哪些可以被SDO访问。

伺服驱动所用到的Cia402对象集合,如图5所示,它不包含速度模式(VelocityMode)。对象字典定义为结构体类型,其主要的大结构体均参照Cia402中的分类。

其中,

(1)DeviceControl包含了控制字与状态字,以控制设备的主状态机;

(2)CSP_Mode为周期位置模式相关对象;

(3)CSV_Mode为周期速度模式相关对象;

(4)CST_Mode为周期转矩模式相关对象;

(5)FactorGroup即比例因子的换算相关对象;

(6)GeneralInfo为伺服、电机信息的相关对象;

(7)HommingMode为回零模式相关对象;

(8)InterpolatedPostionMode为插补位置模式相关对象;

(9)PorfilePositionMode为轮廓位置模式相关对象,跟周期位置比,它还包含、轨迹控制和加减速控制;

(10)PositionControlFunction为内部位置控制功能,对位置环加以检测和限制。

(11)ProfileTorqueMode为轮廓转矩控制,对转矩加减速曲线控制;

(12)ProfileVelocityMode为轮廓速度控制,对速度曲线控制。

此外,需要在IEC61800-7-201中自定义对象(0x2000为起始地址)增加了通信类型对象、系统配置和同步延迟补偿对象。系统配置对象主要有节点号(只Powerlink、CANOpen有用)、软件版本号、VendorID、ProductID等。

3.2函数接口

函数接口对底层协议栈进行封装管理,屏蔽驱动不用的接口,如Ethernet、SOE协议、FOE协议等,以及EtherCAT的自由运行模式等。并增加驱动同步接口。归纳并统一的驱动用到的接口(为简化忽略数据参数)。

(1)CommHwInit():负责通信类型设置,以及通信相关硬件的设定与初始化;

(2)CommStackInit():负责协议栈初始化,比如对象字典、状态机、通信相关参数的设定、伺服配置参数等;

(3)CommProcess():维护协议栈状态,如网络状态机、SDO状态机、出错处理等;

(4)CommExit():退出协议,清除资源;

(5)CommSyncHdl():同步中断;

(6)CommSyncCompensation():同步中断中告知驱动同步补偿;

(7)CommPDOCallback():同步中断中交换生效周期性控制数据;

(8)CommAsyncHdl():异步中断,包含异步事件,如周期性控制数据就绪、非周期SDO事件;

(9)CommSDOCallback():异步中断中,非周期控制数据交换成功后的回调;

(10)CommState():获取通讯状态。

实施时,CANOpen、Powerlink、EtherCAT均需要把上面的接口按照自己的协议和硬件实现一遍。驱动器整体初始化流程示意图如图6所示。首先通过接口CommHwInit初始化通信类型及相关硬件接口,使能同步中断和异步中断。接着,通过函数接口CommStackInit初始化协议栈相关参数、状态、对象字典。然后,函数接口CommProcess在后台周期性地执行维护网络状态机,并等待中断。主站可通过数据帧切换从站的网络状态机、配置要使用的对象集合。若出现协议栈规定的应用错误,则将错误的数据对象(0x603F对象)反馈给主站,从站进入相应的Cia402状态;若是通讯错误,则网络状态机退出操作状态;若是无法恢复的系统错误,则需调用CommExit函数接口。

驱动需要通过CommState监视通讯状态。三种协议都有两个核心状态机,一个是网络状态机,一个是Cia402应用状态机。它们的网络状态机由主站进行切换,包括4个主要状态组成,如表1所示。应用层的接口状态则可简化为初始化状态、预操作状态和操作状态。驱动应用层周期地查询状态,并做相应的操作。初始化状态可初始化协议栈,驱动应用层可进行自身初始化并等待协议栈成功返回。在预操作状态可通过非周期通信对驱动进行配置,在操作状态时则可进行应用层操作、运行驱动。通讯出错时,若是操作状态,则协议层切换状态为非操作状态,驱动应用层检测到变化则会进入应用状态机的错误状态。SDO状态机和出错处理还是保留原来各协议栈自己的处理方法,但需要向驱动应用层提供对象操作完成的事件和信息。

3.3同步及中断处理

在多个轴通讯时,需要在通讯层将数据同步,然后将PWM输出与通讯同步起来。如图7所示,通讯中断通常包含两个中断,一个是同步中断,一个是异步中断。PWM中断是伺服控制电机的核心中断,中断优先级最高,且周期最短,比如50us。通讯同步中断周期长点,优先级次之,周期较长如1ms。同步中断用来将各个从站的数据同步。对于Powerlink总线和CANOpen总线而言,该信号由同步数据包(Powerlink中的SOC报文、CANOpen中的Sync报文)产生,对于EtherCAT总线而言是由分布时钟DC产生,它由带时间戳的报文调整。其中Powerlink和EtherCAT的通讯层同步精度<1μs。

异步中断主要由一定的事件触发,Powerlink、EtherCAT均可灵活配置,这里配置为典型的接收到数据的事件,即收到周期数据触发异步中断。

接口层中断函数的处理,三种总线一致。主站下发数据时,从站在异步中断中收到数据,若是周期数据(RxPDO)则放入应用层缓冲区,否则提供非周期控制数据(SDO)并对驱动应用层提供回调接口,告知驱动应用层异步数据就绪;当同步中断到达时,将数据拷给应用层并生效。从站上发数据时,则在同步中断里,把反馈数据拷贝到协议栈缓冲区;协议栈在上发下一个数据帧时(EtherCAT的上发数据帧与下发数据帧可为同一帧)从协议栈缓存区中读出该周期性反馈数据,并进行封装处理后送到网络硬件接口。

驱动器的驱动应用层并不需要知道太多通信的细节,只需要在需要时调用上面的接口即可。实施时的中断示意图如图8所示。

同步中断信号到达时,系统进入中断处理函数CommSyncHdl。为考虑通信中断被PWM中断打断的情况,驱动应用层需要在此通过CommSyncCompensation读取同步补偿值,该同步补偿值即协议栈收到同步中断信号的时刻与驱动器进入同步中断服务程序的时刻之间的差值。驱动应用层用该同步补偿值调整PWM周期,以使同步中断在PWM中断的空闲时间的中间,同时该PWM中断为整个电流环的起始周期。这样网络内多个轴的同步依赖于PWM中断的同步,而PWM中断又同步于通讯同步中断函数,从而可以达到多轴的同步执行。图中,CommPDOCallBack负责同步交换数据。

异步中断比同步中断优先级低,异步中断数据帧到达时,进入异步中断处理函数CommAsyncHdl,对异步事件处理,异步事件包括异步数据接收开始、接收完成等事件,异步数据接收完成修改Cia402对象,并调用CommSDOCallback通知驱动应用层。

3.4实验

平台搭建:贝加莱控制器(Powerlink主站)、倍福控制器(EtherCAT主站)、台达控制器(CANOpen主站)分别连接6台伺服,每台伺服将PWM中断从IO1引脚同步输出。

以倍福控制器为例,在测试过程中,用示波器探头分别测试伺服的IO1输出,查看伺服PWM同步偏差,如图9、图10分别为2台和6台伺服驱动器的测试波形图,每张图的上部为PWM中断,高电平为进入PWM中断并处理,下部为上升沿放大后的图形。可见PWM级别的同步分别为±200ns和±800ns。Powerlink总线和Canopen总线测试过程与之相同。

汇总测试数据如表2所示:

通过测试数据可以看出,在本方法下,所集成的三种工业总线的同步精度都达到了很高的水平,完全可以满足工业级控制要求。也满足6轴的工业机器人应用。

4结论

在工业网络化发展的背景下,多种总线并存增加了驱动器网络化的阻力,将多种总线集成到一个驱动器内就显得非常必要。本文在伺服驱动器中将常用的Powerlink总线、EtherCAT总线和CANOpen总线集成,使单一产品可以应对多种主站控制器。在特定的应用场合可以发挥各自的优势,从而能够更加方便的完成控制任务。

本文提供基于IEC61800-7-301、IEC61800-7-201的统一架构。也验证了基于标准实现的伺服状态机、各种模式控制的可行性。最终通过实验证明,该面向驱动的架构,具有很好的PWM同步性能。此技术方案具有以下优点:

(1)针对Powerlink总线、EtherCAT总线和CANOpen总线采用了统一的对象字典与对象、提供了统一的函数接口,隔离了通讯协议;

(2)使得驱动器可以同时支持多种工业总线,扩展了应用领域,并可加快开发流程,降低开发成本;

(3)基于标准开发驱动器,驱动应用层直接采用Cia402对象及状态机作为其核心结构,使得开发维护成本大大降低,可根据Cia402的应用标准做驱动的各种应用,如状态机、位置、速度、转矩模式的运行,而不是只作为驱动的数据接口,从而规避了协议转换的麻烦,同时传输效率更高;

(4)面向驱动器的应用层提供了同步中断处理和异步中断处理的函数接口,支持多个驱动的同步;

(5)统一Powerlink总线和EtherCAT总线的网络硬件接口,并验证可行。从而可重用硬件接口。

标签:

点赞

分享到:

上一篇:伺服控制系统在数控机床中的...

下一篇:Q 240超高频RFID读写头在一汽...

中国传动网版权与免责声明:凡本网注明[来源:中国传动网]的所有文字、图片、音视和视频文件,版权均为中国传动网(www.chuandong.com)独家所有。如需转载请与0755-82949061联系。任何媒体、网站或个人转载使用时须注明来源“中国传动网”,违反者本网将追究其法律责任。

本网转载并注明其他来源的稿件,均来自互联网或业内投稿人士,版权属于原版权人。转载请保留稿件来源及作者,禁止擅自篡改,违者自负版权法律责任。

网站简介|会员服务|联系方式|帮助信息|版权信息|网站地图|友情链接|法律支持|意见反馈|sitemap

传动网-工业自动化与智能制造的全媒体“互联网+”创新服务平台

网站客服服务咨询采购咨询媒体合作

Chuandong.com Copyright ©2005 - 2025 ,All Rights Reserved 深圳市奥美大唐广告有限公司 版权所有
粤ICP备 14004826号 | 营业执照证书 | 不良信息举报中心 | 粤公网安备 44030402000946号