亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 4492 | 回復: 0
打印 上一主題 下一主題

IVI-COM驅動程序函數(shù)庫的開發(fā) [復制鏈接]

論壇徽章:
0
跳轉到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2011-12-23 03:03 |只看該作者 |倒序瀏覽
長期以來,互換性成為許多工程師建造測試系統(tǒng)的目標。因為在很多情況下,儀器硬件不是過時就是需要更換,因此迫切需要一種無需改變測試程序代碼就可用新的儀器硬件改進系統(tǒng)的方法。針對這一問題,在19989月成立了IVIInterchangeable Virtual Instrument)基金會。IVI基金會是最終用戶、系統(tǒng)集成商和儀器制造商的一個開放的聯(lián)盟。目前,該組織已經(jīng)制訂了五類儀器的規(guī)范一一示波器/數(shù)字化儀(IVIScope)、數(shù)字萬用表(IVIDmm)、任意波形發(fā)生器/函數(shù)發(fā)生器(IVIFGen)、開關/多路復用器/矩陣(IVISwitch)及電源(IVIPower)。美國國家儀器公司(簡稱NI)作為IVI的系統(tǒng)聯(lián)盟之一,積極響應IVI的號召,開發(fā)了基于虛擬儀器軟件平臺的IVI驅動程序庫。

VI的概念

                               

1   VI的內(nèi)部功能劃分

VI(虛擬儀器,Virtual Instrument)通過應用程序將通用計算機與儀器硬件結合起來,用戶可以通過友好的圖形界面(通常叫做虛擬前面板)操作這臺計算機,就象在操作自己定義、自己設計的一臺單個傳統(tǒng)儀器一樣。VI以透明的方式把計算機資源(如微處理器、內(nèi)存、顯示器等)和儀器硬件(A/D、D/A、數(shù)字I/O、定時器、信號調理等)的測量、控制能力結合在一起,通過軟件實現(xiàn)對數(shù)據(jù)的分析處理、表達以及圖形化用戶接口(見圖2-1)。

應用程序將可選硬件(GPIB、VXI、RS-232DAQ)和可重復用原碼庫函數(shù)等軟件結合在一起,實現(xiàn)了儀器模塊間的通信、定時與觸發(fā)。原碼庫函數(shù)為用戶構造自己的VI系統(tǒng)提供了基本的軟件模塊。由于VI的模塊化、開放性和靈活性,以及軟件是關鍵的特點,當用戶的測試要求變化時,可以方便地由用戶自己來增減硬、軟件模塊,或重新配置現(xiàn)有系統(tǒng)以滿足新的測試要求。這樣,當用戶從一個項目轉向另一個項目時,就能簡單地構造出新的VI系統(tǒng)而不丟棄已有的硬件和軟件資源。

關于 IVI
  IVI Foundation 成立于 1998 年,目的是創(chuàng)建基于VXIplug&play 規(guī)范之上的儀器驅動標準,并提供各種額外特性(包括驅動 API 一致性、可互換性、仿真、狀態(tài)高速緩存、多線程安全等)。這些特性幫助延長了使用 IVI 測試系統(tǒng)的壽命。IVI Foundation 定義了兩種基本的架構和接口類型,即 IVI-C  IVI-COM。IVI-C 驅動程序基于現(xiàn)有的 VXIplug&play 規(guī)范和標準的 ANSI C 編程模型。IVI-COM 驅動程序基于微軟公司的標準的 COMComponent Object Model,組件對象模型)技術。IVI 儀器驅動程序可在通用的開發(fā)環(huán)境中使用,包括NI公司的 LabVIEW  LabWindows/CVI、安捷倫公司的 VEE Pro,以及微軟公司的Visual Basic、Visual C++  Visual C# .NET。

IVIVISA的關系

VISA是在不同的總線上作了一個統(tǒng)一的編程接口。IVI是在同類儀器,不同的產(chǎn)品間作了一個統(tǒng)一的編程接口;蛘哒f為同類儀器的不同儀器驅動上作了一個統(tǒng)一的編程接口。 
使用VISA接口編寫的程序可以對不同的總線上(如GPIB,VXI,SerialPXI)的儀器進行控制。但要求被控的儀器是同一廠商的同類儀器。即儀器的程控指令集是一樣的。使用IVI接口編寫的程序可以對同類儀器,但廠商不同,程控指令集不同的儀器進行控制。要求是
 
被控儀器支持IVI標準,提供IVI儀器驅動。如果從軟件體系結構上由低向高的來排序,應該是:程控儀器->程控指令+VISA->儀器驅動->IVI->測試系統(tǒng)應用。

從二者的英文全名也可窺見一斑:

VISA: Virtual Instrument Software Architecture

IVI: Interchangeable Virtual Instrument

實現(xiàn)IVI-COM驅動程序

上面說到了IVI Foundation定義了兩種基本的架構和接口類型,針對LabWindowLabVIEWIVI-C驅動程序的實現(xiàn)占據(jù)著主要地位,雖然IVI Foundation定義了IVI-COM驅動程序框架和接口函數(shù),但實現(xiàn)的并不是很多,此次采用ATL技術實現(xiàn)了IVI-COM驅動程序,實際上實現(xiàn)了一個通用的函數(shù)庫,方便不同的驅動程序開發(fā)者進行調用。

為了實現(xiàn)這樣一個函數(shù)庫,還需要VISA函數(shù)庫,互換性原則的體現(xiàn)在對VIAS庫中不同儀器控制命令的調用。IVI-FoundationIVI-COM驅動程序的定義是比較詳細的,例如有這樣的定義:

COM Method Prototype

HRESULT SendSoftwareTrigger ();

定義了一個COM方法SendSoftwareTrigger,調用該函數(shù)發(fā)送一個軟觸發(fā)的三角波信號到設備上。在規(guī)范中詳細的定義了每個接口類的類名、屬性、方法以及參數(shù)說明,詳細的接口定義文件可以參考規(guī)范中的IDL文件附件,有了這個IDL文件和接口說明,具有ATL技術背景的話,實現(xiàn)IVI-COM就不是問題了,又例如:

Data Type   ViString

Access      R

Applies to   <capability>

Coercion    None

High Level Functions

該列表定義了一個COM屬性,其屬性名為:Name ([in] LONG Index),返回值類型為ViString,輸入?yún)?shù)為長整型,ViString數(shù)據(jù)類型和MFC中的CString類似。

限于篇幅這里不詳細列出實現(xiàn)代碼細節(jié),具體的文檔還可以參考以下網(wǎng)址:

http://www.ivifoundation.org/Default.htm

http://www.gongkong.com/tech/class/detail.asp?id=373

http://www.tmworld.com.cn/Cstmf/BCsy/AtcShow.asp?AID=2918

http://www.mathworks.com/access/helpdesk/help/toolbox/instrument/ch_ivi-6.html

虛擬儀器名詞掃盲(http://www.pansino.com.cn/bbs/dispbbs.asp?boardID=12&ID=205&page=1)

VIRTUAL INSTRUMENTS :虛擬儀器(其實VIRLTUAL 真實意思有一層與虛擬截然不同的意思,實 質,真實...

VIRTUAL INSTRUMENTATION:注意INSTRUMENT :儀器, INSTRUMENTATION:乃是指測量測試的方 法,技術.

LABVIEWLaboratory Virtual Instrument Engineering Workbench.

GPIB(HP-IBIEEE488):General Purpose Interface Bus,Hewlett-Packard Interface Bus, IEEE 488

Bus都是同一個東西,用來控制臺式儀器的通訊協(xié)議(當然既要有軟也要有硬方面的規(guī)范了),和后來IEEE 488.2

SCPIStandard Commands for Programmable Instruments ,可程控儀器標準指令集。

VISAVirtual Instrument Software Architecture,虛擬儀器軟件架構

IVI driver:Inerchangeable Virtual Instrauments Driver 可互換虛擬儀器驅動               VXI(IEEE 1155)VMEbus eXtensions for Instrumentation(VME:VERSAbus Module Eurocard) 
               VME
總線是70年代末80年代初時由Motorola,Signatic等公司創(chuàng)立的一計算機總線。

PXIPCIbus eXtensions for Instrumentation(PCIJ)

DAQData AcQuisition數(shù)據(jù)采集,多指基于計算機的板卡及插卡式儀器的DAQ

SCXISignal Conditioning eXtensions for Instrumentation,NI自定義的一專用于信號條理 
領域的“總線”

CompactPCI   一種堅固的模塊化結構,結合了PCI電氣規(guī)范與Eurocard封裝。適合于工業(yè)計算應用。

GPIB   General-Purpose Interface Bus, 通用接口總線。一種8位的并行通信接口。根據(jù)IEEE 488-1987 標準,數(shù)據(jù)傳輸速率可達1Mbyte/s

Industrial PC   工業(yè)計算機,或稱為工控機,一種能夠承受工業(yè)環(huán)境的計算機。 
   
 MXI-2  
一種PCI系統(tǒng)與VXI系統(tǒng)間的總線擴展器。由此PCI系統(tǒng)可以像內(nèi)置VXI控制器一樣控制VXI  
MXI-3  
一種PCIPCI的橋(PCI-PCI bridge),用于以臺式計算機遠程控制PXI機箱。
PICMG   PCI Industrial Computer Manufacture Group, PCI工業(yè)計算機制造商協(xié)會。一個會員公司的組織,維護目前的CompactPCIPCI/ISA規(guī)范。http://picmg.com 
PXI  
一種基于PCI的堅固、模塊化的結構,具有專為測試與測量應用設計的電氣規(guī)范與時鐘電路。 
PXI System Alliance    PXI
系統(tǒng)聯(lián)盟,一個全球生產(chǎn)商與系統(tǒng)集成商的組織?刂PXI規(guī)范,定義用于測試與測量、工業(yè)自動化  與數(shù)據(jù)采集應用的CompactPCI產(chǎn)品系統(tǒng)級要求。
RTSI Bus   
實時系統(tǒng)集成(Real-Time System Integration)總線。一種局部總線,通過在插入式數(shù)據(jù)采集卡    或儀器類板卡間直接連線實現(xiàn)計數(shù)器、時鐘和觸發(fā)信號的共享。 
Star Trigger  
星形觸發(fā)。組合了第二槽(Slot 2)的左側局部總線,用于為第3槽至第15槽提供高精度、低  偏移的觸發(fā)。
Trigger Lines   
觸發(fā)線。PXI總線上的信號線,專門用于在模塊間傳送觸發(fā)信號。
VISA 
  提供LabVIEWCVI、Measurement StudioC、C++Visual Basic等各個編程環(huán)境與編程語言之間的接口。 
VXI 
一種工業(yè)標準的儀器總線,基于VME總線,主要用于模塊化的單卡儀器(instrument-on-a-card)系統(tǒng)。 
VXIplug&play 
標識硬件和軟件與VXIplug&play 系統(tǒng)聯(lián)盟(VXIplug&play System Alliance)規(guī)范的一致性。VISA是該聯(lián)盟的官方軟件語言。

您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術有限公司. 版權所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關心和支持過ChinaUnix的朋友們 轉載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP