国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于多線程的空壓站遠(yuǎn)程監(jiān)控系統(tǒng)軟件設(shè)計(jì)

2015-11-27 03:40任德均廖湖鋒
精密制造與自動(dòng)化 2015年3期
關(guān)鍵詞:空壓記錄表微控制器

張 燕 任德均 廖湖鋒

?

基于多線程的空壓站遠(yuǎn)程監(jiān)控系統(tǒng)軟件設(shè)計(jì)

張 燕 任德均 廖湖鋒

(四川大學(xué)制造科學(xué)與工程學(xué)院 成都610065)

基于多線程的空壓站遠(yuǎn)程監(jiān)控系統(tǒng)通過TCP通信與以STM32F103ZET6為MCU的微控制器進(jìn)行數(shù)據(jù)交互,實(shí)時(shí)采集空壓站內(nèi)各設(shè)備運(yùn)行狀態(tài)、功率、壓力等數(shù)據(jù),利用多線程技術(shù)對(duì)數(shù)據(jù)進(jìn)行處理、顯示和保存,實(shí)現(xiàn)對(duì)空壓站的實(shí)時(shí)在線監(jiān)控。軟件以C#作為編程語言,運(yùn)行穩(wěn)定、可靠,提高了空壓站運(yùn)行效率。

多線程 實(shí)時(shí)監(jiān)控 TCP通信 SQL Server數(shù)據(jù)庫 C#

空壓機(jī)是將原動(dòng)的機(jī)械能轉(zhuǎn)換成氣體壓力能的裝置,是現(xiàn)代工業(yè)化的基礎(chǔ)產(chǎn)品,在各種行業(yè)中它擔(dān)負(fù)著為所有氣動(dòng)元件、各種氣動(dòng)閥門提供氣源的職責(zé),空壓站一般由空氣壓縮機(jī)、儲(chǔ)氣罐、空氣處理凈化設(shè)備、冷干機(jī)組成。目前,對(duì)空壓站的監(jiān)控還在采用人工抄表的方式,這樣的監(jiān)控方式浪費(fèi)了大量人力,同時(shí)導(dǎo)致數(shù)據(jù)量少不連續(xù)、后期處理繁瑣、數(shù)據(jù)查詢周期不能確保等問題。日常對(duì)空壓站的維修和保養(yǎng)也不全面,往往是空壓站出現(xiàn)報(bào)警時(shí)才對(duì)其進(jìn)行維修和保養(yǎng)。空壓站遠(yuǎn)程在線監(jiān)控系統(tǒng)實(shí)時(shí)采集多個(gè)空壓站各點(diǎn)運(yùn)行狀態(tài)、功率、壓力等信號(hào);能夠?qū)諌赫具\(yùn)行過程中出現(xiàn)的異常給予及時(shí)報(bào)警和提示;能夠控制空壓站的啟停;能夠通過制定空壓站維修保養(yǎng)計(jì)劃和維修保養(yǎng)記錄來保障對(duì)空壓站的定期維修保養(yǎng),從而延長空壓站各設(shè)備使用壽命。本文給出了一種基于多線程的空壓站遠(yuǎn)程在線監(jiān)控系統(tǒng)的軟件設(shè)計(jì)。

1 系統(tǒng)功能

空壓站監(jiān)控系統(tǒng)主要包括以下功能部分:數(shù)據(jù)采集、設(shè)備管理、用戶管理、數(shù)據(jù)管理、電力管理、系統(tǒng)管理。

(1)數(shù)據(jù)采集,數(shù)據(jù)采集是空壓站監(jiān)控系統(tǒng)的核心部分,是設(shè)備管理和數(shù)據(jù)管理部分的依據(jù)。

(2)設(shè)備管理,設(shè)備管理包括空壓站維修保養(yǎng)管理、空壓站管理。空壓站維修保養(yǎng)管理是詳細(xì)記錄空壓站設(shè)備從安裝到現(xiàn)在的維護(hù)、保養(yǎng)、維修等信息,便于后期設(shè)備的維護(hù)和快速維修,同時(shí)適時(shí)提醒用戶對(duì)易損耗部件的及時(shí)更換,保證設(shè)備隨時(shí)處于良好的運(yùn)行狀態(tài)??諌赫竟芾硎窃O(shè)置空壓站報(bào)警設(shè)置以及遠(yuǎn)程控制空壓站設(shè)備的啟停和卸載。

(3)用戶管理,為了系統(tǒng)軟件的操作安全,系統(tǒng)設(shè)置了三級(jí)的操作員管理模式:系統(tǒng)管理員、普通管理員、操作員。每一級(jí)設(shè)定不同的密碼進(jìn)行保護(hù),每一級(jí)的用戶都具有不同的操作權(quán)限。

(4)數(shù)據(jù)管理,數(shù)據(jù)管理包括數(shù)據(jù)查詢、圖表分析以及報(bào)表打印功能。

(5)電力管理,電力管理功能是通過記錄空壓站設(shè)備的用電情況,實(shí)時(shí)監(jiān)控和保存空壓站內(nèi)空壓機(jī)、冷干機(jī)、電機(jī)等的運(yùn)行狀態(tài)下的工作電壓、電流及瞬時(shí)功率。

(6)系統(tǒng)管理,系統(tǒng)管理包括系統(tǒng)操作日志、系統(tǒng)錯(cuò)誤日志以及系統(tǒng)數(shù)據(jù)庫自動(dòng)備份功能。

2 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)

2.1 系統(tǒng)框架

整個(gè)系統(tǒng)由微控制器模塊、上位機(jī)軟件模塊、數(shù)據(jù)庫模塊三個(gè)模塊組成。系統(tǒng)框圖如圖1所示。

圖1 系統(tǒng)框圖

2.2 工作方式

系統(tǒng)采用集散式監(jiān)控系統(tǒng),若干臺(tái)微控制器終端分散到不同地點(diǎn)采集空壓站運(yùn)行數(shù)據(jù),通過串口通信將監(jiān)控?cái)?shù)據(jù)上傳給微控制器中控,微控制器中控通過TCP通訊將數(shù)據(jù)傳給上位機(jī)軟件,上位機(jī)軟件具有集中控制管理功能,利用多線程技術(shù)對(duì)數(shù)據(jù)進(jìn)行處理后實(shí)時(shí)顯示并存儲(chǔ)至數(shù)據(jù)庫。

2.3 數(shù)據(jù)格式

由于采集的數(shù)據(jù)種類繁多,包括空壓站運(yùn)行狀態(tài)、系統(tǒng)管網(wǎng)壓力、環(huán)境溫度、空壓機(jī)運(yùn)行狀態(tài)、空壓機(jī)運(yùn)行方式、空濾運(yùn)行狀態(tài)、油濾運(yùn)行狀態(tài)、油分運(yùn)行狀態(tài)、風(fēng)機(jī)運(yùn)行狀態(tài)、變頻器電壓、變頻器電流、空壓機(jī)排氣壓力、主電機(jī)電流、壓縮機(jī)頭溫度、冷干機(jī)運(yùn)行狀態(tài)、壓縮機(jī)電流、輸出空氣露點(diǎn)值、輸入水壓、輸出水壓以及控制指令和上位機(jī)與微控制器內(nèi)部交互指令,故通過自定義數(shù)據(jù)格式來承載所采集的數(shù)據(jù)信息和控制命令。數(shù)據(jù)幀格式如圖2所示。

圖2 數(shù)據(jù)幀

命令幀格式如圖3所示。

圖3 命令幀

用空壓站地址來表示數(shù)據(jù)的來源和命令的去向,數(shù)據(jù)幀中若空壓機(jī)的數(shù)量大于9則用大寫字母A代表10,B代表11依次類推;設(shè)備運(yùn)行狀態(tài)用“0”代表停止,“1”代表運(yùn)行,“2”代表故障;空壓機(jī)運(yùn)行方式用“1”代表變頻運(yùn)行,“2”代表工頻運(yùn)行;數(shù)字量如溫度、壓力、電流等使用16進(jìn)制,其中溫度高位代表其正負(fù)。數(shù)據(jù)幀和命令幀均采用兩位和校驗(yàn)來驗(yàn)證數(shù)據(jù)的正確性。

3 軟件設(shè)計(jì)

3.1 軟件界面設(shè)計(jì)

由于使用Windows API編程非常繁瑣且不易調(diào)試,本軟件采用C#作為編程語言在Visual Studio 2010下編程。NET平臺(tái)集成了大量的庫類,使得程序員可以快速的編寫各種基于Windows的應(yīng)用程序。由于空壓站總體參數(shù)較多,因此軟件主界面由空壓站主要參數(shù)監(jiān)控界面、微控制器的通信狀態(tài)、功能菜單欄及狀態(tài)欄組成。軟件主界面如圖4所示。

圖4 軟件主界面

3.2 數(shù)據(jù)庫模塊

SQLServer數(shù)據(jù)庫中建立了多張表,包括空壓站信息表、空壓機(jī)信息表、空壓機(jī)耗能記錄表、空壓站參數(shù)記錄表、空壓機(jī)參數(shù)記錄表、操作記錄表、統(tǒng)計(jì)數(shù)據(jù)表及用戶信息表。其中主要的空壓站信息表包括空壓站地址、名稱、空壓機(jī)數(shù)量、備注等字段;空壓機(jī)信息表包括空壓機(jī)名稱、所屬空壓站、備注等字段;空壓機(jī)耗能表包括空壓機(jī)地址、名稱、保存時(shí)間、空壓機(jī)運(yùn)行狀態(tài)、空壓機(jī)已運(yùn)行時(shí)間、運(yùn)行方式、該運(yùn)行方式用電量、總用電量等字段;空壓站參數(shù)記錄表包括空壓站名稱、保存時(shí)間、運(yùn)行狀態(tài)、管網(wǎng)壓力、溫度等字段;空壓機(jī)參數(shù)記錄表包括空壓機(jī)名稱、保存時(shí)間、運(yùn)行狀態(tài)、排氣壓力、輸入水壓、輸出水壓等字段。利用微軟提供的OLEDB應(yīng)用程序接口來讀寫、查詢數(shù)據(jù)庫,實(shí)現(xiàn)對(duì)原始數(shù)據(jù)的讀寫、修改、查詢以及輸出功能;利用外鍵來保證數(shù)據(jù)的一致性和完整性;通過觸發(fā)器來計(jì)算各類模擬量的統(tǒng)計(jì)值,如數(shù)據(jù)的最大值、最小值、平均值等,并將其存入統(tǒng)計(jì)數(shù)據(jù)表中,實(shí)現(xiàn)初略的數(shù)據(jù)統(tǒng)計(jì)功能。

3.3 數(shù)據(jù)采集模塊

數(shù)據(jù)處理流程如圖5所示。軟件啟動(dòng)后從數(shù)據(jù)庫中的空壓站信息表和空壓機(jī)信息表中讀取信息,初始化空壓站類的對(duì)象實(shí)例。接著創(chuàng)建TCPListener對(duì)象,開啟監(jiān)聽,當(dāng)接收到微控制器連接請(qǐng)求時(shí)接受其請(qǐng)求并創(chuàng)建一個(gè)通信線程以接收數(shù)據(jù)。

圖5 數(shù)據(jù)處理流程

本系統(tǒng)利用多線程技術(shù),實(shí)例化了多個(gè)Thread類對(duì)象,分別為數(shù)據(jù)接收線程、數(shù)據(jù)處理線程以及數(shù)據(jù)保存線程。數(shù)據(jù)接收線程讀取網(wǎng)絡(luò)數(shù)據(jù)流的數(shù)據(jù),并將其添加到數(shù)據(jù)接收隊(duì)列中;數(shù)據(jù)處理線程將數(shù)據(jù)接收隊(duì)列中的數(shù)據(jù)提取出來,數(shù)據(jù)通過完整性校驗(yàn)以及和校驗(yàn)后調(diào)用空壓站處理函數(shù),實(shí)現(xiàn)對(duì)數(shù)據(jù)的顯示;數(shù)據(jù)保存線程負(fù)責(zé)將數(shù)據(jù)存入數(shù)據(jù)庫。使用多線程技術(shù)將數(shù)據(jù)的接收、處理、保存分開,實(shí)現(xiàn)了數(shù)據(jù)的流水線操作。在有效利用處理器的多線程技術(shù)的同時(shí),極大的提高了數(shù)據(jù)的處理能力和程序運(yùn)行速度。

4 結(jié)語

本文介紹了空壓站遠(yuǎn)程在線監(jiān)控系統(tǒng)的功能,并在此基礎(chǔ)上詳細(xì)介紹了系統(tǒng)結(jié)構(gòu)設(shè)計(jì)及軟件設(shè)計(jì)。系統(tǒng)投入現(xiàn)場使用以來,運(yùn)行安全可靠、故障率低,有效提高了空壓站工作效率和自動(dòng)化程度。

[1] 西爾伯沙茨,科思,蘇達(dá)尚等.數(shù)據(jù)庫系統(tǒng)概念[M].北京:機(jī)械工業(yè)出版社,2003.

[2] 羅賓遜,內(nèi)格爾.C#高級(jí)編程[J].第3版.北京:清華大學(xué)出版社,2005.

[3] Blakeley J A,Rao V,Kunen I, et al. NET database programmability and extensibility in microsoft SQL server[C]//Proceedings of the 2008 ACM SIGMOD international conference on Management of data. ACM, 2008:1087-1098.

[4] Nielsen P,Parui U. Microsoft SQL server 2008 bible[M].John Wiley & Sons,2011.

[5] Steve H A, John L B. VEHICULAR AIR COMPRESSION SYSTEM: U.S. Patent 3,688,859[P]. 1972-9-5.

[6] 許毅,馮山.使用C#語言進(jìn)行多線程程序設(shè)計(jì)[J].計(jì)算機(jī)工程,2003,29(5):1-2,173.

[7] Robert Vieria著.馬熠,孫皓譯.楊大川審校.SQL Server 2008編程入門經(jīng)典[M](第3版).北京:清華大學(xué)出版社,2010.

[8] 王靖,楊秀芹.空壓機(jī)節(jié)能狀況分析[J].煤礦機(jī)械,2002,(12):43-44.

猜你喜歡
空壓記錄表微控制器
2022.04.21~2022.05.20國外運(yùn)載火箭發(fā)射記錄表
2022.1.21~2022.2.20國外運(yùn)載火箭發(fā)射記錄表
電石生產(chǎn)工藝空壓系統(tǒng)運(yùn)行小結(jié)
2021.01.21~2021.02.20 國外運(yùn)載火箭發(fā)射記錄表
2020.7.21~2020.8.20國外運(yùn)載火箭發(fā)射記錄表
淺談空壓站能耗管理系統(tǒng)設(shè)計(jì)
淺談機(jī)載類廠房小型空壓站設(shè)計(jì)
物聯(lián)網(wǎng)技術(shù)在微控制器實(shí)驗(yàn)教學(xué)中的應(yīng)用
紡織廠空壓管網(wǎng)的節(jié)能優(yōu)化
Atmel針對(duì)新一代物聯(lián)網(wǎng)應(yīng)用發(fā)布全新32位微控制器
色达县| 瑞昌市| 晴隆县| 镇康县| 阳城县| 岳池县| 阜新市| 福州市| 汝城县| 贡嘎县| 广河县| 赤峰市| 商城县| 扎囊县| 沧州市| 醴陵市| 安化县| 沂南县| 渝中区| 平罗县| 龙海市| 集贤县| 南康市| 大新县| 新营市| 大埔区| 施甸县| 南皮县| 曲靖市| 弋阳县| 息烽县| 东乡县| 绿春县| 裕民县| 鱼台县| 桃江县| 田林县| 治县。| 依安县| 沙湾县| 南丰县|