汪 鑫, 雷 勇, 涂國強, 張科比, 焦 洋
(四川大學 電氣信息學院,成都 610065)
基于虛擬儀器的遠程實驗臺的改進與實現(xiàn)
汪 鑫, 雷 勇, 涂國強, 張科比, 焦 洋
(四川大學 電氣信息學院,成都 610065)
遠程實驗臺實現(xiàn)了實驗室的資源共享,成為目前高校實驗室建設(shè)中的熱點。針對遠程實驗臺應(yīng)用需求量大而成本較高,結(jié)構(gòu)復(fù)雜的特點,提出了一種新型構(gòu)建方案。該方案主要利用單片機C8051F020代替數(shù)據(jù)采集卡作為系統(tǒng)的測控核心,通過單機和多機通信相結(jié)合的通信方式,可以實現(xiàn)客戶端遠程實時操作多個實驗項目的目標。利用Internet以及LabVIEW實現(xiàn)互聯(lián)網(wǎng)通信和平臺交互。最后結(jié)合濾波電路、步進電機驅(qū)動電路、電平轉(zhuǎn)換電路等,使用戶可以通過網(wǎng)絡(luò)終端遠程采集實驗數(shù)據(jù),搭建實驗電路,觀測實驗過程。實驗表明:新的方案不僅大大的降低了成本,也提升了系統(tǒng)性能和穩(wěn)定性,滿足了目前教學實驗改革的需求。
虛擬儀器; 單片機; 遠程實驗臺; 多機通信
近年來,國內(nèi)外的高校針對實驗教學資源的匱乏而學生需求不斷增長的現(xiàn)狀,提出了網(wǎng)絡(luò)虛擬實驗室的概念,開展了遠程實驗室方面的研究并取得了一定的進展。在國內(nèi),已有部分高校初步建立了用于教學和科研的虛擬實驗室。而針對虛擬儀器的遠程控制實驗臺的大多數(shù)設(shè)計方案是基于數(shù)據(jù)采集卡來實現(xiàn)數(shù)據(jù)采集,但由于LabVIEW對數(shù)據(jù)采集卡的兼容性和穩(wěn)定性的要求較高,大多數(shù)都會采用NI數(shù)據(jù)采集卡[1-3]。而此類數(shù)據(jù)采集卡不僅價格昂貴,功能單一,數(shù)據(jù)采集通道有限,因此必須結(jié)合單片機或其他設(shè)備進行操作??紤]到本文所涉及的實驗項目較多,實驗操作復(fù)雜,測量數(shù)據(jù)范圍較寬,如果采用數(shù)據(jù)采集卡進行數(shù)據(jù)采集,對于批量生產(chǎn)而言對成本的要求非常高。單片機是目前應(yīng)用非常成熟的高度集成化的芯片,能實現(xiàn)數(shù)據(jù)采集,串口通信,電路驅(qū)動等多種功能。因此使用單片機代替數(shù)據(jù)采集卡,作為系統(tǒng)控制核心并完成數(shù)據(jù)采集等功能,再結(jié)合自動控制技術(shù),網(wǎng)絡(luò)通信技術(shù),視頻監(jiān)控技術(shù),虛擬儀器技術(shù)等,不僅可以降低成本節(jié)約經(jīng)費,也可以完善實驗臺功能簡化結(jié)構(gòu)。
本文所設(shè)計的遠程實驗臺利用虛擬儀器、單片機、互聯(lián)網(wǎng)等平臺,使用戶可通過互聯(lián)網(wǎng)終端訪問遠程實驗室,并可自主選擇實驗操作,提交參數(shù)設(shè)定以及觀察實時反饋的實驗結(jié)果。遠程實驗臺整體結(jié)構(gòu)如圖1所示,主要分成客戶端層,服務(wù)器層,主機層,從機層。利用Internet網(wǎng)絡(luò)用戶可以在客戶層訪問到服務(wù)器的數(shù)據(jù),服務(wù)層作為客戶層與主機層之間通信的橋梁,根據(jù)客戶層的要求收集數(shù)據(jù)并反饋結(jié)果。主機層采用多機通信方式控制著從機層中各個從機,實施實驗操作從而獲得測量結(jié)果[4-6]。具體實施方案是利用單片機的ADC模塊進行數(shù)據(jù)采集,通過單片機I/O控制繼電器動作,從而搭建出不同的實驗電路。LabVIEW與單片機通過串口連接,通過可視化的圖形界面進行虛擬操作,而不同操作對應(yīng)不同指令,由此實現(xiàn)遠程實驗操作。且此系統(tǒng)正在專利申請中。
圖1 遠程實驗臺整體結(jié)構(gòu)
實驗項目包括元件伏安特性實驗、戴維寧定理、疊加定理、日光燈及功率因數(shù)提高、三相交流電路、三相異步電動機及繼電接觸器控制等基本電路實驗。 針對不同的實驗項目,電路設(shè)計有所不同,但基本都由五大模塊組成,分別是數(shù)據(jù)檢測模塊,通信模塊,控制模塊,監(jiān)視模塊,交互模塊。模塊化的設(shè)計使實驗臺具有可擴展性強,操作方便的特點[7]。
系統(tǒng)的硬件結(jié)構(gòu)框圖如圖2所示。主控芯片選擇的是來自Silicon Laboratories公司的C8051F020,是一款完全集成的混合信號系統(tǒng)級MCU芯片。具有高速CIP-51內(nèi)核,多通道帶PGA的12位ADC,多類型串行接口等主要特性,完全符合實驗項目的功能和精度要求。單片機C8051F020作為控制核心主要應(yīng)用于通信、數(shù)據(jù)采集、控制等模塊。通過主機的雙串口將服務(wù)器與從機中的各個實驗項目相連,服務(wù)器又通過互聯(lián)網(wǎng)與遠程客戶端相連,這樣的結(jié)構(gòu)實現(xiàn)了遠程控制,并保證了實驗過程的實時性和實驗數(shù)據(jù)的有效性。
圖2 系統(tǒng)硬件結(jié)構(gòu)框圖
2.1 通信模塊
UART串行總線通信是一種廣泛應(yīng)用于遠距離,低頻率,低成本的串行傳輸接口。常用的接口標準包括RS232、RS485、RS422等。采用RS232接口標準在實際應(yīng)用過程中受到的干擾較大,不利于數(shù)據(jù)傳輸,而RS485采用差分方式可以使傳輸更為穩(wěn)定有效。由于實驗臺通信結(jié)構(gòu)復(fù)雜,控制項目眾多,故主要采用RS485接口標準并結(jié)合多機通信方式進行通信[8]。實驗臺通信過程包括服務(wù)器與主機通信,主機與從機通信。服務(wù)器與主機采用串行通信方式,并利用芯片MAX3232進行電平轉(zhuǎn)換,主機與從機以及從機之間的通信主要利用MAX485將單片機的RS232接口轉(zhuǎn)換成RS485接口。如此,一個主機可以同時訪問多個從機,使通信更加靈活[9-10]。C8051F020共有兩個UART(UART0和UART1),它們的功能用法完全相同,因此以UART0為例,UART0是一個具有幀錯誤檢測和地址識別硬件的增強型串行口,并支持多處理器通信。由于MAX485工作在半雙工方式,而UART工作在全雙工形式,故與單片機的UART相連的時候需用單片機的一個引腳P71來控制數(shù)據(jù)傳送方向[11]。
2.2 控制模塊
遠程控制實驗臺涉及到的控制電路較多,主要有繼電器控制電路切換,步進電動機帶動滑動變阻器。
2.2.1 繼電器控制電路切換
繼電器是具有隔離功能的自動開關(guān)元件,可以實現(xiàn)控制電路和實驗電路的電氣隔離,從而降低干擾。同時C8051F020的P0~P3端口(共32個I/O引腳)都可以按位尋址,那么利用單片機的I/O引腳以及相應(yīng)的驅(qū)動電路最多可以控制32個繼電器開關(guān)。 繼電器驅(qū)動電路由兩個電平轉(zhuǎn)換器ULN2803和一個鎖存器74HC573組成,主要為了增強I/O接口驅(qū)動能力并提高輸出電壓以便于控制繼電器的開關(guān)。
2.2.2 步進電動機帶動滑動變阻器
實驗項目需要遠程改變負載的阻值。要實現(xiàn)此功能可以采用數(shù)字電位器,但由于數(shù)字電位器的工作電流最多只能達到幾mA,而實際電路的工作電流可能達到幾百mA,所以決定采用傳統(tǒng)的機械電位器,即將步進電動機和滑動變阻器的轉(zhuǎn)軸連接在一起,通過單片機的I/O發(fā)出指定數(shù)量的方波信號以及輸出電平高低來控制步進電動機轉(zhuǎn)動角度和方向從而改變電阻值。
2.3 數(shù)據(jù)采集模塊
數(shù)據(jù)采集模塊主要由數(shù)據(jù)預(yù)處理部分以及單片機內(nèi)部ADC組成。C8051F020內(nèi)置的ADC0子系統(tǒng)包括一個12位分辨率、10萬次/s、8通道的逐次逼近寄存器型ADC,一個可編程增益放大器(PGA0)和一個9通道的可編程模擬多路選擇器(AMUX0)。PGA對信號的放大倍數(shù)由軟件編程決定,根據(jù)不同實驗項目的需求可以將增益設(shè)定為0.5、1、2、4、8或16。ADC0的基準電壓采用外部電壓源,從而達到可測的電壓范圍0~3.0 V。數(shù)據(jù)預(yù)處理部分主要由高精度的運算放大器,變壓器,電流互感器等器件組成。直流實驗主要采用差動比例放大電路和濾波電路采集數(shù)據(jù),而在測量交流實驗數(shù)據(jù)時(如日光燈實驗,三相電動機)需要利用變壓器和互感器起到降壓變流和電氣隔離的作用,使之達到ADC有效測量范圍。在實際操作中,數(shù)據(jù)采集精度可以達到1 mV,完全符合實驗項目要求。
3.1 單片機程序編寫
單片機程序主要分成主機程序和從機程序。主機主要實現(xiàn)的功能是搭建服務(wù)器與從機之間數(shù)據(jù)交換的橋梁。而從機程序不僅僅需要識別主機發(fā)出的指令,更要將數(shù)據(jù)采集的結(jié)果反饋給主機,同時根據(jù)需要實現(xiàn)電路切換,數(shù)碼管顯示等功能。單片機程序主要由三大模塊構(gòu)成,初始化模塊包括時鐘設(shè)置,端口設(shè)置,以及外設(shè)的初始化設(shè)置等。功能性模塊包括串口通信,AD及DA轉(zhuǎn)換,步進電動機驅(qū)動,數(shù)碼管顯示,指示燈顯示等。附加模塊包括延時模塊,數(shù)制轉(zhuǎn)換模塊等。以串口通信和AD轉(zhuǎn)換程序為例介紹。
3.1.1 基于UART的多機通信
遠程控制實驗臺的數(shù)據(jù)交換主要分為4層結(jié)構(gòu),分別為遠程客戶端,服務(wù)器,一個主機,多個從機。遠程客戶端通過網(wǎng)絡(luò)發(fā)出控制指令,服務(wù)器接收命令之后,呼叫從機響應(yīng),從機判斷是否被呼叫,一旦呼叫成功指定從機返回確認收到,從而由多機通信轉(zhuǎn)變成單機通信。
C8051F020的UART提供4種工作方式,在多機通信中,通常選擇方式3,通過第9位數(shù)據(jù)位和單片機串口地址識別硬件支持一個主機與多個從機之間的多機通信。通過串口遠程控制多個實驗項目,并完成多項實驗操作步驟,因此需要對每一個實驗從機進行地址編碼,也要對操作步驟編碼,便于主機識別。同時,不同的實驗項目采集的數(shù)據(jù)長度不一致,那么在數(shù)據(jù)兩端需要設(shè)定開始標志和結(jié)束標志[12]。最終形成的通信協(xié)議以及通信過程如圖3所示。
圖3 通信過程
3.1.2 12位數(shù)據(jù)采集模塊ADC
ADC0的最高轉(zhuǎn)換速度為10萬次/s,啟動轉(zhuǎn)換方式共4種,為了實現(xiàn)定時的連續(xù)轉(zhuǎn)換選擇方式4,即定時器的溢出啟動轉(zhuǎn)換。AD數(shù)據(jù)處理程序采用中斷方式可以減少CPU的負擔,在中斷程序中將轉(zhuǎn)換的數(shù)據(jù)進行濾波處理并存儲在指定數(shù)組中。只要中斷開啟,數(shù)組中的數(shù)據(jù)就可以不斷刷新,從而實現(xiàn)實時數(shù)據(jù)采集。
3.2 LabVIEW程序編寫
LabVIEW的主要有兩方面的功能。①利用串口通信實現(xiàn)服務(wù)器與主機之間的數(shù)據(jù)交換,并對采集的數(shù)據(jù)進行截取、轉(zhuǎn)換、判斷、顯示、存儲,生成報告等。②利用LabVIEW的Web發(fā)布工具實現(xiàn)遠程網(wǎng)頁訪問,并使用基于TCP/IP的數(shù)據(jù)傳輸協(xié)議DSTP的DataSocket技術(shù)實現(xiàn)網(wǎng)絡(luò)通信[13-15]。由此,用戶不僅僅可以在遠程客戶端的網(wǎng)頁瀏覽器實現(xiàn)與主機的通信,也可以實時控制電路獲得數(shù)據(jù),給用戶呈現(xiàn)實際操作電路的的真實感。
為了避免控制命令的發(fā)送和使用錯誤,將控制參數(shù)的指令和數(shù)據(jù)捆綁在一起,即在服務(wù)器收到數(shù)據(jù)時通過預(yù)先設(shè)定的規(guī)則對數(shù)據(jù)進行截取,避免通信過程中出現(xiàn)不可預(yù)知的錯誤[16]。
遠程實驗臺一共設(shè)計了6個電路實驗項目,改進之后的實驗臺外觀更加簡潔直觀。圖4為部分電路實驗操作界面,包括一階RC電路、疊加原理、三相異步電動機及繼電接觸控制、三相交流電路。
本文以實驗1為例展示項目改進之后的效果。實驗1包括電阻伏安特性曲線測量、二極管正反向特性曲線測量、電壓源伏安特性曲線測量3個實驗內(nèi)容。首先使用賬號登錄系統(tǒng),進入實驗界面如圖5所示,選擇元件伏安特性實驗。用戶可以自主選擇界面上的按鈕操作。首先點擊‘開始實驗’,在‘程控電源輸出調(diào)節(jié)’輸入電壓值,然后點擊‘改變參數(shù)’,即可在LabVIEW界面上就可以看到實際測得的電流和電壓值。圖6為實驗的實物界面圖,同時從實際電路中可以看到開啟實驗后對應(yīng)電路的指示燈亮起,實際測量實驗臺數(shù)據(jù)與界面顯示數(shù)據(jù)完全一致,用戶完成實驗數(shù)據(jù)的測量之后即可點擊生成excel表格并保存。完成實驗之后點擊結(jié)束實驗即可進行下一步操作。可以觀察到改進之后的系統(tǒng)在用戶體驗上不會受到任何影響,實驗數(shù)據(jù)測量的精度也滿足基本要求,并且保證了實驗?zāi)軌蚍€(wěn)定有效地進行。
圖5 元件伏安特性實驗labview界面
以虛擬儀器和因特網(wǎng)為基礎(chǔ)建立的遠程虛擬實驗臺實現(xiàn)了校內(nèi)儀器設(shè)備及實驗教學的共享,開放式課程和開放式實驗相結(jié)合為用戶提供更好的學習平臺。為了改善虛擬實驗臺目前發(fā)展現(xiàn)狀,提出了一種成本低,可擴展性強的改進方案,即在LabVIEW和Internet的物理基礎(chǔ)上,利用高度集成的單片機代替昂貴的數(shù)據(jù)采集卡,將數(shù)據(jù)采集、繼電器控制、多機通信等功能結(jié)合成一體,有效節(jié)省了成本,也提高了系統(tǒng)穩(wěn)定性。用戶僅用聯(lián)網(wǎng)終端即可訪問遠程虛擬實驗室,并可自主選擇實驗操作,提交參數(shù)設(shè)定及實時觀察反饋實驗結(jié)果。通過實驗證明改進之后的系統(tǒng)在通信和測控等方面都能達到實驗要求。同時可通過此平臺采集實驗教學過程中的各項數(shù)據(jù)指標,依據(jù)對數(shù)據(jù)處理分析從而改進和完善實驗教學考核方法、內(nèi)容及標準。
[1] 高艷玲,王振玉,徐 紅. 基于LabVIEW的開放型實驗室建設(shè)[J]. 實驗室研究與探索, 2013, 32(3): 211-213.
[2] 李海芳,張 民,陳俊杰,等. LabVIEW下遠程虛擬實驗室的研究與實現(xiàn)[J]. 太原理工大學學報, 2010(2): 147-149.
[3] 頓愛波. 遠程教學用虛擬電子實驗室系統(tǒng)研究[D]. 大連:大連理工大學, 2005.
[4] 李世紅. 基于LabVIEW和單片機的溫度監(jiān)測系統(tǒng)設(shè)計[J]. 湖北農(nóng)業(yè)科學, 2015(19): 4836-4839.
[5] 艾建生. 基于Web自控遠程實驗室的研究[D]. 重慶:重慶大學, 2008.
[6] 米西峰. 基于Web和Labview的虛擬儀器實驗平臺設(shè)計[J]. 微計算機信息, 2008(4): 155-157.
[7] 唐立軍,賓 峰,鄧 敏,等. 遠程實驗操作平臺設(shè)計與實現(xiàn)[J]. 實驗室研究與探索, 2015(12): 49-52.
[8] 江賢志,劉華章,張教育,等. 基于C8051F020單片機的RS485串行通信設(shè)計[J]. 電子測量技術(shù), 2014(3): 121-124.
[9] 李 楠. 基于單片機技術(shù)的多機通信系統(tǒng)設(shè)計[J]. 現(xiàn)代電子技術(shù), 2016(12): 164-166.
[10] 金 彧,王彩蓮,盧軍平,等. 一種自由進出JTAG菊花鏈的硬件設(shè)計方法[J]. 電腦開發(fā)與應(yīng)用, 2012(8): 47-49.
[11] 劉文怡,李進武. 基于RS485總線多機通信系統(tǒng)可靠性的研究[J]. 彈箭與制導(dǎo)學報, 2005(3): 102-104.
[12] 劉俊伏,劉金娥. PC機與單片機的多機通信技術(shù)及抗干擾措施[J]. 河北師范大學學報(自然科學版), 2009(1): 28-32.
[13] 張 茜,雷 勇. 基于虛擬儀器技術(shù)的網(wǎng)絡(luò)化遠程實驗室系統(tǒng)[J]. 實驗室研究與探索, 2013(9): 90-93.
[14] 孫道讓,劉蘊紅. 基于LabVIEW和IAP的單片機遠程實驗系統(tǒng)[J]. 電子設(shè)計工程, 2011(20): 177-180.
[15] 陶方華,張艷榮. 基于DataSocket技術(shù)的遠程實驗系統(tǒng)設(shè)計[J]. 四川兵工學報, 2011(5): 83-84.
[16] 羅 建,雷 勇,黃 昊,等. 基于LabVIEW的遠程電機實驗臺的構(gòu)建[J]. 實驗技術(shù)與管理, 2014(3): 122-125.
The Improvement and Implementation of Remote Experimental Platform Based on LabVIEW
WANG Xin, LEI Yong, TU Guoqiang, ZHANG Kebi, JIAO Yang
(School of Electrical Engineering and Information, Sichuan University, Chengdu 610065, China)
Remote experimental platform implements the resource sharing of laboratory, and becomes the focus of research in the laboratory construction of colleges and universities. The remote experimental platform has great application demands, but high cost and complex structure. A new system construction program is proposed in the paper, it is highly scalable, easy to operate. Single chip microcontroller (SCM) C8051F020 (DAQ) is used to substitute the data acquisition card, and served as detection and control core of the system. Based on SCM communication of single-computer communication and multi-computer is realized, and various experimental projects of client goals are completed by remote real-time operation. It can achieve communications and interaction online by the Internet and LabVIEW. Then combining with the filter circuit, stepper motor drive circuit, level conversion circuit, etc., users can collect remotely experiment data through any network terminal, set up the circuit, and observe the experiment process. Finally, experiments show that the new scheme not only greatly reduces the cost, but also improves the system performance and stability, it can meet the demands of the reform in experiment teaching at present.
virtual instrument; single chip microcomputer; remote experimental platform; multi-computer communication;
2016-11-15
四川大學新世紀教改工程項目(五期)(2011010811)
汪 鑫(1993-),女,重慶人,碩士生,主要從事虛擬儀器實驗、信號檢測等方面的研究。
Tel.:18200280053;E-mail: 458657109@qq.com
雷 勇(1966-),男,四川內(nèi)江人,教授,主要從事電工理論與新技術(shù)、智能測試及控制、機器人等方面的教學與研究。
E-mail: yong.lei@163.com
TP 391.9
A
1006-7167(2017)08-0125-04