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

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

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

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


  隨著現代化科學技術的發展,電子儀器在各行各業中得到廣泛的應用,成為不可缺少的工具。自1928年峰值電子電壓表在美國商品化到現在,電子儀器的發展大致經歷了模擬式→數字式→智能式與程控式三個階段。與傳統儀器相比,智能式與程控式儀器具有自測功能和數據處理功能以及操作自動化、人機界面友好和可程控操作等特點?,F代智能儀器大多數都配備有標準的通信接口" 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、MicrosoftNECHewlett-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)來實現。
 ?。?)通過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亚洲国产精品_日韩亚洲一区二区
亚洲欧美999| 久久色中文字幕| 久久高清国产| 亚洲综合电影| 在线视频精品| 亚洲精品免费观看| 亚洲国产一区视频| 亚洲高清影视| 在线看日韩欧美| 尤妮丝一区二区裸体视频| 国产一区欧美| 国模精品娜娜一二三区| 国产日韩欧美精品在线| 国产精品国产三级国产普通话蜜臀| 欧美精品国产精品| 欧美大秀在线观看| 欧美激情一区二区三区四区| 麻豆乱码国产一区二区三区| 久久人人爽爽爽人久久久| 久久精品国产亚洲高清剧情介绍| 午夜精品视频在线观看| 亚洲欧美激情一区二区| 香蕉尹人综合在线观看| 亚洲欧美国产毛片在线| 亚洲影院色无极综合| 在线综合视频| 亚洲一区国产一区| 午夜精品久久久久久久久| 亚洲欧美日韩另类| 欧美一区二区三区婷婷月色| 欧美一区二区在线| 久久久久国产一区二区三区四区| 亚洲欧美清纯在线制服| 欧美一级艳片视频免费观看| 久久国产精品网站| 老牛国产精品一区的观看方式| 欧美成人dvd在线视频| 欧美激情中文不卡| 国产精品久久久久久久久久久久| 国产精品一区二区久久久久| 国产精品视频免费一区| 国产亚洲网站| 在线精品视频一区二区三四| 亚洲人成亚洲人成在线观看图片| 夜夜嗨网站十八久久| 亚洲午夜久久久| 欧美一级夜夜爽| 亚洲伦理在线| 亚洲欧美日韩综合国产aⅴ| 久久国产精品网站| 欧美风情在线| 国产精品v日韩精品v欧美精品网站| 国产精品视频网| 国产日韩欧美在线观看| **欧美日韩vr在线| 99国产精品久久久久老师| 亚洲一区二区三区在线| 久久精品国产精品| 99热免费精品| 午夜一区二区三区不卡视频| 老司机67194精品线观看| 欧美日韩精品三区| 国产免费成人在线视频| 亚洲电影视频在线| 在线视频亚洲欧美| 亚洲高清视频一区二区| 亚洲午夜伦理| 久久久www成人免费精品| 欧美精品日韩综合在线| 国产老女人精品毛片久久| 亚洲成人在线网站| 中日韩美女免费视频网址在线观看| 午夜宅男欧美| 在线中文字幕不卡| 久久婷婷国产综合尤物精品 | 亚洲免费小视频| 久久久之久亚州精品露出| 欧美日韩精品免费观看视一区二区 | 久久国产免费| 欧美日韩免费一区| 国产一区欧美| 亚洲午夜在线观看| 亚洲乱亚洲高清| 久久九九国产精品| 国产精品videosex极品| 亚洲二区免费| 欧美一区二区三区成人| 亚洲图片欧美一区| 欧美激情一区二区久久久| 国产网站欧美日韩免费精品在线观看 | 亚洲视频在线二区| 亚洲精品欧美| 快射av在线播放一区| 国产美女精品人人做人人爽| 亚洲人成在线免费观看| 久久精品99无色码中文字幕 | 红桃视频国产精品| 亚洲欧美日韩国产一区二区三区| 一区二区三区高清视频在线观看| 久久深夜福利| 国产欧美日韩专区发布| 一区二区三区高清不卡| 日韩视频精品在线观看| 老牛国产精品一区的观看方式| 国产欧美一区二区精品性| 亚洲最新合集| 日韩亚洲国产欧美| 免费成人av资源网| 在线观看日韩av先锋影音电影院 | 性欧美长视频| 欧美一区二区三区免费观看视频| 欧美日韩免费高清| 亚洲精品一区中文| 亚洲人成亚洲人成在线观看| 久久午夜精品一区二区| 国产手机视频一区二区| 亚洲欧美另类在线观看| 午夜日韩在线观看| 国产精品萝li| 亚洲午夜在线观看| 午夜在线视频观看日韩17c| 国产精品高潮在线| 亚洲午夜激情网站| 午夜久久黄色| 国产日韩精品入口| 亚洲欧美在线一区| 久久精品亚洲热| 国精品一区二区三区| 欧美一区二区视频观看视频| 欧美亚洲在线播放| 国产亚洲激情视频在线| 亚洲欧美国产日韩中文字幕| 午夜精品久久久久影视| 国产精品区一区二区三| 亚洲一区二区三区在线| 久久成年人视频| 国产亚洲午夜高清国产拍精品| 欧美一区二区三区四区在线观看地址 | 国产精品欧美久久| 亚洲欧美视频在线| 久久精品网址| 在线欧美不卡| 亚洲精品在线看| 欧美三级日本三级少妇99| 艳妇臀荡乳欲伦亚洲一区| 亚洲男女毛片无遮挡| 国产日韩亚洲欧美| 亚洲国产婷婷综合在线精品| 欧美国产国产综合| 99视频精品全国免费| 小黄鸭视频精品导航| 国产一区二区三区免费不卡| 亚洲国产精品成人一区二区| 欧美激情四色| 制服丝袜激情欧洲亚洲| 久久国产日本精品| 亚洲国产成人tv| 亚洲欧美日韩成人| 激情综合色综合久久| 亚洲免费精彩视频| 国产精品专区一| 亚洲国产老妈| 欧美日韩一区国产| 久久大逼视频| 欧美精品激情在线观看| 亚洲图片欧美一区| 久久一区二区三区av| 亚洲精品一区在线观看香蕉| 午夜在线成人av| 亚洲丰满少妇videoshd| 亚洲已满18点击进入久久| 韩国精品在线观看| 中文一区字幕| 狠狠久久亚洲欧美专区| 99国产精品久久久久久久久久| 国产精品久久久久影院亚瑟| 久久福利影视| 欧美视频在线一区| 亚洲第一精品在线| 欧美性大战久久久久久久| 欧美一区二区精美| 欧美日韩免费高清| 亚洲大胆人体视频| 国产精品久久国产愉拍| 亚洲国产精品专区久久| 国产精品久久久久久久久免费| 亚洲国产精品v| 国产精品欧美日韩一区二区| 亚洲人成高清| 国产精品一区视频网站| 亚洲毛片播放| 国精品一区二区三区| 亚洲一区在线免费| 亚洲国产欧美日韩| 久久久xxx| 亚洲一区二区三区在线观看视频 | 91久久香蕉国产日韩欧美9色| 欧美在线亚洲| 一本久久综合亚洲鲁鲁| 老司机精品福利视频|