CAN总线及其在UPS网络监控系统中的应用
1 引言
随着网络的普及,网络的可靠性越来越受到人们的关注,而影响网络可靠性的关键是网络系统中的电源系统的可靠稳定,要求能对其运行状态进行实时监控,及时发现异常情况和事故隐患,在出现异常和故障时迅速进行诊断并予以修复,最大限度地减少ups的停机时间即成必要。笔者针对不间断电源系统,将can总线技术应用到系统的网络监控中,并充分利用can能够以较低的成本、较高的实时处理能力在强电磁干挠环境下可靠地工作的优点,开发出ups网络监控系统。
2 can总线概况
can全称为controller area network即控制器局域网,是国际上应用最广泛的现场总线之一。can最初出现在80年代末的汽车工业中,由德国bosch公司最先提出。最初被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置ecu之间交换信息形成汽车电子控制网络,发动机管理系统、变速箱控制器、仪表装备、电子主干系统中均嵌入can控制装置。现在它已发展为一种有效支持分布式控制或实时控制的串行通信网络。
2.1 can总线特点
can具有十分优越的特点,使人们乐于选择,这些特性包括:
(1) 多主方式工作
网络上任意节点可以在任何时刻主动的向任何其他节点发送消息,而不分主从;通信方式灵活,无需站地址等节点信息,可构成多机备份系统;
(2) 采用非破坏性总线仲裁技术
节点信息分成不同优先级,满足不同实时要求。当几个节点同时向网络发送消息时,运用逐位仲裁原则,利用帧中开始部分的标识符,优先级低的节点主动停止发送数据,而优先级高的节点则不受任何影响的发送信息;
(3) 借助接受滤波的多点传送
只需通过报文滤波可实现点对点、一点对多点,以及全局广播等方式传送,无需专门调度;
(4) 高速率、远距离、低出错率
can总线通信最高波特率可高达1mbps(采用双绞线通讯距离40m)、最远通讯距离为10km(可达5kbps),can协议采用crc校验并提供相应的错误信息处理功能;
(5) 通信介质选择灵活
通信介质可以是双绞线、同轴电缆或光纤,选择灵活;
(6) 半双工方式工作
can总线以半双工的方式工作,一个节点发送消息,多个节点接收消息;
(7) 抗干扰性能强
它采用集散控制技术,既可以满足控制的实时性和数据的实时采集及处理,又可以简化系统接线、提高控制网络的抗干扰能力。
2.2 can总线工作原理
can的通信介质为带优先级的cs-ma/ca,网络上任意节点可以在任何时刻主动的向任何其他节点发送消息,而不分主、从,即当发现总线空闲时,各节点都有权使用网络。而当发生冲突时,采用非破坏性总线优先仲裁技术,由于每个节点的can总线接口必须接收总线上出现的所有信息,因此必然需要设置一个接收寄存器。先将信息接收,再根据接收的信息标识符决定是否需要读取信息包中的数据。同时为了避免不必要的频繁中断,需要设置一个屏蔽寄存器来滤掉那些所在节点设备不感兴趣的信息,独立的can控制器sja1000装配了一个多功能的验收滤波器,该滤波器允许自动检查id和数据字节,使用这些有效的滤波方法,对于某个节点来说,无效的信息可被防止存储在接收缓冲器里,因此降低了主控制器的处理负载。由验收代码和屏蔽寄存器根据数据表给定算法来控制,接收到的数据会和验收代码寄存器中的值进行逐位比较,接收屏蔽寄存器定义与比较相关的位的位置(“0”=相关,“1”=不相关),只有收到信息的相应的位与验收代码寄存器相应的位相同,这条信息才会被接收。
can总线传递的信息以信息包的形式出现:
(1) 信息的消息标识符(11bit);
(2) 远地传送请求(1bit);
(3) 数据长度表 (4bit);
(4) 数据(0-8个bit)。
标识符既用来表明信息的类型(数据帧,远程帧),也用来表明信息的优先级;远地传送请求指需要数据的节点可以请求另一个节点发送一个相应的数据帧,该数据帧和对应的远程帧以相同的标识符id命名。
2.3 接口电路
图1为can总线控制器与can通信网络的接口电路。从图1中可以看出,此部分电路主要由三部分所构成:独立can总线控制器sja1000t、总线收发器82c250和高速光电耦合器6n137。各部分功能如下:
(1) can控制器sja1000t
sja1000t内部集成了can总线的协议,与用户端控制器一起完成can的各项功能,起到中间协调作用;
(2) 总线收发器82c250
sja1000与can物理总线之间的接口为82c250,它可提供对总线的差动发送能力和对can控制器的差动接收能力,具有较强的抗干扰能力。通过对脚8(rs)的不同连接可以实现三种不同的工作方式:高速、斜率控制和待机,本系统中采用斜率控制,以降低射频干扰;
(3) 高
- 对TTCAN的分析(05-26)
- 嵌入式Win CE中CAN总线控制器的驱动设计与实现(05-01)
- μC/OS-II的多任务信息流与CAN总线驱动(07-11)
- 采用CAN总线实现DSP芯片程序的受控加载(11-08)
- 基于DSP的电动汽车CAN总线通讯技术设计(10-08)
- 基于DSP的CANopen通讯协议的实现(01-18)