湛釗,趙曉軍,周希思
河北大學 電子信息工程學院,河北 保定 071000
摘要:采用無線組網(wǎng)技術(shù)開發(fā)了一種小型的物位監(jiān)測系統(tǒng)。以PIC32MX795F512L單片機為核心,運用68 G雷達物位計對物位進行測量,通過SI4432數(shù)傳模塊將數(shù)據(jù)信息傳回,在應(yīng)用Labview編寫的平臺軟件上進行處理、顯示與儲存,實現(xiàn)對儲罐中液體、漿料物位信息的實時監(jiān)測。實驗驗證,整套系統(tǒng)簡便、廉價、可靠,可滿足小型廠房內(nèi)物位監(jiān)測的需求。
關(guān)鍵詞:PIC32MX795;無線組網(wǎng)技術(shù);物位監(jiān)測;SI4432數(shù)傳模塊;Labview
0引言
目前,在實際的工業(yè)現(xiàn)場,大多應(yīng)用工業(yè)總線進行廠房監(jiān)控,但是其成本高昂。對于需求廉價物位監(jiān)測信息的中小企業(yè)來說,更傾向于選擇一種成本低廉、能夠完成簡單功能的高性價比小型監(jiān)測系統(tǒng)。針對需求,本文利用無線組網(wǎng)技術(shù),采用SI4432數(shù)傳模塊,設(shè)計了小型無線物位監(jiān)測系統(tǒng)。系統(tǒng)應(yīng)用穩(wěn)定的PIC32MX795F512L單片機為核心,可以很好地適應(yīng)各種工業(yè)生產(chǎn)環(huán)境,方便可靠地完成對于物位的監(jiān)測工作。平臺軟件應(yīng)用Labview編寫,可以直接搭載于公司應(yīng)用的裝有Windows操作系統(tǒng)的計算機上。
1系統(tǒng)整體設(shè)計
小型無線物位監(jiān)測系統(tǒng)包括終端硬件平臺和上位機軟件平臺兩部分,系統(tǒng)總體框圖如圖1所示,由一個數(shù)據(jù)中心搭配多個采集終端構(gòu)成整個系統(tǒng)。數(shù)據(jù)中心與終端之間的通信通過搭建的二級無線局域數(shù)字網(wǎng)絡(luò)完成。終端負責采集現(xiàn)場數(shù)據(jù),存儲并上傳給數(shù)據(jù)中心。數(shù)據(jù)中心負責數(shù)據(jù)處理、數(shù)據(jù)信息實時顯示,并對數(shù)據(jù)進行分類存儲;如遇意外情況,通信終端恢復(fù)后可調(diào)取終端所存儲歷史數(shù)據(jù)。
2.1終端硬件結(jié)構(gòu)
物位計終端以PIC32MX795F512L單片機為核心,總體框架如圖2所示,由PIC控制處理模塊、電源模塊、SI4432數(shù)傳模塊、手動地址設(shè)置器、時鐘模塊、EEPROM、SD卡、ADS1256與物位傳感器組成的測量模塊以及環(huán)境采集模塊構(gòu)成。PIC控制處理模塊負責數(shù)據(jù)處理以及各個模塊之間的調(diào)度;電源模塊為整個終端設(shè)備提供相應(yīng)電壓;測量模塊負責采集儲罐里的物位信息;SD卡用來存儲終端采集到的歷史數(shù)據(jù);EEPROM負責存儲終端初始化過程中所需要的所有參數(shù)信息;時鐘模塊用來確定終端工作的實時時鐘;地址設(shè)置器用來設(shè)置系統(tǒng)中每個終端獨有的ID地址;環(huán)境采集模塊可以采集終端工作地點的環(huán)境參數(shù);SI4432數(shù)傳模塊負責將采集到的數(shù)據(jù)傳回軟件平臺。
2.2主要模塊硬件選型
2.2.1PIC控制處理模塊
PIC控制處理模塊與各個模塊之間進行數(shù)據(jù)交換,對接收數(shù)據(jù)進行處理和存儲是整個終端的核心部分。設(shè)計中采用PIC32MX795F512L處理器。PIC32MX795F512L是MICROCHIP公司新推出的MIPS32 M4K內(nèi)核的32位單片機。該款單片機具有超低功耗的特性,具有一系列能在工作時顯著降低功耗的功能,主要包含動態(tài)時鐘切換、休眠模式工作、基于指令的節(jié)能模式等[13];此外集成的兩組各32 個32位內(nèi)核文件寄存器可極大地減少中斷延時。
2.2.2SI4432數(shù)傳模塊
SI4432是Silicon Labs公司新近推出的一款高度集成、低功耗、多頻段的EZRadioPRO 系列無線收發(fā)芯片。SI4432 所具有的+20 dB的功率放大器( 它是目前唯一集成此功放的 Wa 芯片) 能夠確保擴大通信范圍和改進鏈路性能,它獨有的支持頻率跳變、TX/RX轉(zhuǎn)換控制和內(nèi)置天線分集轉(zhuǎn)換控制功能能夠進一步擴大通信距離、提高通信性能,素有“距離之王,穿墻之王”之稱[45]。SI4432數(shù)傳模塊還具有多個信道,防止多個模塊之間的相互干擾,提高其在無線組網(wǎng)過程中的通信穩(wěn)定性。
2.2.3測量模塊
測量模塊由ADS1256與雷達物位計組成。ADS1256是由TI公司生產(chǎn)的工業(yè)級高精度串行模數(shù)轉(zhuǎn)換器,可以提供23位的高精度模數(shù)轉(zhuǎn)換,而且還擁有30 kS/s的高采樣速率,適用于科學儀器、工業(yè)工藝控制、醫(yī)療設(shè)備等工業(yè)應(yīng)用領(lǐng)域[6]。雷達物位計選用北京必達拓普科技發(fā)展有限公司生產(chǎn)的68 G雷達物位計。該款產(chǎn)品采用先進的非接觸測量方式,可測量液體、固體介質(zhì)的物位,DC24 V供電,測量范圍為0~20 m,分辨率為1 mm,輸出信號為4~20 mA,最高過程溫度可達250℃。
3軟件設(shè)計
3.1自定義傳輸協(xié)議數(shù)據(jù)包
圖3數(shù)據(jù)包格式系統(tǒng)采用自定義的傳輸協(xié)議數(shù)據(jù)包進行數(shù)據(jù)通信。數(shù)據(jù)包格式如圖3所示,數(shù)據(jù)包大小為30 B,包頭2 B,包尾2 B,終端地址1 B,數(shù)據(jù)/指令部分24 B。包頭為十六進制數(shù)0xFE、0xFD;包尾為十六進制數(shù)0x0D、0x0A;終端地址為十六進制數(shù)0x00~0xFF之間的一個數(shù)。數(shù)據(jù)/指令部分,當為數(shù)據(jù)時是字符串,前4 B為物位計傳出的電壓值,之后14 B為時間數(shù)據(jù),之后2 B為12 V供電電源電壓,再后4 B為現(xiàn)場溫度,最后1 B為采樣間隔(僅在設(shè)定或查詢時應(yīng)用);當為指令時是十六進制數(shù),只應(yīng)用第一字節(jié),其他字節(jié)不計。
3.2采集終端程序設(shè)計
3.2.1設(shè)備參數(shù)初始化
采集終端初上電后,進行程序的初始化。在這個過程中,首先檢驗?zāi)K能否正常工作,調(diào)出EEPROM中的設(shè)備參數(shù);初始化緩存數(shù)組,并向發(fā)送緩存數(shù)組中寫入包頭和包尾;然后,讀取終端的設(shè)備地址編號寫入發(fā)送數(shù)組相應(yīng)位置;向數(shù)據(jù)中心發(fā)送通信驗證包,等待回復(fù),當接收到允許通信的指令后,向數(shù)據(jù)中心發(fā)送終端正常工作信號,進入工作狀態(tài),初始化結(jié)束。初始化流程圖如圖4所示。
3.2.2終端正常采集程序設(shè)計
終端采集程序流程圖如圖5所示,先讀取采集數(shù)據(jù),判別是否要保存所讀取數(shù)據(jù)。正常工作時,要設(shè)定兩次保存數(shù)據(jù)的時間間隔,當時間間隔到時后數(shù)據(jù)保存標志位置1,開始向下運行程序,否則標志位為0,循環(huán)等待,每保存一次數(shù)據(jù)標志位都會置0。之后,將讀取的數(shù)據(jù)存入發(fā)送數(shù)組,并讀取出供電電壓值和環(huán)境溫度值,將時鐘芯片確定的采樣時間添加到發(fā)送數(shù)組。把發(fā)送數(shù)組里的數(shù)據(jù)部分存到SD卡中,同時將發(fā)送數(shù)組發(fā)送給數(shù)據(jù)中心,等待數(shù)據(jù)中心的返回指令。這里設(shè)定的發(fā)送等待時間為20 ms,20 ms內(nèi)發(fā)送成功則向下進行;若超出20 ms,則重新發(fā)送一遍數(shù)據(jù),如此循環(huán)。如果循環(huán)3次都未發(fā)送成功,則認為此時網(wǎng)絡(luò)通信不暢,取消發(fā)送,重新初始化,圖5終端正常采集程序流程圖等待下一次采集。值得關(guān)注的是,在每次讀取采集數(shù)據(jù)后都會進行一次閾值比較,閾值所代表的是測量物位的高限值與低限值,只要采集到的數(shù)據(jù)在閾值范圍內(nèi),就說明物位正常,可以按照正常的時間間隔來監(jiān)測數(shù)據(jù);如果采集到的數(shù)據(jù)超出閾值范圍,則說明物位異常,這時要將數(shù)據(jù)保存標志位置1,及時上報物位的動態(tài)信息,以便及時處理發(fā)生的狀況。
3.2.3采集終端接收指令程序設(shè)計
圖6終端中斷程序流程圖終端接收指令程序流程圖如圖6所示。工作時,采集終端會隨時等待接收數(shù)據(jù)中心發(fā)送來的指令中斷。中斷程序中,首先判斷接收到的包頭以及地址信息是否正確,若不正確則退出中斷,若正確則向下運行。將數(shù)據(jù)包中的指令提取出來進行查詢判別,控制指令選項包括查詢終端時鐘芯片運行時間、查詢采樣間隔、查詢當前采集值、上調(diào)時間段內(nèi)的歷史記錄、校正時鐘芯片時間、設(shè)置采樣間隔、設(shè)置緊急上報上下閾值等。指令設(shè)置的相關(guān)參數(shù)不僅會保存到RAM的相關(guān)位置,也會存儲到外部的EEPROM中,以保證下電重啟后設(shè)備的正常運行。
3.3數(shù)據(jù)中心軟件平臺設(shè)計
軟件平臺主體上分為兩個部分,一部分為實時監(jiān)測界面,另一部分為歷史數(shù)據(jù)查詢顯示界面。實時監(jiān)測界面主要圖7實時監(jiān)測界面程序結(jié)構(gòu)框圖負責對于現(xiàn)場各個終端采集的物位信息的實時處理以及動態(tài)顯示,以直觀地表現(xiàn)出各個儲罐中的物位狀況。程序結(jié)構(gòu)框圖如圖7所示,終端傳輸回來的數(shù)據(jù)通過串口接入平臺。根據(jù)地址信息找到相應(yīng)的終端控件,將采集時間、采樣間隔、電源電壓、環(huán)境溫度、物位信息分別裝入,即可直觀地顯示出對應(yīng)信息。欲控制終端修改或查詢信息時也是通過串口將指令數(shù)據(jù)包發(fā)送出去。平臺接收到的數(shù)據(jù)信息也會按規(guī)則添加到報表中。
歷史數(shù)據(jù)查詢顯示界面主要負責將實時監(jiān)測界面生成的列表文件中的數(shù)據(jù)根據(jù)時間軸x、物位信息軸y的規(guī)則顯示出各個終端的曲線圖,用來觀察儲罐內(nèi)物位的長時間變化趨勢。
4結(jié)論
本文介紹的系統(tǒng)可以實現(xiàn)中小廠房內(nèi)的無線物位監(jiān)測,系統(tǒng)結(jié)構(gòu)簡單,成本低廉,設(shè)備維護便捷,在中小型企業(yè)里具有很強的實用價值。
參考文獻
?。?] 王晨輝,孟慶佳.基于PIC32和ZigBee的地質(zhì)災(zāi)害監(jiān)測系統(tǒng)設(shè)計[J].電子技術(shù)應(yīng)用,2014,40(2):6870.
[2] QUARTZDYNE, Inc. Operating manual for digital pressure transducer (DigitalTransProg201206) [Z]. 2012.
?。?] TEXAS INSTRUMENTS. Safety Manual for TMS570LS12x and 11x HerculesTM ARMbased safety critical microcontrollers user’s guide (SPNU550A) [Z]. 2014.
?。?] TEXAS INSTRUMENTS. HALCoGen TMS570LS31x help 040500 [N]. 2015.
?。?] 楊帆.基于I2C接口EEPROM讀寫控制器設(shè)計[J].微型機與應(yīng)用,2015,34(10):2224.