APP下载

嵌入式设备电源控制系统的CAN通信软硬件设计

2017-11-07郭丽萍张艳荣林思苗

中国测试 2017年10期
关键词:收发器通信协议实时性

郭丽萍,张艳荣,林思苗

(西南交通大学机械工程学院,四川 成都 610031)

嵌入式设备电源控制系统的CAN通信软硬件设计

郭丽萍,张艳荣,林思苗

(西南交通大学机械工程学院,四川 成都 610031)

为解决电源监控系统中存在的数字化程度低、实时性差、准确度和可靠性低等问题,在研究CAN协议的原理及应用技术的基础上,采用外挂Microchip MCP2515 CAN控制器的设计思想,完成基于AVR单片机的CAN通信软硬件设计,满足电源控制系统策略的需要。该文给出CAN总线的整体结构及控制器、收发器等组成部分硬件及软件的设计与实现,并对系统进行网络负载分析及实时性分析。实际运行表明:该系统可实现报文的发送、接收等功能,可靠性强、通信实时性好。另外,电气隔离电路的设计,进一步提高系统的抗干扰能力;同时,软件设计部分采用自顶向下的模块化设计方法,增强系统的可移植性。

电源控制系统;CAN通信软硬件设计;网络负载分析;实时性分析;抗干扰能力

0 引 言

随着社会的发展,电力电子设备与人们的工作、生活关系日益密切,而电子设备都离不开可靠的电源。在工业控制中对电源监控系统[1-2]的准确度、可靠性及实时性等要求也越来越高。然而目前对电源监控普遍采用的做法存在数字化程度低、时实性差、准确度和可靠性低等问题。

在工业控制中,电源控制系统经常需要监控设备的互联操作,即对现场采集的数据进行有效地收集与传输,并且把控制信号从控制中心发送到现场控制节点。CAN总线是一种使用CAN协议的串行通信网络,它废除了传统的站地址编码,采用对通信数据块进行编码,从而网络内的节点个数在理论上不受限制,其数据通信具有突出的可靠性、实时性和灵活性[3]。因此,电源控制系统采用CAN总线,即使在比较恶劣的工业现场环境中,也能保证信号传输时间短、受干扰概率低。

1 电源控制系统的硬件结构

针对电源监控系统存在的问题,本文提出有效的软硬件设计方案。该电源控制系统具有以下功能:

1)发送控制命令和配置参数。

2)对电源状态进行实时监控,采集电源的电压、电流和温度参数。

3)把采集的各数据发送给控制单元,通过控制单元保证电源的正常运行。

为了实现控制系统的功能,采用主从控制方式。主机为PC机[4],从机采用AVR单片机作为控制核心。主机与从机、从机里的两层系统之间的信息交互采用CAN总线通信方式。电源控制系统的CAN总线结构如图1所示。

由图可以看出,整个系统采用2路并行CAN总线:CAN总线1负责AVR单片机与PC机之间报文的传送;CAN总线2负责AVR单片机与电源的各功能模块之间报文的传送。由此,避免各种数据的传输冲突,使得系统更加稳定可靠,实时性增强。由于AVR单片机内部没有集成CAN控制器,所以采用外挂CAN控制器的方式,AVR单片机通过SPI接口与CAN控制器进行数据传输。

2 基于AVR单片机的CAN节点的硬件设计框图

完整的CAN节点的硬件结构如图2所示,主要包括微处理器、CAN控制器、CAN收发器、电气隔离等部分。本文微处理器采用性价比高、结构简单、便于编程的AVR单片机,主要用于对CAN控制器MCP2515的初始化,并通过对CAN控制器的控制操作实现现场总线与管理层中央服务器PC的数据交换等通信任务[5]。

图1 电源控制系统的CAN总线结构

图2 CAN节点硬件电路框图

由图可以看出,电源控制系统的CAN接口电路包括CAN控制器收发CAN信号的电路以及AVR单片机与CAN控制器之间的通信电路。CAN控制器能够完成CAN格式数据和SPI格式数据的转换,并通过CAN收发器进行CAN数据的收发。

2.1 CAN控制器的电路设计

CAN控制器主要集成了CAN协议[6]的物理层和数据链路层的功能,由实现CAN通信协议部分的电路和实现与AVR单片机接口部分的电路组成。

Microchip公司的MCP2515芯片是一款基于SPI接口操作设置的独立CAN协议控制器[7-9]。CAN控制器与AVR单片机接口部分连接如图3所示。

2.2 CAN收发器的设计

本文使用MCP2551作为CAN协议控制器与物理总线的接口[10],负责把CAN控制器的数字信号转换成适合总线传输(差分输出)的信号。MCP2551与ISO/DIS11898标准完全兼容,其原理如图4所示。MCP2551的CANH、CANL引脚分别串接一个热敏电阻再连接到物理总线上,当电流增加时,电阻增大,从而保护收发器免受过流冲击。另外,收发器的RS引脚通过一个电阻后接地,可控制CAN差分信号的上升沿、下降沿的陡峭程度,以匹配CAN速率要求,同时降低对外界的电磁干扰[11]。

图3 MCP2515与AVR单片机的物理连接接口

图4 CAN收发器部分原理图

2.3 电气隔离部分的设计

收发器采用带隔离的DC-DC模块单独供电来达到电气隔离的目的。另外,本文采用光电耦合器件进行信号的隔离,隔离电路如图5所示。

CAN控制器引脚 CANTX、CANRX和收发器MCP2551之间不直接相连,而是通过由高速光电耦合器ACPL-M61L构成的隔离电路后再与MCP2551相连,这样就可以很好地防止线路间串扰。图中,TXCAN、RXCAN分别为信号发送(从MCP2515来)和信号接收(到MCP2515去),与MCP2515的TXCAN、RXCAN引脚相连,TX、RX分别连接 MCP2551的TXD、RXD引脚。

3 软件实现

3.1 主程序流程控制

图5 信号隔离电路原理图

图6 程序主流程图

电源控制系统的程序设计主要包括MCP2515的初始化、数据的发送和接收,这3部分程序是CAN模块进行数据通信的基本部分。程序主流程如图6所示。MCP2515在正常运行之前必须进行初始化,主要包括波特率设置、接收滤波方式的设置、接收屏蔽寄存器、中断允许设置等。初始化设置是在配置模式下进行的,在上电或复位时,器件会自动进入配置模式。MCP2515有2种复位方式:硬件复位和SPI复位。本文采用SPI命令复位方式。只有在正常模式下,MCP2515才能在CAN总线上进行报文的传输[9]。

系统中1路CAN通信[10-11]的相应设置如下:

1)通信终端:主机-从机AVR单片机。

2)通信方式:命令/应答方式。

3)通信协议:使用CAN协议,扩展数据帧[12],不使用远程帧,波特率为500kb/s。

3.2 数据的发送

由于CAN协议定义了物理层和数据链路层,故本系统在CAN总线扩展帧格式基础上,结合系统要求,自定义了应用层通信协议,包括若干命令,如参数设置、参数查询、停止命令等。该应用层通信协议中设计的帧结构如表1所示。具体温度、电流、电压参数相关的帧结构如表2所示。

表1 应用层通信协议帧结构

表2 温度、电流、电压参数帧结构1)

AVR单片机将要发送的数据按CAN协议封装成一完整信息帧,通过SPI接口依次存入MCP2515的发送缓冲器中,设置控制寄存器中的相应位来启动发送模式,然后通过CAN收发器MCP2551发送数据[9]。

数据发送部分主要完成CAN扩展帧格式与用户通信协议中设计的帧结构之间的转换。将通信协议中定义的帧结构对应到MCP2515的相关发送缓冲器中(有关CAN帧的控制信息和CAN扩展帧ID的存放结构)。MCP2515中相关发送缓冲器的结构如表3所示。

3.3 数据的接收

由于通信控制的实时性要求比较强,采用中断接收方式来接收信息。当MCP2515接收到有效报文时,器件的INT引脚拉为低电平,并保持低电平状态直到AVR单片机清除中断。AVR单片机读取到报文后,通过位修改命令对CANINTF寄存器中的相应位清零来清除中断。

当中断服务程序将数据包接收后,再根据CAN扩展帧格式与自定义的应用层通信协议中的帧结构之间的转换方式得出扩展帧的29bitID,再根据ID将数据分别存入相应寄存器中,由此完成数据的接收。

4 网络分析

4.1 网络的负载分析

一般CAN总线的网络负载限制在30%以内。根据文献[13],报文总长度最大值为填充位数、数据位数、报文格式位数之和。按照CAN协议,相同电平持续5bit,在下一位要插入1bit与前5bit反型的电平。由此,填充位数计算公式为

表3 MCP2515中相关发送缓冲器的结构

其中:n——填充的位数;

有着高度政治责任感和强烈事业心的李洁,认真贯彻“四个最严”和“四有两责”要求,勇于担当、从严监管。作为上海市“行刑衔接”涉案食品危害鉴定机构的负责人,她带领同事们大胆探索,主动争取有关部门支持,在全国率先制定了“行刑衔接”涉案食品危害鉴定工作程序,近3年来完成了涉案食品鉴定40多起。2013年4月,受上海市奉贤工商分局委托对一批检验不符合国家标准的婴幼儿配方奶粉进行鉴定,她带领团队立即查阅国内外各类婴幼儿奶粉有关资料,第一时间组织专家进行健康风险评估,为案件定性提供了科学依据,最终涉案主犯被判刑15年。

54——扩展帧中控制位的总位数;

sm——数据帧中数据段字节数。

报文格式位数公式为

式中:m——报文格式位数;

p——无位填充段+帧间间隔,此处为13。

因此,CAN总线的网络负载率表示为

式中:sc、sa——单位时间内网络上实际传送的位数、理想传送的位数;

对于一个8字节的扩展数据帧来说,一共有64 bit的数据位,67 bit的报文格式位,23 bit的填充位。设单位时间为1s,则sa就是波特率。设定30s,波特率为500kb/s,取N=18/30。通过式(3)计算可以得到网络负载率的理论值为0.018%,远小于30%,不会出现严重的丢包现象。

4.2 网络的实时性分析

根据文献[13],在CAN网络通信中,排队数据帧的最长响应时间可以用式(4)计算得到:

式中:Jm——数据帧m的排队抖动时间,主要取决于最长反应时间;

Wm——最长排队延迟时间,主要取决于数据帧的优先级别;

Cm——传送数据帧m所需最长时间。

经过实验证明,该系统可以顺利高效地进行CAN通信。

5 结束语

实践证明,利用CAN总线技术实现的电源控制系统结构简单,抗干扰性和可扩展性强。同时,对系统进行了连续的通信测试,本文使用的波特率为500 kb/s,完全可以满足系统实时性要求,实现数据帧的可靠传输。另外,模块化的编程思想使系统可移植性增强,适用于不同功能的系统和应用环境。

[1] 李霞,蔡启仲,陈文辉.基于CAN的嵌入式PLC和监控系统通信设计[J].仪表技术与传感器,2011(10):41-43.

[2]韩红远,朱翔宇.CAN总线在煤矿安全监控系统中的应用[J].太原科技,2007,160(5):63-64.

[3]陶秋红,张伟龙.CAN总线技术及发展[J].商场现代化,2007(9):4-5.

[4] 孙书鹰,陈志佳,寇超.新一代嵌入式微处理器STM32F103开发与应用[J].微计算机应用,2010,31(12):59-63.

[5] 陆前锋,刘波,陈明昭.基于SJA1000的CAN总线智能控制系统设计[J].自动化技术与应用,2003,22(1):61-64.

[6] 韩鑫,鲍可进.CAN总线网络层协议栈开发测试[J].计算机工程,2011,37(15):232-234.

[7] 柯江民,孙淑霞,曹屹东.MCP2515及CAN通信驱动设计[J].网络技术,2008,17(12):43-45.

[8] 王继国,吉吟东,孙新亚.CAN总线控制器MCP2515的原理及应用[J].电测与仪表,2004,41(457):52-56.

[9]MICROCHIP INCORPORATION.MCP2515协议控制器手册[M].北京:机械工业出版社,2005,142-149.

[10]张文杰,王坤.浅谈CAN通信的硬件抗干扰设计[J].科技信息,2012(23):144.

[11]田江学,屈卫东.基于C8051F020的CAN通信软硬件设计[J].2004,23(3):52-55.

[12] 王泓.CAN总线的消息机制[J].中国测试技术,2006,32(1):130-131,144.

[13]TINDELL K W,HANSSON H,WELLINGS A J.Analyzing real-time communications:Controller area network(CAN)[R].Real-time Systems Symposium, San Juan: IEEE,1994:259-263.

Software and hardware design based on CAN communication for control system of embedded device power supply

GUO Liping, ZHANG Yanrong, LIN Simiao
(School of Mechanical Engineering,Southwest Jiaotong University,Chengdu 610031,China)

To solve such problems as low digital level, poor real-time performance, low accuracy and reliability, software and hardware parts of CAN communication are designed based on AVR,meeting the requirement of control system to power supply.Microcontroller in conjunction with external CAN controller of Microchip MCP2515 is applied with the foundation of CAN protocol and practical technology.After hardware and software of parts of the system such as controller,transceiver are designed and established, as well as the general structure is shown, network load analysis and real-time performance analysis are carried out.The result of test shows that system can achieve such functions as transferring and receiving of messages with good reliability and realtime performance for communicating.In addition,the design of electrical isolation circuit further improve the anti-interference ability of the system;meanwhile,the software design part adopts the top-down modular design method strengthening the portability of the system.

control system of power supply; software and hardware design of CAN communication;network load analysis; real-time performance analysis; anti-interference ability

A

1674-5124(2017)10-0109-05

10.11857/j.issn.1674-5124.2017.10.021

2017-01-28;

2017-02-22

郭丽萍(1990-),女,四川简阳市人,硕士研究生,专业方向为网络测控。

张艳荣(1971-),女,河北易县人,副教授,博士,研究方向为自动化测量与控制系统。

(编辑:商丹丹)

猜你喜欢

收发器通信协议实时性
清管球收发器设计细节分析及应用
基于规则实时性的端云动态分配方法研究
基于Z-Stack通信协议栈的红外地温采集电路设计
基于虚拟局域网的智能变电站通信网络实时性仿真
Virtex5 FPGA GTP_DUAL硬核两个收发器独立使用的实现
航空电子AFDX与AVB传输实时性抗干扰对比
基于DMX512通信协议的多路转发器设计与研究
基于NS-3的PLC多频通信协议仿真平台设计与实现
一种车载Profibus总线系统的实时性分析
RSSP-I、RSSP-Ⅱ及SAHARA三种安全通信协议实现技术简介