基于NRF9E5射頻無線遙控系統(tǒng)的設計
關鍵詞 撲翼微型飛行器 遙控系統(tǒng) 射頻 nRF9E5
1引 言[1]
現(xiàn)在和未來的飛行機器人[1-3]設計方向是期望機器人是小巧的、手提的、隨身攜帶,可以像昆蟲一樣超低空飛行,能夠靈活地完成偵察和搜索任務。多年來以軍事用途為背景的無人飛行器(UAV—Unmanned Aerial Vehicle)研究一直十分活躍,這些無人飛行器通過地面基站遙控導航,或者通過自身的智能控制算法,來實現(xiàn)其自身的任務規(guī)劃與航跡生成,完成預定的飛行任務。仿生MAV是整個飛行任務的載體,仿生MAV性能的優(yōu)劣影響整個飛行系統(tǒng)的性能,目前仿生微飛行器有采用壓電驅動、人造肌肉驅動、形狀記憶合金(SMA)驅動以及電磁微馬達驅動,但目前能夠實現(xiàn)撲翼飛行的是采用微馬達的驅動方式,其他的驅動形式僅僅屬于概念性的設計,從實用的角度來講,采用電磁微馬達的驅動方式更為成熟。仿生微型飛行器采用高能電池供電,通過電磁微馬達驅動撲翼,通過形狀記憶合金(SMA)來控制仿生微飛行器的運動模態(tài),通過微型傳感器來檢測仿生微飛行器的位置和姿態(tài),通過微處理芯片對輸入信號進行檢測,并通過輸出去控制相應的執(zhí)行機構,仿生微飛行器通過射頻傳輸模塊建立和地面控制基站的數(shù)據鏈路。
2遙控系統(tǒng)的結構設計
撲翼微型飛行器的遙控系統(tǒng)主要是為了調節(jié)飛行器的撲動頻率以及飛行器尾翼的升降、左右擺動;至于飛行器的視頻采集、姿態(tài)控制及位移控制,目前對其設計還不太現(xiàn)實,因為撲翼微型飛行器還不能實現(xiàn)自主飛行,如果控制系統(tǒng)過于復雜,則不可避免地增大飛行器重量,這些因素不利于飛行器的飛行。整個遙控系統(tǒng)包括兩個部分,一部分為系統(tǒng)的發(fā)射部分,其主要任務是發(fā)送控制命令,通過計算機把控制命令經計算機的串口和射頻模塊發(fā)送出去,完成命令的生成和傳輸,即通過計算機發(fā)送控制命令,傳遞給nRF9E5芯片,芯片通過射頻端發(fā)射出去;另一部分為撲翼微型飛行器自身的控制器,這部分的作用是接收地面的控制指令,經控制器來調整微馬達的轉速,進而來控制撲翼的拍打頻率,即把接受到的控制命令傳遞給nRF9E5芯片,然后由nRF9E5芯片輸出PWM脈寬,進而來調整電壓輸出,從而來控制直流微馬達的轉速。
nRF9E5[4]采用QFN封裝,其尺寸大小為5×5mm,圖1所示為nRF9E5的引腳分配與封裝。其中P0口和P1口與8051的對應端口相同,這兩個端口是采用CMOS驅動的雙向IO口,其方向可通過_DIR和_ALT寄存器的設置來選擇端口的功能和數(shù)據傳輸?shù)姆较?。P0口通過P0_ALT和P0_DIR進行設置,當P0_ALT的對應位為1時,則P0.n具有UART、外部中斷、定時器輸入或脈寬調制輸出功能,其方向由P0_DIR的對應位來確定;P1口的4個引腳MISO、MOSI、EECSN、SCK作為系統(tǒng)上電后EEPROM和系統(tǒng)進行通訊的接口,EECSN為片選信號,SCK為存儲器的時鐘信號,MOSI、MISO分別為串行數(shù)據的輸入和輸出信號。P1口的控制寄存器分別為SPI_CTRL、P1_ALT、P1_DIR,當SPI_CTRL=1時,P1口作SPI口使用,當SPI_CTRL=0時,P1作通用IO口,XC1和XC2分別為系統(tǒng)時鐘的輸入和輸出,ANT1和ANI2為系統(tǒng)射頻信號的接口,AIN0~AIN3為模擬信號的輸入端口。遙控系統(tǒng)的結構布局如圖2所示。
地面射頻遙控裝置的命令發(fā)射端的電路原理圖如圖3所示,J1為9針的D型插座,連接計算機的串口,控制命令由串口傳出,串口連接MAX3232芯片,該芯片為電平轉換電路,其主要目的是把計算機±15V的高電平轉換為MCU可以接受的0~3V的CMOS電平,J1
圖3 地面射頻遙控裝置的命令發(fā)射端的電路原理圖
插座中引出的引腳為2、3、5分別對應與TXD、RXD、GND,經MAX3232轉換后連接nRF9E5的P01、P02,P01和P02分別設置為第二功能的RXD、TXD;25AA320為Microchip公司的串行程序存儲器,MCU的運行指令先燒寫到此芯片中,當系統(tǒng)上電復位后,程序代碼被下載到nRF9E5的內存中;ANT1、ANT2為nRF9E5的射頻輸出端,射頻傳輸協(xié)議集成在射頻模塊內。
圖4 撲翼驅動裝置接收端的電路原理圖
圖4為撲翼驅動裝置接收端的電路原理圖,該電路圖中與nRF9E5相連的串行程序存儲器、晶振電路、射頻傳輸電路部分與圖3的電路相同,不同的是P0口的P02、P03連接在三極管的基極上(其中一個作備用),P04、P06連接兩個發(fā)光二極管;三極管采用BE431,三極管的主要作用是為了把MCU輸出的PWM放大,增大其輸出功率,微馬達連接在JP1的5、6引腳或者7、8引腳;LED1、LED2為狀態(tài)指示燈,用來模擬尾舵的擺動和升降;LM1117為電源管理模塊,其作用是為了把4~6V的不穩(wěn)定電壓轉換為3.3V的穩(wěn)定電壓,為nRF9E5和其它用電模塊提供穩(wěn)定的供電電源。
圖5 命令發(fā)射端程序流程
圖6 數(shù)據接收端程序流程
3系統(tǒng)的程序設計
當遙控系統(tǒng)的硬件設計完成之后,軟件成為溝通各個硬件部分的靈魂和血脈,遙控系統(tǒng)的軟件程序設計主要涉及PC與nRF9E5的串行通訊,nRF9E5芯片的射頻傳輸與接收,PWM的脈寬輸出等內容,圖5所示為遙控系統(tǒng)命令發(fā)射端程序流程,首先系統(tǒng)初始化,定義P0口功能、定時器初值(串行通訊的波特率)、SPI控制寄存器的初始化、RF控制寄存器初始化等,nRF9E5的串口能接收來自PC的命令,使接收的命令能順利傳出。nRF9E5的射頻傳輸模塊的功能和nRF905芯片的功能完全相同,將所有高速射頻協(xié)議集成在芯片內部,和微控制器相連的部分只是采用簡單的SPI接口,使得在編程時對數(shù)據的接收和發(fā)送變得異常簡單,在ShockburstTM RX模式下,當?shù)刂方邮照_,有效信號接收完畢后由AM和DR通知MCU,在ShockburstTM TX模式下,nRF905自動生成CRC校驗,當數(shù)據發(fā)送完后由DR通知MCU。
當有數(shù)據要發(fā)送時,MCU通過SPI接口將接收階段的地址和有效數(shù)據寫入nRF905,MCU通過設置TRX_CE、TX_EN為高來激活nRF905 Shockburst進行傳輸,nRF905在進行數(shù)據傳輸時,首先完成射頻無線傳輸系統(tǒng)的自動上電,然后對數(shù)據包加前綴和進行CRC校驗,進而來完成數(shù)據包的發(fā)送,當發(fā)送完畢后,設置數(shù)據就緒(DR)信號為高,可以繼續(xù)進行數(shù)據的發(fā)送;如若AUTO_RETRAN設置為高,則nRF905不斷的進行數(shù)據發(fā)送直至TRX_CE為低。
當有數(shù)據需要接收時,nRF9E5的射頻模塊進入數(shù)據接收狀態(tài),當nRF905檢測到頻率相同的載波時,寄存器中的載波檢測(CD)信號變高,當nRF905檢測到的有效地址與自動地址匹配時,寄存器中的地址匹配(AM)信號變高,當nRF905接收到的數(shù)據包(通過CRC校驗)正確時,射頻模塊去掉數(shù)據包的前導碼地址和CRC位,數(shù)據準備就緒(DR)被置高,此時MCU可通過SPI接口將接收的數(shù)據讀出;當接收完數(shù)據后,nRF905將AM和DR置低,此時nRF905將進入發(fā)射、接收或者掉電模式;接收到的數(shù)據命令通過計算機指令來調整MCU的延時時間,從而產生不同占空比的PWM脈寬,經三極管進行放大從而來驅動微馬達,通過指令來調整MCU輸出脈寬的占空比來達到調整電機轉速的目的。
4 結束語
本文采用Nordic公司的nRF9E5芯片對撲翼微型飛行器的遙控裝置進行了相應的硬件設計和軟件編程,通過PC發(fā)送控制命令,經計算機串口傳輸至nRF9E5,再由nRF9E5內部的數(shù)據傳送,經射頻(RF)模塊發(fā)送出去,另一端的接收裝置也采用相同的nRF9E5,空中傳輸?shù)目刂泼罱浬漕l模塊接收到,然后由MCU讀出,進而來控制PWM脈寬的調制,從而實現(xiàn)了對微型直流電機的調速;實驗表明,該系統(tǒng)具有成本少、功耗低、尺寸小的特點,能以較高質量在100~150米范圍內進行信號的無線傳輸。
本文作者創(chuàng)新點:微型飛行器是當前研究的熱點,其控制系統(tǒng)是該課題研究的重要內容,本文采用nRF9E5射頻芯片進行了仿生微型飛行器無線遙控系統(tǒng)的軟硬件設計與系統(tǒng)調試,具有電路體積小,傳輸距離遠,功耗低等特性。
參考文獻:
[1] J. M. Grasmeyer and M. T. Keennon, “Development of the black widowmicro air vehicle,” in Proc. AIAA, Jan. 2001, Paper AIAA-2001-0127.
[2] 李娜英,李惠峰.SINS/GPS/CNS組合導航在高超聲速巡航飛行器上的應用[J].微計算機信息,2005,Vol.21. 9-1:P6-8.
[3] J. Yan, R.J. Wood, S. Avadhanula, R.S. Fearing, and M. Sitti. Towards flapping wing control for a micromechanical flying insect. In Proc of the IEEE International Conference on Robotics and Automation, pages 3901–3908, Seoul, South Korea, May 2001
[4] Product specification:433/868/915RF transceiver with embedded 8051 compatible Microcontroller and 4 input, 10bit ADC, Nordic