1引言
CAN总线的全称是ControllerAreaNetworkBus,简称控制器局部网总线,它是现场总线的一种,是一种有效支持分布式控制或实时控制的串行通信网络。CAN是控制器局域网络(Controller Area Network, CAN)的简称,是由研发和生产汽车电子产品着称的德国BOSCH公司开发了的,并最终成为国际标准(ISO118?8)。是国际上应用最广泛的现场总线之一。 在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。近年来,其所具有的高可靠性和良好的错误检测能力受到重视,被广泛应用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。CAN控制器工作于多主方式,网络中的各节点都可根据总线访问优先权(取决于报文标识符)采用无损结构的逐位仲裁的方式竞争向总线发送数据,且CAN协议废除了站地址编码,而代之以对通信数据进行编码,这可使不同的节点同时接收到相同的数据,这些特点使得CAN总线构成的网络各节点之间的数据通信实时性强,并且容易构成冗余结构,提高系统的可靠性和系统的灵活性。而利用RS-485只能构成主从式结构系统,通信方式也只能以主站轮询的方式进行,系统的实时性、可靠性较差。
本文以美国Dallas公司的内部带2个独立CAN模块的DS80C390芯片为核心设计一种双CAN总线分层分布式监控系统,并在电力系统同步静止补偿器(STATCOM)上得到应用。
2 智能双CAN总线节点
美国Dallas公司的高档单片机DS80C390是内置双CAN模块的嵌入式高速微处理器芯片:每个机器周期仅包含4个时钟周期,比8051单片机快四倍;支持最大晶振频率为40MHz,单指令周期100ns;与80C52兼容且与8051指令兼容;有4个8位IO端口、3个16位定时器、256字节RAM、4kB内部静态SRAM、16个中断源其中有6个外部中断源;具有双串行口、双CAN口和双数据指针。
采用DS80C390单片机作为核心的智能CAN节点结构图如图1所示。由DS80C390单片机、8255、A/D转换以及PCA82C250CAN收发器组成。外部程序存储器选用Atmel公司的AT49F010芯片,最快读时间45ns,擦除周期时间10s;数据存储器选用HY628100SOP,该芯片是一种高速CMOS静态RAM;A/D转换器ADS7864是德州仪器(TI)公司Burr-Brown产品部最新推出的快速6通道全差分输入的双12位A?D转换器,它能以500kHz的采样率同时进行六通道信号采样。时钟芯片选择DS12887,可以用来直接代替IBMPC上的时钟日历芯片;CAN收发器接口电路是用PHILIP公司生产的PCA82C250实现电平的转换,以满足CAN的通信要求。
智能双CAN节点功能主要包含如下:读取拨码开关的值,并以此数据作为ID的一部分,进行ID的设定;启动A?D转换,每个转换通道在交流每周波采集1000点,即每20Ls转换一次,数据存放在外部数据发送缓冲区中,当上位机召唤数据时,由CAN发送出去;启动日历时钟,当发生故障时,记录下故障时间,并产生外部中断申请INT0或INT1。
3 分层分布式监控系统
DS80C390片内集成有2个CAN接口模块,可靠性较高,适合用来实现双CAN线分层分布式监控系统。电力系统静止同步补偿器分层分布式监测系统的电路原理框图如图2所示,整个监控系统分为调度层、站控层和间隔层。
3.1 调度层
调度层包括上级调度计算机和远动工作站计算机等,可以通过调制解调器拨号或通过以太网与站控层的中央监控计算机网络服务器进行通信。调度层的监视画面是由站控层的网络服务器发布的。调度层是监测系统的管理层。
3.2 站控层
站控层包括1台中央监控网络服务器(WebServ2er),WEB服务器是整个监测系统的核心,完成系统的所有监测功能并通过网络发布到调度层。站控层的WEB服务器包括PC2CAN卡和网卡等,通过PC2CAN卡总线与就地监控的CAN节点通信,完成对装置进行封锁脉冲和跳闸操作、封锁故障指示、水冷报警和故障指示以及语音报警等;采集静止同步补偿器的输出电压和系统电压;站控层通过网卡和调度层的计算机连网。
3.3 间隔层
间隔层共设置40个底层监测双CAN节点(双CAN单元),每个底层监测CAN节点用跳线设置本单元号,用数码管显示设置的单元号。双CAN节点连续进行3路模拟量录波,接收到封锁或跳闸信号时,继续录波2周期后存储前后2周期录波数据,发送到站控层的集中监控计算机WEB服务器。
4软件设计
单片机监控程序是采用KeilC51开发的,在KeiluVision7.0上调试通过。CAN节点的软件设计采用了模块化的设计方法,在DS80C390的初始化中,初始化内部寄存器,确定存储器的分配情况。其设置如下:
SAEQU1
IDMDQU2
CMAEQU1
P4CNT5-3EQU 100B
P4CNT2-0 EQU100B
P5CNT3-0EQU100B
程序采用中断方式,各程序初始化后,根据不同的中断调度到相应的中断服务子程序,在中断服务程序中,单片机将把记录的信息通过CAN发送出去,即实现故障录波功能。系统软件可利用串口在线升级。
5结论
本文研制了DS80C390双CAN总线分层分布式监控系统,并在电力系统静止同步补偿器中应用,满足了电力系统中各控制对象分布广,实时性要求高的要求,极大地提高了系统的安全性、可靠性和抗干扰性。