基于ZigBee技术的低功耗电能参数无线监测系统
控工作站发送过来请求帧数据,则发送数据发送信号量SendSem,数据发送任务接收到信号量,启动运行,完成数据发送功能。同样,其他程序模块功能也是通过任务间的通信与信号量的传递来实现,以此来保证时间与任务的同步。
3. 程序流程
图4为无线电能参数监视仪的程序流程框图。在使用μC/OS-II提供的任何功能之前,必须先调用OSInit()函数,该函数建立了2个任务:空闲任务(在所有其他任务未就绪时运行)和统计任务(计算CPU的利用率)。
图4:无线电能参数监视仪程序流程框图。
本应用程序中屏蔽了统计任务,OSInit()函数只建立1个任务,即空闲任务。InitHardware()函数主要完成系统时钟设置和UART串口参数初始化;InitPara()函数完成系统全局变量初始化,然后建立各个应用任务,最后OSStart()函数将控制权交给μC/OS-II内核,开始运行多任务。
电能参数及温度测量模块由于对时间要求比较高,并且程序设计相对简单,故程序采用基于时间控制的程序流程结构,采用时间状态机的编程方法。应用任务划分为:
电能参数及温度采集任务、数据发送任务、空闲睡眠任务。程序开始运行后先初始化系统硬件参数和系统变量参数,然后采集电能参数及温度并把数据通过ZigBee无线通信模块发送给无线电能参数监视仪,最后进入空闲睡眠模式。其中数据发送任务完成时间控制在50ms,包括30ms唤醒等待时间、10ms数据通信时间以及10ms数据通信不成功重发时间。
四、小结
在电力变压器在线故障诊断应用中,无线电能参数及温度测量模块在线监测变压器负载电流、电压、功率和泄漏电流、铁芯入地电流及油温等参数,并把数据无线传输给监视仪。监视仪处理分析被测参数,并判断参数变化情况,如果监视到顶层油温、套管出线端子温度、油箱热点温度等温升速度,以及组间温度差、铁芯入地电流等参数超过设定限值,将输出变压器监测参数异常报警开关量给声、光报警显示器,通知运行人员注意。通过变压器在线故障诊断解决变压器过热、过载、漏电流等问题,杜绝此类事故发生,从而保证高压设备安全、稳定运行。
更多关于ZigBee技术的资讯,欢迎访问 ZigBee技术专区
- 物联网新应用一瞥:科技让生活更便利 (01-09)