SA9904B在电力参数远程测控系统中的应用
DI、DO为串行数据的输入、输出端。
SCK为串行时钟信号输入端。
OSC1、OSC2为外部晶振的输入、输出端。
3 SA9904B的SPI接口
微控制器通过SPI端口实现对SA9904B内部数据的访问。SPI接口由四根信号线组成:串行时钟输出端SCK、片选信号输入端SC、串行数据输入端DI、串行数据输出端DO,时序如图3所示。
当CS为高电平时,DI引脚在SCK时钟的上升沿输入9位地址信号。其中高三位为写入地址的标志位;A5、A4为保留位,可选0或1;有效地址为低4位。在SCK的上升沿检测到地址的最低有效位A0输出后,DO引脚在SCK的下降沿输出相应寄存器地址里的24位数据,高位在前,低位在后。当24位数据输出后,如果CS信号仍然有效,则DO引脚将继续输出下一个地址的寄存器数据,直到所有的数据输出为止。
4 SA9904B在电力参数远程监测系统中的应用
电力参数远程监测系统的硬件组成结构如图4所示。待测的三相四线线路各相电压、电流经过电压分压网络和电流互感器,转化成符合SA9904B芯片要求的输入信号,再经过芯片内部对电压和电流进行A/D转换、数字运算和能量累加,从而得到各相的有功电能、无功电能、电压有效值和频率值的原始寄存器值。这些值通过SPI接口传送到微控制器。
本系统选用高性价比的微控制器W78E58,完成各种电力参数的计算、通信命令处理和控制功能。W78E58内部集成了32KB的ROM,程序存储穴是满足系统的需求,因而不需要外部扩展ROM。片外扩展了128KB的RAM,用以存放电压参数值,并有掉电保护电路,以保证数据在掉电时不会丢失。
DS12B887能够提供实时时间,以便进行时间及时段判断,从而执行相应的电能累计程序。CPLD(复杂可编程逻辑器件)EPM7032的内部设计了读取8路遥信量输入、执行4路遥控量输出以及产生各芯片片选信号的逻辑选信号有:DS12B887片选信号、SA9904B片选信号、X25045片选信号、628128RAM片选信号、DI选通信号和DO选通信号等。
2片74LS164芯片驱动16路发光二极管(LED)。这些发光二极管用于指示数字量输入/输出状态、通信状态、电源状态、自检/错误状态等。芯片X25045作为看门狗设置,加强系统的抗干扰性能。另外,该芯片还存储了模拟的地址号。
系统的通信有两种方式可以选择:一种是通过RS485总线通信,芯片75LBC184实现TTL与RS485之间的电平转换;另一种是通过LonWorks总线通信,LonWorks主控制模块的Neuron芯片采用RS232半双工异步串行通信模式,采用网络变量和网络消息的方式进行数据交换。
微控制器W78E58采用主从方式传输数据,由监控主机或其它的智能节点(主)发送命令;本模块(从)做出相应的应答,在协议帧中加入CRC-16校验码,以保证通信数据的正确性。
5 系统软件
电力参数远程测控系统的软件包括系统初始化、时间读取与时段判断程序、电力参数计算、通信命令处理、产生各种历史及报警记录、显示状态等模块。软件流程如图5所示。
其中电力参数计算模块将完成电力参数滤波、电力参数计算以及电能累加功能。系统实时读取SA9904B芯片内部存储的各相有功电能、无功电能、电压有效值和频率原始值。经过滤波处理,获得正确的电力参数,并通过计算公式完成三相电压、电流、有功功率、无功功率、功率因数、频率等测量。
结语
该系统中采用SA9904B芯片,大大减少了软件中的计算工作,提高了系统的测量精度。同时采用LonWorks总线传输实测数据,也有效地提高了系统的抗干扰能力及稳定性。
《SA9904B在电力参数远程测控系统中的应用(第2页)》