给ARM核心板供电5VMIC29503 5V转化为3.3V电源模块LH15-10D0512-0412V备用220V交流电3.3V3.3V给以太网、SD卡、RS232、CAN、DOG供电3.3VLM117-ADJ3.3V转化为1.9V1.9V隔离DC/DCB03055V485隔离供电图4-9 电源模块图 Figure 4-9 Power Module Figure
5.2.2 SPI通信
本系统采用SPI实现ARM与DSP之间的通信,其通信根据轮循周期进行。因通信主要由ARM端发起,所以设置ARM为主机,DSP为从机;sPI接口共有4根信号线,分别是:SPI选通线、时钟线、输出数据线、输人数据线;ARM与DSP之间采用全双工通信方式传输数据,提高了系统的整体运行速度。具体流是:ARM端通过发出时钟脉冲信号来发起数据传输,DSP采用中断模式接收数据。当接收到一个完整的控制指令时,首先检验指令的有效性,对于有效的指令先停止中断,并要求下端的监测单元发送最新的监测数据和对相应的数据进行分析处理及存储。处理完后,再开启SPI中断并将数据处理的结果回传至ARM端,进行MMS报文处理,并调用Socket建立网络连接发送报文至监控中心;对于无效的控制指令和超时指令,将回应错码并要求重发,累计重发超过预定次数,将启动预警机制。ARM和DSP的通信连接方式如图4-10所示。
ARM(SPI主控制器)串行时钟SPICLKSPIMOSISPISTENSPIMISO主出/从入SPI选通主入/从出DSP(SPI从控制器)SPICLKSPIMOSISPISTENSPIMISO
图4-10 ARM和DSP的SPI连接方式图 Figure 4-10 ARM and DSP SPI connection diagram
5.3 温度在线监测IEO软件设计
温升监测IED软件流程图如图4-11所示监控主机服务器发出采集温度的指令,经IED传送至各监测终端,各终端接收到指令后,获取GPS的时钟信号作为同步时钟,同时刻采集终端温度。当各个终端采集完毕后通过485总线将数据传给IED,IED利用DSP的高速运算能力完成对终端状态量的数据运算处理后,结合相应的控制策略做出判断,并在温度过高的情况下生成相应的预警信息,并将数据和预警信息筛选、打包后通过SPI传输给ARM,ARM运行于Liniux操作系统下,实现IEc61850规约的封装并上传到监控中心。同时通过液晶显示相应的信息。ARM端主要负责与DSP的信息交换、和站控层设备进行网络通信以及必要的其他IED之间的通信等。其功能复杂,执行任务多,涉及进程管理,需嵌人IEC61850协议,以及加速以太网和SPI通信等功能,故系统在ARM端嵌人了Linux操作系统,提高了IED的数据采集和传输能力,为IEC61850协议的嵌入提供了一个稳定可靠的系统平台;该操作系统系统是一种源码开放、性能稳定、功能强大高效的操作系统。主要步骤是构造交叉编译环境、引导装载程序移植、Linux内核配置和编译等。IED需要编写的驱动程序主要包括串口、以太网、人机交互等外设。当应用程序需要对该设备进行操作时,就通过标准化的与设备无关的系统调用完成。在DSP软件设计部分,采用c程序设计语言,通过TI公司的开发软件CCS3.3编程开发。上电后经过适当延时,待电源稳定后对系统进行初始化操作,主要包括:CPU
初始化、存储器初始化、1/0初始化、时钟初始化、异步通信串口初始化等。