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

基于LabVIEW和RS-485總線的惡臭氣體檢測系統(tǒng)*

2017-11-03 00:46:08劉偉玲冉多鋼楊彩雙豐柱坤
電子器件 2017年5期
關鍵詞:程序系統(tǒng)

劉偉玲,康 磊,冉多鋼,楊彩雙,趙 哲,豐柱坤,王 召

(河北工業(yè)大學機械工程學院,天津 300130)

基于LabVIEW和RS-485總線的惡臭氣體檢測系統(tǒng)*

劉偉玲*,康 磊,冉多鋼,楊彩雙,趙 哲,豐柱坤,王 召

(河北工業(yè)大學機械工程學院,天津 300130)

惡臭污染作為空氣污染的一種給人們生活帶來了巨大的影響。所以,研制一套能夠準確反映環(huán)境污染情況的惡臭污染檢測設備具有重要的現實意義。本文設計套以多傳感器陣列為基礎,可實現對寬濃度范圍惡臭氣體進行檢測的電子鼻設備。該設備可根據不同地區(qū)污染氣體種類的不同而選擇相應的氣體傳感器,實現對不同成分、不同濃度的惡臭氣體的檢測,具有良好的適應性。該設備已經能夠正常工作,并具有精度高、穩(wěn)定性好的特點。尤其是可自由組合式傳感器陣列的系統(tǒng)設計框架,為系統(tǒng)根據實際環(huán)境需要而進行調整提供了極大的靈活性,具有一定的參考價值和應用前景。

電子鼻;RS-485;總線通訊;惡臭檢測

空氣是人類賴以生存的因素之一,空氣污染的危害性也成為最近的熱點之一,隨著國家對環(huán)境保護力度的加大,空氣環(huán)境監(jiān)測任務也越發(fā)重要[1-2]。電子鼻在惡臭檢測中的優(yōu)勢逐漸顯現,它成為了近年來惡臭檢測領域研究的熱門方向[3]。雖然現階段國內一些公司企業(yè)設計了氣體檢測儀器,但檢測氣體成分單一,不能滿足大范圍的空氣實時監(jiān)測任務。RS485總線通信方式使用1對雙絞線實現多點雙向通信,具有硬件設計簡單、成本低廉等優(yōu)點,同時RS485只定義了用于平衡多點傳輸線的驅動器和接收器的電特性,用戶可以根據自身要求建立高層通信協(xié)議,因而被廣泛用于工業(yè)控制系統(tǒng)[4]。

本設計研發(fā)一種基于RS-485總線的、多傳感器模塊的惡臭氣體實時在線檢測系統(tǒng),各個傳感器信號通過RS-485總線匯總,可實時檢測多種惡臭氣體濃度。

1 系統(tǒng)總體設計

本系統(tǒng)采用“上位機-中位機-下位機”三級組合的系統(tǒng)架構。上位機作為系統(tǒng)的運算處理單元,負責系統(tǒng)控制、人機交互以及數據存儲和運算工作,采用工控機。下位機為系統(tǒng)的智能采集單元,需要完成數據采集與增益調整的功能。中位機為系統(tǒng)數據傳輸單元。其中,上位機通過UART接口接收數據[5],它與中位機的通信是點對點的模式[6-7],而中位機與下位機之間為多機通信,采用一主多從的工作方式[8-9]。系統(tǒng)總體設計方案如圖1所示。中位機有兩個通訊模塊,通訊模塊一用于與上位機通信,可用RS232通信或RS485通信實現;通訊模塊二用于與多個下位機通信,可用RS485或CAN通訊實現。

圖1 系統(tǒng)組成示意圖

圖2 下位機程序功能流程圖

2 軟件設計

系統(tǒng)需要兩級通訊連接:一級是中位機與下位機的通信,另一級是中位機與上位機的通信。中位機與下位機的通信,采用一主多從式的工作方式和星型拓撲的結構,屬于多機通信;而中位機與上位機為點對點的通信模式。

2.1 中位機與下位機的通信

2.1.1 下位機軟件

下位機作為系統(tǒng)的智能采集單元,需要完成數據采集和增益調整的功能,并且與中位機進行通信,下位機程序可分為模數轉換、增益調整、數字濾波、數據通信4個模塊。下位機程序流程圖如圖2所示,下位機軟件代碼分布于定時器中斷、串口中斷、主程序3部分。其代碼優(yōu)先級由高到低依次為:串口中斷、定時器中斷、程序主循環(huán)。3個部分的程序是3個獨立進程,由各進程之間相互配合完成下位機的工作,三者之間通過全局變量通信。

圖2(a)為下位機定時器中斷函數的代碼處理流程。定時器設置為2 ms自動重裝工作。每次觸發(fā)中斷都檢測ADC轉換完成標志位(AIE寄存器的bit5),如果轉換完成,則讀取AD值至全局變量G_Current_Ad(long型),并置位AD更新標志位G_AD_update(char型),此時ADC自動開始下一次轉換。完成AD讀取后還需處理串口倒計時的工作。串口倒計時變量G_Rs_dly_ms(char型全局變量)由串口中斷賦值,每次觸發(fā)定時器中斷都會對該變量檢測,當變量為0時打開串口接收器,否則變量減1。通過設置該變量值,便可以2 ms為單位控制串口接收功能的關閉時間。

圖2(c)為主程序執(zhí)行流程圖。初始化函數完成整個下位機工作狀態(tài)及所用到的變量的初始化設置;主循環(huán)完成的主要任務為:溫度采集、讀取AD、增益調整、數字濾波、調試命令處理。AD讀取模塊通過檢測標志位信號G_AD_update來判斷是否有新數據產生。若有,則執(zhí)行增益調整函數并進行數字濾波,最后清除標志位信號。增益調整代碼封裝為Gain函數,形參引入系統(tǒng)當前增益值current_gain(char型變量),設置完新的增益之后程序返回新增益值賦給current_gain。出于保護ADC的原因,當增益調整函數不正常時將PGA設置為0(增益=1)。數字濾波代碼封裝為IIR_filter函數,輸入為G_Current_Ad,輸出為經過IIR濾波并且對AD與PGA進行整合了的31 bit長度的AD數據,存入G_IIR_Ad(long型全局變量)。溫度讀取函數功能簡單,只需按照18B20規(guī)定的協(xié)議通信即可。

圖2(b)為串口中斷函數處理流程,其主要為通信功能的代碼,完成通信串口開關的時序,以符合已制定的通信協(xié)議。當串口接收到地址時首先給G_Rs_dly_ms賦值4(設置關閉串口接收時間為8 ms),并關閉串口接收器。如果接收的地址碼正確,則將G_IIR_Ad、G_current_temp變量及對應的地址按照協(xié)議規(guī)定的格式組成數據幀發(fā)送出去。

2.1.2 中位機軟件部分

中位機是整個系統(tǒng)的數據傳輸單元,為三級架構兩級通信的中樞,負責將下位機采集到的數據組合后傳送給上位機,同時還負責接收上位機發(fā)送的命令來控制氣路。該程序在結構上分為總線檢測、數據匯總、數據上傳以及命令解析與執(zhí)行4個功能模塊。

總線檢測功能模塊實現對系統(tǒng)中所使用下位機地址的獲取。數據匯總功能模塊根據總線檢測獲得的下位機地址列表向下位機總線發(fā)送地址,然后采集數據,并完成匯總。命令解析與執(zhí)行模塊完成對上位機命令的解析和處理,具體包括對氣路控制和獲取傳感器數量命令的執(zhí)行。對于上傳數據命令,則由數據上傳功能模塊執(zhí)行。中位機軟件流程圖如圖3所示。

圖3 中位機軟件流程簡圖

數據匯總過程中中位機需要完成下位機地址發(fā)送、接收下位機數據并校驗、數據組合存儲3個工作。中位機以10 ms的間隔向下位機逐個發(fā)送“傳感器地址數組”(Add數組)中存儲的Ch_num個下位機地址,來完成下位機地址發(fā)送。然后中位機在接收下位機上傳的數據時,每收到一個字節(jié)觸發(fā)串口中斷一次,中斷服務函數將該數據存入數組索引指向的BUSBUF中的元素,并將索引加1,當緩沖區(qū)索引=7時表明一個數據幀接收完畢。在數據組合存儲方面,中位機設置一個發(fā)送緩沖區(qū)SENDBUF用以存儲準備向上位機發(fā)送的數據。并且在BUSBUF與SENDBUF之間增加一一個數據過渡的緩沖區(qū)DATABUF,以避免程序在向上位機發(fā)送數據時SENDBUF內容被修改。當BUSBUF收到數據幀時則會執(zhí)行和校驗,對于和校驗正確的數據則存入DATABUF中與地址對應的位置,在完成了數據由BUSBUF向DATABUF的拷貝后,判斷所有地址是否發(fā)送完,若發(fā)送完,則證明DATABUF數據是已經全部更新,然后通過對SENDBUF更新標志與數據上傳狀態(tài)的判斷來實現延時更新SENDBUF的功能。

2.2 中位機與上位機的通信

2.2.1 上位機軟件部分

上位機程序分為接口程序和數據處理程序兩部分,其中與中位機進行直接交互的是接口程序。中位機把采樣數據幀和應答幀傳送給接口程序,接口程序進行和校驗后再傳給數據處理程序;數據處理程序把氣路的操作命令傳給接口程序,接口程序生成命令幀再傳送到中位機。接口程序設置了一個用于接收數據處理程序發(fā)送的氣路控制命令的輸入接口和可用于讀取采集數據的數據輸出接口。接口程序主功能流程如圖4所示。

圖4 接口程序工作流程

接口程序以固定的頻率向中位機發(fā)送數據采集命令幀,來控制中位機以固定頻率發(fā)送數據。這個固定頻率由設定的定時標志來實現,由于上位機與中位機之間為半雙工通信,所以定時時長需大于接收數據的時長,且接口程序在等待接收數據時禁止發(fā)送其他命令幀。

為了保證準確接收數據,接口程序會對接收數據的長度和時長進行判斷。若在規(guī)定時間內字節(jié)數沒收齊則認為接收超時(中位機錯誤),若接收字節(jié)數超過采樣數據幀長度,則認為通信線纜受到干擾。這樣大大提高了總線的抗干擾能力,有效識別通信過程中因受到干擾而造成的通信數據錯誤。

2.2.2 中位機軟件部分

在中位機軟件設計中,與上位機的通信相關的有命令解析與執(zhí)行模塊和數據上傳模塊等。上位機發(fā)送的命令幀由串口1中斷服務函數進行接收和有效性校驗。命令解析與執(zhí)行模塊完成對有效命令碼的解析,并且執(zhí)行回復應答幀的命令(氣路控制、傳感器數量)。對于上傳采集數據的命令則通過返回值形式交由數據上傳模塊執(zhí)行。數據上傳模塊根據氣路控制程序返回值判斷是否發(fā)送“待發(fā)送數據緩沖區(qū)”的內容,從而實現回復CH_ DATA(采集數據幀)的功能,數據上傳函數流程圖如圖5所示。

程序通過變量send_lenth記錄需要發(fā)送數據的剩余長度,send_lenth默認為0。當檢測到命令解析函數Comand_response返回1(收到上傳數據命令)時,send_lenth被賦值為Data_Lenth(見式(1))。然后。當以send_lenth為索引發(fā)送SENDBUF數組中的一個字節(jié)后,send_lenth長度減1。

主循環(huán)中每次都會執(zhí)行數據上傳函數,每次執(zhí)行數據上傳函數只發(fā)送一個字節(jié),這樣SENDBUF中數據會分布在多次程序主循環(huán)中發(fā)送出去。在后續(xù)的程序主循環(huán)中需要檢查前次程序主循環(huán)的字節(jié)發(fā)送狀態(tài),分別判斷是否發(fā)送完了上一個字節(jié)(查詢TI是否為1)和是否還有剩余未發(fā)送字節(jié)(send_lenth不為0),如果兩個條件均成立,則發(fā)送數據;當判別上一字節(jié)未發(fā)送完(TI=0)時,直接返回(此輪循環(huán)不發(fā)送數據,send_lenth不變);當判別send_lenth=0時,表明一幀數據已經發(fā)送完。此時,在等待最后一個字節(jié)發(fā)送完畢后,表示響應完了上位機的發(fā)送數據命令,因此需要打開串口接收器,以接收下一個命令幀。

圖5 數據上傳函數處理流程

3 通信協(xié)議

通信協(xié)議分為數據匯總協(xié)議和系統(tǒng)控制協(xié)議。數據匯總協(xié)議指中位機與下位機通信所使用的協(xié)議。系統(tǒng)中的下位機通過總線接收和發(fā)送數據,每個下位機在總線中都有長度為1個字節(jié)的唯一地址,地址是十六進制的數字,范圍1~31。中位機以10 ms的間隔逐個發(fā)送掛載在總線上的下位機地址,發(fā)送完畢后即進入數據接收狀態(tài);下位機默認監(jiān)聽總線數據,當監(jiān)聽到自己的地址后,將所采集的數據以數據幀的形式在8 ms內發(fā)送至總線,如監(jiān)聽地址不對,則不響應[10-11]。下位機發(fā)出的數據幀由7個字節(jié)組成,如表1所示。前4個字節(jié)為經過初步處理的long型傳感器數據AD_DAT,為ADC采樣數據(24 bit)與PGA增益(7 bit)的組合。數據幀第5字節(jié)存儲溫度值,數據為char型變量。第6字節(jié)為通道號,即傳感器地址。第7字節(jié)為數據校驗和。

表1 下位機數據幀格式

系統(tǒng)控制協(xié)議指中位機與上位機進行交互的協(xié)議。上位機與中位機之間以數據幀的形式進行數據通信。上位機發(fā)出的數據幀為命令幀。長度兩個字節(jié),第1個字節(jié)為十六進制的操作命令碼,第2個字節(jié)為十六進制校驗和。中位機回復的數據幀有兩種:第1種為命令應答幀,由兩個字節(jié)數據組成,結構與上位機的命令幀相同;第2種為采集數據幀CH_DATA,其長度由系統(tǒng)使用的傳感器數量而定,可由式(1)獲得。

Data_Lenth=Ch_Lenth×Ch_Num+1

(1)

式中:Data_Lenth為一幀數據長度,Ch_Lenth為單個通道(單個下位機)數據長度,Ch_Num為系統(tǒng)實際使用的傳感器數量。CH_DATA由所有通道的數據按順序排列而成,最后一位為前面所有通道數據的校驗和。CH_DATA中單個通道的數據由6個字節(jié)組成,其結構與表1所示結構的前6個字節(jié)相同。上位機除了控制中位機傳輸采集的傳感器信息外,還需通過中位機實現控制氣路、獲取傳感器數量等操作。

4 測試

測試界面是一個用于測試系統(tǒng)的人機交互界面[12],按功能可劃分為4部分。圖6中左側框體顯示出5條傳感器輸出信號的反應曲線(縱軸反應傳感器信號的AD值,橫軸為時間)。目前系統(tǒng)僅設置了5個傳感器,所以只顯示了曲線。下側包含了系統(tǒng)運行時間、通信錯誤計數以及系統(tǒng)錯誤狀態(tài)信息等,為調試中穩(wěn)定性評估以及快速定位問題提供了參考。

圖6 系統(tǒng)測試程序界面

5 結論

本文針對多傳感器可自由組合的數據采集系統(tǒng)進行研究與探索,完成了可實現31個傳感器自由組合的惡臭檢測系統(tǒng)平臺的搭建工作。并據此與數據采集流程相結合,確定了上位機-中位機-下位機的三級系統(tǒng)架構。從軟件方面介紹了本電子鼻系統(tǒng),系統(tǒng)通過兩條RS-485總線完成了數據由下位機到中位機再到上位機的三級傳輸。

通過測試程序對系統(tǒng)的驗證,現階段樣機已經能夠正常工作。大量實驗結果表明,該設備精度高、重復性好、數據穩(wěn)定可靠。采集的數據可用于下一步的數據融合。

[1] 陳海秋. 轉型期中國城市環(huán)境治理模式研究[D]. 南京.南京農業(yè)大學,2011.

[2] 王冰,賀璇. 中國城市大氣污染治理概倫[J]. 城市問題,2014(12):1-8.

[3] 趙鵬,劉杰民,舒木水,等. 異味污染評價與治理研究進展[J]. 環(huán)境化學,2011,30(1):310-325.

[4] 趙小兵,周雪峰. 煤礦安全監(jiān)控系統(tǒng)中RS485總線的抗干擾設計[J]. 工礦自動化,2013,39(2):83-86.

[5] 楊鳳健,劉軍,霍旭陽,等. 基于MLX90620的多點動態(tài)溫度監(jiān)測系統(tǒng)設計[J]. 儀表技術與傳感器,2015(12):76-78.

[6] 謝希仁. 計算機網絡[M]. 第5版. 北京:電子工業(yè)出版社,2008:17-23.

[7] 王先培. 測控總線與儀器通信技術[M]. 第2 版. 北京:機械工業(yè)出版社,2009.

[8] 王曉麗. 基于RS485現場總線的乳化液濃度在線檢測[J]. 煤礦機械,2011,32(11):218-220.

[9] 徐會杰. 數據采集系統(tǒng)中串行通信協(xié)議的設計與實現[J]. 河南科技大學學報(自然科學版),2008,29(5):30-32.

[10] 周鵬,李艷艷. 提高RS485總線主從通信效率的軟件設計[J]. 單片機與嵌入系統(tǒng)應用,2008(8):70-73.

[11] 馮子陵,俞建新. RS485總線通信協(xié)議的設計與實現[J]. 計算機工程,2012,38(20):215-217.

[12] Jia Yuchen,Ju Zhhang. Research on Apple Odor Collection and Identification[J]. Sensors and Transducers,2016,200(5):29-36.

MalodorousGasDetectionSystemBasedonLabVIEWandRS-485*

LIUWeiling*,KANGLei,RANDuogang,YANGCaishuang,ZHAOZhe,FENGZhukun,WANGZhao

(College of Mechanical Engineering,Hebei University of Technology,Tianjin 300130,China)

Odor pollution,one of the air pollution,has brought great impact on people’s lives. So,it has impotant practical siginificance to develop a set of ordor detection equipment that can accurately reflect air pollution. We developed an electronic nose device which is based on a multi-sensor array and can realize the detection of a wide concentration range of malodorous gas. A design of independent assortmnet sensor array is given,which can choose the corresponding sensor for malodorous gas with different types and concentrations in different regions. The system has high adaptability,high precision and good stability. In particular,the system design framework of independent assortment sensor array provides great flexibility for the system to adjust itself according to the difference of the actual environment,which has a certain reference value and application prospects

electronic nose;RS-485;bus communication;odor detection

10.3969/j.issn.1005-9490.2017.05.036

項目來源:國家重大科學儀器設備開發(fā)專項項目(2012YQ060165)

2016-07-14修改日期2016-11-09

TP216

A

1005-9490(2017)05-1238-06

劉偉玲(1973.9-),女,副教授,河北工業(yè)大學機械工程學院。主要研究方向為環(huán)保監(jiān)測儀器。

猜你喜歡
程序系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
半沸制皂系統(tǒng)(下)
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
英國與歐盟正式啟動“離婚”程序程序
主站蜘蛛池模板: 蜜桃视频一区二区三区| 亚洲第一页在线观看| 国产乱人免费视频| 国产视频入口| 亚洲电影天堂在线国语对白| 中文国产成人精品久久一| 亚国产欧美在线人成| 国产AV无码专区亚洲A∨毛片| 综合五月天网| 日本国产精品| 91久久国产成人免费观看| 精品国产电影久久九九| 99视频国产精品| 国产99在线| 91网红精品在线观看| 六月婷婷激情综合| 亚洲视频色图| 国产清纯在线一区二区WWW| 欧美一区二区自偷自拍视频| 亚洲国产日韩欧美在线| 日韩激情成人| 亚洲毛片一级带毛片基地| 久青草国产高清在线视频| a毛片在线播放| 成人看片欧美一区二区| 欧美三級片黃色三級片黃色1| 久久特级毛片| 四虎亚洲精品| 亚洲av无码人妻| 亚洲天堂精品视频| 国产精品女主播| 久久免费成人| 美女潮喷出白浆在线观看视频| 国产精品网址在线观看你懂的| 91最新精品视频发布页| 国产亚洲高清视频| 在线一级毛片| 成人国产小视频| 美女免费精品高清毛片在线视| 99精品影院| 99久久精品视香蕉蕉| 91精品网站| 在线精品自拍| 伊人久久影视| 国产精品成| 在线观看亚洲天堂| 自慰网址在线观看| 亚洲天堂在线视频| 日韩激情成人| 中文字幕日韩丝袜一区| 嫩草在线视频| 国产黄在线观看| 国产女主播一区| 青青青草国产| 亚洲V日韩V无码一区二区| 中文字幕欧美成人免费| 成AV人片一区二区三区久久| 日韩 欧美 小说 综合网 另类| 亚洲视频黄| 91伊人国产| 欧美午夜网站| 国产精品55夜色66夜色| 日本黄色不卡视频| 婷婷综合缴情亚洲五月伊| 欧美亚洲日韩中文| 欧美一级特黄aaaaaa在线看片| 国产第二十一页| 午夜欧美理论2019理论| 国产99精品视频| 99re在线视频观看| 一区二区三区成人| 中文字幕资源站| 亚洲综合激情另类专区| 激情视频综合网| 午夜毛片免费看| 亚洲精品少妇熟女| 国产极品美女在线观看| 18禁影院亚洲专区| 99一级毛片| 亚洲国产天堂在线观看| 亚洲国产第一区二区香蕉| 国产无码精品在线|