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

基于LabVIEW的氣體監測系統串口通訊設計

2016-01-18 10:31:37楊勝偉
自動化與儀表 2016年11期
關鍵詞:指令系統

馬 敏,楊勝偉

(中國民航大學 電子信息與自動化學院,天津 300300)

在很多工業控制中都會用到上位機與下位機之間的通信,兩者之間經常使用串口來實現數據交換[1]。為了上位機與下位機之間快速、高效的通信,需要根據兩者之間的通信協議在上位機設計相應的串口通信程序[2]。LabVIEW提供與遵從GPIB、VXI、RS232和RS485協議的硬件及數據采集卡通信的全部功能,還內置了支持TCP/IP、ActiveX等軟件標準的庫函數。其圖形化編程語言環境,簡單直觀,相較傳統的文本語言串口通信程序開發,極大節省程序開發時間,可以完成各種各樣的編程任務。因此利用LabVIEW實現PC機與MCU的串口通信是一種更為簡捷的方法。本文采用LabVIEW實現了與下位機的串口通信,并設計了多氣體監測系統,實現了數據的采集、顯示與存儲。

1 系統構成

整個數據通信系統配置由帶LabVIEW監控程序的PC機、USB通訊電纜、智能控制器構成。在下位機系統中,由各傳感器將采集到的參數傳遞給STM8處理器進行處理,并通過串口模塊與上位機交互。在上位機系統中,由LabVIEW編寫的串口程序與下位機實現整個系統的通信并對傳遞的信號進行處理。系統結構如圖1所示。

圖1 系統結構Fig.1 System structure

STM8L151是一種具有超低功耗特性的功能強大的單片機,STM8L151片內有1個通用串行同步/異步模塊USART1,支持通用異步協議 (UART協議)和同步協議(SPI協議),通信方式為通用異步接收/發送(UART)。主機為PC機時,通過RS-485接口實現主機與從機的通信。電路原理圖如圖2所示。

圖2 系統串口硬件電路Fig.2 System serial port hardware circuit

本文設計的通信系統采用主從式的UART通信協議,在此協議模式下MCU為從機,帶LabVIEW監控程序的PC機為主機[3]。STM8將各路采集的數據以一定的數據格式存儲到一個數據幀中,當收到上位機指令時此數據幀通過串口發送至PC,采用LabVIEW軟件對串口收到的數據進行采集、顯示、處理和存儲。

2 主機與從機的通信協議

本系統采用通用RS485總線,所有控制板連接在1條RS485總線上;下位機在通信中處于從站的地位,上位PC機處于主站地位。工作時采用指令/應答的通信方式,每一種指令幀對應著一種應答幀。當針對某臺從機發送指令時,所有的從機都能監聽到該指令,但只有地址匹配的從機才真正接收主機指令然后作出相應的響應,地址不匹配的從機不予以應答,僅處于偵測狀態。

所有通信都以“打包”方式發生。1個報文就是1個簡單的字符串 (每個字符8位),1個報文中最多可含255個字節。組成這個報文的字節構成標準異步串行數據,8位數據位,1位停止位,偶校驗的方式傳遞。

1幀完整的消息包含1個地址字節、1個命令字節、1個數據長度字節、N個數據字節及2個校驗字節,其中校驗域為16位CRC校驗方式下生成的CRC16校驗碼。其格式如表1所示。

表1 幀格式Tab.1 Frame format

每一幀消息的發送都要以3.5個字符時間以上的停頓間隔開始;因此,當系統檢測到當前一個字節與上一個字節的間隔時間大于3.5個T約于3.5 ms時,自動將這一個字節做為一個消息幀的開始。

當接收到第一個字節(地址),每個設備都進行解碼以判斷是否發往自己的。在最后一個傳輸字符之后,同樣至少3.5個字符時間以上的停頓間隔來表明一幀消息的結束。一個新的消息可在此停頓后開始。

整個消息幀必須連續的發送。如果在幀完成之前的2個字節間有超過3.5個字符時間的停頓時間,接收設備將刷新不完整的消息并假定下一字節是一個新消息的地址域。同樣地,如果一個新消息在小于3.5個字符時間內接著前個消息開始,接收的設備將認為它是前一消息的延續。這將導致通信錯誤,因為在校驗時值肯定是錯誤的。

從機的地址是一個字節,范圍為1~255(0xFF)。主機通過將要聯絡的從機的地址放入消息中的地址域來選通從機。當從機發送回應消息時,它把自己的地址放入回應的地址域中,以便主設備知道是哪一個設備作出回應。

當消息從主機發往從機時,功能代碼將使從機知道需要執行哪些具體的任務。對于不同的命令,從機將做不同的應答;如果操作正確,對于查詢性質的指令,從機將返回一條帶有指定的信息的消息;對于操作性質的指令,從機在完成指定操作后,將返回一個空數據(即數據長度字節為0)的消息到主機,以確認操作成功;如果通信異常,從機將返回一個包括異常碼在內的異常響應。

3 程序設計與實現

3.1 LabVIEW與串口通信

LabVIEW提供了功能強大的VISA(virtual in strument software architecture)庫,VISA 作為 LabVIEW程序中驅動程序間相互通信的底層功能模塊,可連接不同標準的I/O設備,是一個用來在串口通信設備、VXI設備、GPIB設備及其他基于計算機設備間通信的函數庫[4]。

1)VISA resource name:VISA 資源名稱,即串口號。

2)VISA Configure Serial Port節點。該節點完成串口參數的設置,包括串口資源分配、波特率、數據位、停止位、校驗位等,波特率默認值為9600,數據比特默認為8位。該節點位于儀器I/O面板的Serial中。

3)VISA Write節點。如果初始化沒有問題,就可以使用這個節點發送數據。它是指將輸出緩沖區中的數據發送VISA resource name指定的串口。

4)VISA Bytes at Serial Port節點。此節點用來查詢VISA resource name指定的串口接收緩沖區中的數據字節數,通常將此節點放到VISA Write之后用來得到串口字節數。

5)VISA Read節點。此節點的作用是將VISA resource name指定的串口接收緩沖區中的數據讀取指定字節數的數據到計算機內存中。

6)在某些特殊情況下,需要設置串口接收/發送緩沖區的大小,此時可以使用VISA Set I/O Buffer Size;而使用VISA Flush I/O Buffer則可以清空接收與發送緩沖區。在串口使用結束后,使用VISA Close結束與VISA resource name指定的串口之間的會話。

圖3 程序流程Fig.3 Program flow chart

3.2 程序實現

1)數據轉換

在LabVIEW平臺控制的串行通信過程中,數據格式是以字符串的格式組成的,字符串中的每個字符實際上對應我們熟悉的ASCII字符,即計算機能夠識別的數據代碼是ASCII代碼,所以在傳送到串口發送數據之前要經過代碼轉換,這就意味著以十進制、二進制、十六進制表示的數據必須轉化為ASCII字符串才能進行傳送和接收[5]。程序如圖4所示。

圖4 16進制轉化為ASCII碼Fig.4 Hexadecimal into ASCII

2)數據校驗

本設計采用CRC16的數據校驗,保證通信數據的可靠性。CRC16包含2個字節,低字節在前,高字節在后[6]。CRC16碼由發送設備計算,放置于發送信息的尾部。接收信息的設備再重新計算接收到信息的CRC16碼,比較計算得到的CRC16碼是否與接收到的相符,如果兩者不相符,則表明出錯。

圖5CRC校驗Fig.5 Cyclic redundancy check

3)數據處理與顯示

當LabVIEW接收到串口傳來的數據時,先截取第一個字符判斷地址,再截取第二個字符判斷功能命令。然后將接收到的數據轉化為數值顯示出來,并設置了報警閾值。

4)數據保存

在工業生產和科學實驗過程中,人們往往通過對歷史數據分析、比較才挖掘到有用信息,并利用這些信息進一步地設計方案或實驗。所以,串口調試軟件的數據的存儲顯得格外有意義,尤其采用時間命名文件,保存為.xls或.txt格式,這一點就顯得尤為突出。本上位機軟件能夠實時存儲接收到的數據,并且以便于事后分析的格式完整存儲,其存儲數據可以直接導入MabLAB等軟件經行分析。

圖6 數據處理及存儲程序Fig.6 Data processing and storage program

4 系統測試與結果

為了測試系統的可靠性,使用上述氣體采集系統對某實驗室的氣體濃度進行監測,首先配置VISA參數,波特率9600,數據位為8位,偶校驗。然后打開功能命令開關,選擇氣體類型,氣體單位和數值量程,最后讀取數據。圖7為測試時的主界面,部分數據如圖8所示。

5 結語

圖7 系統上位機主界面Fig.7 PC interface

圖8 部分采集的數據Fig.8 Partial data

本文采用STM8串口作為數據發送端,Lab-VIEW作為數據接收端,實現了對多氣體傳感器的實時數據采集,能夠正確地顯示出各通道采集數據的實時波形。本系統具有成本低,操作簡單,界面友好,功能豐富,可移植性強,可擴展性強等特點。在實現以上功能的基礎上,以后可以對該平臺進一步擴展,如成本的降低,硬件系統性能的提高,更高速的通信方式,用戶界面的完善,遠程控制等方面,使平臺更加實用方便。

[1]呂向鋒,高洪林,馬亮,等.基于LabVIEW串口通信的研究[J].國外電子測量技術,2009,28(12):27-30.

[2]王定遠,胡吉朝,李嬡.基于MScomm32和LabVIEW的串口通信技術[J].國外電子測量技術,2006,25(4):61-64.

[3]張杰,張軼,王曉剛,等.基于USB串口的LabVIEW與MSP430通信實現[J].自動化與儀表,2011,26(3):38-41.

[4]崔牧凡.基于LabVIEW和FPGA的串口通信系統設計與實現[J].計算機應用,2012,32(S2):82-84.

[5]趙梅,胡天亮,張倩,等.基于LabVIEW的AMT數據采集系統設計與研究[J].山東大學學報:工學版,2011,41(6):70-74.

[6]陳金平,王生澤,吳文英.基于LabVIEW的CRC檢錯碼校驗方法[J].自動化儀表,2004,25(5):74-76.

猜你喜歡
指令系統
聽我指令:大催眠術
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
殺毒軟件中指令虛擬機的脆弱性分析
電信科學(2016年10期)2016-11-23 05:11:56
主站蜘蛛池模板: 国产又色又刺激高潮免费看| 91福利在线观看视频| 大陆精大陆国产国语精品1024| 国产精品亚洲一区二区三区在线观看| 亚洲国产精品人久久电影| 亚洲美女高潮久久久久久久| 无码一区中文字幕| 国产三区二区| 色偷偷av男人的天堂不卡| a色毛片免费视频| 欧美v在线| 久久久亚洲色| 69综合网| 久久99精品久久久久久不卡| 99热这里只有精品2| 啪啪永久免费av| 粉嫩国产白浆在线观看| 亚洲成人www| 六月婷婷精品视频在线观看| 日韩精品视频久久| 国产精品女主播| 国产午夜人做人免费视频中文 | 乱人伦视频中文字幕在线| 亚洲精品无码高潮喷水A| 国产精品香蕉在线| 久久青青草原亚洲av无码| 国产经典在线观看一区| 成人免费网站久久久| 精品国产电影久久九九| 国产精品久久久免费视频| 久久久久国产一级毛片高清板| h视频在线观看网站| 色哟哟色院91精品网站| 永久免费无码成人网站| 成人久久精品一区二区三区 | 国产手机在线小视频免费观看| 最新国产在线| 99青青青精品视频在线| 自拍中文字幕| 国产素人在线| 日韩欧美中文字幕在线精品| 国产亚洲视频中文字幕视频| 久久综合国产乱子免费| 91久久青青草原精品国产| 色婷婷国产精品视频| 免费看av在线网站网址| 日韩无码真实干出血视频| 91九色最新地址| 欧美一区国产| 国产一区二区精品福利| 欧美成人影院亚洲综合图| 中国毛片网| 91黄视频在线观看| 亚洲国产精品久久久久秋霞影院| 一级爆乳无码av| 国产成人精品高清不卡在线| 97超爽成人免费视频在线播放| 999国产精品| 在线99视频| 四虎永久免费网站| 操操操综合网| 丰满人妻久久中文字幕| 成人在线亚洲| 欧美五月婷婷| 在线观看无码a∨| 日本人妻一区二区三区不卡影院| 蜜桃臀无码内射一区二区三区| 欧美成人午夜在线全部免费| 国产精品女在线观看| 丁香婷婷久久| 国产无码精品在线播放| 国产一区二区三区在线无码| 亚洲国产AV无码综合原创| 色妞永久免费视频| 国产黄色爱视频| 国产精品网址你懂的| 亚洲美女AV免费一区| 在线看片中文字幕| 国产精品人莉莉成在线播放| 中文字幕永久视频| 免费观看欧美性一级| 四虎综合网|