章思恩, 劉 瑜, 熊衛(wèi)華
(浙江理工大學 機械與自動控制學院, 杭州 310018)
基于物聯(lián)網(wǎng)Android平臺的藍寶石長晶監(jiān)測系統(tǒng)①
章思恩, 劉 瑜, 熊衛(wèi)華
(浙江理工大學 機械與自動控制學院, 杭州 310018)
為實時了解和掌握藍寶石自動長晶設備的運行狀態(tài), 本文設計了一種基于物聯(lián)網(wǎng)Android開發(fā)平臺的監(jiān)測系統(tǒng). 該系統(tǒng)以Android移動設備作為客戶端, 接收PC服務器端傳送過來的數(shù)據(jù), 實現(xiàn)數(shù)據(jù)可視化, 實時監(jiān)測顯示加熱功率, 加熱電壓電流, 冷卻水溫、旋轉速度、晶體重量和生長速度等參數(shù)數(shù)據(jù). 本文首先介紹了藍寶石長晶設備的監(jiān)測需求, 隨后闡述了系統(tǒng)的組成及各模塊功能的設計, 運用SQLite數(shù)據(jù)儲存、Socket通信等, 設計并實現(xiàn)了基于物聯(lián)網(wǎng)Android的藍寶石自動長晶設備監(jiān)測系統(tǒng)的客戶端.
Android平臺; 藍寶石長晶; 物聯(lián)網(wǎng); 遠程監(jiān)測
隨著世界信息產(chǎn)業(yè)的發(fā)展, 物聯(lián)網(wǎng)逐漸成為推動經(jīng)濟與技術發(fā)展的“重要生產(chǎn)力”, 其發(fā)展已經(jīng)成為創(chuàng)新2.0時代的重要產(chǎn)業(yè)發(fā)展戰(zhàn)略, 物聯(lián)網(wǎng)技術已經(jīng)在各個重要領域發(fā)揮積極作用. 物聯(lián)網(wǎng)在遠程監(jiān)測方面的運用研究, 目前國內國外, 主要通過傳感器感知技術、現(xiàn)代通信技術及數(shù)據(jù)融合技術, 實現(xiàn)在各個行業(yè)中的監(jiān)測效果, 國內的運用如在煤礦安全[1]、建筑火災[2]及作物種植[3]等領域; 國外研究人員也在醫(yī)療[4,5]、水系統(tǒng)[6]等多個領域有所探索. 而在藍寶石自動長晶領域,未見到基于物聯(lián)網(wǎng)Android平臺的藍寶石長晶監(jiān)測技術的相關報道.
目前, 藍寶石晶體在智能終端產(chǎn)品防護屏的應用,使其越來越受到大眾的關注, 而這一應用能否被廣泛推廣, 藍寶石晶體的生產(chǎn)質量顯然是極其重要的一個因素. 因此, 對藍寶石晶體生產(chǎn)設備的運行狀態(tài)進行實時監(jiān)測, 顯得至關重要. 而藍寶石晶體生產(chǎn)設備的監(jiān)測現(xiàn)在主要以現(xiàn)場人員監(jiān)測為主, 這極大地限制了生產(chǎn)自動化程度以及生產(chǎn)規(guī)模.
本文基于Android平臺, 運用物聯(lián)網(wǎng)技術, 設計并開發(fā)了藍寶石長晶監(jiān)測系統(tǒng), 提高監(jiān)測和評估的實時性, 最終保證藍寶石晶體的生長質量. 該系統(tǒng)使用Socket模塊通信來獲取前端數(shù)據(jù), 并通過移動終端——Android智能手機來顯示相關數(shù)據(jù)信息[7,8]. 在此基礎上進一步完善常規(guī)人工監(jiān)控、建立數(shù)據(jù)庫系統(tǒng), 建立與智能技術相結合的藍寶石長晶設備運行狀態(tài)的分析, 從而了解藍寶石生長狀態(tài).
藍寶石長晶監(jiān)測系統(tǒng)采用客戶/服務器模式, 主要分為底層模塊(設備及傳感器、控制器模塊)、服務器及Android手機客戶端等模塊, 總體結構如圖1所示. 在該系統(tǒng)中, 需要實時采集晶體重量、溫度、真空度、位置、功率、電流、電壓等參數(shù)數(shù)據(jù), 長晶設備上的重量傳感器采用的是HBM的橫梁式傳感器, 溫度傳感器采用的是PT100, 位置傳感器采用的是光柵尺, 各個傳感器將采集到的各項信號傳輸?shù)娇刂乒裰械腜LC(可編程邏輯控制器)中, 本系統(tǒng)采用的PLC模塊是Beckhoff的CX1020. PLC通過Modbus協(xié)議與PC機實現(xiàn)通訊, 作為服務器端的PC機儲存了各個參數(shù)的數(shù)據(jù)庫, 當用戶有監(jiān)測需要時, Android手機客戶端向服務器端發(fā)送請求, 獲取數(shù)據(jù)并在相應界面中顯示.
圖1 系統(tǒng)設計總體圖
Android客戶端通過同服務器的數(shù)據(jù)交互, 及自身的網(wǎng)絡通信、數(shù)據(jù)庫管理等功能, 主要可實現(xiàn)用戶登錄、數(shù)據(jù)顯示、關鍵數(shù)據(jù)圖表顯示, 數(shù)據(jù)分析及報警信息獲取等功能, 使用戶能夠實時監(jiān)測藍寶石長晶設備運行狀態(tài).
2.1 Android Studio平臺搭建
本設計運用Android Studio IDE開發(fā)環(huán)境實現(xiàn)客戶端程序的編寫, 開發(fā)所使用的是Java語言. Android Studio是Google在2013年發(fā)布的一種新的免費Android開發(fā)環(huán)境, 類似于Eclipse、ADT插件和SDK Manager的組合.
在本設計中, 開發(fā)平臺搭建主要包括以下步驟: ①下載并安裝JDK及Java運行環(huán)境JRE[9]; ②設置環(huán)境變量:JAVA_HOME, PATH, CLASSPATH, 并進行配置檢驗[10];③在Google官網(wǎng)下載android-studio-bundle- 2.2 Android客戶端主要功能模塊設計及實現(xiàn) 2.2.1 客戶端界面設計 在本系統(tǒng)設計的客戶端軟件中, 主要包括歡迎界面、個人中心界面、設備界面等. 通過歡迎界面, 可了解該軟件的用途及版本號等信息, 如圖2所示; 通過個人中心界面, 用戶可以進行登錄、查看登錄日志及設置用戶信息等操作, 這三大功能主要以listview列表方式顯示; 通過設備界面, 可以進入各個設備的具體信息界面, 界面運用Fragment實現(xiàn)底部導航欄, 包括首頁、狀態(tài)、日志、設置四大內容. 圖2 客戶端程序歡迎界面 本軟件需要實現(xiàn)的數(shù)據(jù)顯示、曲線繪制等重要功能在設備界面的首頁子菜單中實現(xiàn), 首頁包含三個小模塊, 運用gridview實現(xiàn), 點擊可分別進入實時數(shù)據(jù)界面、實時圖表界面及報警信息界面. 實時數(shù)據(jù)界面主要包括各個重要數(shù)據(jù)的顯示; 實時圖表界面主要顯示關鍵數(shù)據(jù)的實時圖表; 報警信息界面主要顯示一定時間內發(fā)生的報警信息, 界面圖如圖3所示. 三個界面主要通過點擊實時數(shù)據(jù)按鈕, 向PC機端發(fā)送請求, PC機通過請求, 將相關實時數(shù)據(jù)發(fā)送至手機客戶端并在界面顯示. 圖3 客戶端首頁界面 2.2.2 網(wǎng)絡通信模塊設計 本系統(tǒng)的網(wǎng)絡通信模塊主要運用基于TCP/IP協(xié)議的Socket通信方式[11,12]. Socket為套接字, 是一種雙向的通信端口, 提供客戶端與服務器端的連接通道, 通過將其綁定端口, 實現(xiàn)應用程序對數(shù)據(jù)的發(fā)送及接收. 其通信模型主要如圖4所示. 圖4 Socket TCP通信模型 為了提高本系統(tǒng)的通信效率, 將Socket通信接收部分的任務在獨立的線程Thread中執(zhí)行, 程序將會把用戶的操作放在兩個線程內, 并發(fā)執(zhí)行, 從而實現(xiàn)服務器端與客戶端之間的快速通信. 本系統(tǒng)的Socket通信的實現(xiàn)過程主要如下: ① 在客戶端創(chuàng)建一個Socket對象, 指定服務器的域名(IP地址)以及端口號, 建立一個新的Socket連接, 向服務器發(fā)送連接請求. ② 服務器端創(chuàng)建一個ServerSocket對象, 接受客戶端的連接請求. ③ 確認連接成功后, 客戶端啟動監(jiān)聽按鈕, 接收服務器發(fā)送過來的相關數(shù)據(jù). Socket通信成功的實現(xiàn)形式為在實時數(shù)據(jù)界面的“獲取數(shù)據(jù)”Button按鈕模塊下寫入android:onClick=“onClickgetData”, 建立on Click()監(jiān)聽器, 用戶通過點擊該Button按鈕, 觸發(fā)相應事件, 建立Socket通信連接, 接收數(shù)據(jù)并將藍寶石生長的各項運行數(shù)據(jù)顯示在界面上. 2.2.3 數(shù)據(jù)監(jiān)測模塊設計 本系統(tǒng)主要檢測藍寶石自動長晶過程中的關鍵數(shù)據(jù)信息: 電壓變化、反饋電壓、反饋功率、反饋電流、提拉速度、進水溫度、出水溫度、爐體水溫、旋轉速度、籽晶桿水溫、高空度等. 其界面設計如圖5所示. 圖5 實時數(shù)據(jù)界面 客戶端程序運行時, 打開實時數(shù)據(jù)界面, 點擊“獲取實時數(shù)據(jù)”按鈕, 接收服務器端發(fā)送過來的相關數(shù)據(jù),顯示在界面相應的TextView控件中; 為確保數(shù)據(jù)安全,用戶可點擊“刪除數(shù)據(jù)”按鈕, 刪除保存在數(shù)據(jù)庫的數(shù)據(jù). 數(shù)據(jù)獲取后的顯示效果如圖6所示. 2.2.4 曲線繪制模塊設計 為了方便用戶能夠掌握關鍵數(shù)據(jù)在一定時間內的變化趨勢, 設計了數(shù)據(jù)曲線繪制功能, 幫助用戶及時了解長晶設備是否正常運行, 主要顯示包括晶體重量、電壓變化、提拉速度、進出水溫度等參數(shù)的變化曲線.本設計主要運用一款名為AChartEngine的繪圖引擎,LinerLayout()組件作為顯示的容器. 具體實現(xiàn)主要包括以下步驟: ① 導入achartengine-1.2.0.jar. 在相關網(wǎng)站下載achartengine-1.2.0.jar, 將其粘貼到本app目錄下的libs文件夾下, 再在Android Studio相關位置進行設置. ② 封裝工具類. 根據(jù)藍寶石長晶實際所需曲線顯示情況封裝一個工具類, 包括X、Y坐標軸的設置, 序列的顏色, 序列點的類型等設置. ③ 創(chuàng)建數(shù)據(jù)庫. 創(chuàng)建用于存放從PC端服務器接收數(shù)據(jù)的數(shù)據(jù)庫, 設置為數(shù)據(jù)獲得一次運用后即刪除. ④ 獲得數(shù)據(jù). 通過點擊按鈕向PC端請求相關數(shù)據(jù),將獲得的數(shù)據(jù)保存至數(shù)據(jù)庫. ⑤ 繪制曲線圖. 在曲線顯示界面添加LinerLayout()組件, 通過調用工具類將獲得的數(shù)據(jù)以曲線圖的形式顯示在界面中. 圖6 實時數(shù)據(jù)顯示界面 客戶端運行界面效果如圖7所示, 顯示的是功率變化的折線圖. 本文設計的基于物聯(lián)網(wǎng)Android的藍寶石長晶監(jiān)測系統(tǒng), 其開發(fā)的客戶端程序可在Android移動終端上運行, 通過與服務器的連接, 獲取相關數(shù)據(jù), 實現(xiàn)了對藍寶石長晶設備運行過程中重要參數(shù)的遠程監(jiān)測, 實現(xiàn)了實時了解設備的運行狀態(tài), 方便且成本低. 接下來的工作主要是進一步加強系統(tǒng)的穩(wěn)定性、安全性等性能, 加強數(shù)據(jù)的保密性, 增加數(shù)據(jù)分析及評價等功能,同時完善客戶端程序, 使其實現(xiàn)更好的人機交互. 圖7 功率數(shù)據(jù)曲線顯示界面 1王軍號, 孟祥瑞. 基于物聯(lián)網(wǎng)感知的煤礦安全監(jiān)測數(shù)據(jù)級融合研究. 煤炭學報, 2012, 37(8): 1401–1407. 2馬鑫, 黃全義, 劉全義, 等. 基于物聯(lián)網(wǎng)的建筑火災動態(tài)監(jiān)測方法 .清華大學學報(自然科學版) ,2012 ,52(11) :1584–1590. 3黎貞發(fā), 王鐵, 宮志宏, 等. 基于物聯(lián)網(wǎng)的日光溫室低溫災害監(jiān)測預警技術及應用 .農(nóng)業(yè)工程學報 ,2013 ,29(4) :229–236. 4Ray PP. Home health hub internet of things (H3IoT): An architectural framework for monitoring health of elderly people. 2014 International Conference on Science Engineering and Management Research. Chennai, India. 2014. 1–3. 5Jara AJ, Zamora-Izquierdo MA, Skarmeta AF. Interconnection framework for mhealth and remote monitoring based on the internet of things. IEEE Journal on Selected Areas in Communications, 2013, 31(9): 47–65. [doi: 10.1109/JSAC.2013.SUP.0513005] 6Perumal T, Sulaiman MN, Leong CY. Internet of things (IoT)enabled water monitoring system. 2015 IEEE 4th Global Conference on Consumer Electronics. Osaka, Japan. 2015. 86–87. 7尚明華, 秦磊磊, 王風云, 等. 基于Android智能手機的小麥生產(chǎn)風險信息采集系統(tǒng) .農(nóng)業(yè)工程學報 ,2011 ,27(5) :178–182. 8藍坤, 張躍. Android在遠程醫(yī)療信息系統(tǒng)中的應用. 計算機應用, 2013, 33(6): 1790–1792. 9黃宇健, 劉宏韜. Android項目開發(fā)范例大全. 北京: 中國鐵道出版社, 2012. 10歐陽零. Android編程兵書. 北京: 電子工業(yè)出版社, 2014. 11孫欽龍, 邵惠鶴. Socket套接字在工業(yè)數(shù)據(jù)通信中的應用.控制工程, 2006, 13(3): 274–277. 12孫曉夢, 王志斌. 基于TCP的多線程Socket通信實例. 遼東學院學報(自然科學版), 2013, 20(3): 178–182. Remote Monitoring System Based on IOT Android Platform for Sapphire Crystal Growth ZHANG Si-En, LIU Yu, XIONG Wei-Hua To gather the operation state of automatic sapphire crystal growth in real time, this paper designs a monitoring system based on IOT Android development platform. The Android mobile device as a client receives the data from the PC server and achieves the function of data visualization for real-time parameter monitoring, including heating power,voltage and current, cooling water temperature, rotational speed, crystal weight and growth speed and so on. Firstly, the monitoring needs of Sapphire Crystals Growth is introduced in the paper, and then the composition of the system and the design of each module’s functions are described in detail. Finally, using the development method of SQLite, Socket communication and others, the client for Sapphire Crystals Growth based on IOT Android platform are designed and implemented. Android platform; sapphire crystal growth; IOT; remote monitoring 章思恩,劉瑜,熊衛(wèi)華.基于物聯(lián)網(wǎng)Android平臺的藍寶石長晶監(jiān)測系統(tǒng).計算機系統(tǒng)應用,2017,26(7):126–129. http://www.c-sa.org.cn/1003-3254/5850.html 國家自然科學基金(61503341) 2016-10-25; 收到修改稿時間: 2016-12-053 結語
(Faculty of Mechanical Engineering and Automation, Zhejiang Sci-Tec University, Hangzhou 310018, China)