canopen协议在伺服电机控制系统中的实现.docVIP

canopen协议在伺服电机控制系统中的实现.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CANopen协议在伺服电机控制系统中的实现 导语:?针对目前国内大多把精力放在硬件之上的底层软件开发,使应用水平难于提高的问题,结合工业控制中的伺服电机控制模块,开发基于PIC18F258微控制器的CAN总线高层通信协议CANopen 摘 要:针对目前国内大多把精力放在硬件之上的底层软件开发,使应用水平难于提高的问题,结合工业控制中的伺服电机控制模块,开发基于PIC18F258微控制器的CAN总线高层通信协议CANopen,使模块具有较强的在线可控性、可扩展性和通用性。通过自行开发的基于Labview软件的PC监控面板实现模块的运行校验。关键词:CANopen协议 CAN总线 伺服电机控制  基于现场总线的网络技术的研究是自动化领域发展的一个热点。CANopen协议是目前流行于欧洲的基于CAN总线应用层的标准协议。对工程设计者来说,研究现场总线的核心任务就是对控制节点进行开发。本文就是通过实现伺服电机控制模块的CANopen协议,说明一个基于CANopen协议的控制网络的组态。  伺服电机控制器在自动控制领域里有着广泛的应用,如纺织机械和印刷机等。为了得到理想的速控效果, 伺服电机模块除了要在分辨率、线性程度以及转换速率上达到一定的要求外,还应具有良好的在线可控性和实时在线状态检测功能。为此,利用CAN总线高层通信协议CANopen,结合陕西省教育厅“并条机自调匀整” 项目对伺服电机控制模块参数的要求,开发了一个具有硬件可重用性、软件可重配置特点的伺服电机控制模块。1 CANopen协议概述[1-2]  CANopen协议是由CiA协会针对CAN协议的不完整性而定义出的一个更高层次的协议——应用层协议。一个CANopen 设备模块可分为3部分,如图1所示。通信接口和协议软件用于提供在总线上收发通信对象的服务;不同CANopen 设备间的通信都是通过交换通信对象来完成的,这一部分直接面向CAN 控制器进行操作。对象字典描述了设备使用的所有数据类型、通信对象和应用对象;对象字典位于通信程序和应用程序之间,用于向应用程序提供接口。应用程序对对象字典进行操作,即可实现CANopen通信。它包括功能部分和通信部分,通信部分通过对对象字典进行操作实现CANopen 通信;而功能部分则根据应用要求来实现。图1 CANopen设备模型  在CANopen网络系统中每个节点都有唯一的一个对象字典,而且每个节点的对象字典都具有相同的结构,但具体的内容要根据不同的设备而定,包含了描述该设备及其网络行为的所有参数。CANopen协议还定义了4种报文(通信对象),用于对不同作用的信息进行处理,分别为管理报文(NMT)、服务数据对象(SDO)、过程数据对象(PDO)和预定义报文或特殊功能对象。具体的CANopen协议内容可参考相关文档。2 伺服电机模块的硬件实现  伺服电机模块使用Microchip公司生产的带有CAN总线功能模块的主频为40 MHz的PIC18F258单片机进行控制[3]。根据并条机自调匀整系统对伺服电机的要求(9 V—3 000 r/min,即3 mV—1 r/min),以及从总线上以1 ms为周期发送来的D/A转速控制数据,使用ADI公司的12位AD7243芯片进行D/A转换。它具有300 kHz的转换速率,3种可选择的输出电压,分别是0~+10 V、0~+5 V和-5~+5 V,采用串行端口通信。  图2为硬件电路简图。根据系统需求,设置AD7243电压输出为±5 V,将AD7243芯片的ROFS引脚与REFIN引脚相连实现。在AD7243的输出端接有OP07运算放大器,用于调整输出电压到±10 V, 以控制电机正反方向和调节转速。图中继电器FDLL4148用于控制电机的启动和停止;光耦TL521用于对伺服电机状态采集时的隔离器;为实时了解伺服电机运行状态,根据CANopen协议分别设计了用于指示系统当前状态和错误的LED(绿色和红色)指示灯;J1为与伺服控制器的接口插件。图2 伺服电机模块硬件结构简图  图2中,在OP07上接有调节零输出偏置电压的可调电位器R3;用ADuM1100高速数字隔离器替代传统的光电耦合器,以降低功耗,提供精确的信号;MCP2551是一种可容错的高速CAN收发器,具有差分发射和接收能力,可将许多节点与同一网络相连接并采用非屏蔽线部署网络,从而降低系统成本。3 伺服电机模块的CANopen协议实现  (1) CANopen协议实现  伺服电机模块在CANopen网络中作为从节点发挥作用,完成属于自己范围内的特定任务,进行实时数据传输,并对其负责的底层设备进行数据采集和控制。在实现CANopen协议之前,必须先

文档评论(0)

xina171127 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档