楊青青,尤文斌
(中北大學(xué) 儀器科學(xué)與動(dòng)態(tài)測試教育部重點(diǎn)實(shí)驗(yàn)室,太原 030051)
Yang Qingqing, You Wenbin
(Key Laboratory of Instrumentation Science & Dynamic Measurement Ministry of Education, North University of China ,Taiyuan 030051, China)
隨著自動(dòng)控制理論的不斷發(fā)展,對(duì)自動(dòng)控制理論實(shí)驗(yàn)的要求也不斷提高。為了保證實(shí)驗(yàn)設(shè)備的可靠性、有效性,對(duì)實(shí)驗(yàn)箱的研究和改進(jìn)從未停止。無線通信技術(shù)日漸成熟,采用無線通信實(shí)現(xiàn)數(shù)據(jù)的傳輸具有成本低廉、適應(yīng)性好、擴(kuò)展性好以及開發(fā)周期短的特點(diǎn)[1]。因此本文采用基于USB接口的無線數(shù)據(jù)傳輸接口實(shí)現(xiàn)實(shí)驗(yàn)箱與計(jì)算機(jī)之間的數(shù)據(jù)通信,充分利用計(jì)算機(jī)設(shè)備的特點(diǎn),設(shè)計(jì)相應(yīng)的硬件電路和軟件系統(tǒng),從而使得自動(dòng)控制實(shí)驗(yàn)儀器與計(jì)算機(jī)設(shè)備組成完整的數(shù)字∕模擬實(shí)驗(yàn)仿真系統(tǒng)。
基于USB的無線數(shù)據(jù)收發(fā)接口用于實(shí)現(xiàn)計(jì)算機(jī)與實(shí)驗(yàn)儀器箱之間的數(shù)據(jù)傳輸,包括上位機(jī)和下位機(jī)兩個(gè)部分,系統(tǒng)的總體設(shè)計(jì)框圖如圖1所示。
圖1 硬件總體設(shè)計(jì)框圖
上位機(jī)部分由計(jì)算機(jī)控制軟件以及NetUSB24L01無線數(shù)據(jù)傳輸模塊組成,USB通信接口由AT90USB162控制;下位機(jī)部分包括RF24L01無線數(shù)據(jù)傳輸模塊和MSP430控制電路,單片機(jī)MSP430負(fù)責(zé)控制數(shù)據(jù)的接收、發(fā)送以及ADDA轉(zhuǎn)換,從而實(shí)現(xiàn)數(shù)據(jù)的無線收發(fā)功能。
上位機(jī)電路包括NetUSB24L01無線數(shù)據(jù)傳輸模塊、USB接口電路以及計(jì)算機(jī)控制軟件3個(gè)部分,其結(jié)構(gòu)框圖如圖2所示。NetUSB-24L01數(shù)據(jù)傳輸模塊與計(jì)算機(jī)之間通過USB接口電路連接,核心芯片為ATMEL公司的AT90USB162芯片,該芯片是一款高性能、低功耗的8位嵌入式USB微控制器,旨在加強(qiáng)USB無線通信功能;系統(tǒng)內(nèi)部具有8K/16K字節(jié)大小的可編程存儲(chǔ)器,有利于提高讀寫能力[4]。同時(shí)它還具有USB 2.0全速設(shè)備模塊,完全符合通用串行總線規(guī)范2.0規(guī)則,數(shù)據(jù)傳輸速率為12兆位/秒[5];擁有完全獨(dú)立的176個(gè)字節(jié)的USB雙向RAM用以進(jìn)行端點(diǎn)內(nèi)存分配。
圖2 上位機(jī)總體設(shè)計(jì)框圖
無線收發(fā)模塊要實(shí)現(xiàn)數(shù)據(jù)的雙向傳輸,本文采用的方法是上下位機(jī)的無線芯片都初始化為接收狀態(tài),僅當(dāng)需要發(fā)送數(shù)據(jù)時(shí)才配置成發(fā)送模式,發(fā)送完畢后立刻配置成接收模式。上位機(jī)需要給下位機(jī)傳遞控制命令,而下位機(jī)需要向上位機(jī)傳遞實(shí)驗(yàn)數(shù)據(jù)。為了區(qū)分?jǐn)?shù)據(jù)、命令、狀態(tài)等不同的信息,每個(gè)數(shù)據(jù)包的第一個(gè)字節(jié)采用采用編碼區(qū)分信息內(nèi)容,每包數(shù)據(jù)大小為32個(gè)字節(jié)。信息格式如表1所示。
表1 信息格式
其中,用0x55代表發(fā)送的是命令,0xAA代表數(shù)據(jù),命令包含無線通信測試命令0x11、階躍波輸出命令0x00、正弦波輸出命令0x01、階躍波輸出命令0x10四種。
下位機(jī)包括單片機(jī)控制電路和RF24L01模塊兩個(gè)部分,單片機(jī)控制電路的核心控制芯片為MSP430FG4618,該單片機(jī)不僅能控制數(shù)據(jù)的發(fā)送與接收,還能將數(shù)據(jù)經(jīng)過A/D或D/A轉(zhuǎn)換,輸出滿足用戶需求的數(shù)據(jù)信息。RF24L01無線數(shù)據(jù)收發(fā)模塊采用的是同步串行通信方式(SPI)實(shí)現(xiàn)數(shù)據(jù)的無線發(fā)送和接收[6]。下位機(jī)的總體設(shè)計(jì)框圖如圖3所示。
圖3 下位機(jī)總體設(shè)計(jì)框圖
單片機(jī)MSP430FG4618工作于串行同步通信模式,采用串行外圍設(shè)備接口SPI總線技術(shù),其硬件功能很強(qiáng),SPI總線上可以連接多個(gè)可作為主機(jī)的微控制器(MCU)、裝有SPI接口的輸入、輸出設(shè)備,但在任一瞬間只允許一個(gè)設(shè)備作為主機(jī)[7]。本文將微控制芯片MSP430FG4618作為主機(jī),RF24L01無線數(shù)據(jù)收發(fā)模塊作為從機(jī),下位機(jī)接口電路如圖4所示。
圖4 下位機(jī)接口電路圖
單片機(jī)首先配置為接收狀態(tài),接收來自上位機(jī)的命令信息,根據(jù)用戶的需求產(chǎn)生相應(yīng)的信號(hào)源波形,包括正弦波、階躍波、方波和單位加速度信號(hào),經(jīng)過D/A轉(zhuǎn)換后輸出給實(shí)驗(yàn)儀器箱進(jìn)行實(shí)驗(yàn)。然后單片機(jī)配置為發(fā)送狀態(tài),將經(jīng)過A/D采樣獲得的實(shí)驗(yàn)數(shù)據(jù)通過RF24L01模塊發(fā)送給上位機(jī)實(shí)現(xiàn)實(shí)驗(yàn)結(jié)果的顯示,其具體工作流程如圖5所示。
圖5 單片機(jī)工作流程圖
上位機(jī)用戶應(yīng)用軟件采用VC++語言編寫,采用VC6.0軟件開發(fā)[8],設(shè)計(jì)目的是軟件模擬示波器的功能,完成實(shí)驗(yàn)數(shù)據(jù)的波形顯示以及用戶對(duì)實(shí)驗(yàn)結(jié)果的幾種常用的處理,包括:波形的放大、縮小和測量,數(shù)據(jù)的讀取、保存以及信號(hào)源選擇等操作,其應(yīng)用程序界面如圖6所示。
圖6 實(shí)驗(yàn)結(jié)果顯示軟件界面
軟件的工作流程如圖7所示。首先測試無線通信是否正常,如果通信正常則配置為接收狀態(tài),接收實(shí)驗(yàn)結(jié)果并在圖形顯示區(qū)域上顯示,如果無線通信不正常,則多次重發(fā)測試命令,直到正確建立了無線通信連接為止。
圖7 軟件工作流程
圖8為上位機(jī)接收并顯示的二階系統(tǒng)單位階躍響應(yīng)曲線。經(jīng)過實(shí)際驗(yàn)證,本文設(shè)計(jì)的基于USB的自動(dòng)控制儀器箱無線通信接口的數(shù)據(jù)傳輸有效距離為50米,發(fā)送接收數(shù)據(jù)傳輸率高、系統(tǒng)穩(wěn)定。
另外,該無線數(shù)據(jù)接口可通過軟件配置數(shù)據(jù)發(fā)送和接收地址,實(shí)現(xiàn)單點(diǎn)通信和多點(diǎn)通信,即一個(gè)上位機(jī)用戶可以接收到多個(gè)電子設(shè)備的實(shí)驗(yàn)數(shù)據(jù),同時(shí)多個(gè)上位機(jī)用戶可以共享同一個(gè)電子設(shè)備的實(shí)驗(yàn)數(shù)據(jù),可以用于不同場合下電子設(shè)備與計(jì)算機(jī)之間的無線數(shù)據(jù)通信,通用性強(qiáng)。
圖8 實(shí)驗(yàn)結(jié)果
[1]Rappaport,T.S.無線通信原理與應(yīng)用 [M].2版.周文安譯.北京:電子工業(yè)出版社,2006:18.
[2]程鵬.自動(dòng)控制原理實(shí)驗(yàn)教程[M].北京:清華大學(xué)出版社,2008:62.
[3]杭州飛拓電子科技有限公司.NetUSB-24L01開發(fā)指南(V1.0)[Z].2008:2-4.
[4]8-bit Microcontroller with 8/16K Bytes of ISP Flash and USB controller datasheet.http://www.atmel.com/dyn/resources/prod_documents/doc7707.pdf.2009.
[5]胡曉軍,張愛成 .USB接口開發(fā)技術(shù)[M].西安:西安電子科技大學(xué)出版社,2005:121-152.
[6]時(shí)志云,蓋建平,王代華,張志杰.新型高速無線射頻器件nRF24L01及其應(yīng)用[J].國外電子元器件,2007(8):42-44.
[7]沈建華,楊艷琴,翟驍曙.MSP430系列16位超低功耗單片機(jī)原理與應(yīng)用[M].北京:清華大學(xué)出版社,2006:231.
[8]范輝.Visual C++ 6.0程序設(shè)計(jì)簡明教程[M].北京:高等教育出版社,2001:1.