999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于移動互聯的冷庫遠程監控系統設計與實現

2018-01-18 05:18:12倪曉霜
制造業自動化 2017年11期
關鍵詞:藥品數據庫微信

倪曉霜,鄒 鯤

(東華大學 機械工程學院,上海 201620)

0 引言

醫療事業的進步、對藥品的儲存提出了更高的要求。現階段的醫藥存儲方式主要是冷庫存儲。同時,隨著計算機技術、虛擬儀器技術以及物聯網技術的快速發展,將網絡技術和虛擬儀器技術結合以實現遠程數據監控和查詢已經成為當今研究的熱點。傳統的通訊方式具有成本高,傳輸效率低,抗干擾能力差等缺陷,為了打破傳統通信方式的限制[1],利用LabVIEW可視化編程語言和動態網頁開發語言PHP設計了藥品冷庫實時監控系統,其優點在于能夠準確地反映當前的倉位余量,藥品數量,批次和溫度等信息,便于及時調整,且不限于特定的軟件,用戶只需要在計算機或者其他移動設備上瀏覽指定的網頁或者直接登錄微信平臺就可以查詢更改當前信息,隨時隨地,方便快捷。同時,此套系統的通用性和可移植性強,能夠很好地適應其他工業設備,以實現工業數據監控的網絡化。

1 系統構架設計

本文介紹了基于移動互聯技術的遠程信息訪問系統設計,系統構架如圖1所示。

圖1 系統網絡構架

利用網絡端口socket將LabVIEW采集的各項信息發送給由PHP語言編寫的數據交換服務器并存入MySQL數據庫,再利用WEB服務器發布到WEB頁面進行顯示,同時SAE實現部分數據信息的云存儲,微信服務器實現與微信公眾平臺的交互。為了實現LabVIEW和PHP之間有效的通信,創建了一個PHP服務器端和兩個客戶端以及兩個LabVIEW服務器端和一個客戶端,它們一一對應,共組成三層“C/S”通信[2],每層采用不同的端口號,每一層中的服務器端都充當數據發送端,客戶端充當數據接收端,兩端應用基于TCP/IP協議的socket通訊技術通過網絡實現數據的收發。為了防止數據被惡意入侵,在本地采用Access數據庫儲存溫度傳感器檢測到的溫度信息及入庫時人工掃描或輸入的數據信息;采用LabVIEW中的Database Connectivity Toolkit工具包編寫信息提取程序,將實時信息從數據庫中讀出,以字符串的形式實現信息的發送,并根據服務器端和客戶端數據的收發特點,使用條件結構實現VI之間的層次調用,控制各個子VI運行順序和啟停;采用PHP語言在同一個程序中集成了數據接收端和發送端,其間調用延時函數使其有序執行,并結合Javascript、HTML5和CSS編寫了用戶注冊、登錄和操作界面;采用微信公眾開發平臺建立了用于查詢,更新,錄入,失溫報警和物流上傳的服務公眾號,并為不同用戶群體提供了不同的操作界面,其中本地Access數據庫與WEB服務器端的MySQL數據庫同步更新。從而,實現了PC機或者移動終端遠程監控冷庫中各藥品的信息。

2 數據交互機制設計

2.1 基于LabVIEW的數據發送端

LabVIEW由National Instrument公司研制開發,使用圖形化編程模塊代替傳統的文本編程語言,流程化編程思路使程序結構更為清晰,大幅提高了編程的效率[3]。LabVIEW有三種實現網絡通信的方法,分別是Datasocket技術、郵件傳輸、TCP/IP協議[4],本文采用的是第三種通信技術,因為TCP/IP協議是如今使用最為廣泛的通信標準,其編譯的環境相對開放,對于傳輸過程中丟失的信息可以實現智能回訪,保證系統的安全性,具體傳輸過程如下:發送端發送連接請求→接收端監聽到請求→建立連接→傳輸數據→關閉連接[5]。

在本系統中,利用LabVIEW中的TCP通信協議模塊建立了兩個數據發送端和一個數據接收端,分別命名為LabVIEWserver1、LabVIEWserver2和LabVIEWclient1,下面具體介紹各部分程序的作用。

2.1.1 數據庫和數據庫讀取程序

該系統的數據庫主要包括以下9個數據表:庫存表、出庫表、入庫表、盤點表、倉庫字典表、產品字典表、供應商字典表、客戶字典表和用戶信息表。根據需求的不同,查詢不同的數據表或多表聯合查詢,具體地說,利用LabVIEW和數據庫的接口技術,實現了LabVIEW和Access數據庫之間的聯通。利用 Database Connectivity Toolkit工具包和SQL基本查詢語句將數據表中某一藥品的當前信息整行讀出,然后整合成一條具有固定格式的字符串發送給后續的處理程序。

2.1.2 數據發送程序

LabVIEW中的TCP函數包最大程度地簡化了網絡通信[6,7],對其的充分利用實現了信息的發送和對程序運行流程的間接控制,數據發送流程如圖2所示。

圖2 信息發送流程圖

首先,為了保證用戶能隨時查詢或更改冷庫各藥品的信息,除了關機整修外LabVIEW程序必須始終處于運行狀態,便于讀取最新的信息并及時監聽到連接請求,所以當沒有請求到達時LabVIEW server1一直處于監聽狀態。當用戶在瀏覽器中打開連接網頁后,WEB端向LabVIEW端提出連接請求,一旦監聽到連接請求,TCP監聽函數會輸出WEB端的計算機名,從而進入條件結構的指定分支,同時數據庫查詢子VI就會讀出數據表中的相應信息發送給啟停子VI。

當收到相應的計算機名后,開始運行啟停子VI,用于控制LabVIEW client1的啟停。具體地說,因為WEB服務器端一旦被開啟后將會一直工作直到手動關閉Apache服務器,所以要保證與之相連的LabVIEW客戶端程序在有查詢請求時自動運行,在成功接收到數據后自動停止。程序后端的局部變量是用于清空傳送過的數據信息,避免將上一次查詢到的數據重復發送給WEB端。

最后運行收發綜合子VI,通過“打開TCP連接”函數設定服務器端的IP地址和端口號,再用”讀取TCP數據”函數得到WEB端發送的“111”指令,從而構建了LabVIEW client1并使程序進入條件結構的“111”分支中運行,使LabVIEW server2開始監聽并選擇要發送的信息,當接收到連接請求之后,數據信息通過“TCP寫入數據”函數發送到WEB端。若整個發送過程沒有出錯,WEB端接收到的數據會被實時的存入或更新MySQL數據庫中,并且循壞運行以上的步驟;若出現錯誤,則LabVIEW發送程序會停止運行,網頁上會提示相應的錯誤。

2.2 基于PHP的數據接收端

PHP是一種通用的開源腳本語言,主要應用于WEB開發領域,其混合了C,Java,Perl等多種語言,可以實現動態網頁的快速開發。本文選用Appserv作為PHP的運行環境,選用DreamWeaver作為網頁編輯器。基于socket通訊技術,設計了一套服務器端和客戶端程序[8~10],即把三個獨立的客戶端和服務器子程序整合到一個程序當中,并用延時控制它們的執行的順序。

2.2.1 創建服務器端程序

為了使MySQL數據庫能及時的存入或更新LabVIEW端發送來信息,必須保證WEB端服務器始終運行,對網絡端口保持監聽。在編程時,首先要建立兩個變量用于設置服務器的IP和端口號并用“create”函數對socket進行初始化。其次,使用“bind”函數綁定到指定的IP地址和端口并對端口創建監聽。一旦一個客戶端的連接被收到,“accept”函數就會將客戶端發來的信息進行讀取打包,生成一個新的子socket,用于后續信息的處理,也即用“read”和“write”函數真正實現客戶端和服務器端的通信。最后,用“close”函數將父子socket都終止。

2.2.2 創建客戶端程序

正常運行情況下,在客戶端運行之前,指定的端口已經處于監聽的狀態,等待著客戶端的連接,只要客服端程序一運行即可連接上。在編程時,首先也要通過兩個變量和“create”函數初始化,然后用“connect”函數向服務器端程序中指定的IP地址和端口提出連接請求,并用“write”向服務器發送命令用于選取用戶需要的溫度信息。最后,用“read”函數接收服務器傳回的數據,也即用戶需要的信息。

在每個服務器端和客戶端程序創建過程中,使用do while語句使程序的“讀”、“寫”可以循環進行,便于發送不同的命令和數據。同時,將三個子程序整合到了一起,使一個程序中既包含服務器端程序,也包含客戶端程序,它們分別與用LabVIEW創建的服務器端和客戶端相對應,其間采用“sleep”函數進行延時,使程序有序運行。

3 微信公眾平臺開發

3.1 需求分析

針對冷庫的遠程監控,不同工作崗位的用戶會有不用的需求,主要分為三類用戶。第一類為冷庫管理員,對冷庫有直接操作的權利,需要了解冷庫中藥品的各項信息,所以為其設計了完整的監控界面,即包括查詢藥品、倉位、溫度等信息,更新和錄入數據信息,實時現場圖片查看。這里,要特別提出的是在查詢的同時,本文還設計了溫度報警,藥品過期預警和余量不足預警[11]的功能。第二類為采購員,會較為頻繁地查詢冷庫中各類藥品的供應商,數量,失效日期等信息,所以為采購員設計了一個簡潔明了的操作界面。第三類用戶為系統維護員,會對使用此套系統的用戶信息進行定期審核和統計,或當用戶登錄、注冊等賬戶服務出現故障時及時處理,故為其設計了專門用于用戶信息操作界面。

此外,對于稀缺的或者危險性較高的藥品設計了藥品跟蹤功能,即從供應商發貨到本地收貨,再到冷庫儲存,最后到藥品使用途徑都進行了詳細的跟蹤記錄,當有相關醫療問題產生時,可以方便的查詢到出錯的環節并避免問題的再次發生。此部分運用到了微信的圖片上傳和位置上傳功能,

通過微信服務器打包后發送到SAE上,并進行進一步解析,把實時圖片和位置信息存入SAE的共享數據庫中。

3.2 公眾號的建立

現階段的遠程終端系統一般采用PC機,性價比低,結構笨重,不便于攜帶與轉移,微信用戶范圍廣且微信公眾平臺具有跨平臺,開發體系完善,使用方法簡單等優勢,故設計開發了一個微信公眾服務號,為不同手機平臺的用戶提供了方便快捷的監控方式[12,13]。通過微信公眾平臺可以在線為注冊登錄后的用戶提供冷庫中藥品的各項實時信息,具體的建立方法是在登錄微信公眾平臺后,選擇開發者模式,通過URL和Token與SAE建立連接,并通過自定義菜單接口編寫實現了如圖3的主界面,分別為“信息查詢”、“產品跟蹤”、“賬戶服務”,其中“信息查詢”下設置了四個子菜單項,分別對應三類用戶和圖片查看,“產品跟蹤”對應物流信息上傳和查看兩項功能,“賬戶服務”下也設置了三個子菜單項,分別對應對賬戶信息的三中操作,子菜單項采用點擊回復文本和跳轉網頁兩種模式。若后續有新的用戶需求,可以直接在此公眾號上添加新的菜單項對應新的用戶需求。

圖3 主界面圖

3.3 具體操作頁面

為了使信息易讀易懂,設計了人性化的操作界面。用戶只需要輸入某藥品的兩項特征即藥品名稱和產品批號,就可以查看此藥品相應的數據信息。具體方法是首先建立用戶注冊界面,將用戶輸入的信息存入用戶信息表,注冊成功后用戶便可以通過登錄進入各自的操作界面。

冷庫管理員界面主要運用“select from”語句對指定產品進行查詢,運用“update set”語句對指定產品的更新,運用“insert into ”語句添加新的產品信息。同時,余量預警和失效預警均在查詢過程中實現,結果采用不同的顏色警示。

物流信息上傳功能主要應用了微信公眾平臺自帶的位置上傳功能,當點擊“產品跟蹤”下“物流上傳”的子菜單時,會有相應的文本提示,然后上傳位置和現場圖片,SAE通過對數據包的解析將相應的數據存入SAE共享數據庫對應的數據表中,并把要回復的信息整合成一個新的XML返回微信服務器,從而使用戶收到返回信息。具體實現如圖4(a)所示。

圖4 系統新增功能圖

此外,報警功能的實現是通過微信平臺的客服接口,不同于現有的郵件報警、短信報警等報警方式,而直接微信內部實現循環報警,這里的循環是指當溫度超過規定值后,微信平臺每5秒主動推送一次報警信息,直到溫度被恢復到規定值以下。報警信息如圖4(b)所示。

3.4 控制功能的實現

此公眾號的控制功能主要體現在當冷庫中發生失溫現象的,冷庫管理員可以向公眾號發送規定的指令從而解決失溫問題。指令信息實現控制的具體過程如圖4所示,移動終端發送的信息通過WEB服務器解析處理后存入MySQL數據庫中,而數據交換服務器會不斷查詢控制標志位是否置位,當置位時,在查詢具體的控制數據,送給LabVIEW端,進而發送到控制硬件實現溫度的調節。

4 結束語

本文首先闡述了基于計算機網絡技術的遠程信息監控系統設計方案,利用網絡接口socket實現以LabVIEW應用程序作為客戶端,以PHP網頁程序作為服務器端的數據通信。接著,介紹了LabVIEW程序具體的開發過程,基于TCP/IP協議采用TCP函數模塊實現與WEB端的連接,并使用條件結構控制子程序是否運行和運行的順序。其次,介紹了服務器端程序的開發過程,基于“C/S”機制,使用PHP語言中的“create”、“listen”、“bind”、“connect”等函數完成了服務器和客戶端的搭建。通過兩個應用程序之間的網絡通信實現了遠程數據的傳輸,遠程用戶可以通過瀏覽器訪問相應的網頁查詢到所需的信息。同時,建立了不受系統平臺限制的微信服務號,使用戶可以隨時隨地更新或查詢所需信息。此外,設置了用戶注冊和登錄界面,并利用Session防止用戶直接輸入地址而不通過登錄訪問信息頁面,提高系統了的安全性。物流信息上傳與查詢,現場圖片查看和報警預警功能的實現提高了此遠程監控平臺綜合性和實用性。未來還可將多地的冷庫藥品信息發送到同一個MySQL數據庫中,形成監控網絡,方便統一管理和狀態分析。當然,此套系統在網絡安全方面仍存在一些問題,需要進行進一步的優化處理。

[1]藺佳哲,王茜,張沿磊.某型空空導彈遠程故障檢測系統的設計[A].第十屆全國信號和智能信息處理與應用學術會議, 中國湖北襄陽,F,2016[C]:381-2.

[2]鮑雪亞,趙強,顧德英.基于B/S和C/S混合架構的遠程監控系統[J].儀器儀表學報,2004,S2):591-2.

[3]李翼.基于LabVIEW的實驗管理系統[D].浙江大學,2005:35-44.

[4]盛世岳.室內環境多參數無線測量系統的研究與設計[D].廈門大學,2014:47-56.

[5]趙軍偉,劉勛,董浩.基于TCP協議的遠程監控系統的實現[J].中國測試,2010,01):78-81.

[6]黃晨,李茂奎,賈帥,等.一種LabVIEW與AVRDAQ間的遠程通信模式及應用[J].實驗室研究與探索,2010,(10):49-51,64.

[7]劉佳.基于LabVIEW的大麥生長遠程監控系統的設計與實現[D].甘肅農業大學,2016.

[8]汪娟.基于WEB的工業遠程監控系統研究與實現[D].武漢理工大學,2008:37-46.

[9]王洪猛.基于Web的遠程監控系統開發技術研究[D].武漢大學,2005:22-26,38.

[10]楊桄.基于互聯網服務器架構的物聯網平臺研究[D].北京郵電大學,2014:33-39.

[11]王一帆,龔壘.校園網機房智能監控預報警系統界面設計與實現[J].電子技術與軟件工程,2016,(16):54.

[12]蔣麗麗,姜大慶,沈美.基于微信的農業專家在線服務系統的設計與開發[J].電子技術與軟件工程,2016,(21):55-56.

[13]戰騰.微信公眾平臺的研發與在醫療方面的應用實踐[D].山東大學,2015:21-45.

猜你喜歡
藥品數據庫微信
是不是只有假冒偽劣藥品才會有不良反應?
微信
數據庫
財經(2017年2期)2017-03-10 14:35:35
藥品采購 在探索中前行
中國衛生(2016年5期)2016-11-12 13:25:28
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
藥品集中帶量采購:誰贏誰輸?
中國衛生(2015年5期)2015-11-08 12:09:48
微信
微信
主站蜘蛛池模板: 亚洲一级毛片免费看| 精品小视频在线观看| 无码aaa视频| 国产精品永久在线| 久久精品视频亚洲| 丁香五月激情图片| 国产精品嫩草影院av | 色婷婷在线播放| 亚洲AV永久无码精品古装片| 国产小视频免费| 91口爆吞精国产对白第三集| 亚洲欧美在线综合图区| 成人av手机在线观看| 日本国产精品| 久久永久精品免费视频| 最新午夜男女福利片视频| 日韩无码黄色| 亚洲中文久久精品无玛| 亚洲高清在线播放| 漂亮人妻被中出中文字幕久久| 亚洲天堂网2014| 99r在线精品视频在线播放| 国产三区二区| a亚洲天堂| 国产欧美日韩va另类在线播放| 欧美午夜视频在线| 亚洲综合精品香蕉久久网| 国产主播在线一区| 色哟哟精品无码网站在线播放视频| 国产在线精彩视频论坛| 中文一区二区视频| 国产麻豆精品手机在线观看| 亚洲视频一区| 亚洲天堂精品在线| 四虎永久在线| 日本午夜视频在线观看| 精品国产91爱| 极品性荡少妇一区二区色欲 | 欧美国产精品不卡在线观看| 亚洲青涩在线| 毛片在线看网站| 午夜无码一区二区三区| 高清无码手机在线观看| 夜夜高潮夜夜爽国产伦精品| 99成人在线观看| 午夜久久影院| 91口爆吞精国产对白第三集| 日韩在线中文| 久久青青草原亚洲av无码| 国产成人AV男人的天堂| 香蕉综合在线视频91| 97久久免费视频| 美女免费精品高清毛片在线视| 在线精品视频成人网| 在线免费观看AV| 亚洲天堂视频在线播放| 亚洲欧美日本国产专区一区| 国产小视频免费观看| 亚洲中文无码av永久伊人| 精品三级网站| 99视频精品在线观看| 制服丝袜国产精品| 这里只有精品在线播放| 伊人久久婷婷五月综合97色| 伊人久久精品亚洲午夜| 久久毛片基地| 久青草免费在线视频| 日韩精品免费一线在线观看| 亚洲精品中文字幕无乱码| 在线观看网站国产| 欧美亚洲欧美| 国产人前露出系列视频| 国产好痛疼轻点好爽的视频| 2020久久国产综合精品swag| 久996视频精品免费观看| 国产成人无码Av在线播放无广告| 午夜视频在线观看免费网站| 久久久久亚洲精品成人网| 中文字幕自拍偷拍| www.99精品视频在线播放| 欧美中文字幕一区| 亚洲开心婷婷中文字幕|