亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于USB HID和nRF24L01+的飛行器無線調(diào)試系統(tǒng)

        2017-01-05 01:40:38游安華胥加林
        關(guān)鍵詞:微控制器中斷上位

        游安華,胥加林

        (1.南京理工大學(xué) 工程訓(xùn)練中心,南京 210094;2. 南京理工大學(xué) 機(jī)械工程學(xué)院)

        ?

        基于USB HID和nRF24L01+的飛行器無線調(diào)試系統(tǒng)

        游安華1,胥加林2

        (1.南京理工大學(xué) 工程訓(xùn)練中心,南京 210094;2. 南京理工大學(xué) 機(jī)械工程學(xué)院)

        為了通過上位機(jī)實時采集飛控數(shù)據(jù)、在線調(diào)試飛行器,設(shè)計了一種基于USB HID和nRF24L01+的無線地面調(diào)試系統(tǒng)。系統(tǒng)接收飛控數(shù)據(jù),并將數(shù)據(jù)發(fā)送到上位機(jī),用于動態(tài)顯示飛行器狀態(tài)和后續(xù)研究分析;同時系統(tǒng)可以將上位機(jī)的控制信號發(fā)送給飛控系統(tǒng),實現(xiàn)在線調(diào)試、上位機(jī)控制。測試結(jié)果表明,該調(diào)試系統(tǒng)成本低、實時性好,滿足四旋翼飛行器的開發(fā)需要。

        四旋翼飛行器;STM32微控制器;USB HID;nRF24L01+;無線通信

        引 言

        四旋翼飛行器機(jī)械結(jié)構(gòu)簡單、操控性能優(yōu)越,具有良好的軍事偵察、搜索救援性能[1-2]。且隨著微電子技術(shù)、傳感器技術(shù)的進(jìn)步,四旋翼飛行器得到迅速發(fā)展[3]。為加快飛行器的開發(fā),需實時采集飛行器姿態(tài)角和傳感器數(shù)據(jù),并對其研究分析,以優(yōu)化控制算法。而由于飛行器的飛行特點(diǎn),不能通過有線傳輸?shù)姆绞讲杉瘮?shù)據(jù),一定程度上影響飛行器的開發(fā)速度。但是,隨著中短距離無線傳輸?shù)陌l(fā)展,無線傳輸成為重要的數(shù)據(jù)傳輸方式。

        本文基于USB HID和nRF24L01+,設(shè)計了一種無線地面調(diào)試系統(tǒng)。四旋翼飛行器的飛控系統(tǒng)將傳感器數(shù)據(jù)、PID參數(shù)、飛行器姿態(tài)角等數(shù)據(jù)打包后通過nRF24L01+模塊傳給地面調(diào)試系統(tǒng),地面調(diào)試系統(tǒng)的nRF24L01+模塊將接收到的數(shù)據(jù)基于USB HID協(xié)議通過STM32微控制器模塊上傳到上位機(jī),實時顯示飛行器姿態(tài),并將數(shù)據(jù)有選擇地存儲下來,用于后續(xù)的研究分析。同時可以通過上位機(jī)修改飛控系統(tǒng)參數(shù),然后基于USB HID協(xié)議通過STM32微控制器模塊和nRF24L01+模塊發(fā)送到飛控系統(tǒng),實現(xiàn)飛行器的無線調(diào)試。最后,基于某開源上位機(jī)對無線調(diào)試系統(tǒng)進(jìn)行了測試。

        1 系統(tǒng)硬件設(shè)計

        系統(tǒng)結(jié)構(gòu)主要包括USB HID協(xié)議、nRF24L01+模塊、STM32微控制器模塊3個部分。系統(tǒng)總體方案如圖1所示,本文主要設(shè)計地面調(diào)試系統(tǒng)部分。

        圖1 系統(tǒng)總體方案圖

        1.1 USB HID協(xié)議

        USB[4]是一種計算機(jī)外圍設(shè)備接口標(biāo)準(zhǔn),具有成本低、傳輸速度快、數(shù)據(jù)傳輸可靠、支持熱插拔等優(yōu)點(diǎn)。

        HID類USB接口是為一些人工輸入、輸出設(shè)備而設(shè)計的,其與計算機(jī)間的通信采用控制傳輸和中斷傳輸兩種方式,中斷傳輸方式擁有強(qiáng)大的錯誤檢測和錯誤重傳的功能[5]。同傳統(tǒng)的數(shù)據(jù)采集系統(tǒng)相比,HID類USB設(shè)備使用Windows系統(tǒng)自帶的HID類驅(qū)動程序,無需為其編寫復(fù)雜的上位機(jī)USB驅(qū)動程序,具有無驅(qū)動、簡單、實時的優(yōu)點(diǎn)。

        1.2 nRF24L01+模塊

        nRF24L01+是一款工作于2.4~2.5 GHz頻段的無線收發(fā)芯片,有多達(dá)125個頻點(diǎn),可通過SPI傳輸數(shù)據(jù),最大傳輸速度為2 Mbps,并可通過跳頻來避免干擾。室內(nèi)傳輸距離為30~40 m,室外傳輸距離為100~200 m。內(nèi)置CRC校驗和出錯重傳機(jī)制[6]。圖2是nRF24L01+模塊的電路原理圖。

        圖2 nRF24L01+模塊電路原理圖

        1.3 STM32微控制器模塊

        STM32F103C8基于Cortex-M3內(nèi)核,最高工作頻率達(dá)72 MHz,內(nèi)部集成64 KB FLASH,全速USB2.0收發(fā)器,且最高速度達(dá)12 Mbps,是一個完整的小型片上系統(tǒng),是小型USB應(yīng)用的理想選擇。微控制器通過6個引腳與nRF24L01+模塊相連,分別是:MISO、MOSI、SCK、CSN、CE、IRQ。圖3是STM32微控制器的電路原理圖。

        2 系統(tǒng)軟件設(shè)計

        系統(tǒng)軟件設(shè)計主要包括USB HID設(shè)備程序和無線收發(fā)模塊程序。由于nRF24L01+無線收發(fā)芯片的室外傳輸距離為100~200 m,而人為控制距離為100 m以內(nèi),滿足控制需要,所以未設(shè)置復(fù)雜的預(yù)警程序。但如果接收數(shù)據(jù)出錯,則會在上位機(jī)顯示報警信息。

        2.1 USB HID設(shè)備程序

        該地面調(diào)試系統(tǒng)利用ST公司提供的USB-FS Devic library V3.3固件庫編寫下位機(jī)程序。USB HID設(shè)備程序主要包括初始化程序、中斷程序2部分。USB HID接入計算機(jī)后,計算機(jī)先枚舉到設(shè)備,獲取設(shè)備路徑。當(dāng)計算機(jī)與設(shè)備建立連接后,通過中斷的方式進(jìn)行通信,主機(jī)請求響應(yīng)和數(shù)據(jù)收發(fā)都在中斷程序中完成。

        (1) 初始化

        初始化主要包括USB中斷使能、優(yōu)先級配置、時鐘設(shè)置、數(shù)據(jù)緩存設(shè)置、獲取序列號、對接口上電并復(fù)位接口、設(shè)置設(shè)備地址和端點(diǎn)地址為0、枚舉。其中枚舉包括獲取設(shè)備描述符、配置描述符、接口描述符、HID描述符和報告描述符。

        (2) 中斷程序

        中斷服務(wù)程序根據(jù)不同的中斷請求,轉(zhuǎn)入相應(yīng)的處理程序。處理過程為在USB_LP_CAN1_RX0_IRQHandler()函數(shù)處響應(yīng)USB中斷請求,并跳轉(zhuǎn)到中斷服務(wù)函數(shù)USB_Istr(),以輪詢的方式訪問各中斷寄存器,判斷發(fā)生的中斷請求。根據(jù)不同的中斷類型,轉(zhuǎn)入相應(yīng)的處理程序,并返回處理結(jié)果,完成通信任務(wù)。

        2.2 nRF24L01+收發(fā)程序

        無線模塊軟件包括初始化、發(fā)送模式、接收模式3個部分。

        (1) 初始化

        nRF24L01+模塊進(jìn)行無線通信前,需要對其進(jìn)行初始化,主要包括發(fā)送地址、接收地址、應(yīng)答方式、自動重發(fā)次數(shù)、工作模式等。該調(diào)試系統(tǒng)的工作模式為增強(qiáng)型Shock Burst模式,使能自動應(yīng)答,自動重發(fā)時間為500 μs,最大重發(fā)次數(shù)為10次,傳輸速率為2 Mbps。

        (2) 接收模式

        通過寄存器RX_ADDR_PX配置接收地址為通道0,置高CE引腳130 μs,當(dāng)接收到有效的數(shù)據(jù)和地址且CRC校驗通過后,自動去除數(shù)據(jù)頭、標(biāo)志位、校驗碼,將數(shù)據(jù)寫入RX_FIFO,通過USB將接收到的數(shù)據(jù)發(fā)送給上位機(jī)。

        部分代碼如下:

        voidNRF_Check_Event(void){

        u8 sta =NRF_Read_Reg(NRF_READ_REG + NRFRegSTATUS);

        u8 rx_len =NRF_Read_Reg(R_RX_PL_WID);

        NRF_Read_Buf(RD_RX_PLOAD,nRF24L01_2_RXDATA,rx_len);// 讀取接收到的數(shù)據(jù)

        Usb_Hid_Adddata(nRF24L01_2_RXDATA,rx_len);

        圖3 STM32微控制器電路原理圖

        NRF_Write_Reg(NRF_WRITE_REG + NRFRegSTATUS, sta);

        }

        (3) 發(fā)送模式

        STM32微控制器接收到上位機(jī)發(fā)送過來的命令后,將nRF24L01+設(shè)置為發(fā)送模式,自動生成數(shù)據(jù)頭、CRC校驗碼并置高CE發(fā)送數(shù)據(jù),數(shù)據(jù)發(fā)送完畢后立即自動進(jìn)入接收模式,接收應(yīng)答信號。當(dāng)接收到應(yīng)答信號后,置1狀態(tài)寄存器TX_DS,并清除TX_FIFO寄存器中的數(shù)據(jù)。若未收到應(yīng)答信號,則認(rèn)為數(shù)據(jù)丟失,將重發(fā)數(shù)據(jù),直到發(fā)送成功或達(dá)到最大重發(fā)次數(shù)。

        部分代碼如下:

        voidNRF_TxPacket_AP(uint8_t * tx_buf, uint8_t len){

        PMAToUserBufferCopy(Hid_RxData,ENDP1_RXADDR,64);

        SPI_CE_L(); //StandBy I模式

        NRF_Write_Buf(0xa8, tx_buf, len); //裝載數(shù)據(jù)

        SPI_CE_H(); //置高CE

        }

        3 測試驗證

        圖4 無線數(shù)據(jù)傳輸模塊

        為了驗證該無線地面調(diào)試系統(tǒng)的有效性,基于某開源上位機(jī)分別進(jìn)行了飛行器姿態(tài)顯示、在線調(diào)試和數(shù)據(jù)分析測試。圖4為該調(diào)試系統(tǒng)的無線數(shù)據(jù)傳輸模塊。

        3.1 姿態(tài)顯示

        姿態(tài)顯示可以將無線模塊發(fā)回的數(shù)據(jù)在上位機(jī)中動態(tài)顯示,并將傳回的數(shù)據(jù)賦予三維飛行器模型,再現(xiàn)飛行器的空中姿態(tài),便于PID參數(shù)和控制算法的測試驗證。圖5為飛行器狀態(tài)顯示圖。由圖5可知,無線模塊傳回的數(shù)據(jù)有:遙控器通道行程、飛行模式、電機(jī)轉(zhuǎn)速、飛行器高度等。由遙控器和電機(jī)數(shù)據(jù)可知,飛行在順時針旋轉(zhuǎn)。

        圖5 飛行器狀態(tài)顯示

        3.2 在線調(diào)試

        PID參數(shù)調(diào)試需要大量的試驗,而每次修改PID參數(shù)

        圖8 加速度計和陀螺儀X軸信號濾波前后對比圖

        后,都需要對程序重新編譯、下載,占用大部分的調(diào)試時間。無線地面調(diào)試系統(tǒng)中的在線調(diào)試功能

        可以通過上位機(jī)修改PID參數(shù),并通過無線模塊發(fā)送到飛控,有效降低了PID參數(shù)調(diào)試時間。圖6為飛行器在線調(diào)試界面。

        由圖6可知,該上位機(jī)不僅可以進(jìn)行PID參數(shù)的在線調(diào)試、傳感器校準(zhǔn),還包括許多接口用于后續(xù)的功能擴(kuò)展。

        3.3 數(shù)據(jù)分析

        數(shù)據(jù)分析可以根據(jù)需要存儲無線地面調(diào)試系統(tǒng)發(fā)回的數(shù)據(jù),然后對其進(jìn)行研究分析,以改善飛行器的控制算法和濾波算法。圖7為數(shù)據(jù)采集界面,圖8為加速度計和陀螺儀傳感器X軸信號濾波前后對比圖。

        圖8是將無線地面調(diào)試系統(tǒng)發(fā)回的數(shù)據(jù)通過Matlab處理后得到的,其中濾波前的信號是飛行器傳感器實際變化值,分析可知,機(jī)體振動對加速度傳感器影響較大,而對陀螺儀傳感器幾乎沒有影響。根據(jù)分析結(jié)果,采用不同的濾波算法對兩傳感器數(shù)據(jù)進(jìn)行濾波,濾波后的數(shù)據(jù)波形基本還原了傳感器實際變化值。

        圖6 飛行器在線調(diào)試界面

        圖7 數(shù)據(jù)采集界面

        結(jié) 語

        [1] 李波陳,王紅州,劉曉棟,等.可伸縮折疊式四旋翼飛行器設(shè)計[J].機(jī)械研究與應(yīng)用,2015,28(2):121-124.

        [2] Jakob B, Morten K, Martin S. Autonomous hover flight for a quadrotor helicopter[D]. Aalborg , Denmark :Aalborg University,2007.

        [3] 孫英達(dá),徐文琴,丁立新. nRF905無線收發(fā)芯片的應(yīng)用[J].機(jī)械制造與自動化, 2009,38(6): 115-116.

        [4] Compaq,Intel,Philips.Universal Serial Bus Specification Revision2.0[EB/OL].[2016-06].http://www.usb.org.

        [5] 王紀(jì)剛,袁紅兵,張相田.無線溫濕度數(shù)據(jù)采集板的設(shè)計[J].機(jī)械制造與自動化,2013,42(6):113-117.

        [6] 金寶華,張勇,崔光照.基于nRF905的無線數(shù)據(jù)多點(diǎn)跳傳通信系統(tǒng)[J].儀表技術(shù)與傳感器,2004(9):39-40.

        游安華(講師),主要研究方向為旋翼飛行器設(shè)計與開發(fā)、嵌入式開發(fā)。

        Aircraft Wireless Debugging System Based on USB HID and nRF24L01+

        You Anhua1,Xu Jialin2

        (1.Engineering Training Center,Nanjing University of Science and Technology, Nanjing 210094,China;2.School of Mechanical Engineer,Nanjing University of Science and Technology)

        In order to collect the real-time data and debug the aircraft online,the wireless debugging system based on USB HID and nRF24L01+is designed.The flight control system receives the data and then sends to the host computer.The data is used for the dynamic display of flight state and follow-up study.At the same time,the system can send the control signal to the host computer to realize online debugging and host computer control.The test results show that the system has low-cost and good real-time performance,and it meets the needs of the quadrotor development.

        quadrotor;STM32 microcontroller;USB HID;nRF24L01+;wireless communication

        TP332

        A

        ?迪娜

        2016-06-29)

        猜你喜歡
        微控制器中斷上位
        特斯拉 風(fēng)云之老阿姨上位
        車迷(2018年12期)2018-07-26 00:42:22
        物聯(lián)網(wǎng)技術(shù)在微控制器實驗教學(xué)中的應(yīng)用
        電子制作(2017年14期)2017-12-18 07:07:58
        跟蹤導(dǎo)練(二)(5)
        千里移防,衛(wèi)勤保障不中斷
        解放軍健康(2017年5期)2017-08-01 06:27:44
        “三扶”齊上位 決戰(zhàn)必打贏
        基于ZigBee和VC上位機(jī)的教室智能監(jiān)測管理系統(tǒng)
        以新思路促推現(xiàn)代農(nóng)業(yè)上位
        Atmel針對新一代物聯(lián)網(wǎng)應(yīng)用發(fā)布全新32位微控制器
        最新STM32設(shè)計工具增加對混合信號微控制器的支持
        意法半導(dǎo)體(ST)推出世界首款基于ARM Cortex-M7的STM32 F7系列微控制器
        成人欧美一区二区三区在线观看 | 亚洲精品亚洲人成在线下载| 亚洲av无码专区在线| 手机在线观看免费av网站| 国产一区二区三区在线观看完整版 | 久久精品国产亚洲av久按摩| 国产乱人精品视频av麻豆网站| 中文字幕一区二区中出后入| 亚无码乱人伦一区二区| 国产69精品久久久久app下载| 亚洲av美国av产亚洲av图片| 国产中文欧美日韩在线| 丰满的少妇xxxxx青青青| 曰本无码人妻丰满熟妇5g影院| 成人片99久久精品国产桃花岛| 亚洲AV无码一区二区三区精神| 久久激情人妻中文字幕| 国产av精品久久一区二区| av男人的天堂第三区| 人妻精品一区二区三区蜜桃| 国产av久久在线观看| 国产精品私密保养| 女女女女女裸体处开bbb| 伊人久久无码中文字幕| 亚洲国产成人手机在线观看| 少妇熟女淫荡丰满| 亚洲av一区二区三区网站| 日本女同av在线播放| 日本一区二区在线高清| 中文无码av一区二区三区| 乱码av麻豆丝袜熟女系列| 国产午夜无码片在线观看影院| 八戒网站免费观看视频| 国产在线视欧美亚综合| 国产一区,二区,三区免费视频| 午夜宅男成人影院香蕉狠狠爱| 国产美腿丝袜一区二区| 日韩有码中文字幕在线观看| 久久久久亚洲精品无码网址蜜桃| 狠狠躁夜夜躁无码中文字幕| 韩国主播av福利一区二区|