基于Canopen协议的运动控制系统设计

合集下载

基于CANopen协议的轮式机器人控制系统实现

基于CANopen协议的轮式机器人控制系统实现

2.3 软件设计 电机控制的通信流程。首先,通过ELMO自带的配置软件将各个电机驱动器的节点配置完成并检查电路无误后上电,DSP经过相关初始化后等待各个节点返回的boot-up信息,等待完毕后通过SDO写入各个节点的参数配置并将各节点的状态转变为操作状态,之后通过PDO获取相应信息或者发送控制命令。2.4 实验验证 首先验证电机的同步启动问题。为了能更加清晰地观察多电机控制效果,在给每个电机发送控制命令之间引入较大的时间间隔,如5 s。当用串口控制时,可以清楚地观察到一个电机是在另一个电机启动后5 s才启动的,而用CAN总线和CANopen协议控制时,虽然每个电机接收到启动命令具有5 s的间隔,但是在SYNC同步命令发送到总线之前,各个电机均不会启动,只会保存接收到的信息,等待DSP(即主站)发送统一的同步命令或其他更新信息。当每个电机的驱动器接收到SYNC同步命令后,所有电机同时启动。从这点上可以看出,基于CAN总线和CANopen协议的电机控制系统具有串口控制无法比拟的同步优势,这在机器人控制中是十分重要的,虽然在实际情况中,每个电机控制命令之间的间隔较短,但是具有同步控制的电机控制系统显然将会具有更高的控制精度。 再验证控制算法以及整个系统的可行性。将机器人置于坐标零点,角度偏差为0°,然后启动它追踪一条预定义的路径,该路径由两条直线和3个半圆构成,。该图中设定路径以实线表示,实际运动路径以点线表示,在最大速度为1 m/s的实验中,机器人对路径的跟踪效果良好,只是在路径的曲率变化处有一定的偏移,全局过程中偏移最大量仅12 cm,且最终的定位精度可以达到1 cm以内。
2.1.2 CANopen通信机制 CANopen通信模型定义了4种报文(通信对象):管理报文NMT、服务数据对象SDO、过程数据对象PDO以及特殊功能对象。NMT用来传递主节点对整个网络系统的管理信息。每个CANopen从节点都有初始化、预操作、操作和停止4个状态。NMT负责由组节点控制从节点在各个状态间的转换,。SDO用来传递网络系统中的配置信息。PDO用来实施传送过程数据信息。特殊功能对象用于同步、应急指示和时间标记对象。

基于canopen协议的移动机器人多电机控制系统

基于canopen协议的移动机器人多电机控制系统


基于 CANopen 协议的设备模型组成图
2009 年第 10 期
马宏伟等: 基于 CANopen 协议的移动机器人多电机控制系统
# 47 #
通信协定用于提供在总线上收发通信对象的服 务, 不同 CANopen 设备间的通 信是通过交换 通信 对象来完成的 , 这一部分直接面向 CAN 控 制器进 行操作。对象字典描述了 CANopen 设备使用的所 有数据类型、 通信对象和应用对象 , 对象字典位于通 信协定和应用程序之间, 用于向应用程序提供接口。 应用程序对对象字典进行操作 , 它包括功能部分和 通 信 部 分, 通 信 部 分 通 过 操 作 对 象 字 典 实 现 CAN open 通信, 而功能部分则根据具体的应用要求 来实现 。 CAN open 通过不同的通信对象来完成网络的 通信和管理 , 并通过 PDO、 SDO 及 NMT 等对象来 实现通信、 网络管理及紧急情况处理等功能。其中 , SDO 为 服 务 数 据 对 象 , 该 对 象 可 以 传 输 大 于 8 B 的数据信息 , 即 SDO 传送协议允许传送任意长 度的对象。在传送时, 发送和接收者间将建立点对 点的通信, 称之为客户机/ 服务器模式 , 发送者为客 户机 , 接收者为服务器。接收者每收到 1 个信息, 要 向发送者确认收到该信息。例如, 当写数据时 , 客户 端先发送一个标示被写对象的请求 , 服务器收到请 求后返回一个确认信息; 当要读数据时 , 客户端先发 送一个标示被读对象的请求, 服务器收到请求后返 回被读对象的数据, 如图 2 所示。
图2
SDO 通 信模型图
图 4 基于 CANopen 协议的多电机控制系统结构图
在通信 时, CANopen 的物理层 CANbus 每 次 传送的数据量不大, 其中包括 11 位元的 ID 、 远端传 输请求( RT R) 位元及大小不超过 8 位元的数据, 如 图 3 所示。 CANopen 将 CAN bus 11 位元的 ID 分 为 4 位元的功能码及 7 位元的 CANopen 节点 ID。 7 位元的 ID 共有 128 种不同的组合, 其中 ID 0 不使 用, 因此, 1 个 CANopen 网络上最多允许 127 台设 备。 CAN open 将 CANbus 的 11 位元 ID 称为通信 对象 ID ( COB- ID) 。当 传 输 数 据 出 现 冲突 时 , CAN bus 的仲裁机制会使 COS - ID 最小的信息继 续传送, 不用等待或重传。COB- ID 的前 4 个位元 是 CA Nopen 的功能码 , 因此 , 数值小的功能码表示 对应的功能重要 , 允许的延迟时间较短。

基于运动控制编码器的CANopen网络管理

基于运动控制编码器的CANopen网络管理

基于运动控制编码器的CANopen网络管理龚龙峰(广州虹科电子科技有限公司,广东广州)摘要本文介绍了一个基于运动控制编码器的CANopen网络管理系统。

CANopen是以CAN为基础的上层应用协议,利用CAN总线的优点为机械自动化设备提供高效、可靠、性价比高的解决方案。

目前CANopen协议是欧洲最重要的工业现场总线标准EN-50325-4。

CDM设备监测器具有自动扫描CANopen设备网络节点,灵活配置和管理CANopen网络,快速修改EDS文件,实现CANopen网络节点号与波特率在线配置,有效应用于各类CANopen运动控制编码器,目前该系统已经在多家工程机械机电一体化公司成功应用。

关键字CANopen网络管理,运动控制,编码器,CDM设备监测AbstractThis article introduces a CANopen network node manage system based on Motion control encoder. CANopen protocol is a CAN upper application protocol , and use the advantage of CAN bus,provide a efficient, reliable and cost-effective solutions for mechanical automation equipment. Nowadays CANopen protocol becomes the most important Industrial field bus standard EN-50325-4 in Europe. The CDM (CANopen Device Monitor) can automatically scan the CANopen device network node, agilely configuration and manage CANopen network, rapidly modify EDS file, implement online Configuration of node ID and baud rate in CANopen network, effectively apply to all kinds of CANopen motion control encoder. Nowadays, the manage system had been successfully applied by many engineering machineryand mechatronics company.Key wordCANopen network manage, motion control, encoder, CANopen Device Monitor1.引言在工业自动化控制行业中,具有无需断电保存,且抗干扰性能强等优点的运动控制编码器,通常应用在要求工作精度高的设备,尤其在工业控制场合中大量使用在手工机械,机床,机器手角度测量等。

基于CANopen协议的水下航行器控制系统现场总线应用设计

基于CANopen协议的水下航行器控制系统现场总线应用设计

!计算机测量与控制!"#"$!$%!&"!!"#$%&'()'*+%('#',&-!",&(".!#%"&!#收稿日期 "#""%%#*$!修回日期"#""%"#&%作者简介 卢绍庆!%)*'"&男&云南昆明人&大学本科&高级工程师&主要从事水下航行器自动控制技术及仿真技术方向的研究%引用格式 卢绍庆!基于<:@I 7G 2协议的水下航行器控制系统现场总线应用设计'+(!计算机测量与控制&"#"$&$%!&")%"&%$,!文章编号 %'*%,()& "#"$ #&#%"&#*!!-./ %#!%'("' 0!1234!%%5,*'" 67!"#"$!#&!#"#!!中图分类号 8c $)$!!文献标识码 :基于!2X "$',协议的水下航行器控制系统现场总线应用设计!!卢绍庆!中国船舶集团有限公司昆明船舶设备研究试验中心&昆明!'(#"%'"摘要 针对某高速水下航行器控制系统数据交换实时性需求&结合当前采用的,自定义<:@高层协议-存在的问题&为了解决系统稳定性&降低人为干扰因素&提高可靠性及后续网络扩展&分析了<:@现场总线技术及特点&提出一种基于<:@I 7G 2标准高层协议的水下航行器控制系统网络架构&研究了控制系统网络结构及特点&描述了主要网络节点的功能及任务&建立了<:@I 7G 2通信模型&制订了<:@I 7G 2高层通讯协议&在项目研制中应用实践&开展了系统性对比测试&实施了全航行器*满负荷水下实航试验$结果表明<:@I 7G 2控制网络运行快捷*稳定可靠&数据交换流畅&网络负载率仅为"%;)d &明显优于国际现场总线网络协会要求&适合推广应用至D D b 等多种水下航行器系统%关键词 水下航行器$现场总线$协议$<:@I 7G 22$$.34*&3",/'+37,"5E 3'.1G %+3,L ,1'(;*&'(S 'D 34.'!",&(".6:+&'#G *+'1",!2X "$',F ("&"4".B D[F ?I L 42A!<F 42?[F 47W >4O S 42A <I H 7I H ?64I 2K L >47M G 26^G Q G ?H 1F?2S8G Q 6<G 26G H &f >2M 42A!'(#"%'&<F 42?"28+&(*4&):4M 42A ?66F G H G ?O U 64M GS ?6?G Z 1F ?2A G H G L >4H G M G 26QI J ?F 4A F U Q 7G G S>2S G H V ?6G HN G F 41O G 1I 26H I O Q T Q 6G M &?2S1I 2Q 4S G H 42A 6F G 7H I W O G M Q G Z 4Q 642A 426F G 1>H H G 26j>Q G H U S G J 42G S<:@F 4A F U O G N G O 7H I 6I 1I O j &42I H S G H 6I Q I O N G 6F G Q T Q 6G MQ 6?W 4O 46T &H G S >1G F >M ?2426G H J G H G 21G J ?1U 6I H Q &?2S 4M 7H I N G 6F G H G O 4?W 4O 46T ?2S Q >W Q G L >G 262G 6V I H 3G Z 7?2Q 4I 2&6F G 6G 1F 2I O I A T ?2S 1F ?H ?16G H 4Q 641Q I J<:@J 4G O SW >Q ?H G ?2?O T \G S &?2G 6U V I H 3?H 1F 46G 16>H G I J >2S G H V ?6G H N G F 41O G 1I 26H I O Q T Q 6G MW ?Q G S I 26F G <:@I 7G 2Q 6?2S ?H S F 4A F U O G N G O 7H I 6I 1I O 4Q 7H I 7I Q G S &8F G 2G 6V I H 3Q 6H >16>H G 2S 1F ?H ?16G H 4Q 641Q I J 6F G 1I 26H I O Q T Q 6G M?H G Q 6>S 4G S &6F G J >2164I 2?2S 6?Q 3I J 6F GM ?422G 6V I H 32I S G Q ?H G S G Q 1H 4W G S &6F G <:@I 7G 21I M M >241?U 64I 2M I S G O 4Q G Q 6?W O 4Q F G S &6F G<:@I 7G 2F 4A F U O G N G O 1I M M >241?64I 27H I 6I 1I O 4Q J I H M >O ?6G S &6F G ?77O 41?64I 27H ?1641G 426F G 7H I 0G 16S G N G O I 7M G 264Q 1?H H 4G S I >6&6F G Q T Q 6G M ?6411I M 7?H 4Q I 26G Q 64Q S G N G O I 7G S &?2S 6F G J >O O O I ?S >2S G H V ?6G H 2?N 4A ?64I 26G Q 64Q 4M 7O G M G 26G S !8F G H G Q >O 6Q Q F I V 6F ?66F G <:@I 7G 21I 26H I O 2G 6V I H 3H >2Q J ?Q 6&Q 6?W O G ?2S H G O 4?W O G &Q M I I 6F S ?6?G Z 1F ?2A G &?2S 6F G 2G 6V I H 3O I ?S H ?6G 4Q I 2O T "%;)d &/64Q I W N 4I >Q O T Q >U 7G H 4I H 6I 6F G H G L >4H G M G 26Q I J 6F G /26G H 2?64I 2?O X 4G O S W >Q@G 6V I H 3:Q Q I 14?64I 2&?2S 464Q Q >46?W O G J I H 7H I M I 64I 2?2S ?77O 41?64I 26I >2M ?22G S >2U S G H V ?6G H N G F 41O G !D D b "?2S I 6F G H >2S G H V ?6G H N G F 41O G Q TQ 6G M Q !9':;"(1+)>2S G H V ?6G H N G F 41O G $J 4G O SW >Q $7H I 6I 1I O $<:@I 7G 2<!引言无人水下潜航器!D D b "是一种无人操控的自主潜航器&可以在无人控制的状态下全天候*多航时地自主完成水下任务&成为在民用领域和军用领域中重要的海洋开发和安全保障的工具'%(&在军事*水下探测*深海打捞救生和海洋科学调查等多学科均获得了广泛的应用%某高速水下航行器主要由控制系统*载荷系统*动力推进系统*能源管理系统和相关地面保障调试设备组成&各系统之间有大量信息数据需要进行实时交换&在以往的技术方案中&一般使用多种规格的线缆将各系统*组件*部件*传感器*执行机构等联接起来&由控制系统进行集中统一控制&分系统间通过扩展串行通讯接口进行数据交换%由于各系统间缆线很多&给开发*调试*故障排查*产品生产*装配*工艺控制等多方面带来了较大麻烦&而且普通串行通讯普遍存在抗干扰能力弱*数据容量小*实时性差*网络故障后容易瘫痪等问题'"(%为了提高整个系统的可靠性&降低大量线缆在生产调试时带来的工艺复杂性&减小信号间的串扰&提高系统间信息交换的实时性&在系统设计中采用了<:@现场总线技术&构建一个数据交换控制网络&将各系统*组部件*地面保障调试设备作为总线网络中的通讯节点&使各节点均能实时获得其他网络节点的信息数据&并对信息做出快速响应&从而可以较好地解决上述问题%网络化航行器控制系统设计过程中&涉及到如何高效!投稿网址 V V V!0Q 01O T3\!1I M Copyright ©博看网. All Rights Reserved.第&期卢绍庆)基于<:@I 7G 2""""""""""""""""""""""""""""""""""""""""""""""""""""协议的水下航行器控制系统现场总线应用设计#%")!#率*无差错地自动管理*调度*分配<:@网络数据&需要进行系统性地研究设计%根据/K <'%%(&中国际电工委员会的相关定义&现场总线是一种串行方式传输*多点通信的数字式数据总线&工作于制造过程及现场区域的设备装置与控制室内的自动化系统之间的通信总线'$($德国P I Q 1F 公司推荐了<:@现场总线&按照国际.[/标准规范要求&由应用层*数据链路层和物理层组成&是一种支持实时控制网络的分布式串行数据总线',(&采用短报文帧进行传输&具有强抗干扰能力*高可靠性等特点&尤其适合工业化应用场景的开关量控制等多种环境'((%=!!2X 现场总线技术=>=!!2X 总线技术及高层协议<:@总线信号传输为双绞线&通讯速率最高为%R W 46+Q 时&通讯距离可达,#M &最多可挂设备为%%#个%<:@信息帧传输可采用标准帧*扩展帧及远程帧结构&支持点对点*一点对多点和全局广播方式接收和发送数据%<:@的物理层及数据链路层采用独特的设计技术&每帧数据都包含有<^<循环冗余校验及其它校验措施&数据出错率低&总线节点在严重错误的情况下&可自动切断与总线的通讯联系&以使总线上的其它操作不受影响''(%相对于传统通信普遍采用的站地址编码模式&<:@总线协议对通讯数据块使用了报文标识符进行编码%这是<:@总线的一个最大特点及优点&能够使网络内的通信节点数量在理论上不受到限制'*(&在<:@";#:版本中&使用了%%位报文标识符&编码数量可以达到"#$"种&而<:@";#P 版本中定义的")位报文标识符可以使编码数量几乎不会受到限制%<:@报文中使用长度为&个字节的数据段&可以定义数据段长度为#"&个字节&在工业领域中的工作状态*测试数据及控制命令一般都可以满足使用$而且&传输最大长度为&个字节的数据段&不会占用总线过长时间&能够保证通信的时效性$在各<:@总线节点中还设计有自动标定*自检测*错误诊断等检错和纠错措施&保证了数据通信的可靠性指标'&(%<:@允许多个主站同时运行&采用了多主竞争式总线结构&具有分散式仲裁及广播式通信的特点')(&在任意时刻&<:@总线上任意节点可以不用区分主次关系&主动地向网络上其他节点发送信息%因此&可在各通信节点之间实现对等化自由通信&<:@网络上节点的信息能分成不同的优先等级&可以满足不同级别的实时通信要求'%#(%到目前为止&<:@总线凭借着可靠的性能与优异的设计&得到了十分广泛的应用%但是它只定义了数据链路层和物理层'%%(&按照.[/标准规范&<:@总线定义了<:@";#:版及<:@";#P 升级版&只提供了最底层的基本协议&没有明确规定如何具体使用应用层的细节&这就需要用户自己定义高层应用协议&才能满足实际系统的需要%在实际的工程应用中&<:@总线需要一个应用层的标准化协议来定义<:@报文的各种标识符&分配*定义数据段中的&个字节数据的实际内容&支持<:@设备的所有互换和互用&用来实现<:@网络系统管理*设备功能*通信模式的标准化设计'%"(&以便支持对传输时间要求极严的过程数据控制和对设备参数的直接访问%在水下航行器多个项目研制过程中&目前均采取,自定义协议-方式设计控制系统&但在多数情况下&仅能实现基本<:@总线的通讯&完成应用层面自定义简单报文和传输协议%,自定义协议-不兼容标准型高层协议&难以做到各种<:@设备之间的兼容*互用*互通%,自定义协议-在可靠性*完备性*拓展性等多方面完全依赖于协议制订人员的技术水平*项目研发经验等不可控的因素&不能保证整个控制系统的稳定性&尤其是控制网络存在故障或干扰情况下的容错*纠错和诊断能力得不到保证%=>?!标准化!2X "$',高层协议为满足某高速航行器项目中高速*强外部干扰*高可靠性等技术要求&控制系统采用<:@总线构建分布式网络&<:@总线波特率为(##3W 7Q &选择了标准化<:@I 7G 2协议作为航行器控制系统网络化高层通信协议%<:@I 7G 2协议是国际自动化标准<:@用户和制造商协会<4:!<:@U 42U ?>6I M ?64I 2"定义的<:@总线应用层协议!即国际标准"'%$(%<:@I 7G 2可以给<:@总线控制系统提供丰富的功能&该协议完全公开&使不同的<:@设备之间能够互相兼容&具备如下技术特点)%"协议透明*公开&可免费下载源代码&无需专门授权&便于用户二次开发使用$""经过恶劣的实际工业现场环境充分验证&全世界装机用户数量大$$"可以在任意一种硬件平台上构建<:@总线网络&完全兼容标准型底层<:@硬件$,"网络规模较大&支持多种拓扑结构构建网络&允许多达%"*个节点同时通信$("可以根据需要进行网络管理和网络组态配置$'"实时性强*可靠性高&可通过软件实现所有协议功能&低成本组网&不受硬件平台制约%<:@I 7G 2协议应用层提供了,种应用服务)网络管理!@R 8"*基于<:@总线的报文规范!<R ["*参数修改!B R 8"和动态标识符分配!-P 8"'%,(%<:@I 7G 2协议分集管理及定义&主要由若干个协议文本组成&其中最基本的通信子协议和最重要的-[$#%应用层&已经定义了<:@I 7G 2的通信机制和通信基本概念&规定了所有设备都要遵循的<:@I 7G 2规范%此外&协议集还为电机和马达驱动*/+.模块*闭环控制器*传感器和可编程设备*火车控制*电梯控制等应用领域&专门定义了很多设备协议子集'%((%只要遵循这些协议的定义&开发出来的设备就可以很容易组建<:@I 7G 2网络&实现设备之间的互联互通%由于各种历史的原因&国内各行业较晚开展对<:@I U 7G 2协议的研究&而且对<:@现场总线在国内的应用及发!投稿网址 V V V!0Q 01O T3\!1I M Copyright ©博看网. All Rights Reserved.!!计算机测量与控制!第$%""""""""""""""""""""""""""""""""""""""""""""""""""""卷#%$#!#展更加落后&尤其限制了对<:@总线技术进一步深入化推广和应用%据研究&国际上的少数开源软件协议栈以<?2X G Q 64N ?O 为代表&但是存在灵活性较差&不支持二次配置等问题而难以开发应用&因此急需加强国内<:@I 7G 2软件协议栈的自主研发能力%<:@I 7G 2协议在恶劣的工业化环境下能够稳定运行&装机用户数量庞大&经过了十几年实际工程化验证&加入采取应用世界标准协议&进行二次集成*再次开发的技术路线&则能够解决前述,自定义协议-带来的一系列问题%!!2X "$',技术架构>=!!2X "$',通信模型如图%所示&按照<:@I 7G 2协议规范&支持该协议的网络设备!主站或从站"&都可以用一个抽象的通信模型来描述&模型可以抽象为双端口模型&其一端连接<:@总线&另一端连接具体的/+.端口数据&而端口数据与实际的物理应用对象直接关联%图%!<:@I 7G 2网络设备模型<:@I 7G 2协议一般使用.-对象字典!.W 0G 16-4164I 2U H T"来描述应用程序和设备之间的接口&每一个通信设备都包含特定的.-对象字典&该对象是配置和数据的集合体&<:@I 7G 2软件协议栈支持网络设备对其.-对象字典的修改和访问'%'(%>?!!2X "$',对象字典 N / 对象字典.-由一般由很多对象的成员组成&每个成员可以通过其%'位索引值!/2S G Z "和&位子索引值![>W /2U S G Z "来进行访问和寻址%为了简化对象的实际操作&每个通信节点的具体对象字典.-并不需要提供完备的所有对象内容&只需提供描述该设备所必需要的主要对象成员即可%在<:@I 7G 2世界标准协议!标准号为-[$#%"中&已经包含了通信节点对象字典.-的规划及分布的详细定义&在一般应用系统设计中&用户主要对通讯描述部分和设备描述部分的成员对象进行配置和定义%>@!!2X "$',通讯对象<:@I 7G 2网络通讯模型一共定义了,种常用通讯对象)%"网络管理对象!@R 8"$""预定义报文或特殊功能对象$$"服务数据对象![-."$,"过程数据对象!c -."%其中&网络管理对象!@R 8"主要用于对网络上指定的节点进行状态设定和参数配置&<:@I 7G 2主站向从站发送指定用途的@R 8报文&报文中包含了状态设置具体命令&可以将从站节点强制进入指定状态当中&实现网络管理功能%预定义报文或特殊功能对象主要包括一系列特殊的报文&例如时间戳!8/R K "报文*同步对象![=@<"报文和紧急事件!K R <"报文&时间戳8/R K 报文用于设置各从站时钟&同步对象[=@<用于对各从站进行同步控制和操作&紧急事件K R <报文用于传输紧急事件%服务数据对象![-."是一种特殊的对象&<:@I 7G 2主站通过向其它节点发送[-.报文的方式&可以读出或者写入+改写该节点的对象字典.-&功能类似于读写从站设备的参数&两者之间的[-.采用明确的,请求5应答-模式进行通信操作%过程数据对象!c -."是<:@I 7G 2网络很重要的一种对象报文&c -.对象通常用来收发实时的过程控制数据&每一个c -.对象包含有映射参数和通讯参数%其中&通讯参数用来配置<:@报文标识符&定义c -.报文的触发条件!同步或异步触发"$而映射参数用一般来描述对象字典.-的入口参数&定义该对象是怎样映射到c -.对象报文当中&即每个对象在c -.对象报文中的起始位置和结束位置&映射参数的具体定义内容&必须要求通信的主站和从站双方事先已知'%*(&才可以按照此定义各自编程实现%在实际的应用设计中&可以通过应用程序动态配置来改变对象映射的参数&也可以预先定义c -.对象报文的内容&还可以在<:@I 7G 2网络启动*管理时自动进行配置%为了适应不同的通信应用场合&c -.对象报文的传输设计为两种方式都可以触发&一种是同步方式触发&另一种是异步方式触发&两种方式通过传输类型用#""((来定义&数值."(,的都是同步方式触发&一般是在收到指定数目的[=@<同步对象之后&从站自动启动一次c -.对象报文的传输%而异步方式触发是采用事件方式进行自动触发'%*(&允许的触发事件包括外部数字输入+输出状态改变*定时器+计数器计数溢出事件等条件产生时从站自动触发%<:@I 7G 2网络通信过程中&优先级较高的信息帧如果不加以管理&就会因事件方式触发而占用总线&引起通信数据量大而网络拥堵&这可以通过给c -.对象报文人为指定一个禁止时间的办法&防止其它优先级较低的信息帧得不到发送的机会$还可以通过指定一个定时周期或事件的方式&当定时时间到或指定事件发生时&立即自动触发c -.对象报文的传输%尤其需要说明的是&以上描述的标准型<:@I 7G 2网络设备的最小软件配置需求如下)%"必须支持@R 8网络管理对象$""至少支持%个[-.服务数据对象$$"至少支持%个c -.过程数据对象'%&($,"其他通信对象为可选项&不作特别要求%!投稿网址 V V V!0Q 01O T3\!1I M Copyright ©博看网. All Rights Reserved.第&期卢绍庆)基于<:@I 7G 2""""""""""""""""""""""""""""""""""""""""""""""""""""协议的水下航行器控制系统现场总线应用设计#%$%!#>A !某航行器!2X "$',控制系统架构如图"所示&某水下航行器主要由控制组件*姿态系统*电源管理组件*电池监测电路*电机调速控制器*智能执行机构*发控接口电路*载荷系统*模拟系统*进排水组件*调试系统*发控设备*网关*各种开关量*传感器*执行机构等部分构成%各通信节点通过扩展隔离<:@接口连接到控制网络&构成整个基于<:@I 7G 2总线的网络化数据信息系统%图"!航行器控制系统网络结构网络结构图中&调试系统其实包含了多台套地面保障专用设备及通用设备&还包括了校准用标准第三方测试设备等&网络规划时&考虑到调试系统一般仅仅在工房准备阶段使用&而航行器在水下实航阶段并不参以运行&特将所有调试系统设计为一个网络节点&先将数据信息打包汇集&再传输到航行器控制网络的方式&可以明显简化系统设计量&且便于后续新增加入其他保障类调试设备&为了描述方便&仅以调试系统进行概括性统称%其中&控制组件是整个<:@I 7G 2总线网络的控制核心&作为网络控制主站管理者身份&运行<:@I 7G 2协议主站代码&控制组件主要由控制计算机各节点!含主控计算机*备份计算机*网络管理计算机*仿真调试计算机等,个网络节点"构成$其他总线节点运行<:@I 7G 2协议从站代码&以从站身份接入控制网络&其中电源管理组件由电源电路及后备电源电路"个节点构成$智能执行机构由四套独立运行的高速电机位置伺服控制电路组成&共,个节点接入控制网络%载荷系统和模拟系统均为与控制系统同级别大系统&通过<:@网络进行连接&共享数据*参数和能源&其中载荷系统内部数据量较大&需要使用速率为%R W 7Q 的<:@总线进行数据传输&因此在载荷系统和控制网络间加入一个<:@网关&用于桥接两个不同速率的网络%而模拟系统的通信速率与控制网络相同&可以集中后以一个节点身份接入控制网络$各种开关量*传感器*执行机构因机构数量多&如果每个机构都接入<:@控制网络&则会明显加大网络复杂程度&降低系统可靠性&因此专门设计了一个开关量*传感器*执行机构网络节点&将各种机构的信号集中采集*发送%上述控制网络所有节点共计"$个&后续描述的<:@I U7G 2控制节点模型主要针对主要+核心组件协议进行介绍&其他辅助性节点*组件的设计方法与之类似就不做详细介绍%控制系统按照信息化*数字化的发展要求构建信息化体系&采用现场总线构建混合数字化网络平台&使用实时性较高的<:@总线作为控制网主干&负责控制系统中各重要组部件之间参数*数据和控制指令的传输%按照<:@网络拓扑及现场布线规范要求&控制系统<:@总线采取功能化网络分段的方式构建&不同的网段之间使用<:@网关进行桥接&只需要修改<:@网关的应用软件&就能够将不同通讯速率*不同接口协议的节点自动接入网络%<:@I 7G 2高层协议规定了网络化控制系统中&数据通讯的具体帧格式*数据传输的方式和内容&从而实现各个系统*各通信节点之间的各种运行参数*控制命令*信息状态的可靠接收和传送&完成主控制核心节点与各受控执行机构*部件等节点的联系%@!!2X "$',控制节点@>=!!2X "$',网络节点组成<:@I 7G 2控制网络中&一般包括但不限制为一个网络主节点%网络主节点或从节点仅是从网络通信的角度进行划分&实际上各网络节点的组成基本类似&一般包括主控芯片<c D 处理器*存储电路*时钟电路*电源产生+变换电路*<:@总线控制器*总线接口电路*网络隔离电路*网络接口连接器等部分'%)(!如图$所示"&电路核心部分是<:@总线控制器和主控芯片<c D 处理器&整个电路中的<:@I 7G 2通信协议由内嵌运行于<c D 处理器中的应用软件代码实现%图$!<:@I 7G 2网络节点组成图其中&供电电源由网络接口连接器的电源输入插针接入&按照<:@I 7G 2协议规范&供电电源一般为直流-<",b 电压&隔离电源产生+变换电路将-<",b 变换为<c D 处理器使用的-<(b 或-<$;$b 电源*网络隔离电路使用的/[.(b 电源*其他外部设备使用的-<%"b 电源%网络隔离电路一般由具备高隔离能力的高速光电耦合器!例如C <c B U #*%#"组成&或者使用高速磁耦合隔离方式设计$总线接口电路基于专用的<:@总线接口芯片电路构成&一般使用进口第二代产品8+:%#,#或8+:%#(#芯片进行设计&价格稍高&但抗干扰能力强*可靠性高&也可以使用第一代&"<"(#芯片进行设计&价格便宜&但抗干扰!投稿网址 V V V!0Q 01O T3\!1I M Copyright ©博看网. All Rights Reserved.!!计算机测量与控制!第$%""""""""""""""""""""""""""""""""""""""""""""""""""""卷#%$"!#能力稍弱%下面&针对某水下航行器网络化控制系统各主要节点及组件&按照<:@I 7G 2协议的规范及要求建立网络通信模型&分配网络资源及网络参数*数据等对象%@>?!控制组件主节点为了减少<:@网络配置工作量&控制系统使用<:@I U 7G 2网络协议中的通用预定义连接集来分配标识符<:@U /-&这些<:@U /-将在@R 8网络初始化完成进入配置态后生效&<:@I 7G 2设备只为支持的通信对象提供相应的<:@U /-%<:@U /-标识符内容包括了通讯功能部分&决定了通讯对象的优先级和节点的/-&用于区分<:@I 7G 2各网络设备&允许在单一主节点和最多%"*个从节点之间进行点对点通信&同时还支持无应答的网络管理@R 8*同步[=@<和时间广播8/R K 报文%按照<:@规范定义&节点/-值越小&节点的通信优先级越高&/-值越大&通信优先级越低%因此&将姿态系统*智能执行机构等需要快速交换数据的节点/-分配为较小值&将调试设备等不需要快速交换数据的节点/-分配为较大值&再辅以报文事件触发模式&则可以减小<:@通信数据量&明显优化网络占用率%控制系统<:@总线通信目前使用%%位标识符!<:@";#:版本并向上兼容"&按照<:@I 7G 2协议规范&一般从<:@网络信息发送方对8Z 和^Z 进行描述定义&即发送节点的8Z 就是接收节点的^Z &发送节点的^Z 就是接收节点的8Z&下述网络模型中遵循此定义%各<:@网络节点之间均使用过程数据报文c -.进行实时性数据交换!如8Z c -.或^Z c -."&使用服务数据报文[-.进行参数设置!如8Z [-.或^Z [-."*数据管理等非实时性数据交换%航行器控制组件作为<:@I 7G 2网络的通信主节点&定时发出同步[=@<报文&使用网络管理@R 8报文管理各从节点&统一协调网络中各节点同步有序工作%各节点按照网络[=@<同步方式工作&使用过程数据c -.!如8Z c U -.或^Z c -."报文进行实时性数据交换%@>@!智能执行机构从节点如图,所示&智能执行机构使用%个8Z c -.%过程数据报文&向<:@I 7G 2网络同步发送航行器实时舵角*智能执行机构状态*电流*电压等数据%图,!智能执行机构<:@I 7G 2网络模型智能执行机构使用%个^Z c -.%过程数据报文&接收航行器控制组件发送的操舵指令%通讯方式为收到<:@I U 7G 2主节点发送的%个[=@<报文同步发送%个8Z c -.%报文&快速响应网络指令%其中<:@信息接受对象为航行器控制组件!/-g $"*<:@网关!/-g %%"等%@>A !电机调速系统从节点如图(所示&电机调速系统使用一个8Z c -.%过程数据报文&向<:@I 7G 2网络同步发送推进电机系统实时转速数据*航行器航行速度*负载电流*电压及状态信息%电机调速系统使用%个^Z c -.%过程数据报文&接收航行器控制组件发送的航行器目标航速*启停控制等操作指令%通讯方式为收到<:@I 7G 2主节点发送的(个[=@<报文同步发送%个8Z c -.%报文&采取慢速回应主节点的方式&利于减小网络占用时间%图(!电机调速系统<:@I 7G 2网络模型其中<:@信息接受对象为航行器控制组件!/-g $"*调试系统!/-g $#"*模拟系统!/-g %""*<:@网关!/-g %%"等%@>B !姿态系统从节点如图'所示&姿态系统使用%个8Z c -.%过程数据报文&向<:@I 7G 2网络同步发送航行器实时姿态数据&通讯方式为收到<:@I 7G 2主节点发送的%个[=@<报文同步发送%个8Z c -.%报文&快速响应网络指令%图'!姿态系统<:@I 7G 2网络模型其中<:@信息接受对象为航行器控制组件*<:@网关*模拟系统和调试系统等%@>V !发控系统从节点如图*所示&发控系统通过发控接口电路&使用%个复用8Z c -.%过程数据报文&向<:@I 7G 2网络同步发送发控接口电路实时数据及状态&包括发控设备发送的航行器设定参数*发控参数等数据%发控系统使用%个复用^Z c -.%过程数据报文&接收航行器控制组件发送的应答数据及操作指令%接收通讯方式为收到<:@I 7G 2主节点发送的"个[=@<报文同步发送8Z c -.%报文%!投稿网址 V V V!0Q 01O T3\!1I M Copyright ©博看网. All Rights Reserved.。

基于Canopen协议的运动控制系统设计

基于Canopen协议的运动控制系统设计

决方 案 的工 业控 制 模 型 的 软件 实 现 。
收 稿 日 期 :0 0 1 - 1 2 1 . 20
( 第1 期 总 9 )@ 3
I 制造 与 设 备 C
电 子 工 业 专 用 设 备

的技 术 , 广泛 应 用 于 自动 化 各个 领 域 。 目前广 泛 正
使 用 的 其 它 现 场 总 线 还 有 Po b s D vcN t rf u 、 e i e、 i e
C nrl tH T F o t Ne、 AR 、 F等 等 , 是 C N 总 线也 是 所 o 但 A
有现 场 纵 向中最 早 出现 的 , 也是 最适 合 机 器 自动 化
领 域 的现 场 总线 。
C N A 总 线 除 了 具 有 一 般 总 线 所 具 有 的 优 点
外 , 根 据机 械 自动 化 的特 点 , 供 了 一些 非 常 有 还 提
了 C N + C n p n工 业 控 制 总 线 解 决 方 案 ,重 点 阐 述 了这 种 解 决 方 案 在 一 种 工 业 控 制 模 型 中 的 A ao e
实现 。 同时对 软件 设 计 、 设备 调 试 中的 问题 提 出解 决方 案 , 系统 效 率 、 靠性进 行 测试 优 化 。 对 可
团■ ,
—— 堂 臼 — _
基 于 C o a e n 议 的 运 动 p n协 控 制 系统 设 计
刘 玉倩 , 文 , 卫 国 , 慧 张 靳 王
( 国 电子科 技 集 团公 司第 四十五研 究所 , 京 1 10 ) 中 北 06 1
摘 要 :描 述 了一 种 最 广 泛 应 用 的 现 场 总 线 CAN 和 最 为 成 功 的 CAN 应 用 层 协 议 Ca o e , 绍 n p n介

一款基于CANopen的高速总线型运动控制器

一款基于CANopen的高速总线型运动控制器

一款基于CANopen的高速总线型运动控制器运动控制,是自动化的核心应用之一。

在“中国制造2025”的大势推动之下,除了工业机器人、数控机床备受关注之外,通用运动控制领域的需求也在快速增长。

在这一领域,台达推出了脉冲型的10PM、20PM,以及总线型10MC。

考虑到今后工业客户转型升级的需求,台达将持续在MC领域发力,而首先登场的正是这款“DVP15MC”系列。

DVP15MC是一款基于CANopen的高速总线型运动控制器,它将传统PLC与运动控制器高度整合,具有程序执行高效、运动控制精准,端口功能丰富等特点。

并且在可控制轴数、多个方面都有了显著提升。

功能全面升级首先,DVP15MC的可控制轴数大幅提升至32轴,实轴、虚轴、编码器轴控可同时控制,且响应速度也更快。

随着运动控制应用更加深入与广泛,客户对于控制轴数的需求也更高。

DVP15MC 带来的可控制轴数提升,让多轴应用的配置更加简洁从容。

DVP15MC对电子凸轮、电子齿轮、旋切等功能的支持也更加强大。

电子凸轮数量提升至64个凸轮。

图形凸轮编辑器可以实现复杂轨迹控制,运行中还可以动态修正凸轮数据。

让加工作业的效率、精准度和灵活性都改善不少。

新一代总线型运动控制器DVP15MC,不仅支持标准G代码、NC功能(点位控制、直线插补、圆弧插补、螺旋插补等),还新增了平滑过渡功能。

同时G代码指令空间、程序容量、以及变量空间也都有了几十倍乃至上百倍的提升,让各种精密编程更加游刃有余。

端口集成丰富考虑到智能制造的发展趋势,15MC的外接端口集成也更丰富,可满足更多样的需求。

随着智能制造趋势不断的发展,对于应用的需求也越来越多,为了满足更多样的应用需求,15MC新增了更丰富的集成端口。

●集成IO(输入16点,输出8点),其中输入点可用于中断程序以及位置捕获;●集成两个CAN端口,一个专用于Motion,另一个专用于CANopen数据交换(支持主/从站模式);●集成两个独立的Ethenert端口,支持ModbusTCP协议;●集成两路独立的增量型编码器和一路SSI型的绝对值编码器;●支持SD存储卡。

CANOPEN DSP402运动控制简介

CANOPEN DSP402运动控制简介

基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介基于分布式运动控制系统 基于分布式运动控制系统 分布式运动控制 CANopen 简介运动控制产品 产品经理 徐国平 运动控制产品经理深圳市泰科智能伺服技术有限公司Techsoft motion (Shenzhen) technology Ltd.2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介概 述分布式控制与集中式运动控制系统的比较 控制系统 ◇ 分布式控制与集中式运动控制系统的比较 ◇ CAN物理层 物理层 ◇ CANopen协议 协议 ◇ 驱动器与运动控制设备概述 驱动器与运动控制设备概述 多轴同步 同步协调运动 ◇ 多轴同步协调运动 ◇ IDMxxx(CAN/CANopen)系列全数字通用伺服驱动器 ( )系列全数字通用伺服驱动器 通用伺服2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司1基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介分布式与集中式运动控制系统的比较 分布式与集中式运动控制系统的比较 控制系统集中式运动控制 控制系统 ◇ 集中式运动控制系统• • • 多轴运动控制卡或控制器 多轴运动控制卡或控制器 位置/速度 转矩伺服驱动器 位置 速度/转矩伺服驱动器或放大器 速度 转矩伺服驱动器或放大器 电机2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司2基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介集中式运动控制系统组成部分 集中式运动控制系统组成部分 式运动控制系统组成◇ 控制器• • • PC运动控制卡 运动控制卡 独立式运动控制器 独立式运动控制器 +/- 10V命令信号 命令信 命令◇ 驱动器或放大器• • 位置/速度 转矩 位置 速度/转矩模式 速度 转矩模式 模拟量或数字量驱动器 模拟量或数字量驱动器◇ 电 机• • 旋转或直线伺服电机 旋转或直线伺服电机 步进、有刷、无刷伺服电机 步进、有刷、无刷伺服电机2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司3基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介集中式运动控制系统的缺点 集中式运动控制系统的缺点 式运动控制系统控制轴数 轴数相对性能的限制性 ◇ 控制轴数相对性能的限制性 控制器轴数相对所需应用轴数的限制性 相对所需应用轴数的 ◇ 控制器轴数相对所需应用轴数的限制性 模拟量命令信号的限制 量命令信号的限制性 ◇ 模拟量命令信号的限制性 驱动器或放大器诊断的限制性 放大器诊断的限制 ◇ 驱动器或放大器诊断的限制性 电机反馈到驱动器与控制器都必 反馈到驱动器 ◇ 电机反馈到驱动器与控制器都必需接线 接线复杂、成本高、可靠性降低 ◇ 接线复杂、成本高、可靠性降低2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司4基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介分布式运动控制系统 分布式运动控制系统 运动控制布式运动控制系统 运动控制 ◇ 分布式运动控制系统主控制器 驱动器 电机2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司5基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介分布式运动控制系统的组成部 分布式运动控制系统的组成部分 运动控制系统◇ 控制器• • • 计算机 独立式控制器 设备总线, 数字网络 (设备总线,现场总线,网络 设备总线 现场总线,网络)◇ 驱动器• • 位置,速度,转矩模式 位置,速度,转矩模式 带网络接口的数字伺服驱动器 网络接口的数字伺服驱动器◇ 电机• • 旋转或直线伺服电机 旋转或直线伺服电机 步进、有刷、无刷伺服电机 步进、有刷、无刷伺服电机2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司6基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介分布式运动控制系统的优势 布式运动控制系统的优势 运动控制系统主控制器选择简单 ◇ 主控制器选择简单 ◇ 全数字命令信号 ◇ 全驱动器诊断 仅电机到驱动器之间反馈必须 之间反馈必须接线 ◇ 仅电机到驱动器之间反馈必须接线 整体体积 体积减小 ◇ 整体体积减小 ◇ 整体接线减少• • • 降低成本 降低复杂性 提高可靠性减少系统成本 ◇ 减少系统成本• • • 驱动器成本增加 驱动器成本增加 省掉了多轴运动控制器成本 多轴运动控制器成本 运动控制器 减少了接线成本 减少了接线成本2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司7基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介CAN 物理层公司原创 原创, ◇ CAN(Controller Area Network),由 BOSCH 公司原创,ISO-11898 标准 , 传输速度 速度时 ◇ 1Mbit/s 传输速度时距离可达 30 米 多路访问冲突侦测+非破坏性 非破坏性解决 ◇ 多路访问冲突侦测 非破坏性解决 标识符)或 位标识符) ◇ CAN2.0A(11 位标识符 或 CAN2.0B(29 位标识符 ◇ 冲击噪声免疫 总线结构( ◇ 总线结构(3 线) 硬件自动检测 处理错误 检测与 ◇ 硬件自动检测与处理错误2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司8基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介CAN 物理层数据帧( ◇ 数据帧(CAN Message) )• • SOF: 帧起始域 帧起始域 Arbitration Field: 仲裁域 Identifier: 标识符 RTR • • • • • Control Field: 控制域 Data Field: 数据域 CRC Field: 循环沉余校验域 循环沉余校验域 ACK Field: 应答域 EOF Field: 帧结束域2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司9基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介CAN 物理层◇ Arbitration Field(仲裁域) (仲裁域)• • CAN2.0A : 11 位标识符 CAN2.0B: 29 位标识符位填充) ◇ Bit Stuffing (位填充 位填充• 个连续相同的位后,插入一个反极性的位 极性的位(最大可达 填充位) 在 5 个连续相同的位后,插入一个反极性的位 最大可达 19 填充位总线仲裁 ◇ Bus Arbitration (总线仲裁) 总线仲Identifier S O F标识符节点 1节点 2非优先级Listening only (仅收听)总线电平优先级2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司10基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介CAN 物理层总线时序) ◇ Bus Timing (总线时序 总线时序最差情况下消息长度是 130 位 情况下消息长度是 消息长度波特率 1 Mbit/s 800 kbit/s 500 kbit/s 250 kbit/s 125 kbit/s 62.5 kbit/s 20 kbit/s 10 kbit/s总线长度 30 m 50 m 100 m 250 m 500 m 1000 m 2500 m 5000 m正常响应时间 正常响应时间 1 µs 1.25 µs 2 µs 4 µs 8 µs 20 µs 50 µs 100 µs等待时间 等待时间 130 µs 162.5 µs 260 µs 520 µs 1.04 ms 2.08 ms 6.50 ms 13 ms2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司11基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介CANopen 协议标准的开放 的开放工业网络协议 ◇ 基于 CAN 标准的开放工业网络协议 用于自动化领域 领域(CiA) ◇ CAN 用于自动化领域• • • • 德国) 非盈利组织 (德国 德国 众多员 众多员成 通过一致性测试 通过一致性测试◇ CANopen 概述设备概述 设备概述I/O 模块 驱动器与 驱动器与运动控制 编码器 …标准化 功能可选性 功能可选性 可选2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司12基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介设备概述 设备概述◇ 对象词典通过 CAN 网络可获取对象 类似于内存寻址 位子索引来获 每一个对象通过 16 位索引或者 8 位子索引来获取索引 (hex) 0000 0001-001F 0020-003F 0040-005F 0060-007F 0080-009F 00A0-0FFF 1000-1FFF 2000-5FFF 6000-9FFF A000-FFFF 对象 不用 静态数据类型 复杂数据类型 制造商特殊的复杂数据类型 制造商特殊的复杂数据类型 装置设备特殊的静态数据类型 装置设备特殊的静态数据类型 设备特殊的 装置设备特殊的复杂数据类型 装置设备特殊的复杂数据类型 保留为将来用 保留为将来用 通讯区域 制造商特殊区域 制造商特殊区域 标准化的装置设备区域 标准化的装置设备区域 装置 保留为将来用 保留为将来用2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司13基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介CANopen 通讯模式草稿标准 :应用层 ◇ CiA 草稿标准 301(DS301) 应用层与通讯概述 ( ) 应用层与通讯概 : 个节点( ◇ 可达 127 个节点(CAN2.0A) ) 标识符(COB-ID) ◇ CAN 标识符• • 功能码: 功能码:位 7...10 节点 ID:位 0...6 :消息类型( ◇ 消息类型(Message Types) )Message NMT SYNC TIME STAMP EMERGENCY PDO SDO NMT Error Control 描述 网络管理 (广播发送) 同步消息 (广播发送) 时间标记 (广播发送) 紧急消息 过程数据对象 服务数据对象 服务数据对象 数据 网络管理错误控制 COB-ID 0h 80h 100h 81h - FFh 181h - 57Fh 581h - 67Fh 701h - 77Fh2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司14基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介CANopen 消息网络管理) ◇ NMT (网络管理)• • • • • 起始节点 停止节点 送入前一次的操作 复位节点 复位通信 复位通信◇ SYNC (同步) 同步)• • 广播时钟 同步 PDO 消息触发器◇ TIME STAMP(时间标记) (时间标记)• 广播信息包含节点时钟同步时间◇ EMERGENCY(紧急) (紧急)• 由错误事件中的某个节点发出消息,错误信息包含在数据域中 由错误事件中的某个节点发出消息,错误信息包含在数据域中◇ NMT Error Control(错误控制) (错误控制)• • 节点监护 启动2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司15基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介CANopen 消息程数据对象( ◇ 过程数据对象(PDO) )未经确认的消息 用于实时数据传输 与设备对象字典通信(映射) 设备对象字 通信(映射) 传送或者接收 或者接收 同步( 同步(基于 SYNC)或异步 ) 触发模式 事件驱动( 事件驱动(例如 SYNC) ) 定时器驱动 远程请求2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司16基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介CANopen 消息服务数据对象( 数据对象 ◇ 服务数据对象(SDO) )确认消息 用于设置和配置 用于访问设备对象字 用于访问设备对象字典 访问设备对象 可用于所有的变量类型(8 位,16 位,32 位...) 用于所有的变量类型( )2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司17基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介驱动器与运动控制设备概 驱动器与运动控制设备概述草稿标准 ◇驱动器与运动控制设备概述:CiA 草稿标准 DSP-402 驱动器与运动控制设备概述 标准访问 访问对象字典 ◇ 使用 DS301 标准访问对象字典 设备控制 机器状态 控制( 状态) ◇ 设备控制(机器状态) ◇ 操作模式回原点模式 位置曲线模式 位置曲线模式 曲线 插补位置模式 速度曲线模式 速度曲线模式 曲线 转矩曲线模式 转矩曲线模式 曲线 速度模式(频率转换器) 速度模式(频率转换器)制造商指定 指定对象 ◇ 制造商指定对象2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司18基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介装置设备控制 装置设备控制机器状态 ◇ 机器状态• • • 控制字 状态字 操作模 操作模式选择◇ 比例因子集• 位置、速度、 位置、速度、加速度比例因子2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司19基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介位置模式◇ 位置控制功能• • • • • 位置查询 实际位置 跟踪误差 瞬时位置窗口 位置控制参数设定 位置控制参数设定位置曲线 曲线模式 ◇ 位置曲线模式• • • • 目标位置 位置限制 速度曲线 速度曲线 加速度或减速度曲线 速度或减速度2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司20基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介回原点模式原点偏移量 ◇ 回原点偏移量 ◇ 回原点方式• • • 回原点开关 编码器索引 回原点开关+编码器索引 原点开关 编码器索引◇ 回原点速度 ◇ 回原点加速度2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司21基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介速度曲线模式 速度曲线模式 曲线◇ 目标速度 ◇ 实际速度 瞬时速度窗口 ◇ 瞬时速度窗口 ◇ 零速度窗口 ◇ 速度跟踪误差 速度控制参数设定 ◇ 速度控制参数设定2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司22基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介转矩曲线模式 转矩曲线模式 曲线◇ 目标转矩 ◇ 实际转矩 ◇ 转矩控制参数设定2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司23基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介多轴同步协调运动 多轴同步协调运动 同步◇ 多轴轮廓线 每一轴位置相对时间插补 位置相对时间插补( 曲线) ◇ 每一轴位置相对时间插补(PT 曲线) 曲线分段 ◇ 曲线分段2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司24基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介多轴同步协调运动 多轴同步协调运动 同步◇ PVT 曲线• • • • • 每段的终点位置与速度 段的终点位置与 每段的时间 在段与段之间进行三次方立体插补 在段与段之间进行三次方立体插补 进行三次方立体 专用的 COB-ID 未最好认可的 8 个数据字节消息 最好认可的 位置--3 位置 字节 速度--3 速度 字节 时间--1 字节( 毫秒) 时间 字节(1--255 毫秒) 计数器--1 计数器 字节◇ Message(消息 消息) 消息•为启动用 广播消息 为启动用的广播消息◇ 同步2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司25基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介多轴同步协调运动 多轴同步协调运动 同步PVT1,NODE1 PVT2,NODE1 PVT3,NODE1 PVT4,NODE1PVT1,NODE2 PVT2,NODE2 PVT3,NODE2 PVT4,NODE2PVT1,NODE3 PVT2,NODE3 PVT3,NODE3 PVT4,NODE3GND CAN_L CAN_HPVT4 PVT3 PVT2 PVT1PVT4 PVT3 PVT2 PVT1PVT4 PVT3 PVT2 PVT12009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司26基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介多轴同步协调运动 多轴同步协调运动 同步缓冲区(Buffer) ◇ 缓冲区• • • 15 级 FIFO 缓冲区指针 缓冲区复位 缓冲区复位错误消息(Error messages) ◇ 错误消息• • • • 缓冲区空 缓冲区满 不正确的计数器值 不正确的计数器值 不正确的消息长度 不正确的消息长度2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司27基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介多轴同步协调运动 多轴同步协调运动 同步◇ 主控制器• • • • • • 运动轨迹 轨迹分段 轨迹分段 生成 PVT 线段 缓冲区管理 网络管理 系统控制◇ 性 能• • • 网络带宽: 总线的 网络带宽:CAN 总线的整体负载 带宽 精度:分段时间及 精度:分段时间及插补 网络轴数 网络轴数2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司28基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介IDMxxx(CAN/CANopen)系列全数字通用伺服驱动器 ( 通用伺服 )系列全数字通用伺服驱动器◇ 基于最新 DSP 电机控制技术 数字化电流、速度、 ◇ 全数字化电流、速度、位置环 ◇ 全可编程 ◇ 遵从 DS301 和 DSP402 标准 ◇ DIP 开关设置 CAN 地址 多类反馈 反馈接口 ◇ 多类反馈接口 可编程光电隔离数字量 光电隔离数字量输入和输出 ◇ 可编程光电隔离数字量输入和输出 模拟量 ◇ 模拟量输入和输出 电机与逻辑电源分开供 逻辑电源分开 ◇ 电机与逻辑电源分开供电 ◇ 基于 Windows 设置编程软件平台 支持电子齿轮凸轮 电子齿轮凸轮、 、 ◇ 支持电子齿轮凸轮、PT、PVT、32 种回原点模式等 、2009 年 7 月 8 日 © Techsoft深圳市泰科智能伺服技术有限公司29基于分布式运动控制系统 基于分布式运动控制系统 CANopen 简介IDMxxx(CAN/CANopen)系列全数字通用伺服驱动器 ( 通用伺服驱动器 )系列全数字通用◇ IDM640-8EIA直流有刷、无刷(正弦波或方波) 、 直流有刷、无刷(正弦波或方波) 有刷 直线,步进电机 直线,步进电机 16A 峰值电流 8A 连续电流 12—48VDC 逻辑供电,12-80VDC 电机供电 逻辑供电 供电, 逻辑电源与电机电源共地 逻辑电源与电机电源共地 电源与电机电源◇ IDM240-5EIA直流有刷、无刷(正弦波或方波) 、 直流有刷、无刷(正弦波或方波) 直线, 直线,步进电机 16A 峰值电流 5A 连续电流 12—48VDC 单一电源供电未来....... ◇ 未来2009 年 7 月 8 日 © Techsoft 深圳市泰科智能伺服技术有限公司30。

基于Canopen协议的运动控制系统设计

基于Canopen协议的运动控制系统设计

基于Canopen协议的运动控制系统设计
刘玉倩;张文;靳卫国;王慧
【期刊名称】《电子工业专用设备》
【年(卷),期】2011(40)2
【摘要】描述了一种最广泛应用的现场总线CAN和最为成功的CAN应用层协议Canopen,介绍了CAN+Canopen工业控制总线解决方案.重点阐述了这种解决方案在一种工业控制模型中的实现.同时对软件设计、设备调试中的问题提出解决方案,对系统效率、可靠性进行测试优化.
【总页数】5页(P33-37)
【作者】刘玉倩;张文;靳卫国;王慧
【作者单位】中国电子科技集团公司第四十五研究所,北京,101601;中国电子科技集团公司第四十五研究所,北京,101601;中国电子科技集团公司第四十五研究所,北京,101601;中国电子科技集团公司第四十五研究所,北京,101601
【正文语种】中文
【中图分类】TP13
【相关文献】
1.基于 PC 机和运动控制卡的运动控制系统设计 [J], 张清勇;张丹红;姜文
2.基于CANopen协议的红外避障系统设计 [J], 袁铸;朱清智
3.基于CANopen协议的同步运动控制器 [J], 赵飞;陈冰;陈幼平
4.基于CANopen协议的运动控制系统底层驱动软件实现 [J], 刘玉倩;侯为萍;高建利
5.基于CANopen协议的公铁两用牵引车运动控制实现 [J], 赵大兴;赵国栋;许万;王璜
因版权原因,仅展示原文概要,查看原文内容请购买。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于Canopen协议的运动控制系统设计刘玉倩张文靳卫国王慧(中国电子科技集团公司第四十五研究所,北京,101601)摘要:描述了一种最广泛应用的现场总线CAN和最为成功的CAN应用层协议Canopen,介绍了CAN +Canopen工业控制总线解决方案,重点阐述了这种解决方案在一种工业控制模型中的实现。

同时对软件设计、设备调试中的问题提出解决方案,对系统效率、可靠性进行测试优化。

关键词:CAN;Canopen;运动控制;软件编程中文分类号:文献标志码:文章编号:Motion Control System Design Based on Canopen protocolLiu Yuqian, Fu Chunhe, Zhang Wen, Jin Weiguo(The 45th Research Institute of CETC,Beijing 101601,Chia)Abstract:This paper describes a widely used fieldbus CAN and the successful Application layer protocol Canopen ,introduces the CAN and Canopen industry control fieldbus solutions, emphatically expounds the realization of the field bus resolution in the industry control model. At the same time, put forward resolvents of problems in software design and machine debugging, tests and optimizes the system’s stability and efficiency.KeyWord: CAN;Canopen;motion control;software programCAN总线系统解决方案是利用CAN总线的优点及其特长为机器自动化设备提供高效、可靠、性价比高的解决方案。

CAN+Canopen是机器自动化领域最为成功的总线解决方案,在欧美被广泛应用]1[。

本文将以一种全自动半导体设备为具体实例,介绍一种基于CAN+Canopen解决方案的工业控制模型的软件实现。

1CAN和Canopen协议CAN是最早的,也是应用最为广泛的现场总线。

CANopen是欧洲CIA组织定义的最为成功的CAN应用层协议,在基于CAN的自动化系统中居于领导地位。

CAN现场总线技术是集自动控制技术、通讯技术、传感技术、计算机技术等于一体,是个革命性的技术,正广泛应用于自动化各个领域。

目前广泛使用的其它现场总线还有Profibus、DeviceNet、ControlNet、HART、FF等等,但是CAN 总线也是所有现场纵向中最早出现的,也是最适合机器自动化领域的现场总线。

CAN总线除了具有一般总线所具有的优点外,还根据机械自动化的特点,提供了一些非常有优势的技术特点:1. 高速的数据传输速率可达1M bit/s;2. 采用对数据通信数据块进行编码,可以多主方式工作;3. 采用非破坏性仲裁技术,当两个节点同时向网络上传送数据时,优先级低的节点主动停止数据发送,有效避免了总线冲突。

4. 可靠的错误处理和检错机制5. 革命化的报文传输方式:SDO和PDO。

Canopen协议已经成为欧洲最重要的工业现场总线标准EN-50325-4。

ED系列伺服是标准的CAN从站设备,严格遵循Canopen,任何支持该协议的上位机均可以与其进行通讯]2[。

ED伺服内部使用了一种严格定义的对象列表,被称之为对象辞典,这种对象辞典的设计方式基于Canopen国际标准,所有对象有明确的功能定义。

对象类似于内存地址,有些对象如速度和位置可以由外部控制器修改,如状态、错误信息。

2系统结构该工业控制模型即全自动半导体设备就采用这种总线解决方案,由主控单元:Copley CAN卡和受控单元(Copley IO板和Copley驱动器)组成,使用CANopen协议进行通讯。

图1 运动控制系统机构在软件编程前首先在硬件上进行相应的设置:1. Copley的CAN卡上有两个CAN口,CAN0和CAN1,若网线插入CAN0需在软件中初始化CAN0。

2. AMP的拨码:在驱动器上拨码设置,对应软件里的设置节点ID号。

3.电机调相。

4. PID控制调制。

CME2软件里可观察运动曲线,首先是电流环,其次是速度环、最后是位置环。

5. IO卡的输入输出Bank需要由CME2来设置等等。

3软件编程实现软件编程的实现,在Windows平台下,使用VC++6.0作为开发工具。

Copley 公司提供了功能强大的底层运动控制库,此库提供很多底层类,从功能上可以分为运动控制类和信号输入输出类。

根据需要,封装底层库。

因为使用Copley驱动器和Copley的IO卡,所以主要使用CanOpen类、Amp类、IOModule类以及Error类等。

根据需要在Copley底层库的基础上封装合适的运动类库。

3.1 初始化首先要进行软件参数包括设备工艺参数、电机软限位、速度、加速度、加加速度等参数的初始化,然后打开CAN卡,设置波特率,CanOpen初始化。

long CSP_Motion::MC_CardOpen(void){//从驱动器加载默认设置//设置Canopen通讯接口口为CAN0//设置波特率为1Mbps//打开Canopen//如果打开失败,返回错误码}驱动器的初始化long CSP_Motion::MC_Init(int NodeID){//定义一个驱动器设置类对象//设置驱动器参数//初始化驱动器//如果初始化失败,返回错误码}IO卡的初始化long CSP_Motion::IO_Init(int IoNum,int NodeID){//初始化IO卡,即连接IO卡通讯//关闭IO卡中断,使IO工作在查询模式//如果初始化失败,返回错误码}此外还有驱动器的清除故障、复位、重新初始化、使能、失能等函数,以上函数均为在底层库德基础上的封装。

NodeID即为节点号。

IO_Init中的m_io[IoNum].DinSetIntEna(false)语句为IO卡初始化的时候关中断,这是因为使用IO卡的中断功能实现IO数字输入信号的刷新,实时获取IO输入的最新状态,如果使用查询方式读取,则CPU会处于非常忙碌的状态,而且实时性上不能满足要求,在面板响应和逻辑流程中非常重要。

3.2电机控制3.2.1回零方式在底层库的结构体HomeConfig可配置电机的回零方式,很多中,可根据需要选择,然后使用m_amp[NodeID-1].GoHome()指令回零。

3.2.2控制模式电机可工作需要工作在位置模式或力矩模式下,有时需要在位置模式和力矩模式下切换比如印刷刮板电机在印刷时从位置模式转到力矩模式,电机输出印刷时所需要的压力。

long CLogicKernel::LGK_SwitchTorque(int NodeID ,int NodeID){//设置力矩模式//设置额定力矩//设置力矩变化率//设置实际力矩}从力矩模式到位置模式的切换只需要调用运行指令。

电机软限位和运行参数的设置,在电机运行之前要设置电机的软限位,速度,加速度,加加速度参数long CSP_Motion::MC_SetSoftLimit(int NodeID,double dPos,double dNeg,double dAcc) {//定义一个软限位实例对象//正向位置赋值//负向位置赋值//加速度赋值//设置电机轴的软限位//如果设置失败,返回错误码}long CSP_Motion::MC_SetParam(int NodeID,double V el,double Acc,double Jerk){//设置运动曲线类型为S型曲线//设置S曲线速度//设置曲线加速度//设置曲线加加速度//设置驱动器运动模式}电机的运行方式有两种运行方式,绝对运动和相对运动,在此基础上还可以分为模态运动和非模态运动,所谓模态运动是指电机完成当前运动后程序再执行下一条运动,而非模态运动值得是发完当前运行指令后立即执行下一条指令,而不需要等待当前动作执行完毕。

long CSP_Motion::MC_WaitMoveDone(int NodeID,int timeout){//等待当前运动指令完成//如果出错,则返回错误码}电机的停止模式有几种,有HaltMove,HardStop,通过SetHaltMode可以设置电机停止模式。

3.2.3电机的多轴联动Copley底层库提供了Linkage类,通过此类可实现电机的多轴联动,在电机需要同时运动,同时停止时使用此类,例如印刷机旋转台前预对夹电机、左夹、右夹电机。

另外在电机回零时可使多个电机同时回零,以节省设备复位时间。

3.3 IO模块输入输出包括了电机驱动器自带的输入输出,可以使用AMP类下的GetInputs()函数,在电机回零,判断和设置电机状态时使用。

主要是CopleyIO卡,其控制函数主要在IOModule Class类,包括读数字输入,读写数字数出,输出模拟量等函数。

前面提到,使用中断方式实时刷新数字输入信号,主要是在程序中开监控线程,调用信号等待中断函数。

long CSP_Motion::IO_WaitEvent(int IoNum,int timeout){//开IO卡中断//等待IO卡输入引脚的状态突变//关IO卡中断//如果出错,返回错误码}3.4 程序设计思想全自动半导体设备逻辑复杂,电机和IO的数量繁多,不仅对印刷效率要求很高,而且对设备的可靠性、印刷精度的要求也非常高,因此对设备软件的实时性、稳定性设计也提出了更高的要求。

图2 程序设计思想4. 系统测试及解决方案4.1 电机运行模式设为T型曲线时,电机动作很硬,后改为走S型曲线模式,性能得到很大改善。

4.2机器复位效率,全自动半导体设备电机轴很多,设备复位时各个电机顺序回零速度很慢,需要10多分钟,使用各部分电机联动回零方式,使得设备复位时间为5分钟。

4.3 Copley IO的数字输入输出读写有几种方式,一位,八位、十六位、三十二位读写,经过反复实验,选取八位读写方式,因为每个Io板有9个Bank,每个Bank有八位,可以设置为输入和输出,从地址分配也比较方便。

4.4 IO由查询方式,改为中断模式,因为印刷机的IO非常多,如果使用IO 查询方式读取数字IO输入,会使工控机的CPU的占用率达到100%,而且不会得到实时状态。

相关文档
最新文档