3.1 功能化模块设计
PLC终端软件采用梯形图语言编写,为提高终端的抗干扰能力,软件设计中采用了数字滤波、故障自检、控制口令等措施,保证控制操作的正确性和可靠性。程序设计采用模块化、功能化结构,便于维护、扩展。终端软件主要由下列模块组成。
(1) 初始化程序:设定各寄存器、计数器、PLC工作模式、通信方式等参数初始值。
(2) 数据采集子程序:对各路模拟量数据采集、滤波、平均等处理。
(3) 定时存数子程序:每15min存储数据一次;
(4) 累计运行时间子程序:对泵机等设备的运行时间进行累计。
(5) 遥信子程序:检测电机、阀门、报警开关等设备的运行状态。
(6) 置初值子程序:由监控中心对时间、电耗、流量等累计参数按用户的要求设定初始值。
(7) 故障自检子程序:检测PLC的故障信息、校验信息,并发往监控中心。
(8) 控制子程序:根据监控中心的命令,或现场自控条件输出相应的操作。
(9) 通讯子程序;完成与监控中心的各种通信功能。
3.2 技术关键
(1) 在编写调试终端机程序的过程中,我们发现通信子程序难度大 一点,需要多费些时间和耐心去调试。因为相对于有线通信来说,无线通信需要考虑的因素更多,比如通信干扰、RTS时间延迟处理等。
(2) 笔者利用了中断来编写通信部分子程序,用到中断有:通信口0接收字符、通信口0传输完成,定时器0中断。在通信接收中断服务子程序中,一定要注意判别接收到的字符数。因为中心调度室发送过来的命令中的字符数是一定的,如果PLC接收到的字符数超过某个数目,则PLC需要初始化通信接收有关的变量、标志,重新开始接收。而对于PLC发送响应信息时,如果需要RTS控制信号,则要控制好RTS延时的时间,RTS时间太短,则可能使得中心调度室接收到的信息不完整,造成通信失败;RTS时间太长,又有可能与中心调度室通信冲突,也造成通信失败。总之,无线通信程序调试时,需要与上位机软件紧密结合,耐心调试,才能确保在现场实际应用中,达到系统设计要求的功能。
4 结束语
本终端机在软、硬件方面采取了多种措施,特别是选用了S7-200 PLC,提高了终端机的可靠性,在"三遥"供水调度系统中系统取得了较好的应用效果。特别是在我公司去年投入运行的十多口水源井中,采用了此终端机,公司中心调度室能够随时监测各水源井设备状态,并且可以控制水泵的开停,真正实现了无人看守,对水厂的安全运行、提高供水质量、节能降耗、优化管理等方面起到了至关重要的作用。"三遥"系统将无线通信与S7-200 PLC有机的结合,解决了现场分布较散、距离较远、范围较大的系统监控问题,在供水、供电、供气、油田、气象、水文水利等部门有较好的应用前景。