数控系统模块间RS-422串行通信协议的设计方案_第1页
数控系统模块间RS-422串行通信协议的设计方案_第2页
数控系统模块间RS-422串行通信协议的设计方案_第3页
数控系统模块间RS-422串行通信协议的设计方案_第4页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数控系统模块间RS-422串行通信协议的设计- 机电论文数控系统模块间RS-422 串行通信协议的设计数控系统模块间RS-422 串行通信协议的设计范鹏飞 1 崔锡奎 2 王祥宝 1 刘敬猛 2( 1.阜阳轴承有限公司,安徽阜阳236000 ;2. 北京航空航天大学自动化科学与电气工程学院,中国北京100191 )【摘要】一个复杂的数控系统,模块众多,如何使得各模块间通讯实时且可靠是一个关键。 研究了数控系统各模块间的通信协议,设计了串行通信协议和软件框图,并给出了串行通信硬件设计的电路图。最后通过数控系统现场加工实验验证了该通信协议设计的有效性。关键词 ARM ;数控系统;通信协议 ;串行通

2、信; RS-422 总线;数控系统是制造业的基石,是制造设备的设备。国家在国家中长期科学和技术发展规划纲要)1 中明确提出,基本实现高档数控机床、工作母机与关键零部件的自主设计制造,并确定了高档数控的发展为优先主题。RS-422 是一个通用的物理通信接口规范, 规定了物理接口的电气特性,而不涉及协议。 在此基础上,用户可以建立自己的高层通信协议2 。该通信协议既满足数控系统的实时性要求又大大降低开发成本3 。本文结合阜阳轴承有限公司- 北京航空航天大学联合开发的两轴数控车床系统,设计了一种基于RS-422 总线标准的串行通信协议并讨论了基于此的硬件以及软件的设计,完成了相关的现场试验。1 数控

3、系统串行通信模块介绍随着现代数控技术的发展,数控系统的功能越来越多,系统的构成也越来越复杂,除了运算速度不断提高外,硬件的升级、 扩展和维护都要在系统设计时考虑。图 1 是数控系统的结构框图,主要包括4 部分:主板、系统键盘板、用户键盘板和接口板。接口板连接IO 和伺服电机。系统键盘用于G 代码编程,该矩阵式键盘通过并行总线与主板FPGA 连接。主板包括 ARM 和 FPGA 两块处理器。FPGA 是协处理器,负责时序、“方向+ 脉冲”信号、接口扩展。ARM是主处理器搭载 UCOS 操作系统实现 G 代码编辑、编译、界面、插补运算。该主板搭载三个异步串口, UART0 、UART1 和 UAR

4、T2 。UART0 接超级终端,打印系统信息。 UART1 和 UART2 扩展成 RS422 ,分别接操作键盘板和接口板通过串口进行通信。串行通信的波特率是115200bps ,8 为数据位, 1 位停止位,没有校验位。机床的主令开关、指示灯、继电器、电磁阀、用户键盘板的手动调整开关等通过 RS-422 传至 ARM 。这种通讯架构主要有以下三个优点:第一,用户键盘和接口板从主板上分离出来,用RS422 连接,便于安装,并且兼容了不同类型的数控系统。第二,用双RS422 而不用 RS485 ,最大限度提高带宽,简化应用层通信软件的设计。 第三,设计了一套完整的帧传送协议,保证了数据快速有效传

5、递。2 串行通信硬件设计图 2 是 RS-422 接口电路图 4 ,该系统的接口板和操作键盘板的信息采集是通过 RS-422 完成的。选择 RS-422 的理由如下:( 1) RS-422 的通信速率和误码率完全能够达到信号传输的要求。 ( 2)RS-422 是工业标准的总线, 可靠性高,应用广泛,价格低廉。(3)ARM 端有 UART,FPGA 端可通过 IO 口扩展串口。( 4) MAX3491 可将 LVTTL/CMOS 的信号转换为 RS-422 的差分信号。本系统用到 3 片 MAX3491 ,分别接在主板的 ARM 上,接口板的 FPGA 上,和用户键盘板的 FPGA 上。图 2

6、中的 MAX3491 右侧是 3.3V 的 LVTTL/CMOS 信号,接 ARMS3C2410 的 UART 管脚或者 FPGA 的 IO 口。 FPGA 选用 Cyclone 的EP1C6Q240 ,对于串口 115200bps的波特率,可用 FPGA 的通用 IO 口。由于RS-422 采用输入、输出通道独立,三态门缓冲器的控制引脚/RE 接高, DE 接低。 MAX3491左边的信号是差分信号。RS422_T+ 、RS422_T- 是差分信号输出的正和负, RS422_R+ 、RS422_R- 是差分信号输入的正和负。差分信号在进入电平转化芯片MAX3491之前进行滤波和限幅处理,消除

7、信号在传输过程中接收到的噪声。 L1 是滤波器,消除共模干扰。D1D4 、R11 、R12 将信号大致限幅在电源和地之间, 避免尖峰电压损坏接口芯片。C9 是压片电容, 25V/104 ,接在接口芯片的电源和地之间。3 串行通信协议的设计本协议解决上位机( ARM )和下位机( FPGA)间的数据传输,约定了数据格式、通信的建立、故障的处理。3.1 帧结构串行通信分为异步串行和同步串行,RS-422是基于异步串行通信设计的。异步通信的双方没有时钟,通信始于发送方的逻辑1 到逻辑 0的下跳沿,一般是 1 位起始位, 58 位数据位, 1 位奇偶校验位, 1 位停止位。停止位是逻辑 1 ,停止后总

8、线保持逻辑1状态,直到下一次的起始位出现。这样,一次通信的信息量很小, 8 位数据最多只能表示256 种状态,无法在复杂的通信系统中直接使用。 于是,将要传送的数据按照一定的格式组成帧,由协议控制帧中的数据,一个字节接一个字节地发送和接收。(b) 字节 Data0 解析图 3(a) 是本文设计的通讯协议帧结构。对主站和从站,命令和数据的定义有所不同。帧长 12 个字节,编号 0 到 11 ,低编号字节先发、先收。帧头 0X55 ,帧尾 0XAA ,编号是 10 的字节是累加和 SUM ,SUM 是 CMD 、Data7Data0共 9 个字节的累加。 帧长为 12 个字节的设计使得主板到接口板

9、和操作键盘板所有的通信信息均可在一帧内完成,节省了通信时间,ARMS3C2410的 FIFO 模式中断支持一次12 字节的发送和接收。 该协议不需要 ID ,ARM 有两个 UART,点对点连接接口板和用户键盘板。图3(b) 是一个字节Data0的解析, D7D0每位控制一个输出端口,每位输出端口(OUT-7OUT0)对应机床的一个继电器或者电磁阀或者用户键盘板的一个指示灯。数控机床的输入输出以及用户键盘板上有很多这样的数字IO ,它们经过编码后被填入图3(a) 的 Data7Data0。3.2 通信的建立图 4 是通讯建立的状态机。帧的第1 字节是 CMD ,共 8 位,支持 256 个命令

10、。本数控系统用到的的常见命令:复位命令0X01 ,启动命令0X02 ,停止命令 0X03 ,正常数据 0X04 。前三个命令要有应答。通信的建立从硬件复位开始,由主站( ARM )发起,在周期任务里发送复位命令0X01给从站,从站的状态信息依赖这个复位命令进行初始化。从站完成复位以后, 发一个应答给主站, 表示复位已完成。然后,主站发送启动命令0X02 ,该命令发给从站,启动从站里的一些定时模块, 为接下来的数据采集做准备。从站启动完成后, 发送应答给主站,表示启动已完成。接下来主站发一个数据帧,表示接数准备完成,同时打开看门狗计时器(溢出时间是3 秒)。每当收到从站发来的数据时看门狗计时器清

11、零,当看门狗计时器溢出时状态机复位,表示通讯系统故障。此时,系统进入自修复自动通信状态。通信系统建立以后,主站通过看门狗监视从站的通信是否正常工作。主站收到来自从站的数据,根据自动循环或手动调整的加工要求决定是否返回应答数据。考虑到频繁的帧应答不仅需要大量的时间,而且还会造成死锁。 本协议规定,当通信建立以后,从站每20ms 定时向主站发送一帧数据,不管主站是否应答,当收到停止命令时,从站停止数据帧发送。4 串行通信协议的软件设计函数 RenewOSInitUart为 ARM9S3C2410的初始化代码,解决串口初始化、串口发送中断和接收中断初始化问题。其中 ARM 的串口 1 接接口板,串口

12、 2 接用户键盘板。具体的代码如下所示:图 5 是上位机 ARMS3C2410 串口接收中断流程图,使能了超时中断。在正常情况下,当下位机开始向上位机发送数据的时候, ARMS3C2410 连续收到 12个字节的数据后, 进入接收中断。若因为通信的原因没有接收到触发深度设定的12 个字节且三个字长的时间没有收到任何数据,进入超时中断。超时中断和接收中断共用同一个中断源。 在接收中断的最开始, 读取接收数据长度, 看是否等于触发深度12 ,若不是,说明是超时中断,清空串口缓冲区数据,丢弃数据,清零看门狗计时器, 中断返回。当接收数据等于触发深度,说明接收的是一帧完整的帧。把串口缓冲区数据逐个读出

13、,送到接收数组,同时,计算累加和。接下来判断帧头、帧尾和累加和是否正确,若正确,将接收到的数据填充到IO 的据结构里去,称 IO 处理。若不正确,丢弃数据,然后返回。5 系统实测结果图 6(a)数控系统控制箱,包括系统键盘、用户键盘、手轮、主轴波段开关和用于界面显示的液晶屏。图 6( b)是数控系统的主板。图 6(c)是自动加工时的操作和显示界面。图 6 (d )是加工的工件。6 结论本文设计了一种RS-422 的通信协议,用于解决数控系统模块间信号通信。利用 ARMS3C2410异步串行通信接口的资源, 结合模块间数据通信的需求, 将中断和 FIFO 帧( 12 字节)用于数据通信。实现了下位机每隔20ms 向上位机传送一次数据的功能。看门狗、超时中断、出错重发机制、帧头帧尾和累加和校验保证了数据通信的可靠性和稳定性。该协议应用在两轴车床上, 完成了轴承外环沟道的小批量试产。 其加工样品完全满足工艺和误差的要求,达到了预期的设计要求,验证了本协议的有效性和实用性。参考文献 1中华人民共和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论