加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入

【RT-Thread作品秀】基于RT-Thread的姿態(tài)解算控制平臺(tái)設(shè)計(jì)

2020/12/16
611
服務(wù)支持:
技術(shù)交流群

完成交易后在“購(gòu)買成功”頁(yè)面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長(zhǎng)和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購(gòu)買后不支持退換且無(wú)法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
方塊圖(3)
相關(guān)方案
  • 方案介紹
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

RT-Thread作品秀】基于RT-Thread的姿態(tài)解算控制平臺(tái)設(shè)計(jì)

作者:黃國(guó)盛

 

概述 

是一個(gè)姿態(tài)解算算法驗(yàn)證平臺(tái)以及控制算法驗(yàn)證平臺(tái)

 

實(shí)現(xiàn)步驟:

使用CubeMax HAL庫(kù)開發(fā);

使用Python project_generator生成工程;

精簡(jiǎn) RTT Master內(nèi)核并加入C++支持;

配置調(diào)試接口;

構(gòu)建C/C++混合編程框架;

硬件IIC驅(qū)動(dòng)GY-86傳感器驅(qū)動(dòng);

MATLAB設(shè)計(jì)IIR Butterworth四階低通濾波器;

傳感器校準(zhǔn);

Mahony互補(bǔ)濾波算法 實(shí)現(xiàn)姿態(tài)解算;

加入mavlink/私有協(xié)議、UDP/USB上傳數(shù)據(jù)到PC;

通過MATLAB/STM32驗(yàn)證和比較各種算法;

搭建單軸單槳一維角度控制平臺(tái);

……

 

開發(fā)環(huán)境 

硬件:

碳纖管碳纖槳電機(jī)座、電機(jī)電調(diào)電源、ART_Pi、GY86、按鍵模塊、硅膠線……

RT-Thread版本:

Master 4.0.3

開發(fā)工具及版本:

STM32CubeMX 6.0.1、IARforARM8.32.1、BeyondCompare4、MATLAB R2019b、VSCode、SmartGit20.1.5、匿名飛控地面站-0512……

RT-Thread使用情況概述

Pin、serial、cplusplus、time、finsh

硬件框架

ART_Pi、GY86、按鍵模塊、電調(diào)……

 

軟件框架說(shuō)明

C/C++混合編程,進(jìn)程和Loop Schedule結(jié)合

 

軟件模塊說(shuō)明

核心部分:關(guān)于GY86的驅(qū)動(dòng)以及姿態(tài)解算的Mahony

 

演示效果

演示視頻:

比賽感悟

 4/11/2020 Will_Watson

關(guān)于AHRS,卡爾曼濾波或互補(bǔ)濾波理解起來(lái) 簡(jiǎn)單但實(shí)施難度較大因?yàn)楹芏鄥?shù)有待測(cè)定;

發(fā)現(xiàn)各開源項(xiàng)目用的最多的是Mahony算法,關(guān)于它的PI部分的本質(zhì)著實(shí)難以理解;

當(dāng)發(fā)現(xiàn)BP神經(jīng)網(wǎng)絡(luò)逼近好像可以和卡爾曼濾波一樣,就當(dāng)成濾波器,而且它還可以是一個(gè)逼近式的濾波器,免不了一番測(cè)試比較;

而后查看Madgwick原文中提到“梯度下降法”,瞬間明白了它的根源和本質(zhì);

當(dāng)學(xué)習(xí)BP神經(jīng)網(wǎng)絡(luò)逼近的時(shí)候的思考流程如下:

逼近的需求來(lái)源是什么?  可能是為了預(yù)測(cè)系統(tǒng)下一個(gè)輸出,為了做前饋控制?  預(yù)測(cè) ——> 觀測(cè)器 ——> 逼近式濾波器???

神經(jīng)逼近網(wǎng)絡(luò) 的特性有哪些? 不具有長(zhǎng)時(shí)記憶,短時(shí)記憶即可以說(shuō)只具有最近時(shí)刻 原系統(tǒng)的逼近特性;

嘗試檢測(cè)濾波特性,從這個(gè)角度理解 逼近網(wǎng)絡(luò) 也是一個(gè)不斷修正的預(yù)估觀測(cè)器 或者說(shuō) 卡爾曼濾波器

從執(zhí)行流程/濾波效果上 分析一維卡爾曼濾波 和 NNI-BP逼近一維非線性系統(tǒng)的 區(qū)別:

卡爾曼濾波流程: 先驗(yàn)估計(jì)值——>先驗(yàn)估計(jì)方差——>依據(jù)各方差融合傳感器數(shù)據(jù)做后驗(yàn)估計(jì)——>更新后驗(yàn)估計(jì)方差;

NNI-BP逼近流程: 由網(wǎng)絡(luò)前狀態(tài)和新輸入直接計(jì)算輸出——>與原系統(tǒng)輸出比較修正網(wǎng)絡(luò)狀態(tài)(是為了下一次直接獲得預(yù)估輸出);

注:把原系統(tǒng)輸出當(dāng)成需濾波數(shù)據(jù);把神經(jīng)網(wǎng)絡(luò)輸出當(dāng)成濾波后數(shù)據(jù)

卡爾曼濾波沒有階數(shù)的概念,而NNI-BP逼近的濾波特性具有一定延遲

卡爾曼濾波器的主要 控制參數(shù)(基于現(xiàn)實(shí)過程噪聲和觀測(cè)噪聲)不可控,轉(zhuǎn)移矩陣協(xié)方差矩陣需測(cè)得;

NNI-BP逼近 的主要 控制參數(shù)(學(xué)習(xí)速率和動(dòng)量因子)可控 即濾波效果可調(diào)節(jié),逼近系統(tǒng)特性;

 也有一部分 “內(nèi)閉環(huán)軟擬硬輸入輸出”思想

當(dāng)然算法的表現(xiàn)依然可以看起來(lái)就是加減乘除那么簡(jiǎn)單,雙重卡爾曼看起來(lái)和做起來(lái) 可能沒那么友好;

 

  • 代碼地址.txt
    描述:代碼地址
  • 基于RT-Thread的姿態(tài)解算控制平臺(tái)設(shè)計(jì).docx
    描述:基于RT-Thread的姿態(tài)解算控制平臺(tái)設(shè)計(jì).docx

相關(guān)推薦

電子產(chǎn)業(yè)圖譜