1引言
目前我国众多小水电站的自动化水平落后,机电设备陈旧老化,安全事故频繁,自动控制系统的运行需要多人值班,进行设备的维护及事故处理,严重影响小水电的经济效益。近几年,多数小水电站要求进行自动化设备的技术改造,提高测控技术水平,降低事故率,提出尽可能少人值班或无人值班的要求。
总线技术的发展及应用,为解决以上问题带来方便。采用高速现场总线技术——CAN总线,可将小水电站多种测控系统的功能要求进行模块化多功能集中设计,构成基于CAN总线的小水电多功能一体测控装置。
2小水电站测控系统的特点及CAN总线的确定
2.1小水电站测控系统的特点
小水电站的测控系统主要有发电机组保护、转速测控、温度巡检、综合测控、同期控制、顺序控制、人机对话、通讯等。小水电站自动化与大水电站比较,其自动测控要求相对简单,如果直接套用大水电站自动控制方案及设备配置,则会造成模式复杂、成本高、设备占用空间大、功能浪费严重等问题。
针对小水电站自动测控系统的特点,将所需的多种不同测控系统进行模块式一体化设计,功能模块间采用总线技术连接,一体机独立运作,简化安装及操作,将是最佳方案。
2.2 CAN总线的特点和通信协议
目前应用比较广泛的几种现场总线有CAN、HART、Profibus、Lonworks等。而在这些总线中, CAN总线以其极高的性能、可靠性及其独特的设计越来越受到人们的重视,成为最有前途的现场总线之一。
CAN(Control Area Network)即控制局域网络,是一种具有高可靠性、有效支持分布式控制或实时控制的现场总线网络,最初由德国Bosch公司推出,为解决汽车中传感器与执行装置之间的数据交换而开发的,特别适合工业过程监控设备的互联,其应用范围已遍及工业控制自动化、汽车自动化、机械工业、楼宇自动化等领域。
(1) CAN总线的有关特点
与其他现场总线相比,针对多功能测控装置的研发要求,CAN总线具有独特的设计思想:【1】【2】
多主方式工作,网络上任一节点均可在任意时刻主动地向网络上其他节点发送信息,而不分主从,通信方式灵活。这一特点使装置内部的各模块节点都可以主动发送信息,并且没有时间限制,通讯的实时性好。
采用非破坏性总线仲裁技术,从而大大节省了总线冲突仲裁时间。这一特点使装置内部的各模块节点的通讯快速可靠。
只需通过报文滤波即可实现点对点、一点对多点及全局广播等几种方式传送数据。根据这一特点,装置内部的各模块节点的通讯方式可以多样化,比如,对时可以采用广播的方式。
CAN 网上的节点数目前可达 110 个;报文标识符可达 2032种(CAN2.0A),而扩展标准(CAN2.0B)的报文标识符几乎不受限制。因此,采用CAN2.0B标准可以解决各模块节点通讯时报文量大的问题。
采用短帧数据格式,传输时间短,抗干扰能力强,检错效果好。
每帧信息都有CRC校验,数据通信的可靠性强。
通信节点在错误严重的情况下可以自动关闭输出功能,脱离网络,而不会影响其他节点的操作。
(2) CAN总线的通信协议
CAN总线的报文传送由4种不同类型的帧表示和控制:【3】数据帧、远程帧、出错帧和超载帧。数据帧和远程帧可使用标准帧格式和扩展帧格式。
数据帧自一个发送节点携带数据至一个或多个接收节点,它由帧起始、仲裁场、控制场、数据场、校验场、应答场和帧结束组成。标准帧的仲裁场由11位标识符和远程发送请求位RTR组成。扩展帧的仲裁场由29位标识符和替代远程请求SRR位、标志位IDE和远程发送请求位RTR组成。
远程帧没有数据场,由帧起始、仲裁场、控制场、CRC 场、应答场、帧结束组成。CAN 网络上的一个接收节点可以通过向网络上发一个远程帧来启动数据传输,用标识符寻址数据发送源节点,且置相应帧的 RTR 位为“1”。
标识符作为报文的名称,在仲裁期间,它首先被送到总线。在接收器的验收判断中和仲裁过程确定访问优先权中都要用到。远程发送请求位(RTR)用来确定是发送远程帧还是数据帧,当RTR为高电平时,CAN控制器发送远程帧,为低电平时则发送数据帧。
3 CAN总线在小水电多功能自动化装置中的应用
采用CAN总线开发集多种功能于一体的自动测控装置,可提高我国小水电综合自动化的水平。
开发的测控装置采用面向对象的设计思想和按功能模块设计的方法,可以实现机组保护、转速测控、温度巡检、电量采集、非电量采集、同期控制、顺序控制、人机交互和通讯等功能。在装置内部设置七个CPU模块,分别用于综合测控、自动准同期、面板显示、通讯管理、PLC顺控、光字牌显示与语音报警、发变组保护。各模块采用高速现场总线CAN相连,完成生产过程控制、设备状态监测、设备参数整定、运行参数监视、装置自诊断故障显示等功能,各CPU模块的CAN通讯结构图如图1所示。
3.1 主控制器的硬件选型
主控制器选用MOTOROLA公司推出的高性价比DSP数字信号处理器DSP56F807,主控芯片的选择取决于小水电测控装置的功能要求。
小水电测控装置采用多CPU的硬件模式,各主要功能模块由独立的控制芯片来完成。其中,很多功能的实现都要求有很高的实时性,例如其中准同期功能的合闸时机捕捉、发电机保护的动作出口等等,并且装置中的电量采集等需要用到傅氏算法,运算量非常大,所以主控制器需要选用运算速度快、抗干扰性能好的CPU芯片,而DSP56F807正是一款具有上述优点的主控芯片。DSP56F807【4】具有多总线和流水线结构,指令的执行速率快,并且DSP内部有硬件乘法器,可以在一个指令周期内完成乘法,运算速度快。
装置内部的各CPU模块采用CAN总线通讯,而DSP芯片上就集成了控制器局域网模块CAN2.0A/B,因此不需要另外配置专门的CAN总线芯片,降低成本,简化硬件电路,这也是主控制器选用DSP56F807的另一原因。通过DSP芯片自带的CAN控制模块MSCAN,在硬件上可以很方便地将CAN总线上的各节点互连,实现总线不出芯片。由于CAN控制器必须通过CAN驱动芯片才能与CAN总线相连,所以选用PHILIPS公司生产的CAN总线收发器82C250作为CAN驱动芯片,DSP与82C250的连线图如图2所示。
3.2 CAN通讯的软件实现
本设计中,主要采用C语言编写程序,而在少数需要直接和硬件打交道的地方采用汇编语言编写程序。在编写CAN的通讯程序时,有三个环节非常重要,即CAN模块初始化、CAN接收数据和CAN发送数据。