精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

DIY高大上!用STM32單片機(jī)搞定四旋翼無(wú)人機(jī)飛控

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:佚名 ? 2017-08-09 13:52 ? 次閱讀

嘗試制作這個(gè)四旋翼飛控的過程,感觸頗多,整理了思緒之后,把重要的點(diǎn)一一記下來;

這個(gè)飛控是基于STM32,整合了MPU6050,即陀螺儀和重力加速計(jì),但沒有融合電子羅盤;

另外,四旋翼飛行器的運(yùn)動(dòng)方式請(qǐng)百度百科,不太復(fù)雜,具體不再贅述;

這是飛控程序的控制流程(一個(gè)執(zhí)行周期):

比較重要的地方:

1.i2c通信方式

因?yàn)槲也皇菍W(xué)電類專業(yè),最開始對(duì)i2c這些是沒有一點(diǎn)概念,最后通過Google了解了一些原理,然后發(fā)現(xiàn)STM32的開發(fā)庫(kù)是帶有i2c通信的相關(guān)函數(shù)的,但是我最后還是沒有用這些函數(shù)。

我通過GPIO模擬i2c,這樣也能獲得mpu6050的數(shù)據(jù),雖然代碼多了一些,但是比較好的理解i2c的原理。

STM32庫(kù)實(shí)現(xiàn)的模擬i2c代碼(注釋好像因?yàn)榫幋a問題跪了):










2.mpu6050;

然后用寫好的模擬i2c函數(shù)讀取mpu6050,根據(jù)mpu6050手冊(cè)的各寄存器地址,讀取到了重力加速計(jì)和陀螺儀的各分量;

傳感器采樣率設(shè)置為200Hz,這個(gè)值是因?yàn)槲译娬{(diào)頻率為200Hz,也就是說,我的程序循環(huán)一次0.005s,一般來說,采樣率高點(diǎn)沒問題,別比執(zhí)行一次閉環(huán)控制的周期長(zhǎng)就行了;

陀螺儀量程±2000°/s,加速計(jì)量程±2g, 量程越大,取值越不精確;

這里注意,由于我們沒有采用磁力計(jì),而陀螺儀存在零偏,所以最終在yaw方向上沒有絕對(duì)的參考系,不能建立絕對(duì)的地理坐標(biāo)系,這樣最好的結(jié)果也僅僅是在yaw上存在緩慢漂移。

3.互補(bǔ)濾波;

融合時(shí),陀螺儀的積分運(yùn)算很大程度上決定了飛行器的瞬時(shí)運(yùn)動(dòng)情況,而重力加速計(jì)通過長(zhǎng)時(shí)間的累積不斷矯正陀螺儀產(chǎn)生的誤差,最終得到準(zhǔn)確的機(jī)體姿態(tài)。

這里我們采用Madgwick提供的UpdateIMU算法來得到姿態(tài)角所對(duì)應(yīng)的四元數(shù),之后只需要經(jīng)過簡(jiǎn)單運(yùn)算便可轉(zhuǎn)換為實(shí)時(shí)歐拉角。感謝Madgwick大大為開源做出的貢獻(xiàn)。





4.獲取期望姿態(tài);

也就是遙控部分了,讓用戶介入控制。

本著拿來主義的原則,用上”圓點(diǎn)博士開源項(xiàng)目”提供的安卓的開源藍(lán)牙控制端。

圓點(diǎn)博士給出了數(shù)據(jù)包格式,同過HC-06藍(lán)牙模塊接連到STM32串口1,再無(wú)線連接到控制端,這樣我們就可以獲得控制端不斷發(fā)送的數(shù)據(jù)包了,并實(shí)時(shí)更新期望姿態(tài)角,這里只需要注意輸出的姿態(tài)角和實(shí)時(shí)姿態(tài)角方向一致以及數(shù)據(jù)包的校驗(yàn)就行了。

5.PID控制算法;

由于簡(jiǎn)單的線性控制不可能滿足四軸飛行器這個(gè)靈敏的系統(tǒng),引入PID控制器來更好的糾正系統(tǒng)。

簡(jiǎn)介:PID實(shí)指“比例proportional”、“積分integral”、“微分derivative”,這三項(xiàng)構(gòu)成PID基本要素。每一項(xiàng)完成不同任務(wù),對(duì)系統(tǒng)功能產(chǎn)生不同的影響。

以Pitch為例:

error為期望角減去實(shí)時(shí)角度得到的誤差;

iState為積分i參數(shù)對(duì)應(yīng)累積過去時(shí)間里的誤差總和;

if語(yǔ)句限定iState范圍,繁殖修正過度;

微分d參數(shù)為當(dāng)前姿態(tài)減去上次姿態(tài),估算當(dāng)前速度(瞬間速度);

總調(diào)整量為p,i,d三者之和;

這樣,P代表控制系統(tǒng)的響應(yīng)速度,越大,響應(yīng)越快。

I,用來累積過去時(shí)間內(nèi)的誤差,修正P無(wú)法達(dá)到的期望姿態(tài)值(靜差);

D,加強(qiáng)對(duì)機(jī)體變化的快速響應(yīng),對(duì)P有抑制作用。

PID各參數(shù)的整定需要綜合考慮控制系統(tǒng)的各個(gè)方面,才能達(dá)到最佳效果。

輸出PWM信號(hào)

PID計(jì)算完成之后,便可以通過STM32自帶的定時(shí)資源很容易的調(diào)制出四路pwm信號(hào),采用的電調(diào)pwm格式為50Hz,高電平持續(xù)時(shí)間0.5ms-2.5ms;

我以1.0ms-2.0ms為每個(gè)電機(jī)的油門行程,這樣,1ms的寬度均勻的對(duì)應(yīng)電調(diào)的從最低到最高轉(zhuǎn)速。

至此,一個(gè)用stm32和mpu6050搭建的飛控系統(tǒng)就算實(shí)現(xiàn)了。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6032

    文章

    44514

    瀏覽量

    632956
  • STM32
    +關(guān)注

    關(guān)注

    2266

    文章

    10871

    瀏覽量

    354789
  • DIY
    DIY
    +關(guān)注

    關(guān)注

    176

    文章

    886

    瀏覽量

    348236
  • 無(wú)人機(jī)
    +關(guān)注

    關(guān)注

    228

    文章

    10336

    瀏覽量

    179608
  • 四旋翼
    +關(guān)注

    關(guān)注

    8

    文章

    60

    瀏覽量

    28185
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    DIY了一臺(tái)無(wú)人機(jī)全志T113芯片

    SBUS接收機(jī),來實(shí)現(xiàn)本地的數(shù)據(jù)傳輸與遠(yuǎn)程控制。 如下圖中的畫面所示,左側(cè)是控通過WiFi與QGC連接后將無(wú)人機(jī)姿態(tài)數(shù)據(jù)返回的顯示界面,右側(cè)的畫面則是T113芯片的負(fù)載情況顯示,T113是雙核處理器
    發(fā)表于 11-13 09:43

    為何無(wú)人機(jī)領(lǐng)域廣泛采用PX4作為核心控制平臺(tái)

    在眾多無(wú)人機(jī)類型中,因其具備垂直起降、穩(wěn)定性強(qiáng)、結(jié)構(gòu)相對(duì)簡(jiǎn)單等特點(diǎn)而得到廣泛應(yīng)用。目前,無(wú)論是學(xué)術(shù)界還是工業(yè)界,關(guān)于
    的頭像 發(fā)表于 11-08 09:41 ?267次閱讀
    為何<b class='flag-5'>無(wú)人機(jī)</b>領(lǐng)域廣泛采用PX4作為核心控制平臺(tái)

    開源項(xiàng)目!DIY了一臺(tái)無(wú)人機(jī)全志T113芯片

    Tina Linux 無(wú)人機(jī)自穩(wěn)飛行功能測(cè)試 無(wú)人機(jī)通過控和WiFi模塊結(jié)合,形成一個(gè)SBUS接收機(jī),來實(shí)現(xiàn)本地的數(shù)據(jù)傳輸與遠(yuǎn)程控制。 如下圖中的畫面所示,左側(cè)是
    發(fā)表于 10-22 13:50

    開源項(xiàng)目!ESP8266 DIY會(huì)爬墻的無(wú)人機(jī)

    控制器。 MPU6050 MPU6050 IMU,一個(gè)低成本的設(shè)備,包含陀螺儀和加速計(jì)。 我們將使用MPU-6050和ESP8266模塊來做一個(gè)無(wú)人機(jī)。 無(wú)鐵芯電機(jī) 無(wú)鐵芯電機(jī)是用于
    發(fā)表于 07-04 09:22

    高清畫質(zhì)、低時(shí)延,圖傳技術(shù)如何展現(xiàn)FPV穿越機(jī)的“速度與激情”

    Person View),也就是人們常說的穿越機(jī),是一種高速多飛行器。作為無(wú)人機(jī)圈的新物種,2018年、2019年國(guó)內(nèi)曾掀起FPV小熱潮。 ? FPV與常見的航拍
    的頭像 發(fā)表于 05-15 00:18 ?7447次閱讀
    高清畫質(zhì)、低時(shí)延,圖傳技術(shù)如何展現(xiàn)FPV穿越<b class='flag-5'>機(jī)</b>的“速度與激情”

    集 知語(yǔ)云智能科技無(wú)人機(jī)反制技術(shù)與應(yīng)用--無(wú)人機(jī)的組成與工作原理

    科技的視角,深入探討無(wú)人機(jī)的組成與工作原理,為您揭開無(wú)人機(jī)飛行的神秘面紗。 一、無(wú)人機(jī)的組成結(jié)構(gòu) 無(wú)人機(jī)主要由機(jī)身、動(dòng)力系統(tǒng)、控系統(tǒng)、傳感
    發(fā)表于 03-12 11:28

    第三集 知語(yǔ)云智能科技無(wú)人機(jī)反制技術(shù)與應(yīng)用--無(wú)人機(jī)的應(yīng)用領(lǐng)域

    應(yīng)對(duì)突發(fā)情況。 智能識(shí)別:通過先進(jìn)的算法和數(shù)據(jù)庫(kù),能夠識(shí)別不同品牌和型號(hào)的無(wú)人機(jī),實(shí)現(xiàn)個(gè)性化反制。 無(wú)人機(jī)反制技術(shù)的應(yīng)用前景 隨著無(wú)人機(jī)技術(shù)的不斷發(fā)展,
    發(fā)表于 03-12 11:13

    第二集 知語(yǔ)云智能科技無(wú)人機(jī)反制技術(shù)與應(yīng)用--無(wú)人機(jī)的發(fā)展歷程

    隨著科技的飛速發(fā)展,無(wú)人機(jī)技術(shù)日益成為當(dāng)今社會(huì)的熱門話題。從最初的軍事偵察到如今的民用消費(fèi),無(wú)人機(jī)憑借其靈活性和高效性,在航拍、農(nóng)業(yè)、物流等多個(gè)領(lǐng)域大放異彩。然而,無(wú)人機(jī)技術(shù)的廣泛應(yīng)用也帶來
    發(fā)表于 03-12 10:56

    第一集 知語(yǔ)科技無(wú)人機(jī)反制技術(shù)與應(yīng)用--無(wú)人機(jī)的定義與分類

    無(wú)人機(jī)反制技術(shù)可用于保護(hù)重要設(shè)施、維護(hù)公共秩序和保障航空安全。例如,在機(jī)場(chǎng)、核電站等關(guān)鍵設(shè)施周圍部署無(wú)人機(jī)反制系統(tǒng),可有效防范無(wú)人機(jī)威脅。 無(wú)
    發(fā)表于 03-12 10:42

    無(wú)人機(jī)飛行原理【其利天下無(wú)人機(jī)方案開發(fā)】

    無(wú)人機(jī)行業(yè)的近年蓬勃發(fā)展,宛如一片璀璨的新星匯聚成的輝煌星空。創(chuàng)新和科技的融合將無(wú)人機(jī)推向生活的前沿,成為引領(lǐng)時(shí)代的先鋒。這是一場(chǎng)風(fēng)起云涌的科技巨變,為我們描繪出了一個(gè)嶄新而引人入勝的無(wú)人機(jī)時(shí)代。 下面我們針對(duì)生活中常見的
    的頭像 發(fā)表于 01-26 22:33 ?2058次閱讀
    <b class='flag-5'>四</b><b class='flag-5'>旋</b><b class='flag-5'>翼</b><b class='flag-5'>無(wú)人機(jī)</b>飛行原理【其利天下<b class='flag-5'>無(wú)人機(jī)</b>方案開發(fā)】

    基于單片機(jī)的北斗定位無(wú)人機(jī)救火系統(tǒng)設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于單片機(jī)的北斗定位無(wú)人機(jī)救火系統(tǒng)設(shè)計(jì).rar》資料免費(fèi)下載
    發(fā)表于 01-12 09:41 ?11次下載

    基于單片機(jī)的北斗定位無(wú)人機(jī)救火系統(tǒng)設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于單片機(jī)的北斗定位無(wú)人機(jī)救火系統(tǒng)設(shè)計(jì).rar》資料免費(fèi)下載
    發(fā)表于 01-03 11:09 ?2次下載

    【開源項(xiàng)目】使用 Blues Swan 3.0 制作的的 DIY 無(wú)人機(jī)

    制作你自己的空氣質(zhì)量和天氣監(jiān)測(cè)無(wú)人機(jī)DIY技術(shù)與環(huán)保意識(shí)相遇。構(gòu)建、感知、探索和貢獻(xiàn)! 本項(xiàng)目中使用的物品 前言 在環(huán)保意識(shí)日益增強(qiáng)的時(shí)代,如果您可以通過制造一架遠(yuǎn)程監(jiān)測(cè)周圍空氣質(zhì)量和天氣狀況
    發(fā)表于 12-20 13:59

    深度研究垂直起降固定無(wú)人機(jī)技術(shù)

    垂直起降固定能效更高、航程更遠(yuǎn)。電動(dòng)垂直起降飛行器盡管存在諸多優(yōu)點(diǎn),但缺乏固定的固有升力,意味著能效不高,航程有限。改進(jìn)設(shè)計(jì),結(jié)合電動(dòng)垂直起降飛行器和固定飛行器的優(yōu)勢(shì), 采用多
    發(fā)表于 12-11 10:32 ?1405次閱讀
    深度研究垂直起降固定<b class='flag-5'>翼</b><b class='flag-5'>無(wú)人機(jī)</b>技術(shù)

    無(wú)人機(jī)的飛行原理及控制方法

    自動(dòng)化、機(jī)械電子、信息工程、微電子的專業(yè)人材投入到了無(wú)人機(jī)研發(fā)大潮中,幾年的時(shí)間讓無(wú)人機(jī)從遠(yuǎn)離人們視野的軍事應(yīng)用飛入了尋常百姓家、讓門外漢可以短暫的學(xué)習(xí)也能穩(wěn)定可靠的飛行娛樂。不可否認(rèn),控技術(shù)的發(fā)展是這十年
    的頭像 發(fā)表于 12-03 10:42 ?5435次閱讀
    <b class='flag-5'>四</b><b class='flag-5'>旋</b><b class='flag-5'>翼</b><b class='flag-5'>無(wú)人機(jī)</b>的飛行原理及控制方法