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