freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于網(wǎng)絡(luò)的虛擬儀器測(cè)試系統(tǒng)資料(更新版)

  

【正文】 ********************數(shù)據(jù)的轉(zhuǎn)換***************************************** int j=0。i2000。 for(int i=0。preamble[6],amp。//************************************preamble的采集*************************************** viPrintf(/*oscillograph*/m_Session,:waveform:preamble?\n)。而該數(shù)據(jù)點(diǎn)的個(gè)數(shù)是由指令:waveform:points來(lái)進(jìn)行設(shè)定的。而對(duì)于測(cè)量的結(jié)果的顯示,我是通過(guò)一個(gè)彈出式信息對(duì)話框的形式來(lái)進(jìn)行的,這樣做比較的簡(jiǎn)明清楚。安捷倫并不推薦這種方式,因?yàn)檠h(huán)等待的時(shí)間是會(huì)變化的,促使你的程序的崩潰。一旦初始化正確,就可以進(jìn)行數(shù)據(jù)的采集工作了。4 示波器模塊 Agilent 54622D 100MHz混合信號(hào)示波器介紹Agilent 54622D混合信號(hào)示波器(MSO)具有100MHz 的帶寬,200MS/S采樣率, 2MB通道的MegaZoom深存儲(chǔ)器以及2+16通道有2個(gè)模擬通道和16個(gè)數(shù)字通道,組合了示波器對(duì)信號(hào)的詳盡分析和邏輯分析儀的多通道定時(shí)測(cè)量能力。這樣就比較的清晰。其中下面的語(yǔ)句給我?guī)?lái)了一定的問(wèn)題:nID_Select_Modul=GetCheckedRadioButton(IDC_RADIO_BW,IDC_RADIO_FM)。 break。CheckWaveRadioButton()。break。break。}void CGENERATER::OnRadioRamp() { (FALSE)。我懷疑是這個(gè)原因,于是對(duì)混亂的ID進(jìn)行的重新的排序。而且還出現(xiàn)了跟另外一組的單選按鈕出現(xiàn)了沖突。在彈出時(shí),各個(gè)參數(shù)都有其初始值以方便用戶。}}MessageBox(Successfully!)。 viPrintf(/*funcgen*/,FUNC:SQU:DCYC %f\n,m_nDcycle)。 switch(nID_Select_Modul)//對(duì)用戶通過(guò)單選按鈕選擇的調(diào)制參數(shù)的判斷 { case IDC_RADIO_BW://無(wú)調(diào)制情況 viPrintf(/*funcgen*/,OUTPut:LOAD %s\n,m_nResistance)。 viQueryf(vi,Freq?\n,%t,m_sFreq)。:APPL:RAMP注意:函數(shù)viPrintf()和viScanf()都是單向的傳送命令和數(shù)據(jù),而函數(shù)viQueryf()則是雙向的傳送數(shù)據(jù)和命令??梢钥闯龈袷交钍且曰剀嚪鳛橛|發(fā)命令的,只有\(zhòng)n才能使命令有效,舍去將視為字符串處理。freq 2000。有了界面和思路之后就可以進(jìn)行底下的編程操作了。也可以通過(guò)進(jìn)入相應(yīng)的模塊操作之后來(lái)對(duì)該按鈕進(jìn)行屏蔽操作。 函數(shù)信號(hào)發(fā)生器的界面以及編程構(gòu)思因?yàn)槲乙瓿扇齻€(gè)模塊的設(shè)計(jì):33250A函數(shù)信號(hào)發(fā)生器,54622D示波器以及E1412A萬(wàn)用表的設(shè)計(jì)工作,所以最初的設(shè)計(jì)是設(shè)計(jì)一個(gè)主界面,通過(guò)三個(gè)按鈕的點(diǎn)擊來(lái)分別進(jìn)入不同的模塊如下圖所示:圖3-6后來(lái)通過(guò)考慮,感覺(jué)這樣的設(shè)計(jì)不夠人性化和可操作性,也不太符合實(shí)際情況。當(dāng)IO接口配置完之后,就可以使用Agilent VISA或Agilent SICL庫(kù)對(duì)分配的儀器進(jìn)行編程了。其他兩個(gè)組件則用的不多。play標(biāo)準(zhǔn)的I/O應(yīng)用程序和儀器驅(qū)動(dòng)。如下所示: 圖3-1如下面的例子:GPIB接口系統(tǒng)由裝由兩個(gè)82350GPIB卡的PC機(jī)和三臺(tái)GPIB儀器通過(guò)GPIB電纜進(jìn)行連接。在這種情況下,就可以使用VISA的格式化IO或非格式化IO含糊來(lái)對(duì)消息基器件進(jìn)行編程。在VISA中也學(xué)習(xí)了幾個(gè)接口的編程。當(dāng)你關(guān)閉一個(gè)會(huì)話時(shí),所有為會(huì)話分配的數(shù)據(jù)結(jié)構(gòu)都會(huì)被釋放掉。在我后來(lái)的編程過(guò)程中,也基本上就用到了這幾個(gè)函數(shù)的功能。vi)。接下來(lái)就是去了解VISA I/O庫(kù)?,F(xiàn)在通過(guò)達(dá)200MSa/s的采樣率,12bit分辨率和64K點(diǎn)的存儲(chǔ)器深度,您可建立無(wú)限多種信號(hào),以精確適應(yīng)您的應(yīng)用要求。n 當(dāng)準(zhǔn)備查詢時(shí),使用函數(shù)viWaitOnEvent來(lái)檢查隊(duì)列事件。VISA允許應(yīng)用程序在同一個(gè)會(huì)話中對(duì)一種事件類型安裝多個(gè)句柄。事件不會(huì)被傳遞,除非相應(yīng)的事件被啟用。VISA提供了格式化和非格式化的程序。首先,你必須通過(guò)默認(rèn)資源管理器的viOpenDefaultRM函數(shù)來(lái)建立一個(gè)會(huì)話。傳遞給viGetAttribute函數(shù)的指針必須指向那個(gè)屬性的準(zhǔn)確類型:ViUInt16,ViInt32,等等。 VISA編程 在VISA的編程中需要了解VISA的一些機(jī)制: VISA的資源和屬性、會(huì)話使用、發(fā)送I/O命令、使用事件與句柄、捕抓錯(cuò)誤等等。 Agilent VISA 是一個(gè)IO庫(kù),可以用來(lái)開(kāi)發(fā)符合VXIpp標(biāo)準(zhǔn)的IO應(yīng)用軟件和儀器的驅(qū)動(dòng)。通過(guò) Visual C++,可以方便的設(shè)計(jì)程序。 圖1-2與硬件結(jié)構(gòu)相對(duì)應(yīng),軟件結(jié)構(gòu)可分為網(wǎng)絡(luò)測(cè)控系統(tǒng)控制主模塊,是系統(tǒng)控制的中樞,連接和控制各子模塊;虛擬信號(hào)源、虛擬萬(wàn)用表和虛擬示波器等模塊,是控制相應(yīng)臺(tái)式儀器,使其完全能處于遠(yuǎn)程虛擬控制狀態(tài),給測(cè)控對(duì)象提供激勵(lì)信號(hào),并監(jiān)視受控對(duì)象輸出特性變化;虛擬VXI儀器和信號(hào)調(diào)理模塊是控制SCXI和VXI硬件模塊儀器進(jìn)行模擬量數(shù)據(jù)采集與開(kāi)關(guān)量對(duì)象控制,包括數(shù)據(jù)處理;圖象采集模塊,;網(wǎng)絡(luò)通信模塊承擔(dān)不同總線模塊與主模塊之間的數(shù)據(jù)傳輸與通信,也是實(shí)現(xiàn)本測(cè)控系統(tǒng)與遠(yuǎn)程用戶之間的控制與數(shù)據(jù)傳送。Agilent IO庫(kù)允許通過(guò)LAN進(jìn)行儀器的控制操作。客戶機(jī)是用戶與系統(tǒng)的交互接口,提供一個(gè)用戶界面,完成用戶命令與數(shù)據(jù)的輸入,顯示服務(wù)器送回的結(jié)果。一個(gè)大的復(fù)雜的測(cè)試系統(tǒng)由各個(gè)子系統(tǒng)組成,每個(gè)子系統(tǒng)一般在一個(gè)單位的小范圍內(nèi),因此可建立局域網(wǎng),然后將每個(gè)局域網(wǎng)互聯(lián),形成企業(yè)測(cè)量系統(tǒng)。對(duì)于有些危險(xiǎn)的、環(huán)境惡劣的不適合人員操作的數(shù)據(jù)采集工作可實(shí)行遠(yuǎn)程采集,將采集的數(shù)據(jù)放在服務(wù)器中供用戶使用。用戶可根據(jù)測(cè)試的需要,自己設(shè)計(jì)所需要的儀器系統(tǒng),利用一種或多種功能的通用模塊,調(diào)用不同功能的軟件模塊,組成不同的儀器功能。1 基于網(wǎng)絡(luò)的虛擬儀器測(cè)試系統(tǒng) 概述隨著計(jì)算機(jī)技術(shù)、通信技術(shù)與儀器技術(shù)的不斷發(fā)展,使得虛擬儀器得到了進(jìn)一步發(fā)展,虛擬儀器將計(jì)算機(jī)資源與儀器硬件、數(shù)字信號(hào)處理技術(shù)結(jié)合,把廠家定義儀器功能的方式轉(zhuǎn)變?yōu)橛捎脩糇约憾x儀器功能。重要的數(shù)據(jù)實(shí)行多機(jī)備份,提高了系統(tǒng)的可靠性。根據(jù)測(cè)試系統(tǒng)各部分所處的地理位置和覆蓋的范圍不同可構(gòu)建局域網(wǎng)、城域網(wǎng)、廣域網(wǎng)??蛻魴C(jī)程序和服務(wù)器程序可以運(yùn)行在一臺(tái)計(jì)算機(jī)中,也可運(yùn)行在兩臺(tái)或多臺(tái)計(jì)算機(jī)中,Client程序與Server程序相互協(xié)同處理,一個(gè)測(cè)試系統(tǒng)由一個(gè)或承擔(dān)不同任務(wù)的多個(gè)客戶機(jī)與一個(gè)或多個(gè)服務(wù)器組成。設(shè)計(jì)時(shí)需考慮網(wǎng)絡(luò)的帶寬要滿足傳輸要求,并減少網(wǎng)絡(luò)數(shù)據(jù)傳輸量。網(wǎng)關(guān)包含了LAN服務(wù)器軟件,LAN(TCP/IP)軟件以及用于和客戶機(jī)通訊和控制儀器的儀器驅(qū)動(dòng)軟件。 Visual C++ 在眾多的程序語(yǔ)言中,Visual C++。如果你使用新的儀器或開(kāi)發(fā)IO應(yīng)用程序以及儀器驅(qū)動(dòng)的話,也應(yīng)該使用VISA。一臺(tái)網(wǎng)絡(luò)計(jì)算機(jī)能夠通過(guò)網(wǎng)絡(luò)訪問(wèn)配置VISA地址譬如GPIB接口地址上的儀器。通過(guò)使用viSetAttribute函數(shù)來(lái)修改指定的會(huì)話、事件或查找列表的讀寫(xiě)屬性。會(huì)話必須在默認(rèn)的資源管理器中被首先打開(kāi),接著是你將會(huì)使用的每一種資源。當(dāng)你為一個(gè)器件建立一個(gè)通訊會(huì)話時(shí),通過(guò)使用VISA的I/O程序來(lái)啟動(dòng)與該器件的通訊。事件類型包括服務(wù)請(qǐng)求,中斷和硬件觸發(fā)??梢允褂煤瘮?shù)viInstallHandler安裝事件句柄,而使用函數(shù)viEnableEvent來(lái)啟動(dòng)一個(gè)或多個(gè)事件。為了使用隊(duì)列法來(lái)接收事件發(fā)生時(shí)的通知消息,步驟如下:n 使用函數(shù)viEnableEvent來(lái)使能一個(gè)或多個(gè)事件。當(dāng)標(biāo)準(zhǔn)信號(hào)還不能滿足您的要求時(shí),33250A可簡(jiǎn)化生成任意波形的過(guò)程,并贈(zèng)強(qiáng)這些自定義信號(hào)的性能。 通過(guò)查看“自動(dòng)測(cè)試系統(tǒng)”課本上的例子,對(duì)自己編寫(xiě)函數(shù)信號(hào)發(fā)生器的界面有了一定的模型和認(rèn)識(shí)。//打開(kāi)地址為22的GPIB器件viOpen(defaultRM, GPIB0::22::INSTR,VI_NULL,VI_NULL,amp。}這里涉及到了5個(gè)VISA函數(shù):viOpenDefaultRM,viOpen,viPrintf,viScanf,viClose。函數(shù)viClose是用于關(guān)閉每一個(gè)會(huì)話的。頭文件和庫(kù)文件的搜索路徑也可以進(jìn)行更改:選擇ToolsOptions點(diǎn)擊Directories按鈕,就可以對(duì)頭文件和庫(kù)文件的路徑進(jìn)行更改了。接著,消息基器件就會(huì)解釋SCPI命令。PC機(jī)和儀器之間的通訊是通過(guò)GPIB卡和GPIB電纜來(lái)實(shí)現(xiàn)的。Agilent VISA――Agilent Virtual Instrument Software Architecture(VISA)是一個(gè)開(kāi)發(fā)符合VXIplugamp。我在三個(gè)模塊的編程過(guò)程中,經(jīng)常通過(guò)該組建來(lái)了解相關(guān)的信息。IO Config分配一個(gè)接口名字和一個(gè)邏輯單元數(shù)字給一個(gè)硬件接口,就象其他接口配置參數(shù)一樣。對(duì)VISA和IO庫(kù)以及其相關(guān)的組件有了一定的認(rèn)識(shí)之后,通過(guò)網(wǎng)上和書(shū)本上的資料了解了函數(shù)信號(hào)發(fā)生器的基本功能和相關(guān)的參數(shù),我便開(kāi)始了界面的設(shè)計(jì)以及編程的構(gòu)思。建立會(huì)話后,將會(huì)把建立會(huì)話按鈕變?yōu)殛P(guān)閉會(huì)話按鈕,來(lái)進(jìn)行會(huì)話的關(guān)閉操作。這是一個(gè)最基本的函數(shù)信號(hào)發(fā)生器模塊,具備基本的功能參數(shù)。在指令的測(cè)試過(guò)程中,也遇到了一些問(wèn)題:如viPrintf(funcgen,func:shape tri。而當(dāng)我在AM:SOUR?\n加上一個(gè)回車符后,就可以執(zhí)行正確了。TRG\n連接多個(gè)SCPI命令時(shí),使用分號(hào)和冒號(hào)(冒號(hào)表示不同的命令系統(tǒng))如:OUTP:LOAD 50。如果以這種方式執(zhí)行的話,執(zhí)行的結(jié)果是m_sFreq和m_sVolt是同一個(gè)值,當(dāng)把語(yǔ)句改為如下的形式的時(shí)候就正常了:Cstring m_sFreq,m_sVolt。通過(guò)GetCheckedRadioButton()函數(shù)獲得。 viPrintf(/*funcgen*/,VOLT:OFFS %f\n,m_nOffs)。 break。當(dāng)用戶選擇調(diào)制方式的時(shí)候,會(huì)彈出對(duì)話框以提供用戶的輸入操作:圖3-10可以看出在該界面中共有四種調(diào)制方式,也是最基本的調(diào)制方式。我現(xiàn)在遇到的問(wèn)題就是,已經(jīng)將單選按鈕組合在一起了,也能實(shí)現(xiàn)單選了,可是,單擊的波形,與設(shè)計(jì)的并不一樣,也就是各個(gè)單選按鈕之間的功能出現(xiàn)了紊亂。并沒(méi)有順序的進(jìn)行ID的定義。}void CGENERATER::OnRadioFwave() { (TRUE)。 case IDC_RADIO_FWAVE:m_nBaseShape=SQU。 case IDC_RADIO_PULSE:m_nBaseShape=PULSE。//設(shè)置同步信號(hào)注意:下面這個(gè)是一個(gè)子程序,用來(lái)對(duì)用戶的選擇進(jìn)行判斷,并將用戶選擇的波形的相應(yīng)的參數(shù)傳遞給一個(gè)字符串變量中。 if(error!=VI_SUCCESS) {error_handler(/*funcgen*/m_Session,error)。上面的程序中對(duì)方波進(jìn)行了特別的處理,因?yàn)檎伎毡戎贿m合方波,所以對(duì)方波進(jìn)行另行的處理。我就利用基本波作為調(diào)制波,而通過(guò)另外一組單選按鈕來(lái)進(jìn)行載波的配置。在我的函數(shù)信號(hào)發(fā)生器的主面板中還有復(fù)位按鈕和測(cè)試硬件連接情況的按鈕,一切從用戶的方便操作來(lái)進(jìn)行考慮。示波器的初始化建立通道配置和標(biāo)簽,起始電壓,觸發(fā)配置以及時(shí)間軸與采集類型。你可以置示波器為運(yùn)行模式,并在你的程序中使用一個(gè)等待循環(huán)來(lái)確保在你進(jìn)行測(cè)量之前示波器至少完成了一個(gè)采集工作。而用戶有時(shí)需要對(duì)示波器的參數(shù)進(jìn)行更改,所以需要提供給用戶一個(gè)設(shè)置參數(shù)的對(duì)話框。通過(guò)指令:waveform:unsigned,:waveform:byteorder,:waveform:format 中的任意一個(gè)指令來(lái)對(duì)二進(jìn)制數(shù)據(jù)進(jìn)行格式化操作。 viPrintf(/*oscillograph*/m_Session,:DIGITIZE %s\n,)。preamble[5],amp。 unsigned char temp[2000]。 for(i=18。至于這個(gè)我采用了別人給我的一個(gè)類,通過(guò)該類我可以比較輕松的進(jìn)行數(shù)據(jù)的顯示工作。k++) { [k]=(((float)temp[k]preamble[9])*preamble[7]+preamble[8])*m_Y。 =+20。于是,我開(kāi)始接觸線程,并去了解線程,并通過(guò)書(shū)本上的例子的練習(xí),加深了解以及和同學(xué)進(jìn)行探討,終于將問(wèn)題得以解決。 ()。 Agilent E1412A 通過(guò)閱讀Agilent E1412A的用戶使用手冊(cè),了解到Agilent E1412A能進(jìn)行高精度的測(cè)量。最簡(jiǎn)單的測(cè)量是通過(guò)使用MEASURE命令來(lái)進(jìn)行的,該命令用來(lái)配置函數(shù),啟動(dòng)測(cè)量和置數(shù)據(jù)于緩沖區(qū)以便計(jì)算機(jī)利用IO命令的讀取。每個(gè)測(cè)量以LF(換行符)結(jié)束。這里給出了程序的部分代碼如下://這里對(duì)萬(wàn)用表的輸入輸出以及采樣進(jìn)行設(shè)置,而這些參數(shù)的值是通過(guò)用戶界面中的//控件進(jìn)行傳遞的viPrintf(/*multimeter*/,SAMPLE:COUNT%s\n,m_nStr_Sample)。 if(m_nID==0) { MessageBox(請(qǐng)先選擇測(cè)量參數(shù)!,提示信息,MB_OK)。//通過(guò)函數(shù)viScanf()來(lái)讀取讀取數(shù)據(jù),并通過(guò)一個(gè)彈出式信息框?qū)y(cè)量結(jié)果進(jìn)行顯示 char buff[1
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1