基于VC的GPIB儀器遠程測量系統實現方法
4 GPIB在功率測量系統中的應用
下面以Agilent E4407功率計的遠程測量系統為例來進行說明。為實現計算機對功率計的遠程控制,需要通過VC調用GPIB接口控制卡驅動程序接口函數。一般最常用到的函數有ibdev (GPIB接口控制卡初始化設置函數)、ibwrt(寫字符串命令函數)和ibrda(讀字符串命令函數)。以下是測量程序的部分控制代碼,其作用是通過GPIB接口卡對功率計進行初始化,并對功率計進行讀寫操作。
首先是初始化GPIB卡,以使其具備控制和通信能力;然后初始化儀器,使儀器完成與GPIB的連接,并對儀器進行相關的初始化操作,其代碼如下:
int m_iBoardIndex;//GPIB卡號此處為0
int m_iGPIBDev; //GPIB設備
int m_iSecondGPAdd;//GPIB設備第二地址
int m_iGPAddress; //GPIB地址此處設為19
char buf_pow[20];//數據緩存
InitGPIBDev();//初始化函數
{m_iGPIBDev=ibdev(m_ilndex,m_iG-PAdd,m_iSecAdd,Tls,1,0);
//初始化功率計,GPIB接口卡的地址為0、功率計的主地址為19,沒有輔地址、超時設置為1S、使用默認傳輸結束方式。
ibwrt(m_iGPIBDev,“*RST?”);//儀器復位
ibwrt(m_iGPIBDev,“*CLS?”);//清除狀態寄存器
ibwrt(m_iGPIBDev,“*SRE 0”);//允許服務請求
ibwrt(m_iGPIBDev,“*ESE 0”);//允許標準事件狀態
ibwrt(m_iGPIBDev,“:STAT:PRES”);//預調整狀態
ibwrt(m_iGPIBDev,“:FUNC:ON‘POW’”);//顯示屏進行顯示
}
其次是功率測量與顯示??刂苾x器完成相應的測量和顯示時,首先也應初始化相關變量,其代碼如下:
程序運行后,首先還應對GPIB卡和GPIB儀器進行初始化,并完成與儀器的連接,然后利用遠程測量程序向功率計發送測量命令“:MEA-SURE:POW?”進行功率測量,之后再通過ibrda(m_iGPIBDev,buf_pow,20)函數讀取功率值并將讀取的數據存儲在本地開辟的數據緩存中,最后經過本地處理后將測量數據顯示在遠程測量的顯示屏上,從而實現功率計的遠程控制和測量功能,其程序界面如圖2所示。
5 結束語
在采用VC++語言的編程環境下,利用SCPI儀器控制命令進行GPIB儀器遠程測量系統的開發,其程序直觀,可讀性強,可提高測量效率。此外,利用該方法還可實現對多種GPIB儀器遠程測量系統的開發,因而具有廣泛的推廣和應用價值。
評論