基于 ZigBee 的實驗室電源管理系統(tǒng)
基于 ZigBee 的實驗室電源管理系統(tǒng)
余鵬程,錢 楷,周月喬,田相鵬
(湖北民族大學 信息工程學院,湖北 恩施 445000)
摘 要 :針對科研設備管理難度較大的現象,為改善設備性能,提高利用率,設計了一套基于 ZigBee 的實驗室電源管理系統(tǒng),通過射頻卡完成人員信息的采集,由數據庫進行信息管理,繼電器完成設備的開關控制。測試表明, 該系統(tǒng)能夠準確完成設備的開關管理,且串口屏的設計也實現了實驗室設備的可視化管理,相較于已有方案,其系統(tǒng)結構簡單,成本低廉,能耗低,具有較好的應用前景。
關鍵詞 :ZigBee ;實驗室電源管理 ;智能化 ;STM32 ;繼電器 ;通信
中圖分類號 :TP391.44 文獻標識碼 :A 文章編號 :2095-1302(2021)02-0035-04
引 言
對于科研設備的管理往往存在電源無關斷或對設備的使用信息無記錄的情況,如何高效發(fā)揮現有設備的利用率,提高能量效率,成為亟待解決的問題 [1-4]。因此,對科研設備實行智能化管理有著重要的研究意義。
基于 ZigBee 的電源管理技術在生活應用領域的研究正在不斷深入。例如曾寶國等實時采集實驗室電源的電壓、電流參數,并逆向上報監(jiān)控中心。監(jiān)控中心可根據上報數據判斷電源的工作情況進行狀態(tài)控制 [5]。尹小曼等對室內環(huán)境嵌入式監(jiān)測器進行設計,完成 Linux 操作系統(tǒng)的移植和用戶交互圖形界面的功能測試,能夠有效進行家居環(huán)境的動態(tài)監(jiān)測 [6]。王海林等為解決學生上課與實驗時間的矛盾、高校實驗室存在設備利用率不高的情況,通過擴頻技術對智能卡進行管理,能夠及時關斷實驗室設備 [7]。綜合上述研究來看, 對于科研設備的管理還存在智能化程度不高,管理不及時等現象,可以從控制器的效率方面著手進行優(yōu)化,進一步提高利用率。
本文設計了一套基于 ZigBee 技術的科研設備用電智能管理系統(tǒng),以提高能源的利用效率和設備的智能化管理水平, 各節(jié)點之間采用自組網技術,通過繼電器控制開斷,利用串口將收集到的信息顯示到串口屏,由此完成人工智能管理。
實驗室電源管理系統(tǒng)總體方案
本項目通過采用無線傳感器網絡技術設計實驗室科研設備用電智能監(jiān)控網絡。與匯聚節(jié)點、網關節(jié)點以及上位機管
收稿日期:2020-08-25 修回日期:2020-09-28
基金項目:國家自然科學基金(616650 02);國家自然科學基金
(61483014);湖北省“雙一流”建設專項資金(2019)
理軟件構建實驗室設備用電智能管理系統(tǒng),能有效提升實驗室科研設備用電的智能化管理水平。
在信息采集端,選用 RFID 射頻卡完成對人員信息的采集,當用戶讀入 ID 卡時,ID 卡上的信息便會由門禁系統(tǒng)通過串口發(fā)送給 ZigBee 的終端。終端將利用 ZigBee 無線發(fā)送的優(yōu)勢,將 ID 卡的信息發(fā)送給 ZigBee 協(xié)調器節(jié)點 [8-11],之后協(xié)調器將信息發(fā)送給 STM32,在 STM32 中編寫一個小型數據庫 [12],若數據庫中有此卡的信息,便會下發(fā)打開繼電器開關命令,閃存當前 ID 卡信息,并記錄當前時間。當設備使用結束后,學生二次靠卡,STM32 返回關閉信息,斷開繼電器開關,同時記錄結束時間。實驗室 [13] 科研設備智能開
關控制系統(tǒng)總體設計如圖 1 所示。
我們選用 ZigBee 通信,不僅減少了布線的成本投入, 又降低了維護的難度,增強了通信的靈活性,而且用于監(jiān)測的無線傳感器網絡節(jié)點的廉價性使得對每臺用電設備的用電量進行智能監(jiān)控 [14-15] 成為可能。無線傳感器網絡的自組織特性使新的節(jié)點可以隨時加入網絡,且無效節(jié)點可以隨時刪除而不會對原有通信系統(tǒng)造成影響。
系統(tǒng)的硬件設計
系統(tǒng)主控電路
圖 2 所示為 STM32 開發(fā)板與相關外圍模塊的接口電路, 具有如下功能。
從串口接收協(xié)調器發(fā)送的信號,并將信號與片內的數據庫對比,從而下發(fā)命令回調給協(xié)調器,進而控制繼電器的開合。
利用串口將收集的信息顯示到串口屏上,實現信息的可視化。STM32F429IG 網關外圍電路主要包括晶振電路、復位電路與協(xié)調器的接口電路以及電源供電電路。復位電路
采用阻容復位電路,晶振電路采用典型的無源晶振電路,其 他接口則只需與外接模塊電路相連接即可。
圖 1 系統(tǒng)總體方案設計
管截止,相當于斷開狀態(tài),線圈中無電流或電流不足以吸合繼電器開關。在線圈回路中加一個二極管 D1,防止 MOS 管的集電極承受瞬間高壓而損壞。
系統(tǒng)軟件設計
圖 3 繼電器開關電路
圖 2 STM32 開發(fā)板外接電路
端口 PA9 和 PA10 為串口 1 的收發(fā)引腳,實現其與協(xié)調器的信息傳送,PB10 與 PB11 是 STM32 與串口屏的連接引腳,實現信息的可視化。STM32 芯片需要 2 個晶振,一個為25 MHz,另一個為 32.768 kHz,以此提供系統(tǒng)時鐘信號,并與時鐘保持一致。VDD 口外接電源電路,由于芯片工作電壓為 3.3 V,因此電源電路通過CJA/117B 將 5 V 電壓轉換為
3.3 V,使芯片正常工作。
2.2 ZigBee 終端設備繼電器開關電路
電源的開合通過繼電器 [13] 實現,當終端收到數據庫的
回調命令后,通過繼電器進行電源管理。圖 3 所示為繼電器開關電路,CC2530 通過 P0_7 口輸出,選用 MOS 管控制開關繼電器的關合。當輸出口為高電平時,MOS 管導通,線圈中有電流導致繼電器吸合 ;當輸出口為低電平時,MOS
圖 4 所示為系統(tǒng)主程序。當 STM32 串口收到信息后會將信息與片內自寫數據庫進行比對,當串口信息比對成功后, STM32 一方面將信息送往串口屏顯示,另一方面將繼續(xù)判斷刷卡次數是否為 1,若為第一次刷卡則發(fā)送開繼電器命令, 反之則發(fā)送關閉命令。
STM32 串口端的信息由 ZigBee 無線傳輸,首先聲明一個串口回調函數,實現相關功能 :終端串口接收讀卡器上傳的數據信息,當串口收到數據之后存在串口緩存區(qū),按照數據庫協(xié)議的格式打包存儲,并運用無線發(fā)送函數點播出去。
數據并非逐個發(fā)送或接收,而是將所得到的數據以約定的格式打包之后發(fā)送出去, 我們將此數據包稱為心跳包。其格式為 :魔法樹,4 B(韋根信息);DRC,1 B(校驗);Cmdid,指令類型 ;DeviceID,2 B(APP 層設備地址); Switch State,1 B(開關狀態(tài))。
在終端無線發(fā)送函數當中,先將魔法樹中的信息賦給無線發(fā)送緩存區(qū),將指令類型數據、設備地址、開關狀態(tài)的相
應消息賦給每一字節(jié)。本文約定的協(xié)議為 20 B,當設備數量增多時以便留有一定裕度,當其未達到 20 B 時,自動填充字節(jié)數據位 0x20,完成數據的打包。打包之后調用 ZigBee 協(xié)議棧中的無線發(fā)送函數上傳協(xié)調器。
圖 4 系統(tǒng)主程序
若終端子節(jié)點收到無線數據,則首先按照心跳包協(xié)議拆分數據包。具體拆分過程如下 :
if(Endpoit_af_Rxbuff[0] == magicnum[0]&&Endpoit_af_Rxbuff[1]
== magicnum[1]&&Endpoit_af_Rxbuff[2] == magicnum[2]&&Endpoit_ af_Rxbuff[3] == magicnum[3])
// 判斷數據頭是否一致
{
if(Endpoit_af_Rxbuff[7]==Endpoit_app_addr[0]&& Endpoit_af_ Rxbuff[8]==Endpoit_app_addr[1]) // 判斷是否為本終端地址
{ if(Endpoit_af_Rxbuff[5] == 3) // 打開開關指令
Switch_state = 1; // 打開開關
else if(Endpoit_af_Rxbuff[5] == 4) // 關閉開關指令
Switch_state = 0; // 關閉開關
else if(Endpoit_af_Rxbuff[5] == 5) // 服務器查詢開關狀態(tài)
SampleApp_Send_P2P_Message();
// 終端更改開關狀態(tài)后上傳當前的開關狀態(tài)
HalUARTWrite(MY_DEFINE_UART_PORT, Endpoit_af_Rxbuff, pkt->cmd.DataLength);
表 1 通信協(xié)議頭
字段名稱 |
類 型 |
說 明 |
magicnum |
unsigned int |
魔法數 |
cmdid |
unsigned char |
指令類型 |
datasize |
unsigned short |
數據長度 |
指令類型見表 2 所列。
表 2 通信協(xié)議相關指令
數 字 |
含 義 |
0 |
未定義 |
1 |
開關狀態(tài)上傳(心跳) |
2 |
刷卡信號上傳 |
3 |
服務器下傳打開開關指令 |
4 |
服務器下傳關閉開關指令 |
5 |
服務器查詢開關狀態(tài) |
6 |
服務器查詢設備是否正常 |
7 |
預留 |
實驗結果
基于 ZigBee 的實驗室電源管理系統(tǒng)實物搭建效果如圖 5 所示。系統(tǒng)上電后,終端設備 LED 燈全亮,ZigBee 節(jié)點自動組網,幾秒之后,LED1 熄滅,表示組網成功。終端設備刷入 ID 卡信息之后,串口屏正確顯示 ID 卡上信息并記錄刷卡時間,二次刷卡之后顯示結束時間,如圖 6 所示。
圖 5 系統(tǒng)實物搭載模型
// 串口輸出接收到的數據
HalLedBlink(HAL_LED_1, 3, 50, 200);
// 終端收到協(xié)調器廣播數據后 LED1 閃爍 3 次
數據包格式即服務器端約定了通信協(xié)議后, 不同設備之間通過此協(xié)議來完成數據的收發(fā)。定義協(xié)議頭見表 1
結 語
圖 6 系統(tǒng)串口屏顯示
所列。 針對科研設備利用率低,管理困難等問題所搭建的實驗
室智能管理系統(tǒng),充分利用 ZigBee 無線傳輸的優(yōu)點,數據信息可以有效收發(fā)。測試結果表明,所設計的電源管理系統(tǒng)能夠及時關斷電路節(jié)約能耗、提高設備利用率,達到了預期的設計效果。本文設計的系統(tǒng)切實可行,具有廣闊的應用前景。
注:本文通訊作者為錢楷。
參 考 文 獻
郭金銘,鄒剛偉,胡斌杰,等 . 基于 ZigBee 的無線傳感器網絡定位技術研究 [J]. 移動通信,2013,37(18):74-79.
李輝,張曉光,高頂,等 . 基于 ZigBee 的無線傳感器網絡在礦井安全監(jiān)測中的應用 [J]. 儀表技術與傳感器,2008,45(4):33- 35.
季寶杰,鄒彩虹,王永田 . 基于單片機的溫室自動控制系統(tǒng)設計
[J]. 計算機測量與控制,2007,15(1):73-75.
ROHOKALE V M,PRASAD N R,PRASAD R. A cooperative Internet of Things(IoT)for rural healthcare monitoring and control [C]// 2011 2nd International Conference on Wireless Communication, Vehicular Technology,Information Theory and Aerospace & Electronic Systems Technology. Chennai,India:[s.n.],2011:1-6.
曾寶國,曾妍 . 基于 WSN 的開放性實驗室電源管理系統(tǒng) [J]. 物
聯(lián)網技術,2012,2(6):56-58
尹小曼,馬俊,陳博行,等 . 基于 ZigBee 技術的智能家居環(huán)境監(jiān)測系統(tǒng)設計與實現 [J]. 自動化與儀器儀表,2019,38(3):96- 99.
王海林,管超,張蔚濤,等 . 基于智能卡和擴頻技術的實驗室電源管理系統(tǒng) [J]. 實驗技術與管理,1997,14(2):40-44.
關學忠,劉鵬,唐磊,等 . 基于 ZigBee 的智能家居系統(tǒng)的設計 [J].
自動化技術與應用,2011,30(11):36-38.
周游,方濱,王普 . 基于 ZigBee 技術的智能家居無線網絡系統(tǒng) [J].
電子技術應用,2005,31(9):37-40.
高峰,俞立,張文安,等 . 基于無線傳感器網絡的作物水分狀況監(jiān)測系統(tǒng)研究與設計 [J]. 農業(yè)工程學報,2009,25(2):107- 112.
張世杰 . 實驗室開放管理關鍵技術研究與開發(fā) [D]. 北京:北京郵電大學,2017.
楊龍,于濱紅 . 固態(tài)繼電器在 89C51 單片機控制系統(tǒng)中的應用
[J]. 電測與儀表,1999,36(5):52-53.
張敏,董學勵 .ZigBee 無線網絡在開放實驗室電源控制中的應用
[J]. 科學技術與工程,2012,12(8):1920-1922.
賀登天,甘重斗,夏春水 . 基于單片機控制的智能開關的設計與實現 [J]. 甘肅科技,2007,23(6):41-44.
張曉晨 . 消防設備電源控制系統(tǒng)分析 [J]. 中國科技信息,2018,30(2):54-55.
作者簡介:余鵬程(1993—),男,碩士研究生,主要研究方向為電氣工程與自動控制。 錢 楷(1982—),男,博士,副教授,主要研究方向為電子信息、光纖傳感。