基于CAN总线的机车磨合控制系统设计
   来源:中国科技博览     2018年03月11日 19:58

陈晓

[摘 要]控制器局域网络(CAN)作为一种串行异步多主的通讯协议,由于其高速率,实时性,低成本,非常适用于机车磨合试验安全监控系统。本文分析了机车磨合试验安全监控系统的现状和存在问题,论证了CAN总线技术在该系统中应用的可行性,设计了基于CAN总线的机车磨合试验安全监控系统的传输电路,包括CAN总线传输的硬件电路及程序。

[关键词]CAN总线 A/D转换 通讯 SJA1000

中图分类号:TM734 文献标识码:A 文章编号:1009-914X(2017)01-0015-02

CAN (Controller Area Network) 总线又称控制器局域网, 是Bosch 公司在现代汽车技术中领先推出的一种多主机局部网。由于其卓越的性能、极高的可靠性、独特灵活的设计和低廉的价格,现已广泛应用于工业现场控制、智能大厦小区安防、交通工具医疗仪器、环境监控等众多领域,是国际上应用最广泛的现场总线之一。与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。本文以CAN通信控制器SJA1000 为例,对CAN 总线系统智能节点硬件和软件设计作一个简单的介绍。

一、系统的电路设计

系统设计的主要目的是对机车磨合时进行实时监控机车的转速、功率,使机车在使用前磨合到最佳状态,从而延长机车的使用寿命。测量机车的功率所采用的主要手段是测量三相发电机的输出功率、从而决定了系统要有测量电流、电压的传感器,再经AD转换(模\数)转换。单片机读入AD转换后的数据和对电流方波的周期定时,综合处理这三组数据(电流、电压、转速)单片机就可能通过继电器来控制机车磨合的开关状态。

1、原理方框图

2、主要芯片的选用

见表1。

3、CAN 总线系统智能节点硬件电路设计

图3为CAN总线系统智能节点硬件电路原理图。从图中可以看出,电路主要由四部分所构成:微控制器80C51、 独立CAN通信控制器SJA1000、 CAN总线收发器82C250和高速光电耦合器6N137微处理器。80C51负责SJA1000 的初始化通过控制SJA1000 实现数据的接收和发送等通信任务。

二、系统软件设计

1、主程序的设计

2、CAN接口初始化程序设计

CAN 总线节点的软件设计主要包括三大部分:CAN 节点初始化、报文发送和报文接收。熟悉这三部分程序的设计就能编写出利用CAN 总线进行通信的一般应用程序。当然,要将CAN 总线应用于通信任务比较复杂的系统,还需详细解有关CAN 总线错误处理、总线脱离处理、接收滤波处理、波特率参数设置以及CAN 总线通信距离和节点數的计算等方面的内容,下面仅就前面提到的三程序的设计作一个描述。

(1)初始化子程序

SJA1000的初始化只有在复位模式下才可以进行,初始化主要包括工作方式的设置、接收滤波方式的设置、接收屏蔽寄存器AMR和接收代码寄存器ACR的设置、波特率参数设置和中断允许寄存器IER的设置等,在完成SJA1000的初始化设置以后,SJA1000就可以回到工作状态进行正常的通信任务。下面提供了SJA1000初始化的51汇编源程序,程序中寄存器符号表示的是SJA1000相应寄存器占用的片外存贮器地址,这些符号可在程序的头部用伪指令EQU进行定义。

(2)发送子程序

发送子程序负责节点报文的发送,发送时用户只需将待发送的数据按特定格式组合成一帧报文送入SJA1000发送缓存区中,然后启动SJA1000发送即可。当然,在往SJA1000发送缓存区送报文之前,必须先作一些判断。

(3)查询方式接收子程序

接收子程序负责节点报文的接收以及其它情况处理,接收子程序比发送子程序要复杂一些,因为在处理接收报文的过程中同时要对诸如总线脱离错误报警接收溢出等情况进行处理。SJA1000报文的接收主要有两种方式:中断接收方式和查询接收方式。如果对通信的实时性要求不是很强,建议采用查询接收方式。两种接收方式编程的思路基本相同。

结束语

本设计在许多方面都选择了优选法,按照理论设计和实际具体情况相结合,令设计更加完善与可靠。如在单片机的选择上曾比较了8位机与16位机的特点,选择了性价比和符合实际要求的8位机;选择A/D转换器时,考虑的主要问题是转换精度和转换时间;在设计键盘和显示接口时,采用专用芯片8279和扩展输入输出口,这样会减小CPU的负担。这种方法的特点是硬件多,软件可以减少,容易编写,但控制系统体积增大,所以采用并口扩展芯片。显示部分采有静态扫描,提高系统的稳定性。

参考文献

[1] 丁元杰主编。单片微机原理及应用。机械工业出版社,1999

[2] 涂时亮,张友德,陈章龙编著。单片微机软件设计技术。科学技术文献出版社重庆分社,1988

[3] 邓红,张越编著。单片机实验与应用设计教程。冶金工业出版社,2004

[4] 饶运涛,邹继军,郑勇芸编著。现场总线CAN原理与应用技术。北京航空航天在学出版社,2003

文章 总线 报文