基于DSP和CAN总线的RTU的设计
远程测控终端(RTU) 作为体现“ 测控分散、管理集中” 思路的产品从20 世纪80 年代起介绍到中国并迅速得到广泛应用, 应用在变电站上的RTU 主要是实现现场电力参数的远程采集与控制命令的远程发布, 并将信息或结果组装成报文, 上送到控制中心或调度端。纵观国内外的RTU 产品, 逐步从集中式控制结构向模块化、分散式、开放性的系统控制结构发展。由于变电站的数据量和信息量大, 实时性要求高, 因此将具有强大、高效的运算能力和丰富外围接口电路的DSP 应用于RTU 的设计方案; 同时引入了开放性结构的CAN 现场总线引入, 运用于变电站现场数据的通信并由它组成了一个开放、可靠和实时的监控系统。
1 系统总体结构设计 RTU 系统采用以DSP 为微处理器、CAN 为现场通信总线的分布式模块化结构。由于分布式模块化结构易于实现功能分解, 能根据需要进行集中组拼和分散安装,因而系统具有很好的灵活性。系统结构如图1 所示。
图1 系统结构 RTU 可以分为通信主控模块和信号测控模块。CAN总线实现现场数据的通信。信号测控模块一方面监测远方变电站断路器( 开关) 位置、刀闸位置、有载调压变压器分接头的位置、事故变位信号、告警信号等( 遥信) ,同时监测主变、线路的有功功率、无功功率、电压、电流、功率因数、有功电度、无功电度、主频等( 遥测) 并转换成相应的电参量; 另一方面把上位机或调度中心下达的命令通过信号测控模块的控制信号输出端口用以控制断路器的分、合位置, 有载调压变压器的分接头位置( 遥控和遥调) 。 考虑到RTU 的通用性和灵活性, 通信主控模块设有多种通信端口模式: (1)CAN 总线, 与下位信号测控模块相连实现数据的请求与命令发布;(2)RS232 端口, 实现与PC 的通信, 将RTU 处理后的数据交与PC 机作进一步处理或由PC 机实现远程操作与控制;(3) 远方通信端口, 用来与远程控制中心进行通信;(4)RS485 端口, 用来实现与传统的RTU 设备或其他下位智能仪表接口相兼容。
2 通信主控模块的硬件电路设计 采用内置CAN 控制器的TMS320LF2407A ( 简称LF2407A) 作为通信主控模块的处理核心, 用MAX7000S 系列的EPM7128STC100-7 CPLD 集成了处理器外围数字电路, 系统结构图如图2 所示。从功能上通信主控模块分为三个部分:CAN 总线接口部分; 并串转换部分; 键盘显示部分和掉电数据保存部分。 图2 系统结构图 由于LF2407A 内部集成CAN 总线控制器, 因此不必外加CAN 控制器来实现CAN 总线的底层协议, 只需在CAN 输出端子和物理通道之间加上抗干扰的光隔和CAN 总线收发器即可。光隔采用TI 的8 脚双通道高速光隔HCPL2631 ,CAN 收发器选用的具有多种保护和抗干扰能力的PCA82C250 差动驱动器作为总线接口, 为了更好的解决射频干扰问题, 通信介质采用屏蔽电缆, 为了克服长线效应, 减小通信介质中信号的反射, 在传输线两端并联2 个120 Ω 的匹配电阻。 该通信主控模块系统有多个串行口与外界进行数据通信, 通信实时性要求也较高, 利用通用的I/O 口线来构成串口在这里不适用, 选用具有四个异步通信单元的TL16C554A 芯片实现并-串转换。由于PC、远方通信端口都是RS232 端口, 同时为了能够与传统的485 设备兼容, 因此采用MAX232 芯片,MAX 1482 芯片将TL16C554A 串口输出信号的TTL 电平转化成RS232、RS485 电平。 为了保持通信主控模块在功能上具有一定的独立性, 选择自带T6963C 控制器汉字液晶显示器模块和4个按键一起构成人机接口界面。显示器对系统的通信状态进行显示,4 个按键完成用户功能的设定, 包括模块的地址、各种通信端口的波特率等。X5045 是为了在系统掉电时将一些系统参数保存起来, 当系统再次起动时就可以重新调入这些数据。扩展的高速静态RAM 作为外部数据存储空间和调试程序存储空间。
3 信号测控模块的电路设计 信号测控模块的主要采集对象有: 经过外部电压和电流互感器转化后的0~100 V 标准三相交流电压和0~5 A 三相相电流; 反映变电站线路状态及保护运行的开关量; 功率表脉冲量。按照信号的分类, 分别对应于模拟量、开关量和脉冲量。信号测控模块的结构原理如图3所示。
图3 信号测控模块的结构原理图 为了保证模拟量测量的精度和实时性, 对于模拟量的测量采用交流采样和硬件电路同步的方法。硬件同步和频率采样电路主要由迟滞电压比较电路、高速光藕、锁相倍频电路和脉冲整形电路组成。迟滞比较电路将交流正弦波输入信号变为0 ~5 V 的同频率方波信号, 高速光耦6N137 将模拟部分和数字部分电路隔离开,锁相倍频电路由锁相环电路CD4046 和三片可编程计数器芯片MC14522 构成128 倍频器,使输出信号频率为正弦输入信号频率的128 倍,并且跟随输入同步变化。MC14522 输出的同步信号经分压后, 被送入TMS320LF2407A 的捕获模块CAP1、CAP2 用于频率的测量。CD4046 输出的同步倍频信号经脉宽整形后得到合适的脉冲信号,接A/D转换器ADS7864 的/HOLDA、/HOLDB、/HOLDC, 选择输入的多路开关并且启动A/D 转换。ADS7864 是一块高速(2 μs)、低功耗(50 mW)、单电源(+5 V)工作的双12 位A/D转换器。它能以500 kHz 的采样速率同时进行6 通道信号采样, 特别适用于电力监控系统。ADS7864 的6 路输入通道可分成3 对, 测量电力监控应用的三相, 并将模拟信号转换成LF2407A 所需的数字信号, 存放在片内6 个FIFO 寄存器中。为了提高系统的效率, 将ADS7864 的//BUSY信号接至CPLD, 由其判断ADS7864 产生三个/BUSY 信号后产生一个中断, 通知LF2407A 一次性读走ADS7864 的FIFO 中6个转换好的数据进行处理。另外,ADS7864采用双极性(±5 V) 的输入, 由于输入的交流电压信号为0~100 V, 电流信号为0~5 A, 因而需要加上信号调理和电平转换电路。 开关量和脉冲量的输入电平为12 V。采用HCPL2631 高速光隔进行隔离, 实现电平匹配和隔离抗干扰, 隔离后的开关量和脉冲量信号分别经过相应的数据缓冲单元即变为LF2407A 外部I/O 输入端信号,LF2407A通过定时访问相应的I/O 端口来实现对开关量和脉冲量的采集。当信号测控模块检测到其中一个开关量的变位, 产生相应的一个事件顺序记录信息。对于分析电网故障原因具有重要作用。 利用了CPLD 的集成性和可编程性将处理外围数字电路集成到一块芯片上, 实现对其他芯片、液晶显示器和键盘等的地址译码、读写、控制和信号缓冲功能。
4 系统软件介绍 根据硬件结构的特点, 在进行系统软件设计时可将RTU 分为通信主控和信号测控两个独立的模块, 对两者进行单独的考虑和设计。在这里,采用模块化程序设计的方法来设计模块的整体软件。从软件的功能上讲,通信主控模块主要包括各种通信端口的通信程序和人机接口程序设计,信号测控模块软件部分则包括现场信号的采集和处理、各种电力参数的计算和分析以及与上位模块的通信程序等。在实际应用中,通信主控模块和信号测控模块多个任务之间往往是互相交叉的,因此通过硬件中断来响应不同任务请求,提高处理器的实时响应能力。
5 实验结果与分析 利用实验室的现有条件, 为了验证硬件A/D 采样系统的好坏, 对低压380 V/220 V 电网进行测量, 采样128个点与示波器波形相比如图4 所示。可以看出, 对模拟量的采样是精确可行的。
图4 采样128个点与示波器波形比较 表1 采样运算得15 次谐波峰值 在此基础之上, 进行了谐波分析。本次试验采用电网电压经分压变换后电压有效值在1.7 V 左右( 普通万用表测) 进行试验。采样数据经符号扩展后直接进行FFT 变换, 对应得到15 次谐波峰值如表1 所示, 从表中数据可以看出偶次谐波很小, 几乎为零; 而奇次谐波逐渐递减。
|