新闻中心

EEPW首页 > 测试测量 > 设计应用 > CAN总线在变电站高压开关柜在线检测系统中的应用

CAN总线在变电站高压开关柜在线检测系统中的应用

作者: 时间:2009-09-10 来源:网络 收藏
3.1.3光电隔离

本文引用地址:https://www.eepw.com.cn/article/195734.htm

为了进一步提高系统的抗干扰能力,在控制器SJA1000和收发器PCA82C250之间增加了由高速隔离器件6N137构成的隔离电路。


3.1.4单片机的选取

本装置选用AT89C51作为处理器,AT89C51是ATMEL公司8位单片机,与MCS51完全兼容,内部集成有4Kbps的闪速E2PROM,工作频率最高可达20MHZ.

3.1.5电平转换芯片的选取

接口电路中,AT89C51芯片使用的是TTL电平,而从计算机串口输出的是RS-232电平,因此要想计算机串口与单片机连接,必须进行电平转换。MAXIM公司生产的MAX202芯片是在缺少±12V电源的情况下进行RS-232/TTL双向电平转换芯片,它的供电电源是单+5V,电平转换的速度的最大值不小于120kbps. 为了使计算机的电源与接口电路的电源互相不受干扰,我们还在MAX202与AT89C51之间采用光电耦合器,以达到电源隔离的目的。

3.1.6数据采集单元电路

采集单元电路一般由微处理器外加显示键盘电路、模拟量输入电路、开关量输入输出电路、通讯接口电路、实时时钟电路等组成。具体电路在此不详细介绍了。

4.软件设计

本系统采用C语言开发软件。CAN各节点与AT89C51要有效,实时地完成数据通信,软件的设计是关键,也是难点。它主要包括计算机串口通信程序、AT89C51通信程序、CAN节点初始化程序、CAN数据发送、接收程序以及CAN出错处理程序等等。CAN控制器SJA1000的内部寄存器作为AT89C51芯片的片外寄存器,AT89C51和SJA1000之间进行状态、控制和数据的交换都是通过SJA1000在复位模式或工作模式下对这些寄存器的读写来完成的。在初始化CAN内部寄存器时,注意使得各节点的位速率必须一致,而且接、发双方必须同步。数据的接收主要有两种方式:中断和查询接收方式。为提高通信的实时性,文中采用中断接收方式,而且这样也可保证接收缓存器不会出现数据溢出现象。下面给出SJA1OOO工作在Basic CAN模式下的初始化流程图、数据接收的源程序。

/*CAN接收中断子程序*/

Void canreceive(void) interrupt 0 {

Unsighed char xdata*datap;

Unsighed char xdata i, temp[15];

if ((can_sr0x01)==0x01) {/*判断SJA1000接收缓冲器是否有效*/

p=canrxbuff;/*canrxbuff为接收缓冲器首地址*/

for(i=0;i0;i++) {

temp[i] =*(p+j);/*将接收缓冲器的数据赋给temp数组*/

}

can_cmr=0x04;/*释放接收缓冲区*/

i=can_ir;/*对CAN中断复位*/

}

}

本文采用CAN总线技术组成的在线检测系统已在中小型中得到应用,经过实际运行,具有很好的可靠性和抗干扰性,能更好地掌握的运行状态,稳定显示出各参数的波形,从而能及时对设备进行检修,避免了事故的发生,得到维护人员的一致认可。

5.结束语

CAN总线以高可靠性及其卓越的性能越来越受到人们的重视,并被公认为最有前途的总线之一。本文在变电站在线检测系统中应用了这种总线技术,设计了主要硬件电路和软件,并得到实际应用。其硬、软件电路的设计方法同样适合于其他基于CAN总线的分布式控制系统的节点设计。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭