寫在最前:
時間過得很快,轉眼我就要畢業了,本科四年中,實驗室的學長學弟都給我非常多的幫助,我也在很多開源項目中學習到很多。作爲開源精神的受益者,我覺得也應該把自己的工作分享給大家。
我一直對飛行器有着強烈的興趣,開始接觸四旋翼是從《三傻大鬧寶萊塢》這部電影開始的,蘭徹的四旋翼給我留下很深的印象。在對控制論沒有一點了解的情況下我就開始了嘗試,哈哈,結果當然是都沒有離地。直到上了大學纔對控制有了基本的概念,並在幾個學長的幫助下開始瞭解飛行器控制相關的技術。正是因爲有着大家的幫助,我才能成長迅速,前些日子我的傾轉旋翼飛行器也試飛成功了。於是乎,我想乘着這點空餘時間。也做一些能幫助更多喜愛飛行器的朋友接觸,瞭解這個領域。
我在做四旋翼的時候,發現硬件、成本和複雜的代碼在很大程度上阻擋了衆多愛好者的腳步。很多人看着價格就望而卻步了。還有一些pixhawk入門的愛好者在學會使用地面站之後就不知道到如何深入了,還有一部分人,有幸淘到了crazypone之類的微型四軸,打開工程一瞅,嚯,全是英文(還有俄文)註釋的代碼,這還學個錘子呢?極少數人開始了從PCB設計的慢慢前進,然後漸漸沉沒在廣闊的硬件設計海洋之中……
鑑於此,我打算將我做的第一套小四軸的硬件和代碼稍作改進,做成套件開源,包括原理圖、PCB以及代碼(關鍵部分逐行中文註釋)。想了解飛控代碼的可以直接在飛控板仿真或對飛控編程,對飛控板電路感興趣的可以在原理圖上稍作修改,做屬於自己的飛控。所有資料遵循BSD開源協議。大家基本可以隨意使用,具體的要求可以看下圖
正點原子,小馬哥等等很多優秀的團隊和個人都發布了小四軸的套件,相比之下,Tinyleaf套件確實是相形見絀。不過此套件的優勢在於:
- 在硬件設計上採取了多裕量的設計,每個MOS瞬時通流12A,在一定程度上可以防止堵轉燒燬MOS管芯的情況發生。
- 使用商品遙控器通過s.bus通訊,信號穩定,代碼可以移植,爲用戶將遙控代碼移植到遙控車船提供便利。
- 使用空心杯減速組提供動力,防止初學者受到嚴重的傷害,無刷電機和無減速的空心杯帶槳葉打手非常容易見血,相比之下,帶減速組的空心杯動力只會覺得比較疼~)
值得一提的是,TinyLeaf的第一套代碼僅使用單級PID實現姿態閉環,控制核心代碼非常簡單,非常適合初學者作爲了解PID算法的工具。難度很低,我希望所有愛好者能先體驗一把飛行的樂趣,用興趣驅動後期的學習,而不是在幾次失敗後選擇了放棄。在後期我打算視情況更新非線性PID、ADRC等控制算法,以及激光/氣壓計定高,光流定位、卡爾曼融合等等,我也會視情況對一些部分開教程。
TinyLeaf參數
飛控 | 硬件版本 | 2.1 |
主控芯片 | STM32F103C8T6 | |
電機驅動芯片 | FS8205A | |
遙控協議 | S.BUS | |
RGB-LED | 1個 | |
蜂鳴器 | 無源可調 | |
拓展接口 | 串口1,串口3 | |
飛控淨重 | 6.0g | |
軟件 | 下載方式 | ST-Link |
編譯/下載軟件 | Keil | |
最新版本 | 1.0.0 | |
其他 | 四軸動力 | 8520空心杯減速組 |
電池 | 花牌3.8V/450mah | |
遙控器 | 富斯i6s |