亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Keithley儀表的數(shù)據(jù)采集系統(tǒng)設(shè)計及實現(xiàn)

        2013-08-14 01:19:58王勇魏建中陳波
        關(guān)鍵詞:發(fā)送數(shù)據(jù)阻值控件

        王勇,魏建中,陳波

        (工業(yè)和信息化部電子第五研究所,廣東 廣州 510610)

        0 引言

        Keithley 2000儀表是一種高性能的數(shù)字型儀表,主要用于電流、電壓、電阻和頻率等參數(shù)的測量,在工業(yè)上和實驗室中具有廣泛的用途。該表測量精度高、噪聲低和功能全,但對于非專業(yè)測試人員,使用該表進(jìn)行專業(yè)參數(shù)測量還是比較困難的,測量速度慢,測量效率低。

        隨著智能儀表和虛擬儀表技術(shù)的快速發(fā)展,上下位機通訊的地位日益凸現(xiàn),如何通過上位機實現(xiàn)儀表數(shù)據(jù)的自動化采集已成為測試現(xiàn)場急需解決的問題。有了性能強大的硬件檢測平臺,如果沒有合適的軟件與之匹配,那么檢測儀表的性能將得不到充分的發(fā)揮。

        本文將結(jié)合實驗室中電阻溫度循環(huán)前后阻值變化的測試過程,提出Keithley儀表數(shù)據(jù)采集系統(tǒng),該系統(tǒng)可以實現(xiàn)PC機對儀表的自動化采集、分析和合格判定。

        1 系統(tǒng)的實現(xiàn)

        Keithley 2000儀表通過RS 232[1-2]接口與上位機PC進(jìn)行通信,采集的數(shù)據(jù)通過上位機中的軟件進(jìn)行比較分析,系統(tǒng)結(jié)構(gòu)如圖1所示。

        圖1 系統(tǒng)結(jié)構(gòu)

        本系統(tǒng)采用Delphi 7進(jìn)行上位機編程,在進(jìn)行通信程序的設(shè)計過程中,為了避免底層串口參數(shù)編程的初始化設(shè)置過程,提高開發(fā)效率,選用了功能強大的第三方SPComm控件,SPComm控件通過串行端口傳輸和接收數(shù)據(jù),為應(yīng)用程序提供串行通信功能。程序流程如圖2所示。

        圖2 程序流程圖

        1.1 SPComm串口通信控件介紹

        SPComm控件具有豐富的、與串口通信密切相關(guān)的屬性,提供了對串口所進(jìn)行的多種操作,進(jìn)而使串行通信變得十分簡便。

        SPComm共實現(xiàn)了3個類:串口類Tcomm、讀線程類TreadThread以及寫線程類TwriteThread[1]。Tcomm的某個實例在方法StartComm中打開串口,并實例化了一個讀線程ReadThread和一個寫線程WriteThread,它們和主線程之間進(jìn)行消息的傳遞,實現(xiàn)串口通信。

        Spcomm串口通信控件的基本屬性、方法和事件的說明如下:

        1.1.1 基本屬性

        a)CommName屬性

        計算機串口端口號的名字,COM1、COM2……等;在打開串口前,必須填寫好此值。

        b)Parity屬性

        校驗位None、Odd、Even、Mark和Space等。

        c)BaudRate

        設(shè)定支持串口通信用的波特率9600,4800等,根據(jù)實際需要來定;在串口打開后也可更改波特率,實際的波特率隨之更改。

        d)ByteSize屬性

        表示一個字節(jié)中,使用多少個數(shù)據(jù)位來收發(fā)數(shù)據(jù),根據(jù)具體的情況設(shè)定5、6、7、8等。

        e)StopBits屬性

        表示一個字節(jié)中,使用停止位的位數(shù),根據(jù)具體的情況設(shè)定1、1.5、2等。

        f)SendDataEmpty 屬性

        布爾屬性,為True時表示發(fā)送緩存為空,或者發(fā)送隊列里沒有信息;為False時表示發(fā)送緩存不為空,或者發(fā)送隊列里有信息。

        1.1.2 方法

        a)StartComm方法

        用來打開通信串口,開始通信。如果失敗,則會導(dǎo)致串行口錯誤。錯誤類型大致分為串行口己處于打開狀態(tài),所以不能打開串行口,不能創(chuàng)建讀寫進(jìn)程,不能建立串行口緩沖區(qū)等。

        b)StopComm方法用來停止通信串行口的所有進(jìn)程,關(guān)閉串口。c)WriteCommData(1)pDataToWrite: PChar;2)dwSizeofDataToWrite: Word)方法

        這是帶有布爾型返回值的函數(shù),其中參量pDataToWrite是要寫入串行口的字符串,dwSizeof-DataToWrite是要寫入的字符串的長度。該函數(shù)通過一個寫線程向串行口輸出緩沖區(qū)發(fā)送數(shù)據(jù)。發(fā)送操作將在后臺默認(rèn)執(zhí)行。如果寫線程PostMessage成功,則返回值是True;若寫線程失敗,則返回值是False。

        1.1.3 事件

        Spcomm串行通信控件具有多線程的特性,接收和發(fā)送數(shù)據(jù)分別在兩個線程內(nèi)完成,接收線程負(fù)責(zé)收到數(shù)據(jù)時觸發(fā)OnReceiveData事件;用WriteCommData()函數(shù)將待發(fā)送的數(shù)據(jù)寫入輸出緩沖器,發(fā)送線程在后臺完成數(shù)據(jù)發(fā)送工作。在接收和發(fā)送數(shù)據(jù)前需要初始化串口,用StartComm方法打開串口,退出程序時用StopComm方法關(guān)閉串口。

        Spcomm應(yīng)用的核心在于主線程、讀線程和寫線程之間的消息傳遞機制,而通信數(shù)據(jù)相關(guān)信息的傳遞也是以消息傳遞的方式進(jìn)行的。在使用Spcomm進(jìn)行串口通信編程時,需要特別注意以下兩個問題:

        a)Spcomm是通過ReadIntervalTimeout屬性的設(shè)置來確定所接收到的數(shù)據(jù)是否屬子同一幀數(shù)據(jù),其默認(rèn)值是100 ms;也就是說,只要任何兩個字節(jié)到達(dá)的時間間隔小于100 ms,都被認(rèn)為是屬于同一幀數(shù)據(jù),在與儀表機協(xié)同工作時,要特別注意這個問題[2]。

        b)Spcomm的默認(rèn)屬性設(shè)置是支持軟件流控制的,用于流控制的字符是13 H(XoffChar)和11 H(XonChar),當(dāng)儀表以二進(jìn)制方式發(fā)送數(shù)據(jù)時,必須要禁用Spcomm對于軟件流控制的支持;否則,在數(shù)據(jù)幀中出現(xiàn)的13 H和11 H會被Spcomm作為控制字符而加以忽略。

        1.2 使用SPComm控件實現(xiàn)串口通信

        由于Delphi 7中沒有直接集成串口控件,所以,首先需要把SPComm控件添加到Delphi 7中。

        在Delphi 7.0中安裝SPComm串口通信控件的方法為:選擇 Delphi 7.0的 “Component” 菜單,點擊 “Install Component..” 菜單項,然后在彈出的Into existing package屬性頁中的Unit file name輸人框中選擇SPCOMM.pas文件,單擊兩次 “OK”按鈕后,就可以將SPComm控件安裝到Delphi 7.0的System組件頁上。

        對SPComm控件進(jìn)行初始化,初始化的指令如下:

        1.3 Keithley 2000 RS-232 通信設(shè)置

        1.4 通信指令組

        正常的串口通信建立后,就可以由PC上位機通過SPComm控件提供函數(shù)WriteCommData(pDataToWrite:PChar; dwSizeofDataToWrite:Word):Boolean;向Keithley 2000發(fā)出操控指令。

        以下是采集數(shù)據(jù)的指令舉例,可以完成電阻阻值的基本參數(shù)測量。

        指令以回車符結(jié)束,如 “DATA?”指令的程序代碼如下:

        1.5 基于SPComm控件的數(shù)據(jù)的接收及處理

        由于SPComm采用事件驅(qū)動機制,只要儀表向PC機發(fā)送數(shù)據(jù),SPComm就觸發(fā)一次接收事件,相應(yīng)的數(shù)據(jù)存放在接收緩沖區(qū),SPComm以接收數(shù)據(jù)的時間間隔區(qū)分不同的事件,事件間隔在Read-InteralTimeout中設(shè)置。接收事件驅(qū)動機制的最大優(yōu)點是無需程序?qū)邮站彺嬉恢碧幱跈z查狀態(tài),只要有數(shù)據(jù)到達(dá)就會觸發(fā)接收事件而執(zhí)行相應(yīng)的程序代碼。

        SPComm控件提供 OnReceiveData事件,當(dāng)控件接收數(shù)據(jù)時執(zhí)行該事件,可在該事件中對接收到的數(shù)據(jù)進(jìn)行分析處理。以下是對采集的數(shù)據(jù)進(jìn)行分析的代碼,可以實現(xiàn)阻值的自動判定,超出指標(biāo),則顯示為紅色。

        2 數(shù)據(jù)采集系統(tǒng)的性能分析

        電阻初次測量阻值、溫度循環(huán)試驗后再次測量阻值,并計算兩次測量的阻值變化,每次測量值及變化量有相應(yīng)的指標(biāo)范圍,針對筆者所在的實驗室測量樣品多,測試指標(biāo)相對簡單的特點,為提高工作效率,采用Delphi 7編寫上位機軟件,通過RS 232接口連接Keithley儀表實現(xiàn)數(shù)據(jù)自動采集,系統(tǒng)界面如圖3所示。

        圖3 系統(tǒng)界面

        系統(tǒng)有如下特點:

        系統(tǒng)對讀取的數(shù)值設(shè)置了量級和精度,可自定義量級和精度;實現(xiàn)了數(shù)據(jù)的自動計算、儲存整套數(shù)據(jù)及查詢,大大簡化了操作步驟,實現(xiàn)了全程無紙化測量,有效地避免人為誤差,極大地方便了后續(xù)數(shù)據(jù)處理;成功讀取數(shù)據(jù)后對樣品編號自動加一,便于讀取下一樣品數(shù)據(jù);對數(shù)據(jù)自動分析后,不合格的數(shù)據(jù)將用紅色標(biāo)識;測試數(shù)據(jù)可以保存到Excel表中,方便保存及后期處理;系統(tǒng)出錯采用多媒體聲音報警,操作人員不必時刻監(jiān)視計算機和儀表了;配合USB串口轉(zhuǎn)換器即可實現(xiàn)Keithley全系列數(shù)字萬用表即插即用,沒有RS 232串口的計算機同樣可以方便地通過此軟件控制Keithley數(shù)字萬用表。

        在實際的測量過程中,操作人員將樣品放置好后,直接按回車鍵即可完成所有的工作。如果這一測試工作同樣由人工手動完成,則不僅效率低下,而且測量精度也得不到保證。人工測試和自動采集性能的比較如表1所示。

        表1 人工測試和自動采集性能比較

        3 結(jié)束語

        本系統(tǒng)采用計算機軟件技術(shù)實現(xiàn)數(shù)據(jù)自動采集,對傳統(tǒng)的人工測量電阻的測試方法進(jìn)行了重大的改進(jìn),實現(xiàn)了電阻阻值的自動測量及溫度循環(huán)前后的阻值變化比較,大大提高了電阻阻值參數(shù)測試的自動化水平,減少了人員的工作量,提高了數(shù)據(jù)的可信度;另外,本系統(tǒng)也可對電壓、電流等參數(shù)進(jìn)行測量。

        [1]范逸之,陳立元.Delphi與RS-232串行通信控制[M].北京:清華大學(xué)出版社,2002.

        [2]黃軍,熊勇.Delphi串口通信編程[M].北京:人民郵電出版社,2002.

        猜你喜歡
        發(fā)送數(shù)據(jù)阻值控件
        移動自組網(wǎng)中MAC層協(xié)議研究
        四線制阻值檢測電路實驗研究
        勵磁線圈對插入式電磁流量計的影響
        低電阻碳膜板制作及其阻值的優(yōu)化
        對一道電學(xué)實驗題的思考
        基于馬爾科夫鏈的LoRaWAN網(wǎng)絡(luò)節(jié)點性能分析
        帶標(biāo)記方式的CRDSA++協(xié)議性能分析*
        關(guān)于.net控件數(shù)組的探討
        軟件(2018年7期)2018-08-13 09:44:42
        使用IPSec安全傳輸數(shù)據(jù)
        就這樣玩會VBA中常見的自定義控件
        電腦迷(2012年24期)2012-04-29 00:44:03
        冲田杏梨av天堂一区二区三区| 亚洲日韩精品欧美一区二区一| 欧美日韩综合网在线观看| 人妻爽综合网| 日本第一影院一区二区| 又色又爽又高潮免费视频国产 | 国产精品高潮呻吟av久久黄| 最近中文字幕免费完整版| 国产成+人+综合+亚洲 欧美| 日本丰满少妇高潮呻吟| 国产免费人成视频在线| 在线观看视频播放| 亚洲av无码乱码国产麻豆穿越| 水蜜桃一二二视频在线观看免费| 顶级高清嫩模一区二区| 品色堂永远免费| 亚洲色在线视频| 99久久免费精品色老| 国产亚洲自拍日本亚洲| 国产精品_国产精品_k频道| 久久亚洲伊人| 亚洲国产精品成人一区二区在线| 国产精品186在线观看在线播放| 永久免费av无码网站性色av | 精品无码久久久久久久久水蜜桃| 国产无遮挡裸体免费视频| 成人精品国产亚洲欧洲| 亚洲av色在线播放一区| 久久久久免费看成人影片 | 日韩在线一区二区三区中文字幕| 男人和女人做爽爽视频| 亚洲不卡av不卡一区二区| 亚洲国产av剧一区二区三区| 大香焦av一区二区三区| 久久久日韩精品一区二区三区| av无码精品一区二区乱子| 亚洲av本道一本二本三区| 寂寞少妇做spa按摩无码| 亚洲人成电影在线无码| 亚洲一区二区三区高清视频| 国产精品久久精品第一页|