• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      WiFi環(huán)境下的微型四軸飛行器系統(tǒng)設(shè)計

      2016-03-20 09:14:47鐘永熙吳黎明張珊珊
      關(guān)鍵詞:線程飛行器姿態(tài)

      鐘永熙,吳黎明,張珊珊

      (廣東工業(yè)大學信息工程學院,廣州510006)

      WiFi環(huán)境下的微型四軸飛行器系統(tǒng)設(shè)計

      鐘永熙,吳黎明,張珊珊

      (廣東工業(yè)大學信息工程學院,廣州510006)

      為改善傳統(tǒng)四軸飛行器體積大、不便于攜帶、航模遙控器操作復(fù)雜等問題,從易用性的角度出發(fā),提出了基于WiFi控制的微型四軸飛行器設(shè)計方案。系統(tǒng)以STM32處理器為核心,MPU6050、HMC5883組成慣性測量單元測量飛行器姿態(tài),上位機通過WiFi與飛行控制器進行數(shù)據(jù)交互;并引入RT-Thread嵌入式實時操作系統(tǒng),以滿足飛行姿態(tài)控制的實時性要求。經(jīng)實驗測試,飛行器能在較短時間內(nèi)對上位機的操作指令進行響應(yīng),并按照指定操作穩(wěn)定飛行,系統(tǒng)基本完成預(yù)期目標。

      四軸飛行器;飛行控制器;嵌入式實時操作系統(tǒng);姿態(tài)控制

      引 言

      四軸飛行器和傳統(tǒng)的飛行器相比,具有機械結(jié)構(gòu)簡單、飛行穩(wěn)定、操控靈活、系統(tǒng)高度智能化等優(yōu)點,決定其在未來將有著更為廣闊的應(yīng)用前景。四軸飛行器的設(shè)計難點在于多傳感器數(shù)據(jù)融合、姿態(tài)控制算法等問題[1]。常見的四軸飛行器多以無線電遙控作為控制載體,操作復(fù)雜,易用性差。本文設(shè)計一種面向室內(nèi)環(huán)境或狹小空間的短距離遙控微型四軸飛行器。該系統(tǒng)以WiFi作為控制載體,引入嵌入式實時操作系統(tǒng),具有操作簡單、飛行穩(wěn)定等特點,增大了系統(tǒng)應(yīng)用的靈活度。

      1 四軸飛行器原理概述

      四軸飛行器擁有兩對對稱的旋翼,對稱的一對槳葉旋轉(zhuǎn)方向相同,而相鄰的槳葉旋轉(zhuǎn)方向相反。四只旋翼獨立工作,利用相互作用抵消各旋翼的反槳力矩,并分別控制四個旋翼的轉(zhuǎn)速即可改變飛行器的飛行姿態(tài)。

      姿態(tài)用來描述一個剛體的剛體坐標系和參考坐標系之間的角度位置關(guān)系,常使用歐拉角來表示,即俯仰角(Pitch)、橫滾角(Roll)和航向角(Yaw)。為了獲得四軸飛行器的當前飛行姿態(tài),需要使用加速度傳感器、角速度傳感器(陀螺儀)和地磁傳感器等多種傳感器來檢測飛行器姿態(tài)[2]。

      加速度傳感器測量相對于水平面的傾斜角度;陀螺儀輸出剛體繞一旋轉(zhuǎn)軸的角速度,將角速度對時間進行積分得到連續(xù)時間段內(nèi)的角度值。地磁傳感器通過地磁力投影來檢測活動物體的姿態(tài)角,從而確定物體坐標系與地理坐標系之間的方位關(guān)系。為消除傳感器的測量誤差,需要將三者的姿態(tài)數(shù)據(jù)進行融合,才能得到準確的測量值[3]。

      根據(jù)被控姿態(tài)的表示方式不同,分為不同的控制方法。控制的思路為:設(shè)定一個目標飛行姿態(tài),調(diào)整各旋翼轉(zhuǎn)速,使得當前姿態(tài)不斷逼近目標姿態(tài)。

      2 四軸飛行器硬件系統(tǒng)設(shè)計

      本文設(shè)計的飛行器控制系統(tǒng)主要包括以下幾個部分,如圖1所示。

      圖1 系統(tǒng)總體設(shè)計

      2.1 控制器

      控制器實現(xiàn)四軸飛行器的姿態(tài)解算、姿態(tài)控制等算法。在IMU運算與控制算法運算時,涉及到大量的矩陣與乘除法運算,同時,處理器與各模塊之間需要不同的接口與外設(shè)進行數(shù)據(jù)交換。設(shè)計選用意法半導體公司的STM32F103微處理器,如圖2所示。芯片采用Cortex-M3內(nèi)核,最高工作頻率可達72 MHz,具有64 KB片上Flash及20 KB片上SRAM,以及ADC、SPI、I2C等片上外設(shè),可滿足系統(tǒng)設(shè)計需求。

      圖2 控制器原理圖

      2.2 姿態(tài)測量單元

      由3軸重力加速度傳感器、3軸陀螺儀傳感器、3軸地磁傳感器組成慣性測量單元,用于測量飛行器姿態(tài)。設(shè)計選用InvenSense公司的運動處理器單元MPU-6050,整合3軸角速度和3軸加速度傳感器,能有效避免軸差問題。選用Honeywell公司的弱磁傳感器HMC5883L,對四軸飛行器航向進行測量。如圖3、圖4所示,MPU-6050通過I2C總線與處理器連接。通過輔助I2C總線與HMC5883L連接,并由主I2C接口以單一數(shù)據(jù)流形式提供完整的9軸融合數(shù)據(jù)。

      圖3 陀螺儀及加速度計

      圖4 磁場傳感器

      2.3 電源及動力單元

      如圖5所示,電源系統(tǒng)采用1 s鋰電池(3.7 V),經(jīng)LM2736電壓轉(zhuǎn)換器轉(zhuǎn)換為3 V供微處理器及各模塊使用。電源經(jīng)分壓后連接到處理器模擬輸入端用于電壓檢測。

      動力單元由微型電機、驅(qū)動電路組成,接收控制器的控制信號驅(qū)動螺旋槳。處理器輸出PWM信號經(jīng)場效應(yīng)管AP2306功率放大后驅(qū)動空心杯電機。

      圖5 電源電路

      2.4 通信模塊及輔助功能

      通信模塊連接上位機,實現(xiàn)用戶操作。上位機提供四通道信號和其他控制信號,并接收飛行器狀態(tài)信息。處理器使用串口連接USR-WiFi232模塊,用于飛行器與上位機之間的無線通信。電機驅(qū)動電路如圖6所示。

      輔助功能提供電池電壓檢測、飛行器狀態(tài)顯示等功能。

      圖6 電機驅(qū)動電路

      3 四軸飛行器軟件系統(tǒng)設(shè)計

      3.1 RT-Thread實時操作系統(tǒng)。

      飛行控制器需要執(zhí)行多個復(fù)雜的算法計算和各種不同的工作。而嚴格的實時性對于飛行控制系統(tǒng)非常關(guān)鍵,因此本設(shè)計引用RT Thread嵌入式實時操作系統(tǒng)來滿足系統(tǒng)的實時性要求。

      在飛控程序中,各個線程執(zhí)行著各自的工作。線程分為底層和應(yīng)用層,底層靠近硬件,如讀取傳感器。應(yīng)用層基本與硬件無關(guān),如姿態(tài)計算。用優(yōu)先級來區(qū)分線程對實時性的要求,優(yōu)先級數(shù)字越小則線程的優(yōu)先級越高,相應(yīng)線程的實時性越好。

      表1列出了操作系統(tǒng)系統(tǒng)中的核心線程,它們之間有先后執(zhí)行關(guān)系。

      表1 系統(tǒng)核心線程

      使用系統(tǒng)提供的信號量實現(xiàn)線程之間的同步。當上級線程完成工作,如傳感器數(shù)據(jù)讀取完成,且新的計算周期開始后,就發(fā)送一個信號量給下級線程,下級線程在工作之前會一直等待該信號量,除非達到設(shè)定的超時時間造成超時返回。超時返回后,執(zhí)行相應(yīng)的處理方案,比如發(fā)送錯誤信息到調(diào)試口,或者重啟上級線程。圖7表示核心線程的執(zhí)行順序。

      3.2 通信協(xié)議

      通信協(xié)議實現(xiàn)遙控器和飛行控制器之間的信息交換。為滿足系統(tǒng)實時性要求,通信協(xié)議需要盡量簡單,以盡量少的數(shù)據(jù)傳遞盡量多的數(shù)據(jù)。本系統(tǒng)擬定的通信協(xié)議如下所示。

      碼 頭指令碼參數(shù)長度參 數(shù)校驗碼碼 尾0x55 Cmd Length Par CRC 0x0D

      圖7 核心線程執(zhí)行順序

      遙控指令分為兩類,控制類與查詢類。命令字高兩位用于區(qū)分指令類型,低6位為相應(yīng)的指令碼??刂浦噶钣糜陲w行器的連接、解鎖、姿態(tài)控制、PID參數(shù)設(shè)置等功能。查詢指令用于查詢飛行器當前姿態(tài)及電量信息。下面列出了通信協(xié)議中較為重要的命令,控制指令如表2所列。

      表2 控制指令

      3.3 數(shù)據(jù)處理

      (1)提取傳感器數(shù)據(jù)

      飛行控制器上集成了9個自由度的傳感器,所有的傳感器都以I2C設(shè)備的形式,掛載在I2C總線設(shè)備上,由RTThread的設(shè)備驅(qū)動進行管理。傳感器數(shù)據(jù)的讀取,是由線程gyro、acc、compass負責的,其功能包括傳感器初始化、取值、單位變換、濾波、輸出、動態(tài)量程處理等。傳感器通過硬件中斷驅(qū)動MCU的外部中斷引腳,在中斷程序中釋放一個信號量給線程以通知其讀取新的數(shù)據(jù)。

      (2)姿態(tài)算法

      獲得傳感器的數(shù)據(jù)后,通過姿態(tài)算法計算得出實際的飛行器角度值。它將上一時刻中的飛行器姿態(tài)與當前時刻的傳感器輸出進行結(jié)合,并計算出當前的姿態(tài)。姿態(tài)計算使用四元數(shù)算法,用四元數(shù)來計算空間旋轉(zhuǎn),相對于方向余弦矩陣來說可以減少很多的計算量。將傳感器的輸出量轉(zhuǎn)換為四元數(shù),并與上一時刻的四元數(shù)相乘,進行姿態(tài)遞推,然后再將四元數(shù)中轉(zhuǎn)換成較為直觀的歐拉角進行輸出。遞推的過程即是姿態(tài)更新的過程[4]。

      系統(tǒng)中,將加速度計的輸出轉(zhuǎn)換為roll與pitch相對地平面的旋轉(zhuǎn)量,地磁傳感器則計算出當前磁北的位置,即yaw的旋轉(zhuǎn)量。獲得與目標姿態(tài)角度的偏差,在下一次計算四元數(shù)之前,將其與陀螺儀輸出的角增量用變參數(shù)互補濾波器進行融合,再計算四元數(shù)。

      (3)控制算法與輸出映射

      姿態(tài)算法的結(jié)果直接被用于控制算法的計算,以修正瞬時誤差,使四軸飛行器向目標的姿態(tài)逼近。這一部分的工作,是由“ctrl”線程負責執(zhí)行的。系統(tǒng)中,使用雙閉環(huán)PID算法,輸入量為姿態(tài)誤差,輸出量為三個軸(roll, pitch,yaw)對應(yīng)的姿態(tài)角度的控制量[5]。這個輸出并不能直接賦值給電機,需要一個轉(zhuǎn)換過程,將各個軸的輸出量轉(zhuǎn)化成飛行器中的各個伺服器需要的輸入量[6]。四軸飛行器的控制輸出映射如表3所列。

      表3 四軸飛行器姿態(tài)控制輸出映射

      4 系統(tǒng)測試

      為使飛行器穩(wěn)定飛行,需要進行PID參數(shù)的調(diào)節(jié)。先調(diào)節(jié)處環(huán)PID,再調(diào)節(jié)內(nèi)環(huán)PID。以Roll軸調(diào)節(jié)為例,首先把四軸飛行器的一個旋轉(zhuǎn)軸(pitch)固定,使其只能以某一旋轉(zhuǎn)軸旋轉(zhuǎn)(roll)。先調(diào)節(jié)比例P,然后依次加入積分I調(diào)節(jié)和微分D,使四軸飛行器能穩(wěn)定在一個角度。人為添加一個外力及初速度或左右打橫滾桿,觀察四軸飛行器能否恢復(fù)自穩(wěn)。具體需要結(jié)合實際飛行時的反應(yīng)進行微調(diào)。pitch、roll、yaw的PID參數(shù)調(diào)節(jié)方法基本一致。

      為實時監(jiān)測飛行器的控制及姿態(tài)信息,采用matlab編寫測試程序?qū)︼w行器狀態(tài)進行實時監(jiān)控。飛控定時給上位機發(fā)送傳感器信息和姿態(tài)信息,上位機通過串口發(fā)送給matlab,并進行實時顯示,測試結(jié)果如圖8所示。圖中顯示了姿態(tài)角的輸出信號,并以圖形的形式表示出飛行器的當前姿態(tài)。Matlab實時監(jiān)控程序如圖9所示。

      最后,對四軸飛行器的動態(tài)性能進行測試。測試條件:姿態(tài)采樣頻率為1 k Hz,姿態(tài)解算頻率為100 Hz,航向角、俯仰角、橫滾角的最大舵量均為30°。設(shè)定不同的目標姿態(tài),重復(fù)實驗,取平均值,測試數(shù)據(jù)如表4所列。

      圖8 PID調(diào)節(jié)方法

      圖9 matlab實時監(jiān)控程序

      表4 四軸飛行器動態(tài)性能

      由測試數(shù)據(jù)可得,系統(tǒng)具有較短的穩(wěn)定時間。系統(tǒng)動態(tài)響應(yīng)迅速,能滿足飛行器姿態(tài)調(diào)整的平穩(wěn)性和快速性要求。

      結(jié) 語

      本文設(shè)計了一種基于WiFi控制的微型四軸飛行器,該系統(tǒng)以RT-Thread實時操作系統(tǒng)為軟件載體,實現(xiàn)了自穩(wěn)飛行、姿態(tài)控制等功能,操作簡單,可在室內(nèi)或狹小空間內(nèi)穩(wěn)定飛行。但該系統(tǒng)還缺乏足夠的室內(nèi)定位手段和SLAM能力,如能在后續(xù)設(shè)計中實現(xiàn),將使其使用范圍更加廣泛,更加智能化。

      [1]方璇,鐘伯成.四旋翼飛行器的研究與應(yīng)用[J].上海工程技術(shù)大學學報,2015(2):113-118.

      [2]高宗余,李德勝.多MEMS傳感器姿態(tài)測量系統(tǒng)的研究[J].電光與控制,2010,17(3):68-70.

      [3]何川,李智,王勇軍.基于STM32的四旋翼飛行器的姿態(tài)最優(yōu)估計研究[J].電子技術(shù)應(yīng)用,2015,41(12):61-64.

      [4]冀亮,錢正洪,白茹.基于四元數(shù)的四軸無人機姿態(tài)的估計和控制[J].現(xiàn)代電子技術(shù),2015(11):112-116.

      [5]徐大遠,王英健,陳冠軍,等.四軸飛行器的動力學建模和位置控制研究[J].電子科技,2015,28(1):69-72.

      [6]陸偉男,蔡啟仲,李剛,等.基于四軸飛行器的雙閉環(huán)PID控制[J].科學技術(shù)與工程,2014,14(33):127-131.

      鐘永熙(碩士研究生),主要研究方向為嵌入式系統(tǒng)和自動控制;吳黎明(教授),主要研究方向為嵌入式系統(tǒng)、通信與信息系統(tǒng)。

      Micro Four-axis Aircraft Design Based on WiFi

      Zhong Yongxi,Wu Liming,Zhang Shanshan
      (Guangdong University of Technology,Guangzhou 510006,China)

      In order to improve the portability of the traditional four-axis aircraft and decrease the operation complexity of the aero-modeling remote control,a design of micro four-axis aircraft based on WiFi is put forward.The system uses STM32 processor as the core,and measures the flight attitude of the aircraft by an inertial measurement unit which consists of the MPU6050 and HMC5883.The date interaction between the mobile application and the control board is completed by WiFi.The RT-Thread embedded RTOS is introduced to the system at the same time in order to meet the real-time requirement of the fight attitude control.The experiment results show that the aircraft can response to upper computer in a comparatively short time and fly steadily according to the specified operating.And the system basically can complete the expected goal.

      four-axis aircraft;flight controller;embedded RTOS;attitude control

      TP272

      :A

      楊迪娜

      2016-06-06)

      猜你喜歡
      線程飛行器姿態(tài)
      高超聲速飛行器
      攀爬的姿態(tài)
      學生天地(2020年3期)2020-08-25 09:04:16
      全新一代宋的新姿態(tài)
      汽車觀察(2018年9期)2018-10-23 05:46:40
      跑與走的姿態(tài)
      中國自行車(2018年8期)2018-09-26 06:53:44
      復(fù)雜飛行器的容錯控制
      電子制作(2018年2期)2018-04-18 07:13:25
      淺談linux多線程協(xié)作
      神秘的飛行器
      Linux線程實現(xiàn)技術(shù)研究
      么移動中間件線程池并發(fā)機制優(yōu)化改進
      閱讀是最美的姿態(tài)
      鸡泽县| 钟山县| 邵阳市| 勃利县| 岚皋县| 宁都县| 镇巴县| 万年县| 县级市| 图们市| 郧西县| 鄄城县| 噶尔县| 双流县| 朔州市| 建始县| 依安县| 信阳市| 兴义市| 昭觉县| 沈丘县| 常山县| 司法| 天津市| 海盐县| 双牌县| 昌宁县| 阿拉尔市| 洛浦县| 师宗县| 普陀区| 达孜县| 中江县| 抚州市| 当雄县| 江油市| 新竹县| 宁安市| 隆尧县| 泽州县| 原阳县|