新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > CAN总线在组合机床电控系统通信中的应用

CAN总线在组合机床电控系统通信中的应用

作者:时间:2012-03-29来源:网络收藏

摘 要:本文分析了目前广泛的TI公司TMS320C2000X系列芯片中内嵌控制器的特点,介绍了电控设计与实现,并在其基础上重点介绍了控制器以及PC机与接口的硬件设计和层协议软件的设计思想。

本文引用地址:http://www.eepw.com.cn/article/149324.htm

关键词:电控;CAN;DSP;TMS320LF2407A

引言

现代装备了大量的电子设备来满足加工精度、加工速度等要求,如果采用常规的点到点方式,直接把12V/24V电源连到负载设备上(如电机、液压泵等),用开关使电路闭合,势必造成导线数量不断增加,而有限的布线空间则在相对减少。此外,这些电控单元还要进行复杂的控制决策运算,包括从周边设备收集信息,发出控制命令,再根据反馈的信息做下一步的决策等。这一过程需要不同的电控单元之间进行,彼此影响。这些是不能通过简单的连接所能实现的。

有多种信息传输手段可以实现不同的电控单元之间的,如常用的RS-232、RS-485和CAN。RS-232虽然广泛,但是传输速率 较低,传输距离较短,抗干扰能力较差,而且最重要的是它只适合点对点的连接方式;RS-485也是一个常用的通信规范,它可以实现半双工的总线型的网络,总线上允许连接多收发器,即具有多站能力;而CAN(控制器局域网)具有现场总线的特征,与RS-485相比,CAN的信号形式更适合于热插拔,而且它的网络层协议在满足模块间通信高实时性要求的同时,与定时触发的TIP相比更适合不定时传送信息的要求。CAN继承了集散控制系统(DCS)的优点,可以更方便地构建模块间通信网络。

本文介绍利用CAN总线,实现组合机床电控系统间通信的系统设计与应用,给出模块控制器以及监控PC机的CAN总线接口的硬件设计,和应用层协议软件的设计思路。

系统的描述

● 系统的组成及网络结构

系统由监控主机、并联组合机床电控的数据采集模块和CAN总线组成。

本文研究的组合机床采用了上述CAN总线接口的微处理器系统。该系统包括数据采集和加工过程控制两部分,前者由挂接在CAN总线上的数据采集单元完成,主要是从总线上收集有关组合机床的运行数据(由组合机床上的控制单元提供),进行一些基本的数据处理和诊断,如有关传感器、执行器是否失效,然后将有关数据和加工状况存储在扩展的EPROM中,在适当时刻将存储的数据通过RS232总线上传到监控主机(PC)进行分析。实际上可以直接把PC机挂接在CAN总线上。加工过程控制运行在PC机上,主要是处理由数据采集系统发送的数据,如动力头转速、进给量、切削深度等。这种分层处理的好处在于可以更好地利用PC数据处理能力以及已有的一些控制软件资源,并且可以脱机处理。

监控主机通过CAN总线从各模块获取现场控制数据,监控整个系统的工作状态,控制各模块的投入和退出,完成人机对话,响应近端和远端的操作。

各个组合机床电控单元间以及模块与监控主机之间通过CAN连接通信,通信网络拓扑结构采用总线式结构。

这种结构的特点是多个节点共用一条传输线,结构简单、成本低;采用无源抽头连接,可靠性高。信息的传输采用CAN通信协议,线路利用率高。传输介质为双绞线,如需进一步提高抗干扰能力,还可在控制器和传输介质之间加接光电隔离。

● 硬件介绍

硬件包括TMS320LF2407A与CAN总线的接口、监控机与CAN的接口。

由于LF2407A内嵌CAN控制器,因此它的CAN总线接口只需一个完成电平转换和线路驱动的驱动器PCA82C250T。

PCA82C250T是CAN协议控制器和物理总线的接口,对总线提供差动发送能力,对CAN控制器提供差动接收能力,完全符合“ISO11898”标准。在CAN总线的网络终端,总线上需加一个120Ω的匹配电阻。

监控机使用了工业控制用PC机,与CAN的接口用一块CAN总线通信接口适配卡实现,适配卡插在PC机的扩展槽内。

● LF2407A的CAN控制器

LF2407A的CAN控制器是一个16位的外设模块,可以通过设置或读取内部寄存器来访问CAN控制器。LF2407A的CAN控制器由可编程位定时器和6个邮箱组成。邮箱方式是CAN控制器的特点,邮箱是一个48×16位的RAM空间,此空间分为6个邮箱,每个邮箱由邮箱标识寄存器、邮箱控制寄存器及4×16位的存储空间组成,其中邮箱0和邮箱1是接收邮箱,邮箱4和邮箱5是发送邮箱,而邮箱2和邮箱3则可随意配置成发送或接收邮箱。CPU以统一的内存编址来访问这些邮箱寄存器。

LF2407A的CAN控制器支持CAN2.0协议,有自动重发功能,支持数据帧和远程帧,数据收发采用邮箱方式,可工作在标准模式和扩展模式,有可编程位定时器,可编程实现总线唤醒功能,可对中断配置编程。TMS320LF2407A芯片的这些特点方便了系统功能的实现。

CAN网络发送周期

该图为在其他站处于等待状态时,一次成功发送周期的时序图,成功发送周期=传输时延+传输时间。

由于CAN网络的信息传递是基于ID优先权的竞争机制仲裁。当t时刻发生在A节点仲裁场结束之前,即有不少于两个站同时发送时,需根据优先权的比较结果,决定发送站的成功发送周期时序。这里的“同时”可定义为,“当节点A发送信息时,另一个节点B在t时刻发送信息,若t时刻发生在A节点仲裁场结束之前,则称A节点和B节点为同时发送信息”。在仲裁场结束之后,信息的成功发送周期由优先权的比较结果决定。此时,优先权高的占据总线,信息得以成功发送,优先权低的发送失败,等待下一次发送。此时若A的优先权高于B的优先权,成功发送周期不变。否则,则成功发送节点为B节点,成功发送周期为B节点的发送时间加上两节点同时发送进行优先权比较时A节点的仲裁场时间,即成功发送周期=传输时间+2×最大传输时延+仲裁场时间。若t时刻发送在A节点仲裁场结束之后,则B节点等待下一次发送,成功发送周期不变。

CAN控制器的编程

● 包过滤功能的编程

CAN结点对数据包的选择接收是通过接收包过滤功能来实现的。在数据链路层LLC(逻辑链路控制)子层实现数据包过滤。只有符合一定条件的数据包才会被该节点接收,其他数据包在底层即被丢弃。因此只要在发送节点为数据包设置正确的标示符,即可将其发送到指定的一个或多个节点。利用CAN总线端口验收码AC,验收屏蔽码AM,报文标识符ID的关系,即可实现上述目的。设目的CAN端口验收码、验收屏蔽码分别为AC、AM,则源CAN端口报文标识符ID设置应满足如下条件,(ID.10~ID.3)或(AC.7~AC.0))或(AM.7~AM.0)=11111111B。应用中可以灵活设置CAN节点的验收码和验收屏蔽码,达到点对点,一点对多点,以及多主机的工作方式。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭