页面加载中,请稍候
来源:中国传动网发布时间:2018-08-30550浏览
询问 AI CAN采用了OSI/ISO模型全部7层中的2层,即物理层和数据链路层,用户可以这2层为基础,根据实际需要开发相应的应用层通信协议。CAN 的主要特点如下:
a. 可以多主方式工作,网络上任意节点均可以在任意时刻主动地向总线上其他节点发送信息,因而可以构成多主机系统。
b. 当CAN 节点严重错误时,具有自动关闭输出的功能,切断该节点与总线的联系,使总线上的其他节点及通信不受影响,故具有较强的抗干扰能力。
c. 采用非破坏性总线仲裁技术,当2个节点同时向总线上发送信息时,优先级低的节点主动停止数据发送,而优先级高的节点可不受影响地继续传输数据,节省了总线冲突仲裁时间,避免了总线冲突。
d. 总线上的节点信息可以分成不同的优先级,以满足不同的实时要求。
e. 可以用点对点、一点对多点及全局广播等几种方式发送和接收数据。
f. CAN 的直接通信距离最远可达10km,此时传输速率只能达到5kbit/s;最高通信速率可达到1Mbit/s,此时最大传输距离为40m;CAN上的节点数实际可达110个。
g. CAN 采用短帧结构,每帧信息含有8个字节,并有CRC校验等检错措施,传输时间短,保证了数据出错率低。
h. 通信介质采用双绞线、同轴电缆或光纤,选择灵活。
总之,采用CAN 总线实时性强、可靠性高,用户接口简单,非常适用于变电所中构成高压开关柜故障在线检测系统。
2 系统总体设计方案
高压开关柜在线检测系统结构如图1所示。
3.1 CAN 接口电路
3.1.1 CAN 控制器的选取
采用SJA1000芯片,它支持CAN2.0B通信协议,它与仅支持CAN2.0A的CAN控制器PCA82C200在硬件和软件上完全兼容,并在其基础上增加了新功能:标准帧数据结构和扩展帧数据结构,这两种帧格式都有单2 双接收过滤器;64byte的接收FIFO;可读写访问的错误计数器和错误限制报警及只听方式等。
3.1.2 CAN 收发器
PCA82C250是Philips公司的CAN控制器和物理总线间的接口,可提供对总线的差动发送和接收能力。它有三种不同的工作方式:高速、备用和斜率控制。一般采用斜率控制方式。硬件电路中使用PCA82C250是为了增大通信距离,提高系统的瞬间抗干扰能力,保护总线等作用。
3.1.3 光电隔离
为了进一步提高系统的抗干扰能力,在控制器SJA1000和收发器PCA82C250之间增加了由高速隔离器件6N137构成的隔离电路。
3.1.4 单片机的选取
装置选用AT89C51为处理器,它是ATMEL公司8位单片机,与MCS51完全兼容,内部集成有4kbit/s的闪速E2PROM,工作频率最高可达20MHz。
3.1.5 电平转换芯片的选取
在CAN 接口电路中,AT89C51芯片使用的是TTL电平,而从计算机串口输出的是RS-232电平,因此要想计算机串口与单片机连接,必须进行电平转换。MAXIM公司生产的MAX202芯片是在缺少±12V电源时进行RS-232/TTL双向电平转换芯片,它的
供电电源是单+5V,电平转换的速度的最大值不小于120kbit/s。为了使计算机的电源与CAN接口电路的电源互不受干扰,还在MAX202与AT89C51之间采用光电耦合器,以达到电源隔离的目的。
3.1.6 数据采集单元电路
采集单元电路一般由微处理器外加显示键盘电路、模拟量输入电路、开关量输入/输出电路、CAN 总线通信接口电路、实时时钟电路等组成。
4 软件设计
系统采用C语言开发软件。CAN总线各节点与AT89C51要有效、实时地完成数据通信,软件的设计是关键,也是难点。
软件设计主要包括计算机串口通信程序、AT89C51通信程序、CAN节点初始化程序、CAN数据发送、接收程序以及CAN总线出错处理程序等。CAN控制器SJA1000的内部寄存器作为AT89C51芯片的片外寄存器,AT89C51和SJA1000之间进行状态、控制和数据的交换都是通过SJA1000在复位模式或工作模式下对这些寄存器的读写完成的。
在初始化CAN内部寄存器时,注意使得各节点的位速率必须一致,而且收、发双方必须同步。数据的接收主要有中断和查询接收两种方式。为提高通信的实时性,采用中断接收方式,而且这样也可保证接收缓存器不会出现数据溢出现象。下面给出SJA1000工作在Basic CAN模式下的初始化流程图(图3)及数据接收的源程序。 [page]
新闻来源:中国传动网,文中所述为作者独立观点,不代表icspec立场。更多精彩资讯请下载icspec App。如对本稿件有异议,请联系微信客服specltkj。
暂无评论哦,快来评论一下吧!

2026-06-12
2026-07-15

2026-07-06