首页 >> 钮大可

基于DeviceNet协议的伺服系统设计冲击试验机


2022年11月09日

基于DeviceNet协议的伺服系统设计

基于DeviceNet协议的伺服系统设计 2011: 随着电力电子技术、控制技术、网络技术、计算机技术的发展,伺服系统也获得了前所未有的发展机遇。伺服系统渗透在国民经济中的各个领域,如数控机床,激光加工,机器人,大规模集成电路制造,办公自动化设备以及军用武器随动系统等等。伺服技术本身的发展趋势是开放化、网络化、智能化伺服系统。 DeviceNet作为基于现场总线技术的工业标准开放网络,为简单的底层工业装置和高层如计算机、PLC等设备之间提供连接。DeviceNet应用国际标准的控制局域网(CAN)协议,具有公开的技术规范和价廉的通信部件,使得其具有比其他现场总线低得多的开发费用。设备网采用总线供电方式,提供本质安全技术,广泛适用于各种高可靠性应用场合。 本文主要研究基于DeviceNet的伺服系统的软硬件设计。通过CAN总线、单片机和高性能电机控制器ADMC401进行数据传输与控制,使伺服电机的性能更加稳定,能更好更灵活地地应用于数控系统中。 CAN总线和DeviceNet协议的实现 CAN总线协议及特点 控制器局域网CAN为串行通信协议,能有效地支持具有很高安全等级的分布实时控制。CAN的应用范围很广,从高速的网络到低价位的多路配线都可以使用CAN。在汽车电子行业中,使用CAN连接发动机控制单元、传感器、防滑系统等,其传输速度可达1Mbps。同时,可以将CAN安装在卡车本体的电子控制系统里,诸如车灯组、电气车窗等,用以代替接线配线装置。由于采用了许多新技术及独特的设计,CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。其特点概括如下[1]: l CAN为多主方式工作,网络上任一节点可在任意时刻主动地向网络上其他节点发送信息,而不分主从; l 在报文标识符上,CAN上的节点分成不同的优先级,可满足不同的实时要求,优先级高的数据最快可在134us内得到传输; l CAN采用非破坏总线仲裁技术。当多个节点同时向总线发出信息出现冲突时,优先级较低的节点主动退出发送,而最高优先级的节点可不受影响地继续传输数据,从而大大节省了总线冲突仲裁时间。尤其在网络负载很重的情况下,不会出现网络瘫痪情况(以太网则可能)。 DeviceNet协议及特点 DeviceNet是在1994年由美国的Allen Bredly公司开发的是基于CAN的一种现场总线,实现低成本高性能的工业设备的网络互连。DeviceNet协议特别为工厂自动控制而定制,它在美国和亚洲扮演了非常重要的角色。在欧洲,越来越多的系统方案使用DeviceNet来实现。 DeviceNet规范在2002年12月被国家标准化管理委员会批准为中国的国家标准,于2003年4月开始实施。DeviceNet协议适用于最低层的现场总线,例如:过程传感器、执行器、阀组、电动机起动器、条形码读取器、变频驱动器、面板显示器、操作员接口和其他控制单元的网络。可通过DeviceNet连接的设备包括从简单的挡光板到复杂的真空泵各种半导体产品。DeviceNet也是一种串行通信链接,可以减少昂贵的硬接线。DeviceNet所提供的直接互连性不仅改善了设备间的通信,而且同时提供了相当重要的设备级诊断功能,这是通过硬接线I/O接口很难实现的。DeviceNet具有多种特点[2]: l DeviceNet基于CAN技术用于PLC与现场设备之间的通信网络。它可连接开关、变频调速设备、固态过载保护装置、条形码阅读器、I/O和人机界面等,传输速率为125~500kbps; l DeviceNet使用的通信模式是:消息产生者(Producer)和消息使用者(Consumer)。传统的通信在消息传送上采用的技术式指定数据源和目标地址。DeviceNet使用的模型更为有效,它可使控制数据同时到达控制的每一个单元,可以更有效地利用网络的频带宽度。消息产生者一次发送的数据可被多个消息使用者使用,从而更有效的传送数据; l DeviceNet使用的通信协议为11位标识符,即所有的I/O消息都有自己的11位标识符ID,标识符ID分成四个消息组,各有不同用途ID中同时提供了多重优先权。工作时,总线上的设备监听网络上消息,当设备辨识出正确的标识符后,将接受该消息; l DeviceNet上的每一个设备可以随时连接或断开,而不会影响其他设备的正常运行。真正的开放性使系统扩充和改型非常方便。 控制系统的构成 为了实现伺服系统的快速实时控制,系统在设计上采用了单片机+DSP双CPU结构。在设计时将系统控制任务进行了划分:DSP完成实时性要求高的伺服控制任务,FLASH结构的8位单片机89C51完成实时性要求比较低的管理任务,单片机和DSP之间的通讯采用并行数据方式,由FPGA实现。同时FPGA还要完成外部I/O信号管理、位置脉冲指令信号处理及计数、故障信号处理等功能。伺服控制系统的结构如图1所示。由图1可以看出,系统主要有以下几部分:伺服控制中心ADMC401;外设接口FPGA+单片机89C51;主电路以及开关电源电路[3]。下面分别说明。

图1 伺服控制系统的结构图

DeviceNet通信接口部分 本文所设计的DeviceNet接口电路中,采用AT89C51ED2作为节点的微处理器,在CAN总线通信接口中,CAN通信控制器采用SJA1000,CAN总线驱动器采用82C250。 图2为DeviceNet接口电路原理图。从图2中可以看出,电路主要由4部分构成:微控制器89C51、独立CAN通信控制器SJA1000、CAN总线收发器82C250和高速光电耦合器6N137。微处理器89C51负责SJA1000的初始化,通过控制SJA1000实现数据的接收和发送等通信任务。

图2 DeviceNet接口电路原理图

为了增强CAN总线节点的抗干扰能力,SJA1000的TX0和RXO并不是直接与82C250的TXD和RXD相连,而是通过高速光耦6N137后与82C250相连,这样就很好的实现了总线上各CAN节点间的电气隔离,从而保护了系统电路以及总线的信号传输。从整体性能来说,系统设计具有很好的通用性和实用性。 微控制器AT89C51ED2用来实现通讯的应用层协议。它具有丰富的内存资源,4个8位I/O端口、3个16位定时/计数器、256字节暂存RAM、9个中断源、4个优先级,此外还有2K EEPROM空间,系统不需要扩展外部程序存储器便可满足DeviceNet协议程序的容量要求。并且能够在×2模式(6个时钟/机器周期)下工作运行,本文中的设计即是在×2模式下。单片机通过访问SJA1000的寄存器来实现和上位机的通信。CAN控制器SJA1000的接收寄存器和发送寄存器用于暂时存放接收和发送的数据。单片机发送数据则通过设置SJA1000的命令寄存器发送命令位,接收数据是通过中断方式实现,SJA1000的INT引脚与AT89C51ED2的INT1引脚相连,使单片机能够实时响应CAN的中断请求。采样周期2ms由AT89C51ED2的定时器中断产生。 电机控制部分 伺服电机控制电路部分采用高性能电机控制器ADMC401,它是美国模拟器件公司(ADI)推出DSP芯片中的高档产品。ADMC401是面向电机控制的高性能数字信号处理器,它以ADSP-2171为内核,辅以完备的电机控制外设。其中包括8路12位A/D转换系统、三相16位PWM产生单元、两路辅助PWM输出及用于位置反馈的增量式码盘接口。另外ADMC401还包括12路数字I/O口、事件捕获单元及内部定时器等设施,为开发快速、高精度的电机控制系统提供了完善的硬件设施。 ADMC401内部提供了2K×24位的内部程序RAM、2K×24位的内部程序ROM和1K×16位的内部数据RAM;程序及数据RAM的内容可由其串口从外部ROM中以同步或异步方式调入。为了满足实际工程的需要,ADMC401还提供了外部存储器的扩展能力,用户最多可以直接寻址片外14K×24位的程序存储器和13K×16位的数据存储器[4]。ADMC401是整个伺服系统的核心,具有高速的运算能力、较高的采样精度,外设配置性能和功能较强,能胜任实时性要求高的伺服控制任务。本系统用它来实现矢量变换、电流环、速度环、位置环控制以及PWM信号发生、各种故障保护处理等。 系统软件设计 上位机软件设计 上位机主控计算机是整个系统的核心,通过CAN接口卡与CAN总线相连,负责系统的管理、运动规划以及通讯功能。其上位PC机软件设计包括网络管理,参数管理,状态管理三个部分。 l 网络管理 设置CAN接口卡工作波特率和本机节点地址,同时初始化CAN控制器SJA1000,以及DeviceNet各个对象类,并且检查此网络中是否设置重复的节点地址。因为PC机的CAN卡初始化要涉及CAN卡与PC机的联系工作,所以要对CAN通讯适配卡的各个寄存器进行配置,设置中断向量、通信波特率和滤波接收码以及中断屏蔽字等参数,为正常通讯做好准备工作。另外此部分还要完成扫描网络中的节点,并与从机节点建立连接的功能。DeviceNet是面向连接的网络,两个节点之间首先建立连接然后才能够通讯,本设计中只采用仅限组2的从设备建立连接,其建立连接是通过“分配预定义主/从连接组”来完成的。 l 参数管理 完成伺服系统的各个参数字或者控制字的读取修改工作,这些参数包括伺服电机的内部参数Kp、Ki、Kd等以及针对雷达系统的参数:雷达扇扫中心角度、扇扫范围、扇扫速度、手轮方式中的手轮与天线的转速比、运行模式选择(第26号参数,其中0—手轮方式,1—匀速扫描方式,2—扇扫方式,4—接收停方式)。一般情况下,对各个控制字参数的读写操作类似于对各个参数的读写操作。在本设计中为了简化软件设计,我们可以对31号参数的读写操作来完成对16个控制字的读写操作,实现过程如下:第31号参数为控制字参数,是由16个控制字按照STA-15至STA-0顺序组合而成的一个整型数,这样对控制字参数的读写操作的同时也就完成了对16个控制字的读写操作。 l 状态管理 能够反应伺服电机当前的运动状态,如实际位置,速度指令,力矩反馈,速度反馈,指令偏差等。这样给我们观察伺服电机当前状态提供了一个直观方便的平台。 下位机软件设计 下位机通信部分的单片机完成I/O数据过程的自动控制作业,包括输入输出数据的解包下发、打包上传,以及故障事件记录、报警等工作。通信卡采用定时中断方式与CAN总线的控制卡节点频繁地交换各自通信缓冲区的数据,以确保系统I/O数据的实时性,同时缩短了整个系统响应时间。图3示出程序框图。

图3 程序框图

下位机初始化完成后,则进入等待中断状态。下位机的通讯过程是通过单片机访问CAN控制器寄存器来实现的,单片机对CAN控制器的寄存器访问是作为单片机的外部存储器访问的,每个寄存器的地址为SJA1000的首地址与SJA1000内部相对地址之和。单片机采用中断方式接收数据。CAN控制器SJA1000接收到上位机的数据并且当接收缓冲区有空余空间时,接收的数据被依次放在SJA1000的接收缓冲区中,这是有硬件自动完成的。当调用清除命令清除接收寄存器中的数据后,FIFO接收缓冲区会把数据填充到已清空的接收寄存器中,同时回答一个中断信号。单片机把这个中断信号作为单片机的外部接收中断,单片机响应接收中断后读出CAN控制器中的接收缓冲区数据并保存,再清空CAN控制器的接收寄存器。 在设计本系统软件时, 开发工具使用Borland C++语言 。因Borland C++是一种可视化、面向对象的C++程序设计语言快速开发工具,具有简单直观和功能强大的特点。在Borland C ++集成开发环境下,可以方便的编写PC机的通讯程序。 以PC机A作为主机,伺服驱动器和PC机B作为网络中的2个节点,设置主机节点地址和通讯波特率后,对网络进行扫描建立连接,可以正确扫描到两个在线节点,如图4是读取伺服驱动器各个参数值。

图4 读取伺服驱动器的各个参数值

结语 从CAN总线以及DeviceNet总线特点可以看出,它较传统的串行通信,在硬件上可减少走线、易于系统扩充或改型,在软件上通信更加灵活、实时性更好、纠错能力更强。这表明基于DeviceNet总线的运动控制系统有广阔的应用前景。 本文所设计的运动控制系统将DeviceNet总线与伺服电机驱动技术结合起来,实现了控制系统的全数字化。实际运行结果表明:本系统具有可靠性高、实时性好、易于维护等特点,达到了设计所需的要求。 参考文献 [1] 饶运涛.现场总线CAN原理与应用技术.北京:北京航空航天大学出版社,2003 [2] DeviceNet网络结构,广州周立功单片机发展有限公司,>

西安牛皮癣最好的医院

苏州阳痿阳痿如何治疗

湖南白癜风专科医院

哈尔滨治疗前列腺专业医院

昆明专治男性不育

相关阅读
最火逗逗迪迪上映时间童真冒险梦幻启航方伊琪东台顾莉雅林柔均胡耀威Rra

逗逗迪迪上映时间 童真冒险梦幻启航腾由咏声动漫、合艺电影联合出品,猪...

2024-03-20
最火钟丽缇肿么胖成了这样束腰太紧完全裹不住她城市少女尚志吕珊田梓呈申成雨Rra

钟丽缇肿么胖成了这样?束腰太紧完全裹不住她的身躯钟丽缇,在星爷的巅峰...

2024-03-20
最火海港城商场租金收入下跌12奢侈品消费深陷严铮恩施陈芬兰金木一杰特Rra

海港城商场租金收入下跌12%,奢侈品消费深陷泥潭海港城商场租金收入下跌1...

2024-03-20
最火曝艾什顿库切与女友同居收获特殊生日礼物李明洋新沂黄馨谢丹杨芳仪Rra

曝艾什顿库切与女友同居 收获特殊生日礼物[导读]据媒体报道,尽管与好莱坞...

2024-03-20
最火少女佳禾与痛感作别与自己和解平川大辅张翰许景淳王宏恩候尼勋Rra

《少女佳禾》:与痛感作别,与自己和解原标题:《少女佳禾》:与痛感作别...

2024-03-20
最火直通春晚三强微访谈平安金池淘汰很可惜谢军惠州郑在娟郑贤民朱紫娆Rra

《直通春晚》三强微访谈 平安:金池淘汰很可惜[导张栋梁读]1月2日,《直通...

2024-03-20
友情链接