《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于嵌入式LXI代理模塊SCPI命令轉(zhuǎn)換設(shè)計(jì)
基于嵌入式LXI代理模塊SCPI命令轉(zhuǎn)換設(shè)計(jì)
2015年電子技術(shù)應(yīng)用第1期
錢 璐,李 哲,楊 芳
西安郵電大學(xué) 電子工程學(xué)院,陜西 西安710061
摘要: 為了使非LXI(LAN eXtensions for Instrumentation)接口的儀器儀表可以接入到支持LXI標(biāo)準(zhǔn)的儀器儀表系統(tǒng)中,并且能夠同時(shí)使用SCPI(Standard Commands for Programmable Instruments,SCPI)標(biāo)準(zhǔn)可編程儀器命令對(duì)設(shè)備進(jìn)行統(tǒng)一管理,提出一種基于嵌入式LXI代理模塊的SCPI命令轉(zhuǎn)換方法。通過對(duì)USB數(shù)據(jù)包流圖的捕獲,驗(yàn)證了USB主機(jī)驅(qū)動(dòng)的編程是成功的,并且通過上位機(jī)發(fā)送查詢和控制命令,實(shí)現(xiàn)了LXI接口規(guī)范以及SCPI命令與廠家自定義命令之間的轉(zhuǎn)換。
中圖分類號(hào): TP216
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2015)01-0053-04
Design and implementation of the SCPI command transformation for embedded LXI agent module
Qian Lu,Li Zhe,Yang Fang
School of Electronic Engineering, Xi′an University of Posts and Telecommunications,Xi′an 710061,China
Abstract: In order to make the non-LXI instrumentation interface instrument access to the instrumentation system of supporting LXI standard, and simultaneously also apply the standard programmable instruments command to manage equipment and device uniformly,a method of SCPI command conversion based on embedded LXI agent module is proposed. By means of capturing the datagram of USB, verifying the USB host-driven programming is successful.And through sending the query and control commands from the host computer,we can achieve the LXI interface specification,and implement the conversion between the SCPI commands and the manufacturers custom commands.
Key words : LXI;instrumentation;SCPI command;command conversion

  

0 引言

  本文以計(jì)算機(jī)技術(shù)為基礎(chǔ),實(shí)現(xiàn)通過以太網(wǎng)對(duì)分布式儀器設(shè)備進(jìn)行管理,并能夠通過統(tǒng)一的命令對(duì)各個(gè)儀器設(shè)備進(jìn)行控制。

  LXI[1]儀器設(shè)備的主要功能包括了網(wǎng)絡(luò)通信功能和傳統(tǒng)儀器的測(cè)試測(cè)量功能。但是,目前大部分儀器設(shè)備都是基于RS232、USB、GPIB等儀器總線的,直接將其改造成LXI儀器設(shè)備是比較困難的,通過嵌入式轉(zhuǎn)接模塊,即代理服務(wù)器將具有RS232、USB、VXI等接口的儀器設(shè)備連接到以太網(wǎng)中,使其具有LXI協(xié)議規(guī)定的網(wǎng)絡(luò)通信功能;儀器程控命令SCPI[2]面向的是測(cè)量功能的描述,不是直接描述儀器的操作,能夠使用同樣的命令和參數(shù),控制具有相同功能的儀器。而傳統(tǒng)的儀器設(shè)備傳輸?shù)目刂泼钍歉鲝S商自己規(guī)定的儀器命令,不具有統(tǒng)一的信息格式和語法結(jié)構(gòu),在此本文將對(duì)非SCPI標(biāo)準(zhǔn)命令與標(biāo)準(zhǔn)SCPI命令進(jìn)行解析和對(duì)比,最后實(shí)現(xiàn)兩者之間的轉(zhuǎn)化。

  本文使用基于ARM Cortex-M3內(nèi)核的LPC1768處理器的嵌入式LXI代理模塊[3],實(shí)現(xiàn)USB接口和以太網(wǎng)接口的橋接,將支持USB接口的可編程儀器接入以太網(wǎng),便于計(jì)算機(jī)遠(yuǎn)端訪問和管理[4],并解決標(biāo)準(zhǔn)SCPI命令語言和非標(biāo)準(zhǔn)儀器命令語言的編程和解析,進(jìn)行二者之間的轉(zhuǎn)換,實(shí)現(xiàn)儀器語言的標(biāo)準(zhǔn)化。

1 嵌入式LXI代理模塊的研究

  1.1 LXI標(biāo)準(zhǔn)

  LXI基于LAN的標(biāo)準(zhǔn),是繼GPIB、VXI、PXI等傳統(tǒng)儀器接口的新一代總線技術(shù)。LXI標(biāo)準(zhǔn)根據(jù)同步與觸發(fā)方式的不同,將LXI儀器分為3種基本類型A、B、C 類:C類是最簡單最基本的一類,沒有對(duì)觸發(fā)作出特殊要求,是局域網(wǎng)一致性的實(shí)現(xiàn),該類通過SCPI命令可以實(shí)現(xiàn)儀器與計(jì)算機(jī)之間的信息交互;B類在具有C類的全部功能之外,加入了IEEE 1588精密時(shí)鐘同步協(xié)議;A 類除了具有B 類的全部功能外,還加入硬件觸發(fā)總線[5]。

  1.2 嵌入式代理模塊

  嵌入式代理是指在LPC1768微處理器以及外圍電路所組成的ARM板子上,運(yùn)行代理服務(wù)器程序,支持網(wǎng)絡(luò)管理協(xié)議SNMP,同時(shí)支持USB與LAN互相通信,傳輸測(cè)量命令和數(shù)據(jù),實(shí)現(xiàn)對(duì)測(cè)試設(shè)備的網(wǎng)絡(luò)管理。

  嵌入式代理模塊完成的主要功能如下:硬件方面,需要滿足LXI C類規(guī)范;軟件方面作為服務(wù)器端,接收目標(biāo)服務(wù)器的命令,以現(xiàn)場(chǎng)設(shè)備即客戶端能夠識(shí)別的格式傳輸測(cè)量數(shù)據(jù)命令給客戶端,客戶端返回測(cè)量數(shù)據(jù)后,代理服務(wù)器以真正的目標(biāo)服務(wù)器能夠識(shí)別的格式回傳給目標(biāo)服務(wù)器;當(dāng)接收客戶端傳達(dá)的命令,測(cè)量設(shè)備的參數(shù)作出相應(yīng)的修改;而客戶端主要是時(shí)刻向服務(wù)器匯報(bào)當(dāng)前現(xiàn)場(chǎng)儀器的狀態(tài),將突發(fā)的異常信號(hào)反饋給服務(wù)器,做出相應(yīng)處理。具體代理模塊在整個(gè)測(cè)試系統(tǒng)中所處的位置如圖1所示。

001.jpg

  本文中硬件基于ARM Cortex-M3處理器,代理軟件是運(yùn)行在以ARM Cortex-M3為處理器的嵌入式計(jì)算機(jī)上的。代理軟件構(gòu)成了服務(wù)器,主要是實(shí)現(xiàn)網(wǎng)絡(luò)管理分布式設(shè)備以及傳輸儀器命令數(shù)據(jù)的功能。具體的物理模塊如圖2所示。

002.jpg

2 系統(tǒng)硬件平臺(tái)的搭建

  本系統(tǒng)主要由LXI代理模塊、LXI總線設(shè)備儀器、路由器和裝有LabVIEW 2010的PC構(gòu)成。通過路由器可以完成多個(gè)LXI總線設(shè)備儀器與PC間的數(shù)據(jù)通信。PC作為系統(tǒng)的控制器,主要完成與儀器之間的通信,并把以太網(wǎng)的數(shù)據(jù)格式轉(zhuǎn)換成USB的數(shù)據(jù)格式,同時(shí)在這個(gè)過程中實(shí)現(xiàn)非標(biāo)準(zhǔn)SCPI命令與標(biāo)準(zhǔn)SCPI命令之間的轉(zhuǎn)換。LXI代理模塊主要完成將不具有LXI總線C類設(shè)備特性的儀器接入到以太網(wǎng)中,實(shí)現(xiàn)LAN通信功能以及C類設(shè)備的觸發(fā)同步功能。LXI代理模塊的硬件結(jié)構(gòu)如圖3所示。

003.jpg

  從圖3可以看出,該硬件平臺(tái)包括ARM芯片LPC1768以及外圍功能電路模塊。外圍電路模塊有電源、以太網(wǎng)接口、USB接口、復(fù)位系統(tǒng)、JTAG接口等[6]。這些模塊協(xié)同工作,最終實(shí)現(xiàn)將LXI總線設(shè)備儀器接入以太網(wǎng)中的功能。

3 系統(tǒng)軟件設(shè)計(jì)與實(shí)現(xiàn)

  3.1 系統(tǒng)軟件整體設(shè)計(jì)


004.jpg

  軟件主要由以下四部分組成,具體結(jié)構(gòu)圖如圖4所示。

  (1)μC/OS-II操作系統(tǒng)的移植;

  (2)以太網(wǎng)協(xié)議棧的移植;

  (3)USB-HOST驅(qū)動(dòng)程序的編寫;

  (4)標(biāo)準(zhǔn)SCPI命令與非標(biāo)準(zhǔn)SCPI命令之間的轉(zhuǎn)換。

  由于論文篇幅有限,軟件設(shè)計(jì)的前三部分不作詳細(xì)敘述,下面僅介紹SCPI命令轉(zhuǎn)換部分的軟件實(shí)現(xiàn)。

  3.2 SCPI命令轉(zhuǎn)換實(shí)現(xiàn)

  3.2.1 SCPI簡介

  SCPI是基于IEEE488.2標(biāo)準(zhǔn)的測(cè)量儀器程控命令[7],對(duì)程控命令的數(shù)據(jù)格式、響應(yīng)消息、語法結(jié)構(gòu)、關(guān)鍵詞定義的方式給出了標(biāo)準(zhǔn)化的定義,其目的是能夠統(tǒng)一使用該命令系統(tǒng)控制不同廠家的程控儀器。SCPI的通信模型如圖5所示。

005.jpg

  3.2.2 SCPI命令與示波器命令間的轉(zhuǎn)換

  本課題所使用的是泰克TDS2000系列的示波器,首先需要找出示波器和SCPI命令中功能相同命令的對(duì)應(yīng)關(guān)系,然后通過軟件程序的轉(zhuǎn)換,將輸入的SCPI命令在LXI代理模塊上通過內(nèi)部的轉(zhuǎn)換直接轉(zhuǎn)換成示波器可以識(shí)別的命令,傳輸給示波器后,控制示波器。

  實(shí)現(xiàn)示波器的編程命令與標(biāo)準(zhǔn)SCPI命令的相互轉(zhuǎn)換是本文需要做的主要工作。具體實(shí)現(xiàn)的過程是,在嵌入式LXI代理模塊上,USB接口和以太網(wǎng)接口調(diào)通的工作完成之后,實(shí)現(xiàn)類似SCPI標(biāo)準(zhǔn)的示波器編程命令轉(zhuǎn)換成標(biāo)準(zhǔn)SCPI命令的相關(guān)代碼。整個(gè)通信的過程具體如圖6所示。

006.jpg

  從上圖中可以看出PC(即控制器)與嵌入式LXI代理模塊是通過以太網(wǎng)接口相連,而LXI代理模塊又通過USB接口和示波器相連,從硬件上實(shí)現(xiàn)了LXI C類標(biāo)準(zhǔn);將μC/OSII系統(tǒng)移植于代理模塊中,用于代理服務(wù)器任務(wù)調(diào)度的管理,驅(qū)動(dòng)層實(shí)現(xiàn)了USB主機(jī)驅(qū)動(dòng)和USBTMC協(xié)議,便于傳輸儀器控制命令,以太網(wǎng)通信方面進(jìn)行了Socket編程的移植,在以太網(wǎng)和USB接口能夠相互通信的基礎(chǔ)上,將以太網(wǎng)傳輸過來的SCPI標(biāo)準(zhǔn)命令轉(zhuǎn)換為類似SCPI標(biāo)準(zhǔn)的示波器命令,又以USB的包格式傳輸給示波器。

  編程部分首先需要實(shí)現(xiàn)的是將SCPI命令樹[9]進(jìn)行存儲(chǔ),為了實(shí)現(xiàn)存儲(chǔ)、插入、刪除、遍歷的快速便捷操作,本文將按照二叉樹的存儲(chǔ)方式[8]將命令樹存儲(chǔ)到程序當(dāng)中,當(dāng)以太網(wǎng)將SCPI命令發(fā)給代理模塊時(shí),代理模塊通過ucUdpDataBuff()接收命令,并對(duì)其進(jìn)行解析查找匹配的命令,取出對(duì)應(yīng)的命令號(hào),并從結(jié)構(gòu)體ComdId中得到對(duì)應(yīng)的示波器命令,處理器再通過usbDataBuff()將這個(gè)命令傳給USB接口,發(fā)送給示波器,示波器可以直接識(shí)別,然后返回相應(yīng)的應(yīng)答。

4 測(cè)試方案及結(jié)果

  4.1 測(cè)試方案

  在測(cè)試命令轉(zhuǎn)換功能時(shí),首先必須明確是通過控制器在上位機(jī)上給設(shè)備發(fā)送命令,設(shè)備收到命令之后能夠成功地做出相應(yīng)的應(yīng)答。實(shí)現(xiàn)的環(huán)境是:將計(jì)算機(jī)與LXI代理模塊通過以太網(wǎng)相連,將代理模塊的USB接口與儀器設(shè)備相連,而本文所指的設(shè)備是泰克公司的示波器TDS2014B,該設(shè)備支持USBTMC協(xié)議(即非標(biāo)準(zhǔn)SCPI命令)。

  測(cè)試的方法是在PC(控制器)上運(yùn)行LabVIEW編寫的上位機(jī)界面[10],這個(gè)界面是建立在UDP通信協(xié)議上的。代理需要建立兩個(gè)任務(wù):一個(gè)是以太網(wǎng)數(shù)據(jù)和USB數(shù)據(jù)轉(zhuǎn)換任務(wù),另一個(gè)是標(biāo)準(zhǔn)SCPI命令與非標(biāo)準(zhǔn)SCPI命令之間轉(zhuǎn)換的任務(wù)。這兩種轉(zhuǎn)換都是雙向的,發(fā)送和接收的格式都是一樣的,轉(zhuǎn)換的過程在由程序?qū)崿F(xiàn),最終將返回的數(shù)據(jù)顯示在接收數(shù)據(jù)區(qū)。

  4.2 測(cè)試過程及結(jié)果

  命令之間的成功轉(zhuǎn)換是建立在以太網(wǎng)和USB數(shù)據(jù)格式轉(zhuǎn)換的基礎(chǔ)上,PC通過以太網(wǎng)在PC端發(fā)送標(biāo)準(zhǔn)SCPI命令數(shù)據(jù)包給代理模塊,代理模塊將該命令轉(zhuǎn)換成示波器識(shí)別的命令,并通過USB接口發(fā)送給示波器,最后代理模塊需要將示波器返回的信息發(fā)給PC。圖7顯示了發(fā)送給示波器的測(cè)量命令MEASure[:SCALar]:VOLTage:FREQuency?,用于測(cè)量示波器當(dāng)前電壓的頻率值,這是一條標(biāo)準(zhǔn)的SCPI命令,所對(duì)應(yīng)的示波器執(zhí)行的命令是MEASUrement:IMMed:TYPe FREQuency,MEASUrement:IMMed:VALue?。示波器返回的值同樣如圖7所示,測(cè)得的頻率是1 kHz,可以說明完成了查詢類命令的轉(zhuǎn)換功能。

007.jpg

  對(duì)于控制命令中還有一類是設(shè)置命令,設(shè)置命令的直觀表現(xiàn)是發(fā)送的命令沒有返回?cái)?shù)據(jù),但是示波器面板上的相應(yīng)設(shè)置會(huì)實(shí)現(xiàn),這樣實(shí)現(xiàn)了控制器對(duì)設(shè)備的遠(yuǎn)程控制。這里發(fā)送的命令是將示波器的面板語言設(shè)置成英文的,標(biāo)準(zhǔn)的SCPI命令是SYSTem:LANGuage <ENGLish>,而示波器相對(duì)應(yīng)的這條命令是LANGuage ENGLish。在上位機(jī)界面的發(fā)送數(shù)據(jù)區(qū)輸入該SCPI標(biāo)準(zhǔn)指令并發(fā)送,示波器接收代理模塊轉(zhuǎn)換的指令后,示波器面板的語言由中文變成了英文,這樣即可說明標(biāo)準(zhǔn)的SCPI設(shè)置類命令轉(zhuǎn)換成示波器的命令是成功的。

5 結(jié)論

  本文在基于LPC1768 Cortex-M3系列微處理器的基礎(chǔ)上,結(jié)合μC/OS-II嵌入式操作系統(tǒng)組成了一個(gè)將USB接口儀器接入以太網(wǎng)中的代理平臺(tái),實(shí)現(xiàn)了通過標(biāo)準(zhǔn)SCPI命令網(wǎng)絡(luò)遠(yuǎn)程控制儀器設(shè)備的功能。本平臺(tái)能夠使非LXI接口的儀器儀表接入到支持LXI標(biāo)準(zhǔn)的儀器儀表系統(tǒng)中,并且能同時(shí)使用SCPI標(biāo)準(zhǔn)可編程儀器命令對(duì)設(shè)備進(jìn)行統(tǒng)一管理,具有較強(qiáng)的通用性。

  參考文獻(xiàn)

  [1] 樂天,蔡遠(yuǎn)文,解維奇,等.LXI總線標(biāo)準(zhǔn)最新進(jìn)展及發(fā)展趨勢(shì)[J].兵工自動(dòng)化,2014,33(6):48-52.

  [2] 崔猛,曹廣忠.SCPI在IGBT可靠性測(cè)試系統(tǒng)中的應(yīng)用[J].電子技術(shù)應(yīng)用,2014,40(4):88-95.

  [3] 李哲,強(qiáng)少鋒.基于USB的儀器儀表驅(qū)動(dòng)程序設(shè)計(jì)與實(shí)現(xiàn)[J].西安郵電學(xué)院學(xué)報(bào),2012,17(5):61-64.

  [4] 韓金霞,楊景常,杜煥勇,等.儀器接口平臺(tái)的通用USB接口模塊設(shè)計(jì)[J].自動(dòng)化儀表,2010,31(11):75-78.

  [5] 陳勇.LXI儀器主時(shí)鐘模塊的設(shè)計(jì)與實(shí)現(xiàn)[D].西安:西安電子科技大學(xué),2011.

  [6] 蔡長安,鐘銳.串行通信轉(zhuǎn)網(wǎng)絡(luò)通信的數(shù)據(jù)模塊的硬件設(shè)計(jì)[J].微計(jì)算機(jī)信息,2009,25(12):214-216.

  [7] Liu Guili,Kong Quancun.Design of virtual oscilloscope basedon GPIB interface and SCPI[C].Electronic Measurement & Instruments(ICEMI),2013 IEEE 11th International Confer-ence on.IEEE,2013:294-298.

  [8] 韋榮昌,賴小紅.SCPI命令解釋器的實(shí)現(xiàn)[J].信息與電子工程,2012(3):377-381.

  [9] 郭同華.數(shù)字示波表SCPI程控命令解析器設(shè)計(jì)[J].科技信息,2014(11):225,256.

  [10] Li-ying L.Design and study of strain data communication system based on LabVIEW[C].Computer Science and Information Technology,2009.ICCSIT 2009.2nd IEEE International Conference on.IEEE,2009:66-68.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: aⅴ天堂网 | www.日韩 | 亚洲专区在线 | 国产成人a在一区线观看高清 | 成人免费视频播放 | 欧美久在线观看在线观看 | 美女网站在线观看视频18 | 一级国产在线观看高清 | 第一福利在线导航 | 狠狠做狠狠做综合日日 | 亚洲成a人片在线观看播放 亚洲成精品动漫久久精久 亚洲大尺度 | 夜夜爽夜夜爱 | 日本漫画工囗全彩内番怀孕 | 欧美亚洲国产成人综合在线 | jpnesxxx日本| 中文字幕日韩一区二区 | 99国产超薄丝袜足j在线观看 | 亚洲制服丝袜第一页 | 亚洲欧美日韩中字综合 | 亚洲欧美v国产一区二区 | 久久婷婷色 | 在线观看91精品国产性色 | 中文在线 | 中文 | 国产特黄特色的大片观看免费视频 | 久久精品国产国产精品四凭 | 男女拍拍拍无挡免费视频 | 天堂网国产 | 日本在线视频二区 | 亚洲精品福利在线观看 | 成人影院在线观看完整高清bd | 日本老年人精品久久中文字幕 | 一级做a爰片久久毛片免费看 | 看日本黄大片在线观看 | 欧美日韩一区二区三区四区 | 欧美国产日韩在线播放 | 国产精品久久免费观看 | 日韩一区二区三区精品 | 韩国理论片最新第一页 | 国产精品亚洲欧美日韩一区在线 | 欧美福利网站 | a毛片全部免费播放 |