基于PLC技術(shù)的遠(yuǎn)程電表軟硬件設(shè)計(jì)
圖3 電量采集模塊
ADE7756與MCF5271主控板的接口部分包括用于通信的SPI接口和ADE7756的反饋信號(hào)。如圖4所示,圖中使用兩片7404芯片對(duì)輸入輸出信號(hào)進(jìn)行電壓轉(zhuǎn)換。7404芯片內(nèi)部含有6路緩沖器,本設(shè)計(jì)中使用了每片芯片中的4路緩沖器,7404芯片為漏極開路輸出,所以從主控芯片方輸入的5V/3.3V信號(hào)經(jīng)過7404后都可以轉(zhuǎn)換為5V信號(hào)。向主控芯片方輸出的信號(hào)可以轉(zhuǎn)換為3.3V信號(hào)。
圖4 ADE7756與MCU的接口部分
3、實(shí)時(shí)時(shí)鐘模塊
圖5為實(shí)時(shí)時(shí)鐘模塊,PCFB_563通過紐扣電池供電,MCF5271主控板通過I2C接口與PCF8563進(jìn)行通信,SCL為主控芯片發(fā)送的時(shí)鐘信號(hào),SDA為數(shù)據(jù)雙向數(shù)據(jù)通信引腳。主控芯片可以設(shè)置PCF8563當(dāng)前時(shí)間和讀取PCF8563當(dāng)前時(shí)間。
圖5 實(shí)時(shí)時(shí)鐘模塊
基于PLC技術(shù)的遠(yuǎn)程電表的軟件可以劃分為兩個(gè)部分:主控芯片方程序以及與后端軟件的接口,兩者相互獨(dú)立。主控芯片方軟件主要完成以下功能:
(1)定時(shí)電量采集:與ADE7756通信,通過SPI接口讀取電量數(shù)據(jù);
(2)電量數(shù)據(jù)存儲(chǔ):讀取實(shí)時(shí)時(shí)鐘獲得當(dāng)前時(shí)間,判斷當(dāng)前時(shí)段,將讀取到的電量數(shù)據(jù)按照時(shí)段進(jìn)行相應(yīng)存儲(chǔ);
(3)數(shù)據(jù)通信和加密解密:接收和解析后端軟件發(fā)送的命令數(shù)據(jù)包、構(gòu)造和發(fā)送應(yīng)答數(shù)據(jù)包;并完成命令數(shù)據(jù)的解密和應(yīng)答數(shù)據(jù)的加密;
(4)命令響應(yīng):對(duì)后端軟件發(fā)送的命令做出響應(yīng);
(5)掉電處理:檢測(cè)到電壓過低和掉電情況后及時(shí)進(jìn)行重要數(shù)據(jù)存儲(chǔ)。
后端軟件接口主要包含通信協(xié)議的設(shè)計(jì),如果將接口設(shè)計(jì)的比較合理,則對(duì)于后端軟件的開發(fā)人員來說相當(dāng)方便。
根據(jù)以上功能分析,軟件共劃分為5個(gè)模塊:電量采集和存儲(chǔ)模塊、數(shù)據(jù)加密解密模塊、嵌入式以太網(wǎng)模塊、掉電處理模塊和命令響應(yīng)模塊。
電量采集和存儲(chǔ)模塊完成定時(shí)電量采集和電量數(shù)據(jù)存儲(chǔ)功能;
數(shù)據(jù)加密解密模塊用來對(duì)后端軟件的命令解密和本地應(yīng)答數(shù)據(jù)的加密;
嵌入式以太網(wǎng)模塊完成數(shù)據(jù)通信功能,該模塊包含與PLC 調(diào)制解調(diào)器的通信的底層驅(qū)動(dòng)程序,同時(shí)包含網(wǎng)絡(luò)協(xié)議,負(fù)責(zé)網(wǎng)絡(luò)數(shù)據(jù)的解包打包功能;
掉電處理模塊完成檢測(cè)到電力線電壓低于閾值時(shí)對(duì)重要數(shù)據(jù)的存儲(chǔ);
命令響應(yīng)模塊對(duì)后端軟件的命令進(jìn)行響應(yīng)。
評(píng)論