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

基于LabVIEW的氣體監(jiān)測系統(tǒng)串口通訊設計

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

馬 敏,楊勝偉

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

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

1 系統(tǒng)構成

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

圖1 系統(tǒng)結構Fig.1 System structure

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

圖2 系統(tǒng)串口硬件電路Fig.2 System serial port hardware circuit

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

2 主機與從機的通信協(xié)議

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

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

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

表1 幀格式Tab.1 Frame format

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

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

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

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

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

3 程序設計與實現(xiàn)

3.1 LabVIEW與串口通信

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

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

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

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

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

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

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

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

3.2 程序實現(xiàn)

1)數(shù)據(jù)轉換

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

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

2)數(shù)據(jù)校驗

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

圖5CRC校驗Fig.5 Cyclic redundancy check

3)數(shù)據(jù)處理與顯示

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

4)數(shù)據(jù)保存

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

圖6 數(shù)據(jù)處理及存儲程序Fig.6 Data processing and storage program

4 系統(tǒng)測試與結果

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

5 結語

圖7 系統(tǒng)上位機主界面Fig.7 PC interface

圖8 部分采集的數(shù)據(jù)Fig.8 Partial data

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

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

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

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

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

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

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

猜你喜歡
指令系統(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)
半沸制皂系統(tǒng)(下)
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
殺毒軟件中指令虛擬機的脆弱性分析
電信科學(2016年10期)2016-11-23 05:11:56
主站蜘蛛池模板: 国产成人免费观看在线视频| 国产sm重味一区二区三区| 毛片基地美国正在播放亚洲| 97免费在线观看视频| 日本少妇又色又爽又高潮| 日本成人一区| 免费一级无码在线网站| 99久久精品国产麻豆婷婷| 亚洲成人www| 欧美三级不卡在线观看视频| 国内熟女少妇一线天| 国产一区二区三区在线无码| 国产视频一区二区在线观看| 欧美在线视频a| 国产屁屁影院| 制服丝袜一区| 亚洲伊人天堂| 欧美在线黄| 国产免费好大好硬视频| 日本亚洲欧美在线| 四虎永久在线视频| 国产最爽的乱婬视频国语对白 | 一区二区三区国产精品视频| 中文字幕欧美日韩| 伊人丁香五月天久久综合| 国产 日韩 欧美 第二页| 青青青国产视频手机| 亚洲精品国产精品乱码不卞| 日本影院一区| 亚洲视频色图| 波多野结衣无码中文字幕在线观看一区二区 | 国产区免费精品视频| 怡春院欧美一区二区三区免费| 无码一区18禁| 免费人成又黄又爽的视频网站| 国内精品一区二区在线观看| 丁香六月激情综合| 国产一级在线播放| 亚洲一区无码在线| 2021国产乱人伦在线播放| 911亚洲精品| 综合色亚洲| аⅴ资源中文在线天堂| 亚洲中文精品人人永久免费| P尤物久久99国产综合精品| 欧美日本在线播放| 久久99热这里只有精品免费看| 四虎成人精品| 久久精品免费国产大片| 欧美日韩一区二区在线免费观看| 国产激爽大片高清在线观看| 青草娱乐极品免费视频| 香蕉视频在线观看www| 国产一区二区福利| 久久99国产综合精品女同| 久久精品娱乐亚洲领先| 国产精品30p| 亚洲午夜天堂| 99精品视频在线观看免费播放| 无码一区中文字幕| 一级一级一片免费| 女高中生自慰污污网站| 亚洲h视频在线| 18禁黄无遮挡网站| 亚洲欧美天堂网| 成人精品区| 最新日韩AV网址在线观看| 国产99在线观看| 免费高清a毛片| 亚洲午夜福利精品无码不卡| 亚洲黄网视频| 99久久精品国产麻豆婷婷| 国产精品视频猛进猛出| 国产网友愉拍精品| 日韩av高清无码一区二区三区| 毛片三级在线观看| 青草国产在线视频| 九九这里只有精品视频| 26uuu国产精品视频| 亚洲va在线∨a天堂va欧美va| 久久婷婷色综合老司机| 男女精品视频|