APP下载

基于CAN总线的变电站通讯网络设计

2016-05-19尹江红郑立玲

电脑知识与技术 2016年7期
关键词:现场总线CAN总线变电站

尹江红++郑立玲

摘要:在基于CAN总线的变电站综合自动化系统中,智能单元节点与上位机之间的通信以及智能单元节点之间的通信是系统通信的核心,而CAN接口单元在整个通信中起到上传下达的作用,是核心中的关键。提出一种CAN总线单元设计方案,该方案中使用89C52作为微处理器,SJA1000作为通信控制器,82C250作为收发器。

关键词:现场总线;变电站;CAN总线;变电站综合自动化;

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)07-0260-02

Design of CAN bus Communication Adapter for Transformer Station

YIN Jiang-hong, ZHENG Li-ling

(Guangxi Hydraulic and Electric Polytechnic, Nanning 530023, China)

Abstract: In substation automation systems based on CAN bus, the core if between PC and node andbetween nodes. The CAN-bus plays the role in the overall upload issued communications, Command of PC is transmitted to nodes and Data of nodes is transmitted to PC by CAN-bus. a CAN bus unit design scheme is proposed in the paper, which uses 89C52 as microprocessor,SJA1000 works as communication controller and 82C250 as transceivers.

Key words: field bus; substation; CAN-bus; substation automation

CAN(controller area network) 是近年来兴起的一种先进工业控制技术, 其具有多主工作方式、传输速度快、距离远、自动解决总线竞争、纠错能力强等特点,在对数据传输保密性及可靠性要求高的场合。将CAN总线应用到变电站综合自动化中,完全能满足其对监控、保护之间的通讯的可靠性和准确性的要求,且运用CAN总线技术性能价格比高,安装维护简洁方便,能创造很好的经济效益,因而CAN总线在电力系统自动化领域具有广阔的应用前景。

1基于CAN总线的变电站综合自动化系统

变电站综合自动化系统结构框图如图1所示,系统由站控层、间隔层和过程层构成;针对现在的变电站系统间隔层装置多、大量的智能单元装置需要通过网络相互通信,在间隔层和过程之间采用CAN总线通信进行连接。站控层提供站内运行的人机联系界面,实现管理控制过程层、间隔层设备等功能,其由保护故障信息子站、远动通信装置、操作员站、主机和其他各种功能站构成;间隔层在站控层及网络失效的情况下,仍能独立完成间隔层设备的就地监控功能,其主要由测控、计量、录波、保护、相量测量等若干个二次子系统组成;过程层采集实时运行电气量、监测设备运行状态、执行控制命令等,其主要由智能终端、合并单元、互感器等构成,根据变电站内部电气设备的不同,监测系统的过程层可分为变压器监测终端、断路器GIS监测终端以及容性设备和避雷器监测终端三个部分,每个终端对应的监测单元(变压器监测单元、断路器GIS监测单元和容性设备及避雷器监测单元),这些监测单元可以使现场设备方便地连接到CAN总线上,同时监测现场的设备状态和环境参数,打包处理采集得到的数据,然后通过CAN通信控制器SJA1000将打包处理过的数字信号发送到CAN总线。

2 CAN总线单元设计

2.1 CAN接口单元总体设计

CAN总线接口单元实现系统数据传送和接收,接口单元包括看门狗电路、微处理器、总线收发器、输入输出设备和CAN通信控制器等;微处理器完成数据的处理,CAN通信控制器完成CAN的通信协议的转换,CAN总线收发器增大通信距离、降低射频干扰(RFI)、提高系统的瞬间抗干扰能力和实现热防护等,看门狗电路实现对电路的监控和复位作用;CAN总线接口单元设计是按照CAN总线物理层协议选择总线介质,设计布线方案,连接成CAN网络,主要是CAN总线收发器与物理总线之间和CAN通信控制器与微处理器之间的接口电路设计,设计的CAN接口单元如图2所示。

2.2单片机系统

ATMEL公司89C52单片机价格便宜,技术成熟,应用广泛,设计选择微处理器89C52作为节点控制器,其承担对CAN控制器进行初始化和CAN的收发控制任务;设计中改进了单片机的复位信号和时钟的设计,从而减少了简易复位电路(以往由电阻、电容组成)造成的延时长、不精确等不良影响和避免出现时钟信号的冲突。

2.3 SJA1000控制电路设计

考虑到SJA1000支持CAN 2.0A/B规约,选取PHILIPS公司的SJA1000 CAN控制器,SJA1000总线控制器是CAN总线接口控制板的核心器件,其担负着报文的发送、接收、过滤等工作,通过它实现上位机与现场微处理器之间的数据通信;考虑到国内市场上PHILIPS的产品型号比较多,购买82C250比较方便,并且82C250可以支持110个CAN节点,选择82C250作为收发器。

SJA1000作为本接口电路中的控制部分,89C52的P0口与SJA1000的AD0~AD7连接,89C52的P2.7口连接CS引脚,当CS引脚为低电平,89C52选中SJA1000;SJA1000的RD、WR、ALE分别与89C52的对应引脚相连;89C52的INT0接SJA1000的INT引脚,单片机可以通过中断方式问SJA1000。

由于电阻可起到一定的限流作用,在82C250的CANH和CANL引脚与CAN总线之间接一个5欧姆的电阻,保护82C250免受过流的冲击;为了滤除总线上的高频干扰和一定的防电磁辐射的作用,在CANH和CANL与地之间各并联30pF电容;CAN总线转232串口数据转换功能是通过串口芯片MAX232实现,通过按键及LED灯显示电路用于向CAN总线上发送不同的数据,以及显示接受到的数据状态。

由于变电站现场具有干扰大、测量多、分布广等特点,在控制器和驱动器之间加入光电隔离器进行隔离, 把SJA1000的TX0和RX0引脚通过高速光耦6N137与82C250的引脚TXD和RXD相连,从而增强通信接口的抗干扰能力。

3软件设计

AT89C52与CAN总线各节点要实时、高效地完成数据通信,软件的设计至关重要。通信单元采用模块化程序设计方法,采用C语言开发程序,设计包括AT89C52通信程序、CAN总线出错处理程序、CAN接收程序、CAN数据发送、CAN节点初始化程序以及计算机串口通信程序等。AT89C52芯片的片外寄存器使用SJA1000的内部寄存器, SJA1000和AT89C52之间通过SJA1000在工作模式下或复位模式对这些寄存器的读写完成的状态、控制和数据的交换。根据CAN总线通信的特点,数据的校验、发送、接收、拆包、解码、编码以及打包均由硬件完成,因此, CAN总线通信程序主要包含初始化程序、接收子程序和发送子程序。

3.1 SJA1000的初始化

在初始化CAN内部寄存器时,注意设置收、发双方同步,且各节点的位速率一致。数据的接收主要有中断和查询接收两种方式,为提高通信的实时性和保证接收缓存器不会出现数据溢出现象,采用中断接收方式, SJA1000的初始化流程如图3所示。

SJA1000在上电或硬复位后,主控制器运行其复位子程序,对其进行初始化以便进行通信,由于组态的寄存器只有在复位模式(Reset Mode)下,才能被写入,因此,在设置SJA1000寄存器前,主控制器首先读R/R(Reset mode/Request)标志来确认SJA1000是否处于复位方式,然后通过发出一个有效的复位脉冲给CAN控制器SJA1000管脚(Pin17),使其进入复位状态(Reset Mode),进入复位模式后,需要设置各个寄存器的运行方式。

3.2 SJA1000的报文发送

报文的发送是CAN控制器SJA1000依据CAN协议规范自动进行,发送过程既可以采用查询方式,也可以采用中断方式,系统采用中断方式报文发送,在传输一个新报文到SJA1000发送缓冲器之前,首先检查状态寄存器的发送缓冲器状态标志,确定是否可以将一个新的报文写入发送缓冲器,只有TS=0且TBS=1,才可以将新报文写到发送缓冲器,并将发送请求标志置1(TR=1),使SJA1000启动发送一旦报文开始发送,发送缓冲器则马上写闭锁;若不满足TS=0且TBS=1,说明有报文正在发送, 则主控制器将设置一个暂存标志,并将新报文保存到临时存储器中,当正在发送的报文发送成功结束,CAN控制器会产生一个发送中断,在对应的中断服务程序检查是否有暂存的报文要发送,一个正在等待发送的报文会从临时存储器复制到发送缓冲器中,暂存标志被消除,置位TR,启动发送。

3.3 SJA1000的报文接收

接收报文是CAN控制器依据CAN协议规范自动进行,接收报文既可由查询状态寄存器标志来完成,也可中断控制,系统采用中断方式报文接收,在接收缓冲存储器中存放接收报文,由接收中断和状态寄存器的接收缓冲器状态RBS确定一个报文是否可以传送给主控制器,主控制器通过读取SJA1000状态寄存器,检查接收缓冲器状态标志RBS,若RBS=1,则表示SJA1000的RXFIFO中得到一个或多个报文,主控制器将第一个报文(存放在接收缓冲器中)读到本地报文存储器,当主控制器的本地报文存储器足够大,主控制器可以检查是否有更多信息报文,然后集中处理接收到的报文,最后置位命令寄存器的RRB位,释放RXFIFO内存空间。

4结束语

变电站综合自动化系统是一个对安全性、可靠性要求非常高的系统, 其间隔层装置多、大量的智能单元装置需要通过网络相互通信,基于此,设计了一种高可靠性、高实时性的基于CAN 总线通信网络的变电站自动化系统,在节约电缆的同时使间隔层间信息可充分共享,有效解决了变电站综合自动化系统中的通信问题。CAN总线在变电站综合自动化系统中的应用表明:CAN总线网络具有相当高的实时性、抗干扰性和扩展性,能够满足变电站综合自动化中各种设备及不同检测参量具有不同优先级的需要,达到了变电站自动化的需求。

参考文献:

[1] 代爱妮. 基于CAN总线的变电站监控系统的设计与实现[J]. 工业控制计算机,2012(9).

[2] 连卫东. CAN总线在煤矿变电站温度监测网络中的设计[J]. 煤矿机械,2012(10).

[3] 刘志强. 基于CAN-bus总线的变电站智能照明控制系统[J]. 电力勘测设计,2014(4).

[4] 吴战伟. 基于CAN总线的智能变电站变送器[J]. 仪表技术与传感器,2014(8).

猜你喜欢

现场总线CAN总线变电站
关于变电站五防闭锁装置的探讨
超高压变电站运行管理模式探讨
基于嵌入式的汽车辅助制动系统研究
220kV户外变电站接地网的实用设计
基于现场总线的聚酯网热定形机控制系统
现场总线与控制系统工程实训在教学中的应用
变电站,城市中“无害”的邻居