郭起軒 仲梁維
摘 要:傳統(tǒng)制造行業(yè)設備監(jiān)控存在信息故障反饋不及時、提取和處理數(shù)據(jù)效率低下等問題。為提高設備使用調(diào)度管控效率,及時掌握現(xiàn)場設備情況,基于物聯(lián)網(wǎng)技術(shù),開發(fā)了一套監(jiān)測重點設備系統(tǒng)。系統(tǒng)能實時采集現(xiàn)場設備運行過程中的參數(shù)信息,將處理的數(shù)據(jù)實時發(fā)布到安卓平臺移動端。實驗結(jié)果表明,采用該系統(tǒng)能提高獲取數(shù)據(jù)的有效性和及時性,方便管理人員實時監(jiān)控,高效、便捷、準確了解現(xiàn)場重點設備運行情況,為實時跟蹤設備、分析設備狀態(tài)及有效管理提供決策支持。
關(guān)鍵詞:設備監(jiān)測;物聯(lián)網(wǎng);遠程監(jiān)測;數(shù)據(jù)采集
DOI:10.11907/rjdk.172619
中圖分類號:TP319
文獻標識碼:A 文章編號:1672-7800(2018)004-0115-03
Abstract:There are problems such as untimely information failure feedback and low efficiency of data extraction and procession in traditional manufacturing industry. In order to improve equipment scheduling control efficiency and have acquaintance with on-site equipment, we develop a set of effective key equipment monitoring system based on Internet of things (IOC) technology. The system can collect parameter information in the running of on-site equipment in real-time and transmit processed data to Android mobile terminals. The experimental results show that the system can improve efficiency and timeliness of data extraction and facilitate the management staff in real-time monitoring of on-site equipment effectively, conveniently and accurately, which is of great help for decision-making about real-time equipment tracking, equipment status analysis and effective management.
Key Words:equipment monitoring; Internet; remote monitoring; data acquisition
0 引言
目前,我國對設備監(jiān)測的主要方式是采用被動式監(jiān)測系統(tǒng),將監(jiān)測數(shù)據(jù)上傳到調(diào)度中心,調(diào)度中心管理人員根據(jù)上傳數(shù)據(jù)獲知設備情況從而控制設備。這種按照規(guī)章制度進行的監(jiān)測方案存在信息不能及時反饋,監(jiān)管不到位等問題。本文將這種被動式檢測系統(tǒng)替換為主動獲取現(xiàn)場設備信息,通過構(gòu)建基于安卓平臺的設備檢測系統(tǒng),隨時獲取設備運行的狀態(tài)信息,利用實時采集的信息進行決策判斷,在第一時間作出應急反應[1],具有較好的應用價值。
1 系統(tǒng)總體架構(gòu)
設備監(jiān)測系統(tǒng)依托物聯(lián)網(wǎng)技術(shù),采用擁有自主環(huán)境交互能力的智能硬件和軟件體系結(jié)構(gòu)設計,針對設備運行情況進行及時有效監(jiān)測。系統(tǒng)模塊分為底層數(shù)據(jù)采集控制模塊、通訊模塊、服務器、本地現(xiàn)場監(jiān)控、遠程監(jiān)控以及安卓手機移動端模塊[2]。其中,底層數(shù)據(jù)采集控制模塊由傳感器元件、STM32控制板、開關(guān)執(zhí)行元件組成,主要負責獲取設備的溫度、壓力、振動等信息。STM32對原始數(shù)據(jù)進行處理后,發(fā)送給通訊模塊,通訊模塊將處理后的數(shù)據(jù)經(jīng)GPRS網(wǎng)絡發(fā)送到指定的遠程服務器,并將數(shù)據(jù)存儲在數(shù)據(jù)庫中,系統(tǒng)架構(gòu)如圖1所示。
2 系統(tǒng)硬件設計
2.1 STM32系統(tǒng)板
STM32系統(tǒng)板成本、功耗低,增強型系列時鐘頻率達到72MHz,是同類產(chǎn)品中性能最高的產(chǎn)品;基本型時鐘頻率為36MHz,以16位產(chǎn)品價格得到比16位產(chǎn)品大幅提升的性能,是32位產(chǎn)品用戶的最佳選擇。兩個系列都內(nèi)置32-128K閃存。時鐘頻率72MHz時,STM32功耗36mA,相當于0.5mA/MHz。
2.2 壓力、溫度、震動傳感器
本系統(tǒng)選用FSR402壓力傳感器。該款傳感器重量輕、精度高、體積小,能夠?qū)⑹┘釉趥鞲衅鞲袘獏^(qū)域的壓力轉(zhuǎn)換為電阻值變化,以此獲取壓力信息。采用DS18B20數(shù)字溫度傳感器。DS18B20測溫原理是把芯片感知的溫度轉(zhuǎn)換成數(shù)值放在數(shù)據(jù)寄存器中,按照DALLAS規(guī)定的時序傳出數(shù)據(jù),CPU通過單總線協(xié)議取得DS18B20中的溫度值。震動傳感器采用MEC原裝震動開關(guān)SW-18015P,該開關(guān)靈敏度高,對環(huán)境震動敏感,一般用來檢測周圍環(huán)境的震動強度。
2.3 攝像頭模塊
攝像頭模塊用于實時了解現(xiàn)場情況。本系統(tǒng)采用中星微公司的ZC2301P攝像頭模塊,這種模塊可將采集的視頻信號壓縮為視頻數(shù)據(jù)傳送到嵌入式Web服務器上,用戶可通過登入Web網(wǎng)頁或安卓平臺下的指定網(wǎng)頁,監(jiān)控現(xiàn)場環(huán)境。
2.4 WiFi模塊
為了將采集的數(shù)據(jù)傳送到上位機,需要在STM32控制板上集成WiFi無限通訊模塊,本系統(tǒng)采用的ESP8266WiFi模塊是一款超低功耗的UART-WiFi模塊,具有耗能低、尺寸封裝等優(yōu)勢,能夠?qū)⒂脩舻奈锢碓O備連接到WiFi無線網(wǎng)絡上[5]。
3 系統(tǒng)軟件設計
監(jiān)控軟件包括MySQL數(shù)據(jù)庫、通信接口端程序以及Android端APP三個部分。其中,服務器端的MySQL數(shù)據(jù)庫主要功能是采集數(shù)據(jù)的存儲、整理,為用戶終端提供查詢、修改等功能。通訊接口程序完成數(shù)據(jù)的采集、處理和指令發(fā)送功能,從而實現(xiàn)下位機與服務器端的通訊。Android客戶端提供實時數(shù)據(jù)的監(jiān)控、設備管理、用戶權(quán)限登錄、實時報警、歷史數(shù)據(jù)查詢等功能[6]。系統(tǒng)流程如圖2所示。
3.1 服務器端軟件設計
3.1.1 網(wǎng)絡數(shù)據(jù)接收與解析
服務器端軟件接收數(shù)據(jù)的形式是:接收數(shù)據(jù)報文、解析報文,得到原始數(shù)據(jù)。根據(jù)需要將數(shù)據(jù)存儲到指定的數(shù)據(jù)庫中,然后對數(shù)據(jù)進行處理。系統(tǒng)采用Apache Mina Server網(wǎng)絡通訊應用框架。該框架底層通過JAVA NIO實現(xiàn),可以支持TCP、UDP、串口等發(fā)過來的數(shù)據(jù),具有異步、無阻塞、事件驅(qū)動等優(yōu)點,并發(fā)量較大的情況也能處理,架構(gòu)如圖3所示。各個類主要功能如下:
(1)IoService(可以選擇Acceptor實現(xiàn)):執(zhí)行實際的I/O流,以此接收客戶端的連接請求。通信地址和端口設置可通過setDefauitLocalAddres()函數(shù)實現(xiàn),通過bind()函數(shù)監(jiān)聽指定的端口,處理網(wǎng)絡連接。一旦一個新的連接到達后,IOAcceptor就產(chǎn)生一個session,后續(xù)所有從這個IP和端口發(fā)送過來的請求通過這個Session處理。
(2)IoProcessor:這個接口在另一個線程上,負責檢查是否有數(shù)據(jù)在通道上讀寫,也就是說它也擁有自己的Selector,這是與Java NIO編碼的不同之處。通常在Java NIO編碼中都是使用一個Selector,也就是不區(qū)分IoService與IoProcessor兩個功能接口。另外,IoProcessor負責調(diào)用注冊在IoService上的過濾器,并在過濾器鏈之后調(diào)用IoHandler。
(3)IoFilter:這個接口定義一組攔截器,這些攔截器包括日志輸出、黑名單過濾、數(shù)據(jù)的編碼(write方向)與解碼(read方向)等功能,其中數(shù)據(jù)的encode與decode是最為重要、也是使用Mina時最重要的地方。
(4)IoHandler:這個接口負責編寫業(yè)務邏輯,也就是接收、發(fā)送數(shù)據(jù)的地方,核心代碼如下:
public class ClientMinaServerHanlder extends IoHandlerAdapter {
private int count = 0;
public void sessionCreated(IoSession session) {
public void sessionOpened(IoSession session) throws Exception {
count++;
public void messageReceived(IoSession session, Object message)
throws Exception {
session.write(s+count); count++;
ClientObject ho = (ClientObject) message;
System.out.println(ho.getName());
ho.setName("serverClient");
session.write(ho);
3.1.2 數(shù)據(jù)交互端軟件設計
物聯(lián)網(wǎng)服務器是Web服務器的一種,基于標準網(wǎng)絡調(diào)用約定,與操作系統(tǒng)和編程語言無關(guān),僅僅通過相同的調(diào)用命令執(zhí)行程序并返回處理結(jié)果。本系統(tǒng)選用Myeclipse2014的IDE(集成開發(fā)環(huán)境)、tomcat輕量級Web應用服務器和MVC模式進行系統(tǒng)開發(fā)。數(shù)據(jù)庫采用MySQL數(shù)據(jù)庫,用來存儲通過數(shù)據(jù)接收軟件解析的原始數(shù)據(jù)。Web服務在服務器上發(fā)布成功之后,可通過瀏覽器輸入相應的url進行調(diào)用。
當客戶終端向服務器發(fā)出Http請求時,監(jiān)控系統(tǒng)的客戶操作界面會以網(wǎng)頁的形式返回,當遠程客戶需要查看設備的運轉(zhuǎn)狀態(tài)或查詢設備運行的歷史參數(shù)時,會通過服務器端軟件調(diào)用數(shù)據(jù)的歷史記錄,Web服務器通過客戶端實行相應的action,然后通過MVC模式中的Hibernate框架訪問數(shù)據(jù)庫,獲取需要的數(shù)據(jù)[9]。
3.2 安卓終端軟件設計
下位機不斷通過傳感器獲取數(shù)據(jù),服務器端軟件會每隔一定時間讀取數(shù)據(jù)庫中新插入的數(shù)據(jù),然后通過波形圖動態(tài)顯示在客戶終端頁面上,通過安卓技術(shù)對客戶端界面進行渲染,實現(xiàn)在安卓終端上的監(jiān)控。
4 結(jié)語
隨著互聯(lián)網(wǎng)技術(shù)、工業(yè)信息網(wǎng)絡和控制技術(shù)的不斷發(fā)展,現(xiàn)場底層數(shù)據(jù)網(wǎng)絡已和上層互聯(lián)網(wǎng)技術(shù)打通,實現(xiàn)了設備數(shù)據(jù)向遠端客戶端的傳遞[10]。本遠程監(jiān)控系統(tǒng)能實時顯示設備的運行狀態(tài)和故障信息,具備強大的數(shù)據(jù)庫功能,實現(xiàn)數(shù)據(jù)的分析處理,為管理人員提供有效的數(shù)據(jù)支持,幫助維修人員及時掌握設備的運行狀態(tài),為故障判斷贏得寶貴時間[11]。
參考文獻:
[1] 公磊,周聰.基于Android的移動終端應用程序開發(fā)與研究[J].計算機與現(xiàn)代化,2008(8):86-89.
[2] 王磊,許曉琳.GPRS 無線數(shù)據(jù)傳輸中服務端軟件的設計和實現(xiàn)[J].測控技術(shù),2007,26(11):55-56.
[3] 鄭萌.Android系統(tǒng)移植和驅(qū)動開發(fā)[M].北京:電子工業(yè)出版社,2013:102-105.
[4] 秦華,孫曉松.基于STM32/Android的環(huán)境狀況監(jiān)測系統(tǒng)設計[J].無線互聯(lián)科技,2013(1):59-61.
[5] 孫其博,劉杰.物聯(lián)網(wǎng):概念、架構(gòu)與關(guān)鍵技術(shù)研究綜述[J].北京郵電大學學報,2010(3):1-9.
[6] HAMD F,SMALOV L,JAMES A. Energy-aware security in m-commerce and the internet of things [J] .IETE Technical Review ,2009,26(5):57-362.
[7] 工業(yè)和信息化部.物聯(lián)網(wǎng)“十二五”發(fā)展規(guī)劃[EB/OL]. https://wenku.baidu.com/view/930ca21ac5da50e2524d7f5a.html.
[8] 胡永利,孫艷豐.物聯(lián)網(wǎng)信息感知與交互技術(shù)[J].計算機學報,2012(6):147-163.
[9] 陳強.Android底層接口與驅(qū)動開發(fā)技術(shù)詳解[M].北京:中國鐵道出版社,2012:155-157.
[10] 孫利民.無線傳感器網(wǎng)絡[M].北京:清華大學出版社,2005:113-117.
[11] 詹成國,朱偉.基于Android的測控人機界面的設計與開發(fā)[J].電力自動化設備,2012,32(1):119-122.
(責任編輯:杜能鋼)