一种混合型可重构CANopen从站的自动配置方法与流程

文档序号:12175506阅读:365来源:国知局
一种混合型可重构CANopen从站的自动配置方法与流程
本发明属于数控系统
技术领域
,更具体地,涉及一种混合型可重构CANopen从站的自动配置的实现方法。
背景技术
:CANopen是一种架构在控制局域网路(ControllerAreaNetwork,简称CAN)上的高层通讯协定,作为统一的应用层已被许多主流总线采用,但遵循CANopen规范的设备功能趋于标准化单一化,无法满足数控系统领域的一些需求。例如专利“一种支持多功能模块的总线式PLC单元”(201220701108X)提出的总线单元即是一种集成了各类IO、编码器、脉冲伺服的混合型可重构设备,统一时钟即可简单解决原来复杂的多个从站同步的问题,高集成度的另一优点就是更高的可靠性。然而,现有CANopen规范对这类混构型设备的支持不足。首先CANopen预留的实时数据通讯能力不足,CANopen规定每个从站设备最多可以有4对通信对象ID(CommunicationObjectIdentify,简称COB-ID),即一个从站最多支持4对实时过程数据(ProcessDataObject,简称PDO)传输,按照每个PDO最多8字节数据计算,每个从站最多提供来回各32字节的数据通讯,但如果专利“一种支持多功能模块的总线式PLC单元”中设备8个插槽全部插4入4出16位(2字节)模拟量IO卡,则需要来回各2*4*8=64字节的通讯量,很明显预定义的4对PDO无法一次完成64字节数据的传输,虽然专利“用于CANopen网络的控制系统”提出了一种优化单个节点的数据传输能力的方法,该专利内容过于简单,只在
背景技术
[0006]提及了COB-ID的限制,其技术方案只在[0032]处“本发明采用了一种对主站的配置方法,可以根据CANopen网络的实际应用范围灵活更改COB-ID的分配方法和网络内支持最大节点的数量,实现CANopen通信节点的通信数据量和能力的优化”,即不涉及对象字典定义,也未公开COB-ID的分配方法,更没有考虑与现有标准兼容性,因此不具有可实施性;此外其应用领域为较空泛,CANopen在各类控制系统的应用数不胜数,在“控制系统”范畴内该专利创新性也无法体现。其次,CANopen配置的自动化程度不足,CANopen规范没有涉及设备的自动配置,对单一化的CANopen从站,由于其完全符合标准因此自动配置难度不大,但对于混合型设备则尚未有自动配置方法。当然手工配置是可能的,但手工配置对现场应用工程师要求非常高,不仅需要理解CANopen总线的工作和配置原理,还要非常小心处理几十至数百条配置报文,一处错误即可造成总线工作错误且极难排查;而且存在修改异常困难,只要应用发生一点变化,比如增加或减少一个IO板配置过程就需要全部修改。技术实现要素:针对现有技术的以上缺陷或改进需求,本发明提供了一种混合型可重构设备的CANopen网络的自动配置方法,其目的在于,解决现有配置方法中存在的对混合型可重构CANopen设备的支持不足,即单节点实时数据通讯能力不足以及自动化配置程度不高等技术问题,简化配置流程,提高网络配置效率。为实现上述目的,按照本发明的一个方面,提供了一种混合型可重构CANopen从站的自动配置方法,包括以下步骤:一、从站侧:(1)判断CANopen从站的功能板卡信息是否已经获取完毕,若已获取完毕,则进入步骤(2),否则依次扫描各功能板卡,识别各功能板卡的数量,以及CANopen从站的内部总线插槽上每个插槽插入的板卡的类型,然后进入步骤(2);(2)判断功能板卡中是否有数字量输入/输出板卡,若没有则进入步骤(4),有则进入步骤(3);(3)根据数字量输入/输出板卡的数量,为每个数字量输入/输出板卡分配COB-ID,并为每个数字量输入/输出板卡设置默认PDO参数,然后进入步骤(4);(4)判断功能板卡中是否有模拟量输入输出板卡,若没有则进入步骤(6),有则进入步骤(5);(5)根据模拟量输入输出板卡的数量,为每个模拟量输入/输出板卡分配COB-ID,并为每个模拟量输入/输出板卡设置默认PDO参数;(6)判断模拟量输入输出板卡中是否有轴控制卡,若没有则过程结束,有则进入步骤(7);(7)根据轴控制卡的数量(1个板卡数据需要1个对PDO来传输)为每个轴控制卡分配COB-ID,并为每个轴控制卡设置默认PDO参数,过程结束;二、主站侧:(1’)判断是否CANopen主站的所有设备已经配置完成,若未完成则进入步骤(2’),否则过程结束;(2’)循环扫描CANopen从站的各从节点号,其中若从节点号不在从站列表中,则扫描下一个从节点号,若存在进入步骤(3’);(3’)判断从节点类型,若从节点为标准DS402设备,为此从节点分配相应对象字典入口,若设备为混合型从站或者标准的DS401设备,则根据从站的各种IO的数量,为该从节点分配对象字典入口,然后返回步骤(2’)继续扫描剩余从节点号。本发明提供的可重构设备的CANopen网络自动配置方法包括:主站自动配置方法:主站综合系统中主站对象字典及每个从站的设备号、对象字典、类型、硬件构成等信息,计算得到整个总线的过程数据通讯模型,组态工具将该模型形式化后添加到主站对象字典0x1F22DCF入口,主站软件编译成主站运行时系统下载到主站设备上,主站运行时系统上电启动时将根据该入口对总线各个从站设备做过程数据的初始化,完成整个系统的过程数据通讯模型的建立,各设备进入工作状态后,系统即可基于过程数据进行实时通讯;从站自动配置方法:混构型从站上电后首先扫描内部构成,即识别内部总线插槽上插入的是何种类型板卡,根据不同类型板卡需要的过程数据量,分配COB-ID并进行PDO映射,从站根据其板卡构成按照一定规则进行自动配置,可大大减少主站配置工作量,减少系统启动后的配置时间,提高效率。总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:1、本发明能够解决现有方法中存在的单节点实时数据通讯能力不足的技术问题:由于CANopen标准中预定义了PDO总数有限,分配给每个节点的PDO只有4对,对于数据量较大的从站设备无法正常配置使用,因此本发明提出了一种抢占其他多余节点号PDO资源的方式来提高混构型从站的通讯能力。2、本发明能够解决现有方法中存在的对混合型CANopen从站配置自动化程度不高的技术问题:由于混合型CANopen设备并没有标准来支持,目前也没有自动配置这类设备的方法,需手动去配置,因此本发明提出的一种自动配置方法,可大大减少主站配置工作量,减少系统启动后的配置时间,提高效率。附图说明图1是依照本发明实施例的混合型可重构CANopen从站硬件结构示意图。图2是本发明混合型可重构CANopen从站的自动配置方法的流程图。图3是本发明数控系统领域的混合型可重构总线单元的对象字典结构示意图。图4是本发明主站自动配置算法的示意图。图5是以9个标准设备和若干个混构型从站为例的主站对象字典示意图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。针对上述CANopen在数控系统领域应用的几个问题,本发明提出了通过节点号抢占的方法扩充实时数据的通讯能力;提出了主站利用对象字典地址分段根据设备类型进行自动配置的算法以及从站根据功能板卡类型自动配置PDO的方法,为数控系统标准化奠定了重要技术基础。下面结合附图和实施例对本发明作进一步的描述。图1为依照一个实施例的混合型可重构CANopen从站硬件结构示意图,实施例中混合型可重构CANopen从站1个由底板、1个总线通信板和8个功能板(目前支持4种功能模块:16路数字量输入(PNP和NPN型)、16路数字量输出(PNP和NPN型)、4路12位模拟量输入输出、2路轴控制卡)组成。其中总线通讯板负责CANopen总线管理、各功能板卡数据交互、PDO自动配置。总线进入工作状态后,各站点的过程数据通过PDO对象进行实时传输,PDO定义是总线应用的基础。各功能卡需要将其输入输出数据通过总线传输,16位数字量输入卡每个通讯周期可采集16位即2字节的数据,一个PDO共8个字节,因此1个RPDO(发送PDO)即可处理4块数字量输入卡的全部数据;16位数字量输出卡每个通讯周期可输出16位即2字节的数据,因此1个TPDO(接收)也可处理4块数字量输出卡的全部数据;4路12位模拟量输入输出卡每个通讯周期采集4*16位即8字节的数据、以及输出4*16位即8字节的数据,因此需要一个TPDO和一个RPDO;2路轴控制卡每个通讯周期同样采集4*16位即8字节的数据、以及输出4*16位即8字节的数据,因此也需要一个TPDO和一个RPDO。因此根据每种功能卡所需数据量的不同,所需PDO数如表1所示:表1不同功能板卡所需PDO数目为了减小简单网络的组态工作量,CANopen定义了缺省标识符(COB-ID)分配表。这些标识符在预操作状态下可用,通过动态分配可以修改缺省值。COB-ID包含一个4位的功能码(区分通讯对象,如SDO发送:1011;SDO接收:1100)和一个7位的节点ID(Node-ID)。CANopen标准支持127个节点、每个从节点4个接收PDO、4个发送PDO,相应分配有2*4个COB-ID,每个COB-ID本质上对应一个过程数据的通道,在总线进入工作状态后CANopen设备之间通过以COB-ID为标识的过程通道进行实时数据传输。如果混构型设备插满模拟量卡或轴卡,则产生的过程数据量超过了2*4个PDO,但如果总线上没有127个节点,则其他节点的PDO及COB-ID也被浪费了,因此申请人提出可以占用这些节点的PDO及COB-ID给数控从站使用,具体分配方法如表2所示。表2PDOCOB-ID分配一览表PDO类型标准PDOCOB-ID抢占后PDOCOB-IDTPDO1(发送)180+Node-ID180+Node-IDTPDO2(发送)280+Node-ID280+Node-IDTPDO3(发送)380+Node-ID380+Node-IDTPDO4(发送)480+Node-ID480+Node-IDTPDO5(发送)无4C0+Node-IDTPDO6(发送)无3C0+Node-IDTPDO7(发送)无2C0+Node-IDTPDO8(发送)无1C0+Node-IDRPDO1(接收)200+Node-ID200+Node-IDRPDO2(接收)300+Node-ID300+Node-IDRPDO3(接收)400+Node-ID400+Node-IDRPDO4(接收)500+Node-ID500+Node-IDRPDO5(接收)无540+Node-IDRPDO6(接收)无440+Node-IDRPDO7(接收)无340+Node-IDRPDO8(接收)无240+Node-ID上述分配方法的本质是一个数控从站占据了两个节点的PDO及COB-ID,假设混构型从站节点ID为3,则标准分配的4个TPDO的COB-ID分别为:0x183、0x283、0x383、0x483。而占用空闲的TPDO后得到新的8个COB-ID分别为:0x183、0x283、0x383、0x483、0x4C3、0x3C3、0x2C3、0x1C3,从概念上说0x1C3=0x180+64+3相当于抢占了67#设备的0x180的COB-ID,这样混构型从站可以支持8对PDO接收和发送,扩充了从站通讯能力满足了混构型从站的通讯需求。总线上除了不能使用67#节点号以外其他设备不受任何影响,总线性能也不会有任何损失。3#设备的8个COB-ID不按大小顺序而是按照自己分得、抢占而得的顺序进行分配,而且对67#设备的COB-ID按逆序依次进行抢占。因此,如果混构型设备的过程数据不超过4对PDO,则不必抢占64+I#的COB-ID;如果I#超过4对PDO,而I#与64+I#设备占用PDO总数不超过8个,仍然可以使用64+I#设备号;只有两者PDO之和超过8对时,64+I#设备才会收到影响。此方法通过抢占其他多余节点号COB-ID资源的方式提高了混构型从站的通讯能力,也优化了单个的节点的数据传输能力,而且本发明涉及的装置本来就是以提高集成度和可靠性为目标的混构型数控从站,集成度的增高必然带来所需从站数的减少而产生多余的节点号。本发明最大程度的与CANopen规范相吻合,对标准设备无需任何修改,对应用开发影响微乎其微。图2为示出依照一个实施例的自动配置方法的流程图。参照图2,本发明混合型可重构CANopen从站的自动配置方法包括以下步骤:(1)判断CANopen从站的功能板卡信息是否已经获取完毕,若已获取完毕,则进入步骤(2),否则依次扫描各功能板卡,识别各功能板卡的数量,以及CANopen从站的内部总线插槽上每个插槽插入的板卡的类型,然后进入步骤(2);(2)判断功能板卡中是否有数字量输入/输出板卡,若没有则进入步骤(4),有则进入步骤(3);(3)根据数字量输入/输出板卡的数量(大于4则需要2对PDO来传输),为每个数字量输入/输出板卡分配COB-ID,并为每个数字量输入/输出板卡设置默认PDO参数,然后进入步骤(4);(4)判断功能板卡中是否有模拟量输入输出板卡,若没有则进入步骤(6),有则进入步骤(5);(5)根据模拟量输入输出板卡的数量(1个板卡数据需要1个对PDO来传输),为每个模拟量输入/输出板卡分配COB-ID,并为每个模拟量输入/输出板卡设置默认PDO参数;(6)判断模拟量输入输出板卡中是否有轴控制卡,若没有则过程结束,有则进入步骤(7);(7)根据轴控制卡的数量(1个板卡数据需要1个对PDO来传输)为每个轴控制卡分配COB-ID,并为每个轴控制卡设置默认PDO参数,过程结束。从站根据其板卡构成按照一定规则进行自动配置,可大大减少主站配置工作量,减少系统启动后的配置时间,提高效率。基于现场总线标准应用层CANopen的总线型数控系统,就是使用对象字典设计数控系统主从站数据结构,利用CANopen定义数控系统主从站间的过程数据通讯模型。数控系统的主站为执行插补运算的IPC,从站为伺服驱动器和IO单元等设备,主从站之间的过程数据通讯由CANopen的PDO报文实现。针对数控系统领域的混合型可重构总线单元,发明人提出了如图3所示的对象字典结构。其中数字量IO和模拟量IO采用了标准设备子协议区,使用的6100\6300\6401\6411等入口与标准DS401兼容,分别对应读写16位数字量、读写16位模拟量等(华中数控HIO1000IO板卡以16位为单位,可根据设备实际情况修改),而对于数控系统领域的伺服轴和编码器反馈,则采用了制造商指定的子协议区,按照每个设备共16个伺服轴进行设计(华中数控HIO1000插满轴卡共支持16个轴,可根据设备实际情况修改),每个轴采用U16类型的数据结构来保存脉冲数(也可改为U32类型)。基于现场总线应用层的软PLC编程系统在系统组态时,需要综合系统中主站对象字典及每个从站的设备号、对象字典、类型、硬件构成等信息,计算得到整个总线的过程数据通讯模型,组态工具将该模型形式化后添加到主站对象字典0x1F22DCF入口,主站软件编译成主站运行时系统下载到主站设备上。主站运行时系统上电启动时将根据该入口对总线各个从站设备做过程数据的初始化,完成整个系统的过程数据通讯模型的建立,各设备进入工作状态后,系统即可基于过程数据进行实时通讯。总线型数控系统即可按照上述组态、编译、下载、启动、初始化到最后工作状态的过程,也可忽略例如组态、编译等步骤根据系统参数按照相同原理进行配置。主站自动配置算法如图4所示。其自动配置流程如下:1、判断是否所有设备已经配置完成,未完成则进入步骤2,否则结束配置。2、循环扫描各从节点号,若从节点号不在SlaveIDs(从站列表)中,扫描下一个从节点号,若存在进入步骤3。3、判断从节点类型,若从节点为标准DS402设备,为此从节点分配相应对象字典入口,若设备为混合型从站或者标准的DS401设备,根据从站的各种IO的数量,分配对象字典入口,然后跳转到步骤2继续扫描剩余从节点号。数控系统对象字典可以支持的最大轴数和IO点数所需的过程数据容量不能超过CANopen定义的512个PDO,因此数控系统主站对象字典过程数据区容量是有限的。考虑到总线上既有标准设备又有混构型总线单元,为简化配置需要在主站中对这两类从站设备进行分区,图5是以9个标准设备和若干个混构型从站(总轴数小于16、总IO点小于32*16个、总模拟量小于32路,均可扩充)为例的主站对象字典。主站对象字典过程数据包括轴、数字量和模拟量共三个区,均使用设备商指定的子协议区,其中在轴数据区分成左右两个分段,左边是与标准总线设备进行通讯的数据区,而右段则分配给混构型从站。“AxisType”定义了从站类型,对数据系统预先支持的从站类型可以自动配置,例如标准CANopenDS402伺服轴类型为2,而混构型从站规定为1。关于设备类型需注意以下几点:1.设备号从2开始。定义1#设备作为数控系统主站IPC,从站从2#开始,这样数据区的子入口号=设备号-1;2.并非必须分段。如果系统中没有混构型设备(或有但过程数据量不超过4对PDO且无轴卡),则该系统与普通CANopen总线的配置方法一致;3.如果系统中有混构型设备,则分段可简化配置。此时前9项可对应具体的从站设备需要配置,后16项按照规则自动分配给混构型从站的轴卡不需配置。4010-4015入口定义了伺服轴的过程数据区,简称轴过程数据区,其中前3项定义的是数控系统下发的指令位置及控制字,后3项定义的是伺服轴的实际位置与状态字。指令位置和实际位置采用2个U16共32位以与标准DS402伺服兼容(混构型设备上的脉冲伺服轴为U16类型,只需低16位即可)。如果系统中只有标准从站而无混构型从站,则这25个入口可全部分配给标准从站,如果从站是DS402伺服则其设备号对应的子入口即用于该伺服轴的过程数据区,如果从站是DS401的IO设备,则设备号对应的轴过程数据区子入口空闲不做分配。混构型从站如果不插轴卡就是DS401设备,因此可将两种设备类型统一。在实现上标准DS401设备和混构型从站都使用一个名为“HIOComposition”的数组描述其内部构成,该数组每项为U16类型,每4位一段共4段,前3段分别表示数字量占用的U16数、模拟量占用的U16数和轴数,最后一段未用。例如0x01040200表示HIO1000上插入了1对数字量IO卡,一块模拟量IO卡和1个轴卡,而一个16位IO加2路模拟量的DS401设备HIOComposition为0x01020000。这个数组即可以扫描从设备上读到(需从站支持),也可在组态时手工输入。如果系统中有插轴卡的混构型从站,则其设备号不能选择11-26之间(这些设备号会分配给混构型从站的轴卡),例如第一个混构型从站设备号为2,则相应的轴过程数据区子入口01将空闲不会分配,如果该设备上插有1块轴卡共两个伺服轴,则这两个轴分配设备号11和12,占用相应子入口(0x0A和0x0B)的轴过程数据区。按设备号排序的第二个混构型从站,也会将设备号对应的过程数据区空闲,如果也插有轴卡,也会按照顺序在混构段分配设备号并占用过程数据区(例如插了2块轴卡则4个轴分配为13-16设备号),直到所有设备已分配或过程数据区已满,配置结束。如上所述,混构型从站中的伺服轴与标准DS402伺服轴的配置动作差别明显。DS402从站的设备号与其占用的过程数据区一一对应,而混构型的设备号对应的子入口空闲不用,它占用的过程数据区根据其插入的轴卡自动分配。如果系统中既有标准从站又有混构型从站,由于主站OD对数据区进行了分段,可以按照各自的配置动作分别处理而不会冲突。混构型从站不能选择会被分配给混构段轴卡的设备号并空闲了一个子入口,根据插入轴卡的数量占用混构段轴数据区,标准从站也不能选择会被分配给混构段轴卡的设备号,占用(DS402)或空闲(DS401)相应的子入口。当然上述分段分配方法是以总数不超过16个轴的混构型从站及小于9个的标准从站为例进行描述的,应用开发者可对该主站结构进行扩展增加新的入口,这些新增的入口即可以按照类似方法以分段方式进行分配,也可不做修改的分配给标准从站设备使用。本方法并非简单的人为约定。首先CANopen标准内容看似CiA的主观定义(例如报文长度、对象字典大小等),但事实上每个细则都是巧妙和实用的,与工业现场实际需求和现有技术水平相匹配的,所有遵循该标准的工业设备构成的工业现场应定义为客观存在,而CANopen与数控系统需求不符之处也属客观问题。本申请提出的地址分段方法,是在对现有标准做尽量小的修改的条件下,尽可能简化配置以实现配置过程自动化。在实践中用尽可能简单的方案来满足千差万别的应用需求并不简单,本申请提出的地址分段配置方法正是总线型数控系统的关键技术。对于数字量和模拟量的过程数据,由于混构型从站使用了与DS401标准兼容的子协议区入口,因此在主站看来这两类设备无任何区别。这样主站DIO和AIO数据区不需分段,所有设备统一分配因此子入口与设备号也无对应关系,如果过程数据小于4队PDO也不会存在节点号占用,对总线无任何影响。本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1