當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]四軸飛行器是一種結(jié)構(gòu)緊湊、飛行方式獨(dú)特的垂直起降式飛行器,與普通的飛行器相比具有結(jié)構(gòu)簡單,故障率低和單位體積能夠產(chǎn)生更大升力等優(yōu)點(diǎn),在軍事和民用多個(gè)領(lǐng)域都有廣闊的應(yīng)用前景,非常適合在狹小空間內(nèi)執(zhí)行任務(wù)

1、引言

四軸飛行器是一種結(jié)構(gòu)緊湊、飛行方式獨(dú)特的垂直起降式飛行器,與普通的飛行器相比具有結(jié)構(gòu)簡單,故障率低和單位體積能夠產(chǎn)生更大升力等優(yōu)點(diǎn),在軍事和民用多個(gè)領(lǐng)域都有廣闊的應(yīng)用前景,非常適合在狹小空間內(nèi)執(zhí)行任務(wù)。因此四旋翼飛行器具有廣闊的應(yīng)用前景,吸引了眾多科研人員,成為國內(nèi)外新的研究熱點(diǎn)。

本設(shè)計(jì)主要通過利用慣性測(cè)量單元(IMU)姿態(tài)獲取技術(shù)、PID電機(jī)控制算法、2.4G無線遙控通信技術(shù)和高速空心杯直流電機(jī)驅(qū)動(dòng)技術(shù)來實(shí)現(xiàn)簡易的四軸方案。整個(gè)系統(tǒng)的設(shè)計(jì)包括飛控部分和遙控部分,飛控部分采用機(jī)架和控制核心部分一體設(shè)計(jì)增加系統(tǒng)穩(wěn)定性,遙控部分采用模擬搖桿操作輸入使操作體驗(yàn)極佳,兩部分之間的通信采用2.4G無線模塊保證數(shù)據(jù)穩(wěn)定傳輸。飛行控制板采用高速單片機(jī)STM32作為處理器,采用含有三軸陀螺儀、三軸加速度計(jì)的運(yùn)動(dòng)傳感器MPU6050作為慣性測(cè)量單元,通過2.4G無線模塊和遙控板進(jìn)行通信,最終根據(jù)PID控制算法通過PWM方式驅(qū)動(dòng)空心杯電機(jī)來達(dá)到遙控目標(biāo)。

2、系統(tǒng)總體設(shè)計(jì)

系統(tǒng)硬件的設(shè)計(jì)主要分要遙控板和飛控板兩個(gè)部分,遙控板采用常見羊角把游戲手柄的外形設(shè)計(jì),控制輸入采用四向搖桿,無線數(shù)據(jù)傳輸采用2.4G無線模塊。飛控板采用控制處理核心和機(jī)架一體的設(shè)計(jì)即處理器和電機(jī)都集成在同一個(gè)電路板上,采用常規(guī)尺寸能夠采用普通玩具的配件。系統(tǒng)軟件的設(shè)計(jì)同樣包括遙控板和飛控板兩部分的工作,遙控板軟件的設(shè)計(jì)主要包括ADC的采集和數(shù)據(jù)的無線發(fā)送。飛控板的軟件的設(shè)計(jì)主要包括無線數(shù)據(jù)的接收,自身姿態(tài)的實(shí)時(shí)結(jié)算,電機(jī)PID增量的計(jì)算和電機(jī)的驅(qū)動(dòng)。整個(gè)四軸飛行器系統(tǒng)包括人員操作遙控端和飛行器控制端,遙控端主控制器STM32通過ADC外設(shè)對(duì)搖桿數(shù)據(jù)進(jìn)行采集,把采集到的數(shù)據(jù)通過2.4G無線通信模塊發(fā)送至飛控端。飛控板的主要工作就是通過無線模塊進(jìn)行控制信號(hào)的接收,并且利用慣性測(cè)量單元獲得實(shí)時(shí)系統(tǒng)加速度和角速度原始數(shù)據(jù),并且最終解算出當(dāng)前的系統(tǒng)姿態(tài),然后根據(jù)遙控板發(fā)送的目標(biāo)姿態(tài)和當(dāng)姿態(tài)差計(jì)算出PID電機(jī)增量,然后通過PWM驅(qū)動(dòng)電機(jī)進(jìn)行系統(tǒng)調(diào)整來實(shí)現(xiàn)飛行器的穩(wěn)定飛行。

3、四軸飛行器的硬件設(shè)計(jì)

2.1主控單元選擇

從成本和性能綜合考慮,飛控板和遙控板的主控單元都采用意法半導(dǎo)體公司的增強(qiáng)型高速單片機(jī)STM32F103作為主控的,STM32F103是基于的ARM 32位的Cortex-M3內(nèi)核架構(gòu),穩(wěn)定工作頻率可達(dá)72MHz,是一個(gè)具有豐富資源、高速時(shí)鐘的精簡指令的微處理器。STM32F103擁有從64K或128K字節(jié)的閃存程序可選存儲(chǔ)器,高達(dá)20K字節(jié)的SRAM,2個(gè)12位模數(shù)轉(zhuǎn)換器多達(dá)16個(gè)輸入通道,7通道DMA控制器,多達(dá)80個(gè)快速I/O端口,串行單線調(diào)試(SWD)和JTAG接口調(diào)試模式,多達(dá)7個(gè)定時(shí)器,多達(dá)2個(gè)I2C接口(支持SMBus/PMBus),多達(dá)3個(gè)USART接口(支持ISO7816接口,LIN,IrDA接口和調(diào)制解調(diào)控制),多達(dá)2個(gè)SPI接口(18M位/秒),CAN接口(2.0B主動(dòng)),USB2.0全速接口。

2.2 飛控板電路設(shè)計(jì)

飛控板的核心設(shè)計(jì)是MPU6050測(cè)量傳感器、NRF2401無線模塊以及飛控板電機(jī)驅(qū)動(dòng)等模塊的設(shè)計(jì)。飛控系統(tǒng)的慣性測(cè)量單元采用MPU6050作為測(cè)量傳感器,MPU6050的驅(qū)動(dòng)方式采用IIC接口,時(shí)鐘引腳SCL連接到STM32的PB10,數(shù)據(jù)引腳連接到STM32的PB11引腳,數(shù)據(jù)中斷引腳連接到PB5,為了增強(qiáng)驅(qū)動(dòng)能力在每個(gè)引腳上都加入了10K的上拉電阻。

相對(duì)于其他模塊電系統(tǒng)也是比較重要的部分,飛控系統(tǒng)采用3.7V高放電倍率鋰電池進(jìn)行供電。主控芯片供電部分和IMU傳感器部分采用各自獨(dú)立的LDO進(jìn)行供電,這樣確保了系統(tǒng)的穩(wěn)定性和IMU傳感器數(shù)據(jù)采集的準(zhǔn)確性。

飛控板與遙控板數(shù)據(jù)的通信同樣采用的是基于2.4G頻段的NRF2401模塊,確保了數(shù)據(jù)的穩(wěn)定傳輸。STM32的SPI1外設(shè)對(duì)2.4G模塊進(jìn)行操作驅(qū)動(dòng),引腳的連接如下表1所示。

NRF2.4G為采用3.3V供電無線模塊,系統(tǒng)采用與單片機(jī)相同的電源網(wǎng)絡(luò)對(duì)其供電,同時(shí)加入0.1UF電容進(jìn)行濾波確保模塊正常工作。

飛控板的驅(qū)動(dòng)系統(tǒng)采用的是四個(gè)分布對(duì)稱十字交叉的高速空心杯電機(jī),電機(jī)的驅(qū)動(dòng)開關(guān)部分采用N溝道增強(qiáng)型場(chǎng)效應(yīng)晶體管進(jìn)行控制,通過修改STM32對(duì)應(yīng)引腳上的PWM信號(hào)來進(jìn)行開關(guān)MOS管實(shí)現(xiàn)電機(jī)運(yùn)行開與關(guān),從而實(shí)現(xiàn)電機(jī)運(yùn)轉(zhuǎn)速度的調(diào)節(jié)。電機(jī)1、2、3、4分別采用STM32的定時(shí)器2的通道0、通道1、通道2和通道3的PWM進(jìn)行控制。電機(jī)1的控制端連接PA0,電機(jī)2的控制端采用PA1,電機(jī)2的控制端采用PA2,電機(jī)3的控制端采用PA3控制。

2.3遙控板電路設(shè)計(jì)

遙控板主控單元通過SPI總線驅(qū)動(dòng)2.4G無線模塊,通過8位并口驅(qū)動(dòng)1602液晶顯示,通過ADC輸入引腳對(duì)搖桿和電池電量進(jìn)行采集,通過引腳驅(qū)動(dòng)三極管開關(guān)驅(qū)動(dòng)蜂鳴器提示。遙控板的核心設(shè)計(jì)是搖桿模擬數(shù)據(jù)進(jìn)行采集模塊、NRF2401無線模塊等設(shè)計(jì)。

采用STM32單片機(jī)ADC1的通道4、通道5、通道6和通道7進(jìn)行搖桿模擬數(shù)據(jù)進(jìn)行采集并轉(zhuǎn)換為數(shù)字量,分別連接到PA4、PA5、PA6和PA7引腳,并且加入濾波電容減少雜質(zhì)信號(hào)的影響。

遙控板采用NRF2.4G模塊的驅(qū)動(dòng)采用STM32的自帶外設(shè)SPI2進(jìn)行驅(qū)動(dòng),各個(gè)功能引腳的連接如表2所示。

NRF2.4G模塊采用3.3V供電,在供電端口外加0.1UF濾波存儲(chǔ)電容確保無線系統(tǒng)的穩(wěn)定性。

4、四軸飛行器的軟件設(shè)計(jì)

四軸飛行器的軟件設(shè)計(jì)主要包括飛控板軟件的設(shè)計(jì)和遙控板軟件的設(shè)計(jì)。整體軟件在MDK環(huán)境下采用C語言編寫,采用ST-LINK仿真器對(duì)程序進(jìn)行調(diào)試與下載。

3.1飛控板系統(tǒng)軟件設(shè)計(jì)

飛控程序的主要設(shè)計(jì)思想是開機(jī)對(duì)無線模塊的初始化、MPU6050的初始化、PWM電機(jī)初始化。隨后對(duì)整個(gè)系統(tǒng)IMU繼續(xù)零偏處理,隨后等待進(jìn)入解鎖信息的傳入。飛控采用定時(shí)器中斷的方式,在中斷中進(jìn)行對(duì)時(shí)間的處理,每次中斷計(jì)次標(biāo)志就會(huì)自增,根據(jù)不同的中斷積累即不同時(shí)間的間隔分別處理優(yōu)先級(jí)不同的任務(wù)。

飛控系統(tǒng)每0.5毫秒中斷一次,每次中斷就會(huì)檢查一次無線模塊數(shù)據(jù)的接收,確保飛控系統(tǒng)的控制信息的實(shí)時(shí)性。每兩次中斷即1毫秒讀取一次IMU單元的數(shù)據(jù),通過濾波算法獲得較為準(zhǔn)確的系統(tǒng)加速度、角速度的原始數(shù)據(jù)。每四次中斷即2毫秒通過IMU的原始數(shù)據(jù)計(jì)算下當(dāng)前飛控板系統(tǒng)的姿態(tài),然后結(jié)合遙控端的目標(biāo)姿態(tài),根據(jù)兩者的差值通過PID控制算法進(jìn)行對(duì)各個(gè)電機(jī)的調(diào)速控制。每200次中斷即100毫秒,飛控系統(tǒng)會(huì)采集一次電池電壓,然后把電池電壓發(fā)送給遙控板,用來高速操作人員當(dāng)前電壓的大小。

MPU6050作為系統(tǒng)的慣性測(cè)量單元,是整個(gè)系統(tǒng)正常運(yùn)行基礎(chǔ)。MPU6050的驅(qū)動(dòng)總線為IIC方式,為了程序的方便性本系統(tǒng)選用PB10和PB11模擬IIC來驅(qū)動(dòng)。IMU讀取出來的數(shù)據(jù)只是最簡單的加速度、陀螺儀角速度的原始數(shù)據(jù),需要通過進(jìn)一步的處理才能得到本系統(tǒng)想要的姿態(tài)角度。

根據(jù)處理過后的MPU數(shù)據(jù)來獲得當(dāng)前的姿態(tài),具體的姿態(tài)獲取理論上是根據(jù)各個(gè)角度的積分得到當(dāng)前的系統(tǒng)姿態(tài)歐拉角。本系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)是采用四元數(shù)算法對(duì)MPU6050最濾波后的數(shù)據(jù)進(jìn)行計(jì)算得到最終的歐拉角。

整個(gè)飛控系統(tǒng)的運(yùn)行動(dòng)作是通過調(diào)整飛控姿態(tài)來實(shí)現(xiàn)的,本系統(tǒng)設(shè)計(jì)在當(dāng)前姿態(tài)的基礎(chǔ)上,根據(jù)接收到的遙控器的目標(biāo)姿態(tài)對(duì)空心杯電機(jī)進(jìn)行基于PID算法的PWM控制調(diào)速,從而實(shí)現(xiàn)飛控系統(tǒng)的各種基本運(yùn)動(dòng)。飛控板會(huì)對(duì)系統(tǒng)慣性測(cè)量單元傳感器的原始數(shù)據(jù)進(jìn)行濾波,然后對(duì)濾波后的數(shù)據(jù)進(jìn)行實(shí)時(shí)結(jié)算,最后根據(jù)遙控板發(fā)送來的目標(biāo)信息進(jìn)行計(jì)算出電機(jī)的控制增量,最后根據(jù)PID控制算法對(duì)電機(jī)進(jìn)行控制輸出。

3.2遙控板系統(tǒng)軟件設(shè)計(jì)

遙控板的作用就是把操作人員的操作動(dòng)作轉(zhuǎn)化成信號(hào)傳給飛行控制板,同時(shí)將一些控制信息和飛控板傳回來的信息進(jìn)行實(shí)時(shí)的顯示和處理。飛控板搖桿數(shù)據(jù)的采集用到了STM32的ADC功能STM32F103xx增強(qiáng)型產(chǎn)品內(nèi)嵌2個(gè)12位的模擬/數(shù)字轉(zhuǎn)換器(ADC),每個(gè)ADC共用多達(dá)16個(gè)外部通道,可以實(shí)現(xiàn)單次或掃描轉(zhuǎn)換。而且STM32的ADC可以采用DMA通道,這樣可以進(jìn)一步的節(jié)省硬件資源,加快系統(tǒng)實(shí)時(shí)性。采用SPI1驅(qū)動(dòng)NRF無線模塊,進(jìn)行與飛控板的數(shù)據(jù)通信。

本系統(tǒng)采用STM32的ADC1的通道4、通道5、通道6和通道7進(jìn)行搖桿模擬數(shù)據(jù)進(jìn)行采集,ADC和DMA的配置代碼如下:

ADC_Configuration();                                    //ADC 功能配置

DMA_Configuration();                                    //DMA 功能配置

下面是ADC和DMA的啟動(dòng)和時(shí)能代碼如下:

ADC_SoftwareStartConvCmd(ADC1, ENABLE);                  //啟動(dòng) ADC1 轉(zhuǎn)換

DMA_Cmd(DMA1_Channel1, ENABLE);                    //啟動(dòng) DMA 通道

采用STM32外設(shè)SPI1驅(qū)動(dòng)NRF2.4G模塊,SPI初始化代碼如下:

Spi1_Init();

采用無線模塊的通道40進(jìn)行通信,2401初始化函數(shù)如下:

Nrf24l01_Init(MODEL_RX2,40);                           //通道40

2.4G無線模塊NRF2401的接收函數(shù)如下:

Nrf_Check_Event();                                          //讀取NRF2401數(shù)據(jù)

通過2401將控制信號(hào)發(fā)送,發(fā)送函數(shù)如下:

NRF_TxPacket_AP(NRF24L01_TXDATA_RC,32);           //將控制信號(hào)發(fā)給四軸

5、結(jié)論

本文描述了一個(gè)簡易四軸飛行器系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn),整個(gè)方案分為遙控控制板各飛行控制板兩部分,通過2.4G無線模塊進(jìn)行控制通信,飛控系統(tǒng)采用IMU系統(tǒng)獲取姿態(tài)信息根據(jù)反饋控制算法進(jìn)行電機(jī)控制從而實(shí)現(xiàn)飛行控制。本系統(tǒng)飛控板采用一體設(shè)計(jì)使得系統(tǒng)簡單、緊湊,遙控板采用搖桿輸入使系統(tǒng)控制體驗(yàn)良好,最終實(shí)現(xiàn)飛行器的基本運(yùn)動(dòng)。實(shí)踐證明該四軸飛行器飛行穩(wěn)定、可靠,取得了較好效果。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉