《電子技術應用》
您所在的位置:首頁 > 測試測量 > 業界動態 > 基于虛擬儀器技術的USB接口儀器通信軟件設計

基于虛擬儀器技術的USB接口儀器通信軟件設計

2008-04-11
作者:葉文生, 王思華

  摘 要: 以北京普源公司生產的RIGOL DS5000系列數字存儲示波器" title="數字存儲示波器">數字存儲示波器為例,介紹一種通過USB總線接口實現PC機與儀器通信的編程方法,并且給出一個通信應用實例。
  關鍵詞: 電子儀器 USB接口 虛擬儀器 LabVIEW 動態鏈接庫


  隨著現代化科學技術的發展,電子儀器在各行各業中得到廣泛的應用,成為不可缺少的工具。自1928年峰值電子電壓表在美國商品化到現在,電子儀器的發展大致經歷了模擬式→數字式→智能式與程控式三個階段。與傳統儀器相比,智能式與程控式儀器具有自測功能和數據處理功能以及操作自動化、人機界面友好和可程控操作等特點。現代智能儀器大多數都配備有標準的通信接口" title="通信接口">通信接口,為PC機與儀器的連接提供了極大的方便。虛擬儀器是基于PC機的測控設備或系統,PC機與儀器組成的自動測量系統是虛擬儀器的常用結構之一。該結構的特點是能將電子儀器的長處(例如測量高頻信號的能力強)與PC機在信號處理、存儲和表達以及測試自動化方面的優勢結合起來,組成功能更強、性能更優和用途更廣的自動化測量系統。
1 常見儀器通信接口的比較
  目前,集成在智能儀器上的標準通信接口主要有RS232C接口、RS485接口、GPIB接口和USB總線接口等。四種通信接口的性能比較如表1所示。從表中可看出RS485具有長距離傳輸的優點,而USB則具有傳輸速率" title="傳輸速率">傳輸速率最高的優點。USB接口除了傳輸速率高外,還具有支持熱插拔、即插即用和高性價比等優點。因此,現在越來越多的儀器配置了USB接口,而PC通常更是配置了多個USB接口。


2 USB總線簡介
  通用串行總線(USB)Universal Serial Bus是由Compaq、Intel、Microsoft、NEC、Hewlett-Packard、Lucent和Philips等七家公司于1994年底聯合開發的一種通信接口標準,當時推出的版本是0.7版,而直到1998年底推出1.1版之后,USB總線接口才得到廣泛的應用。現在最新的版本是2.0版,其傳輸速率已經從1.1版的12Mbps提高到480Mbps,整整提高了40倍。
3 USB總線儀器通信的實現
3.1 USB總線通信的方法
  美國國家儀器(NI)公司的虛擬儀器應用軟件開發平臺LabVIEW已成為測試測量和自動化領域的主要軟件工具之一,本文所討論的通信軟件設計即是基于LabVIEW完成的。在LabVIEW中,PC機與電子儀器通過USB接口進行通信的方式主要有以下兩種:
 ?。?)通過調用電子儀器廠商提供的二次開發包里面的通信動態鏈接庫" title="動態鏈接庫">動態鏈接庫(DLL)來實現。
  (2)通過VISA(Virtual Instrument Software Architecture)提供的USB控制函數節點來實現。
  本文只對第一種方法展開討論和研究。
3.2 動態鏈接庫的調用
  在LabVIEW中可通過調用DLL的方式實現對其他公司硬件產品(如數據采集卡、圖像采集卡和USB接口設備等)的驅動,并在此基礎上可實現PC機與儀器的通信。下面以調用北京普源公司提供的RIGOL DS5000系列數字存儲示波器(以下簡稱DS5000示波器)的DLL為例來說明具體的編程方法。
  在LabVIEW中調用DLL的函數必須知道DLL接口函數的原型,才能正確地設置相關的參數。普源公司提供的DS5000示波器的DLL(DS5000USB_UI.dll)中有兩個接口函數:USB寫函數(Write_USB)和USB讀函數(Read_USB),它們的函數原型分別是bool Read_USB(int nType, int nLength,unsigned char* pBuffer)和bool Write_USB(unsigned char* cCmd)。LabVIEW 7.1的調用DLL(Call Library Function)節點位于功能模板(Functions)→All Functions→Advanced中,把它調出到LabVIEW的程序框圖后,雙擊它就可以見到如圖1所示的設置對話框。然后經過輸入正確的DLL路徑與函數名稱、調用規程、函數參數及其類型等步驟,便完成了調用DLL節點的設置。調用Write_USB函數的方法與Read_USB相似。
  為了便于對儀器發送控制命令,筆者將USB接口的寫和讀制作成子程序" title="子程序">子程序,其程序框圖如圖2所示。要注意的是,DS5000示波器在進行USB通信時每次只能接收和發送單個ASCII碼,故子程序中含有把字符串轉換成ASCII碼數值數組和把ASCII碼數值數組轉換回字符串的功能。

?


3.3 DS5000的通信協議(控制命令)和使用
  在DS5000示波器的二次開發包中,包含有DS5000示波器的命令表,可以用USB寫命令子程序把控制和查詢命令直接發給儀器,然后再用USB讀取數據子程序從儀器取回數據。例如,要讀取輸入信號的頻率,可以在USB寫命令子程序的CMD String參數中輸入“:MEASURE:FREQ:?”,然后再用USB讀取數據子程序取回輸入信號頻率的表達值“freq=***.***kHz”。表2為DS5000示波器的部分控制和查詢命令。


3.4 波形的讀取與顯示
  在PC機與數字示波器組成的系統中,讀取示波器測量的信號數據并以波形方式顯示出來通常是最基本的功能。在實現該功能的過程中,筆者發現程序的設計有一定的復雜性,因此用以下的實例加以說明。
  例如,要取示波器通道1的波形。在讀取通道1波形的命令“:DATA:CHANNEL1:?”發送到DS5000示波器后,示波器會把波形數據分成48塊分批放到USB接口的數據緩存單元中,每批數據為256字節,并且每批數據以“00”結束,而最后一批數據(即第48批數據)以一個換行符和一個回車符作為全部數據的結束符。組成波形的每個點的數據都以十六進制字符串組成,如用“0xB0”表示十六進制數值“B0”。另外值得注意的是,DS5000示波器返回的數據是以8位補碼的形式表示的,如果直接顯示在Waveform Graph窗口中,則會出現Waveform Graph上的波形與原波形剛好反相的現象。為了解決此問題,可以用255減去返回的數據,然后再送到Waveform Graph中顯示,這樣在Waveform Graph上顯示的波形才能與原波形相同。讀取波形數據并顯示波形曲線的VI程序段如圖3所示。圖中,“SendtoUSB.vi”和“ReadUSBasString.vi”分別為USB寫命令子程序和USB讀取數據子程序,而“StrToNumArray.vi”子程序的功能是把從示波器讀回來的字符型數據轉換成可以正確地在Waveform Graph上顯示的數值型數據,其程序框圖如圖4所示。


3.5 虛擬數字存儲示波器程序設計
  筆者利用此技術在PC機上開發出了一套虛擬數字存儲示波器應用軟件,其界面如圖5所示。該虛擬示波器不僅具有普源公司的DS5022M數字存儲示波器的基本功能,而且增加了自動調節量程和把波形數據文件與波形圖保存到電腦等功能。如有需要,利用LabVIEW可以很容易地為該虛擬儀器增加信號濾波等功能,從而把它擴展為一種多用途的綜合測試系統。
  USB總線通信接口的應用越來越多,基于USB總線的儀器通信是一種新的儀器接口通信技術。與傳統的儀器接口方式相比,USB通信方式具有成本低而性能高的優點,從而使基于電子儀器與PC機的虛擬儀器系統更具競爭力并具有更好的應用前景。該技術不僅可用于儀器通信,也可以應用于其他領域,例如PC機與數碼相機或其他帶USB接口的電子產品的通信。因此,基于USB接口的虛擬儀器系統在自動化測試領域必將得到越來越廣泛的應用。
參考文獻
1 伏大山,王 勇. 電子儀器發展趨勢[J]. 電子質量,2004;(10):9~11
2 林月芳,吉海彥. 智能儀器及其發展趨勢[J]. 儀器技術,2003;(1):37~39
3 邊海龍,賈少華. USB2.0設備的設計與開發[M]. 北京:人民郵電出版社,2004
4 楊樂平,李海濤. LabVIEW高級程序設計[M]. 北京:清華大學出版社,2003
5 National Instruments. LabVIEW help [Z], 2005
6 北京普源公司. DS5000用戶手冊[Z], 2003

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲欧美清纯在线制服| 玖玖精品视频| 91久久精品久久国产性色也91| 亚洲在线视频网站| av成人免费观看| 亚洲蜜桃精久久久久久久| 亚洲欧洲日本在线| 亚洲黄色一区| 亚洲日本理论电影| 亚洲靠逼com| 日韩视频免费观看高清在线视频| 亚洲欧洲精品一区二区精品久久久| 在线成人欧美| 在线免费观看日本一区| 亚洲第一二三四五区| 黑人中文字幕一区二区三区| 国产一区二区三区久久 | 欧美一区91| 午夜宅男久久久| 欧美一区二区三区在线观看视频| 欧美一区二区三区男人的天堂| 午夜一区不卡| 欧美中文字幕在线播放| 久久激情五月激情| 麻豆国产va免费精品高清在线| 母乳一区在线观看| 91久久精品网| 亚洲国产成人精品女人久久久| 亚洲国产精品精华液网站| 亚洲国产精品久久久久秋霞不卡| 亚洲欧洲日本mm| 一区二区三区你懂的| 午夜激情久久久| 亚洲高清视频在线观看| 亚洲精品久久久久久久久| 99re8这里有精品热视频免费 | 久久亚洲春色中文字幕| 欧美α欧美αv大片| 欧美巨乳在线观看| 国产精品扒开腿爽爽爽视频| 国产目拍亚洲精品99久久精品| 国产一区二区在线免费观看 | 日韩一级大片在线| 亚洲欧美日韩精品久久亚洲区| 欧美一区二区高清| 免费日韩精品中文字幕视频在线| 欧美激情一区二区三区在线视频| 欧美日韩免费高清一区色橹橹| 国产精品久久久久久亚洲毛片| 国产亚洲欧美日韩一区二区| 亚洲福利精品| 亚洲午夜精品| 亚洲黄色成人久久久| 中文高清一区| 久久久精品999| 欧美日韩精品一区二区在线播放| 国产精品有限公司| 亚洲国产成人精品久久久国产成人一区| 一区二区三区精品视频在线观看| 校园激情久久| 夜夜爽av福利精品导航| 欧美主播一区二区三区美女 久久精品人| 麻豆成人av| 国产精品美女久久久久久久 | 91久久精品日日躁夜夜躁欧美 | 日韩亚洲欧美精品| 欧美影院午夜播放| 一区二区三区四区五区视频 | 亚洲精品一二三区| 午夜精品久久久久久久久久久久久| 久久亚洲一区| 国产精品成人一区| 亚洲电影成人| 欧美亚洲一区二区在线观看| 一本色道久久99精品综合| 久久国产日韩欧美| 欧美三区在线视频| 在线免费观看日本欧美| 亚洲欧美日韩在线播放| 一本久久综合亚洲鲁鲁五月天| 久久亚洲影音av资源网| 国产九九精品视频| 99xxxx成人网| 亚洲日本在线观看| 久久久精品久久久久| 国产精品盗摄久久久| 亚洲国产日韩在线一区模特| 欧美一区影院| 午夜精品999| 欧美日韩一区二区免费视频| 精品动漫一区| 欧美一区二区三区免费看| 亚洲伊人久久综合| 欧美日韩一区二区在线播放| 在线观看日韩www视频免费| 亚洲欧美在线视频观看| 亚洲自拍啪啪| 欧美色图麻豆| 亚洲人成网站色ww在线| 亚洲第一精品福利| 久久精品一二三| 国产精品一区二区男女羞羞无遮挡| 亚洲精选中文字幕| 亚洲精品中文字幕在线观看| 老司机67194精品线观看| 国产一区导航| 欧美夜福利tv在线| 欧美影院成年免费版| 国产精品久久| 国语精品一区| 久久国产天堂福利天堂| 欧美三级在线播放| 亚洲精品欧美日韩专区| 亚洲国产免费| 亚洲第一中文字幕| 性亚洲最疯狂xxxx高清| 亚洲午夜在线观看视频在线| 欧美激情第二页| 亚洲国产视频直播| 亚洲黄色在线视频| 麻豆精品视频| 在线免费观看日韩欧美| 最新69国产成人精品视频免费| 久久综合伊人77777| 黄色精品一区| 亚洲国产精品久久久| 久久人人97超碰人人澡爱香蕉 | 欧美视频网址| 在线性视频日韩欧美| 亚洲午夜视频在线观看| 欧美性猛交xxxx乱大交退制版 | 一区二区三区日韩精品| 亚洲一区二区三区精品动漫| 欧美日韩在线另类| 一区二区三区蜜桃网| 午夜精品久久久久久久99水蜜桃 | 久久激情五月激情| 国产小视频国产精品| 欧美一区二区三区视频| 久久久国产一区二区三区| 狠狠综合久久av一区二区老牛| 久久精品首页| 欧美成人资源| 99精品久久久| 亚洲欧美综合v| 国产视频综合在线| 亚洲国产另类精品专区| 欧美jizz19hd性欧美| 亚洲欧洲在线一区| 亚洲手机成人高清视频| 欧美视频中文一区二区三区在线观看| 中日韩男男gay无套| 欧美一区二区三区婷婷月色| 国产午夜精品视频| 亚洲黑丝在线| 欧美日韩精品三区| 亚洲欧美日本精品| 久久影院午夜论| 国产麻豆精品在线观看| 亚洲高清电影| 欧美日韩国产高清视频| 亚洲专区在线视频| 美国十次成人| 一本色道久久88亚洲综合88| 亚洲午夜女主播在线直播| 国产欧美日韩精品一区| 亚洲大片一区二区三区| 欧美日本免费一区二区三区| 亚洲天堂成人在线观看| 99精品国产在热久久| 亚洲欧美日韩综合| 国语自产精品视频在线看抢先版结局| 亚洲精品乱码久久久久久按摩观| 欧美视频一区在线观看| 欧美亚洲尤物久久| 欧美日韩高清在线观看| 亚洲欧美日韩综合aⅴ视频| 牛牛影视久久网| 亚洲图片欧美一区| 久久在线免费观看| 一区二区三区四区在线| 老司机精品视频一区二区三区| 99精品热视频| 久久综合给合久久狠狠色| 一区二区三区视频在线看| 老司机凹凸av亚洲导航| 亚洲一区二区三区色| 欧美va天堂在线| 亚洲一区免费观看| 欧美成人情趣视频| 亚洲欧美在线一区二区| 欧美精品18+| 久久精品论坛| 国产精品免费区二区三区观看| 欧美一区二区高清| 国产精品白丝jk黑袜喷水| 亚洲国产一区在线| 国产日韩视频| 亚洲中午字幕| 亚洲欧洲综合另类在线|