湛 釗,趙曉軍,周希思
(河北大學(xué) 電子信息工程學(xué)院,河北 保定 071000)
基于PIC32MX795的小型無(wú)線物位監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)
湛 釗,趙曉軍,周希思
(河北大學(xué) 電子信息工程學(xué)院,河北 保定 071000)
采用無(wú)線組網(wǎng)技術(shù)開(kāi)發(fā)了一種小型的物位監(jiān)測(cè)系統(tǒng)。以PIC32MX795F512L單片機(jī)為核心,運(yùn)用6.8 G雷達(dá)物位計(jì)對(duì)物位進(jìn)行測(cè)量,通過(guò)SI4432數(shù)傳模塊將數(shù)據(jù)信息傳回,在應(yīng)用Labview編寫的平臺(tái)軟件上進(jìn)行處理、顯示與儲(chǔ)存,實(shí)現(xiàn)對(duì)儲(chǔ)罐中液體、漿料物位信息的實(shí)時(shí)監(jiān)測(cè)。實(shí)驗(yàn)驗(yàn)證,整套系統(tǒng)簡(jiǎn)便、廉價(jià)、可靠,可滿足小型廠房?jī)?nèi)物位監(jiān)測(cè)的需求。
PIC32MX795;無(wú)線組網(wǎng)技術(shù);物位監(jiān)測(cè);SI4432數(shù)傳模塊;Labview
目前,在實(shí)際的工業(yè)現(xiàn)場(chǎng),大多應(yīng)用工業(yè)總線進(jìn)行廠房監(jiān)控,但是其成本高昂。對(duì)于需求廉價(jià)物位監(jiān)測(cè)信息的中小企業(yè)來(lái)說(shuō),更傾向于選擇一種成本低廉、能夠完成簡(jiǎn)單功能的高性價(jià)比小型監(jiān)測(cè)系統(tǒng)。針對(duì)需求,本文利用無(wú)線組網(wǎng)技術(shù),采用SI4432數(shù)傳模塊,設(shè)計(jì)了小型無(wú)線物位監(jiān)測(cè)系統(tǒng)。系統(tǒng)應(yīng)用穩(wěn)定的PIC32MX795F512L單片機(jī)為核心,可以很好地適應(yīng)各種工業(yè)生產(chǎn)環(huán)境,方便可靠地完成對(duì)于物位的監(jiān)測(cè)工作。平臺(tái)軟件應(yīng)用Labview編寫,可以直接搭載于公司應(yīng)用的裝有Windows操作系統(tǒng)的計(jì)算機(jī)上。
小型無(wú)線物位監(jiān)測(cè)系統(tǒng)包括終端硬件平臺(tái)和上位機(jī)軟件平臺(tái)兩部分,系統(tǒng)總體框圖如圖1所示,由一個(gè)數(shù)據(jù)中心搭配多個(gè)采集終端構(gòu)成整個(gè)系統(tǒng)。數(shù)據(jù)中心與終端之間的通信通過(guò)搭建的二級(jí)無(wú)線局域數(shù)字網(wǎng)絡(luò)完成。終端負(fù)責(zé)采集現(xiàn)場(chǎng)數(shù)據(jù),存儲(chǔ)并上傳給數(shù)據(jù)中心。數(shù)據(jù)中心負(fù)責(zé)數(shù)據(jù)處理、數(shù)據(jù)信息實(shí)時(shí)顯示,并對(duì)數(shù)據(jù)進(jìn)行分類存儲(chǔ);如遇意外情況,通信終端恢復(fù)后可調(diào)取終端所存儲(chǔ)歷史數(shù)據(jù)。
圖1 系統(tǒng)整體結(jié)構(gòu)圖
2.1 終端硬件結(jié)構(gòu)
物位計(jì)終端以PIC32MX795F512L單片機(jī)為核心,總體框架如圖2所示,由PIC控制處理模塊、電源模塊、SI4432數(shù)傳模塊、手動(dòng)地址設(shè)置器、時(shí)鐘模塊、EEPROM、SD卡、ADS1256與物位傳感器組成的測(cè)量模塊以及環(huán)境采集模塊構(gòu)成。PIC控制處理模塊負(fù)責(zé)數(shù)據(jù)處理以及各個(gè)模塊之間的調(diào)度;電源模塊為整個(gè)終端設(shè)備提供相應(yīng)電壓;測(cè)量模塊負(fù)責(zé)采集儲(chǔ)罐里的物位信息;SD卡用來(lái)存儲(chǔ)終端采集到的歷史數(shù)據(jù);EEPROM負(fù)責(zé)存儲(chǔ)終端初始化過(guò)程中所需要的所有參數(shù)信息;時(shí)鐘模塊用來(lái)確定終端工作的實(shí)時(shí)時(shí)鐘;地址設(shè)置器用來(lái)設(shè)置系統(tǒng)中每個(gè)終端獨(dú)有的ID地址;環(huán)境采集模塊可以采集終端工作地點(diǎn)的環(huán)境參數(shù);SI4432數(shù)傳模塊負(fù)責(zé)將采集到的數(shù)據(jù)傳回軟件平臺(tái)。
圖2 硬件設(shè)計(jì)框圖
2.2 主要模塊硬件選型
2.2.1 PIC控制處理模塊
PIC控制處理模塊與各個(gè)模塊之間進(jìn)行數(shù)據(jù)交換,對(duì)接收數(shù)據(jù)進(jìn)行處理和存儲(chǔ)是整個(gè)終端的核心部分。設(shè)計(jì)中采用PIC32MX795F512L處理器。PIC32MX795F512L是MICROCHIP公司新推出的MIPS32?M4K?內(nèi)核的32位單片機(jī)。該款單片機(jī)具有超低功耗的特性,具有一系列能在工作時(shí)顯著降低功耗的功能,主要包含動(dòng)態(tài)時(shí)鐘切換、休眠模式工作、基于指令的節(jié)能模式等[1-3];此外集成的兩組各32 個(gè)32位內(nèi)核文件寄存器可極大地減少中斷延時(shí)。
2.2.2 SI4432數(shù)傳模塊
SI4432是Silicon Labs公司新近推出的一款高度集成、低功耗、多頻段的EZRadioPRO 系列無(wú)線收發(fā)芯片。SI4432 所具有的+20 dB的功率放大器( 它是目前唯一集成此功放的 Wa 芯片) 能夠確保擴(kuò)大通信范圍和改進(jìn)鏈路性能,它獨(dú)有的支持頻率跳變、TX/RX轉(zhuǎn)換控制和內(nèi)置天線分集轉(zhuǎn)換控制功能能夠進(jìn)一步擴(kuò)大通信距離、提高通信性能,素有“距離之王,穿墻之王”之稱[4-5]。SI4432數(shù)傳模塊還具有多個(gè)信道,防止多個(gè)模塊之間的相互干擾,提高其在無(wú)線組網(wǎng)過(guò)程中的通信穩(wěn)定性。
2.2.3 測(cè)量模塊
測(cè)量模塊由ADS1256與雷達(dá)物位計(jì)組成。ADS1256是由TI公司生產(chǎn)的工業(yè)級(jí)高精度串行模數(shù)轉(zhuǎn)換器,可以提供23位的高精度模數(shù)轉(zhuǎn)換,而且還擁有30 kS/s的高采樣速率,適用于科學(xué)儀器、工業(yè)工藝控制、醫(yī)療設(shè)備等工業(yè)應(yīng)用領(lǐng)域[6]。雷達(dá)物位計(jì)選用北京必達(dá)拓普科技發(fā)展有限公司生產(chǎn)的6.8 G雷達(dá)物位計(jì)。該款產(chǎn)品采用先進(jìn)的非接觸測(cè)量方式,可測(cè)量液體、固體介質(zhì)的物位,DC24 V供電,測(cè)量范圍為0~20 m,分辨率為1 mm,輸出信號(hào)為4~20 mA,最高過(guò)程溫度可達(dá)250℃。
3.1 自定義傳輸協(xié)議數(shù)據(jù)包
圖3 數(shù)據(jù)包格式
系統(tǒng)采用自定義的傳輸協(xié)議數(shù)據(jù)包進(jìn)行數(shù)據(jù)通信。數(shù)據(jù)包格式如圖3所示,數(shù)據(jù)包大小為30 B,包頭2 B,包尾2 B,終端地址1 B,數(shù)據(jù)/指令部分24 B。包頭為十六進(jìn)制數(shù)0xFE、0xFD;包尾為十六進(jìn)制數(shù)0x0D、0x0A;終端地址為十六進(jìn)制數(shù)0x00~0xFF之間的一個(gè)數(shù)。數(shù)據(jù)/指令部分,當(dāng)為數(shù)據(jù)時(shí)是字符串,前4 B為物位計(jì)傳出的電壓值,之后14 B為時(shí)間數(shù)據(jù),之后2 B為12 V供電電源電壓,再后4 B為現(xiàn)場(chǎng)溫度,最后1 B為采樣間隔(僅在設(shè)定或查詢時(shí)應(yīng)用);當(dāng)為指令時(shí)是十六進(jìn)制數(shù),只應(yīng)用第一字節(jié),其他字節(jié)不計(jì)。
3.2 采集終端程序設(shè)計(jì)
3.2.1 設(shè)備參數(shù)初始化
圖4 初始化流程圖
采集終端初上電后,進(jìn)行程序的初始化。在這個(gè)過(guò)程中,首先檢驗(yàn)?zāi)K能否正常工作,調(diào)出EEPROM中的設(shè)備參數(shù);初始化緩存數(shù)組,并向發(fā)送緩存數(shù)組中寫入包頭和包尾;然后,讀取終端的設(shè)備地址編號(hào)寫入發(fā)送數(shù)組相應(yīng)位置;向數(shù)據(jù)中心發(fā)送通信驗(yàn)證包,等待回復(fù),當(dāng)接收到允許通信的指令后,向數(shù)據(jù)中心發(fā)送終端正常工作信號(hào),進(jìn)入工作狀態(tài),初始化結(jié)束。初始化流程圖如圖4所示。
3.2.2 終端正常采集程序設(shè)計(jì)
圖5 終端正常采集程序流程圖
終端采集程序流程圖如圖5所示,先讀取采集數(shù)據(jù),判別是否要保存所讀取數(shù)據(jù)。正常工作時(shí),要設(shè)定兩次保存數(shù)據(jù)的時(shí)間間隔,當(dāng)時(shí)間間隔到時(shí)后數(shù)據(jù)保存標(biāo)志位置1,開(kāi)始向下運(yùn)行程序,否則標(biāo)志位為0,循環(huán)等待,每保存一次數(shù)據(jù)標(biāo)志位都會(huì)置0。之后,將讀取的數(shù)據(jù)存入發(fā)送數(shù)組,并讀取出供電電壓值和環(huán)境溫度值,將時(shí)鐘芯片確定的采樣時(shí)間添加到發(fā)送數(shù)組。把發(fā)送數(shù)組里的數(shù)據(jù)部分存到SD卡中,同時(shí)將發(fā)送數(shù)組發(fā)送給數(shù)據(jù)中心,等待數(shù)據(jù)中心的返回指令。這里設(shè)定的發(fā)送等待時(shí)間為20 ms,20 ms內(nèi)發(fā)送成功則向下進(jìn)行;若超出20 ms,則重新發(fā)送一遍數(shù)據(jù),如此循環(huán)。如果循環(huán)3次都未發(fā)送成功,則認(rèn)為此時(shí)網(wǎng)絡(luò)通信不暢,取消發(fā)送,重新初始化,等待下一次采集。值得關(guān)注的是,在每次讀取采集數(shù)據(jù)后都會(huì)進(jìn)行一次閾值比較,閾值所代表的是測(cè)量物位的高限值與低限值,只要采集到的數(shù)據(jù)在閾值范圍內(nèi),就說(shuō)明物位正常,可以按照正常的時(shí)間間隔來(lái)監(jiān)測(cè)數(shù)據(jù);如果采集到的數(shù)據(jù)超出閾值范圍,則說(shuō)明物位異常,這時(shí)要將數(shù)據(jù)保存標(biāo)志位置1,及時(shí)上報(bào)物位的動(dòng)態(tài)信息,以便及時(shí)處理發(fā)生的狀況。
3.2.3 采集終端接收指令程序設(shè)計(jì)
圖6 終端中斷程序流程圖
終端接收指令程序流程圖如圖6所示。工作時(shí),采集終端會(huì)隨時(shí)等待接收數(shù)據(jù)中心發(fā)送來(lái)的指令中斷。中斷程序中,首先判斷接收到的包頭以及地址信息是否正確,若不正確則退出中斷,若正確則向下運(yùn)行。將數(shù)據(jù)包中的指令提取出來(lái)進(jìn)行查詢判別,控制指令選項(xiàng)包括查詢終端時(shí)鐘芯片運(yùn)行時(shí)間、查詢采樣間隔、查詢當(dāng)前采集值、上調(diào)時(shí)間段內(nèi)的歷史記錄、校正時(shí)鐘芯片時(shí)間、設(shè)置采樣間隔、設(shè)置緊急上報(bào)上下閾值等。指令設(shè)置的相關(guān)參數(shù)不僅會(huì)保存到RAM的相關(guān)位置,也會(huì)存儲(chǔ)到外部的EEPROM中,以保證下電重啟后設(shè)備的正常運(yùn)行。
3.3 數(shù)據(jù)中心軟件平臺(tái)設(shè)計(jì)
圖7 實(shí)時(shí)監(jiān)測(cè)界面程序結(jié)構(gòu)框圖
軟件平臺(tái)主體上分為兩個(gè)部分,一部分為實(shí)時(shí)監(jiān)測(cè)界面,另一部分為歷史數(shù)據(jù)查詢顯示界面。實(shí)時(shí)監(jiān)測(cè)界面主要負(fù)責(zé)對(duì)于現(xiàn)場(chǎng)各個(gè)終端采集的物位信息的實(shí)時(shí)處理以及動(dòng)態(tài)顯示,以直觀地表現(xiàn)出各個(gè)儲(chǔ)罐中的物位狀況。程序結(jié)構(gòu)框圖如圖7所示,終端傳輸回來(lái)的數(shù)據(jù)通過(guò)串口接入平臺(tái)。根據(jù)地址信息找到相應(yīng)的終端控件,將采集時(shí)間、采樣間隔、電源電壓、環(huán)境溫度、物位信息分別裝入,即可直觀地顯示出對(duì)應(yīng)信息。欲控制終端修改或查詢信息時(shí)也是通過(guò)串口將指令數(shù)據(jù)包發(fā)送出去。平臺(tái)接收到的數(shù)據(jù)信息也會(huì)按規(guī)則添加到報(bào)表中。
歷史數(shù)據(jù)查詢顯示界面主要負(fù)責(zé)將實(shí)時(shí)監(jiān)測(cè)界面生成的列表文件中的數(shù)據(jù)根據(jù)時(shí)間軸x、物位信息軸y的規(guī)則顯示出各個(gè)終端的曲線圖,用來(lái)觀察儲(chǔ)罐內(nèi)物位的長(zhǎng)時(shí)間變化趨勢(shì)。
本文介紹的系統(tǒng)可以實(shí)現(xiàn)中小廠房?jī)?nèi)的無(wú)線物位監(jiān)測(cè),系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,成本低廉,設(shè)備維護(hù)便捷,在中小型企業(yè)里具有很強(qiáng)的實(shí)用價(jià)值。
[1] 王晨輝,孟慶佳.基于PIC32和ZigBee的地質(zhì)災(zāi)害監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2014,40(2):68-70.
[2] 張立,王松亭,曾艷麗.基于PIC32MX795的高壓開(kāi)關(guān)運(yùn)行狀態(tài)在線監(jiān)測(cè)儀的研制[J].儀表技術(shù)與傳感器,2011(11):43-47.
[3] 李誠(chéng),孫曼,陳慶旭.基于PIC32MX的嵌入式GUI移植與應(yīng)用[J]. 電視技術(shù), 2013,37(11):94-97.
[4] 高仁璟,劉國(guó)新,唐禎安. 基于 Si4432 的無(wú)線射頻遙控系統(tǒng)設(shè)計(jì)[J].通信技術(shù),2010,43(10):137-139.
[5]李正民,王建輝,劉偉偉.基于Si4432的無(wú)線射頻通信模塊的設(shè)計(jì)與實(shí)現(xiàn)[J].測(cè)控技術(shù),2012,10(4):40-43.
[6] 徐盛有,蒙建波,陳青洪. 高精度ADS1256轉(zhuǎn)換器及其在捷聯(lián)慣導(dǎo)系統(tǒng)中的運(yùn)用[J]. 自動(dòng)化與儀器儀表, 2006(2):31-33.
Design of small wireless material level monitoring system based on PIC32MX795
Zhan Zhao, Zhao Xiaojun, Zhou Xisi
(School of Electronic Information Engineering,Hebei University, Baoding 071000, China)
This paper developed a kind of small material level monitoring system by using wireless networking technology. It took PIC32MX795F512L microcontroller as MCU, and used 6.8 G radar material level gauge for level measurement. The data is returned by SI4432 data transmission module, and is processed, displayed and storied on the software platform which is written by Labview. It acheiued to monitor the material level information of liquid or slurry in the tank in real time. It is proved by experiment that the entire system is simple, cheap and reliable, and can meet the monitoring requirements of material level measurement in the small factory.
PIC32MX795;wireless networking technology; material level monitoring; SI4432 data transfer module; Labview
TP274.2
A
1674-7720(2016)02-0025-03
湛釗,趙曉軍,周希思. 基于PIC32MX795的小型無(wú)線物位監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)[J] .微型機(jī)與應(yīng)用,2016,35(2):25-27,34.
2015-10-16)
湛釗(1990-),男,碩士研究生,主要研究方向:自動(dòng)化監(jiān)測(cè)技術(shù)。
趙曉軍(1967-),男,博士,教授,主要研究方向:物聯(lián)網(wǎng)應(yīng)用技術(shù)、智能機(jī)器人。
周希思(1990-),女,碩士研究生,主要研究方向:自動(dòng)化控制技術(shù)。