Crazepony開源四軸飛行器
Crazepony項目旨在為大學生/航模愛好者/創客提供可二次開發的迷你四軸飛行器原型。我們秉承開放,合作,分享的理念,致力將Crazepony打造成航模愛好者學習交流的軟硬件平臺。Crazepony是一個完全開源的項目,包括源代碼,原理圖,設計思路等,并且提供詳盡的百科知識庫。可以通過它學習四軸飛行器相關知識,也可以在上面進行二次開發,實現自己的創意。
Crazepony項目起源于一個孩童從小對擺脫地心引力的夢想。在進入大學之后,終于能夠把這個夢想和自己所學結合起來。到現在,Crazepony四軸飛行器已經在硬件上進行了10多次的改進,在軟件,算法等方面經歷了無數次的挫敗和修改。
我和Crazepony的那點事兒(1)
作者: CamelGo
很榮幸,Crazepony的第一篇博客是我來寫,鑒于是第一篇,按照慣例,我還是說點其他的先。
對現狀的一些思考
在我們目前這個體制框架下,通過投機倒靶發家致富的人太多,而利用自己努力學到的知識和工程技巧解決問題的人屈指而數,少數人占有了大多數的社會財富,而他們往往又是那些肥頭大耳,世俗圓滑的一群人。
當那些大型通信設備壟斷商和房地產老總們通過資本運作和千軍萬馬的工程密集型項目來聚斂巨額財富時,工程師的聰明才智和童年的幻想正一點點被壓榨殆盡。創造力和想象力,不斷屈服于自上而下的制度之中。而所謂的英雄,僅僅是這種企業的頂層,甚至他們都不一定懂得技術。
羨慕國外技術人員的純粹,至少他們的初衷不是為了圈錢去做某個項目,去干某件事情,雖然最后都會因此而盈利,那是因為他們最開始的不計后果和奮不顧身,讓他們后來得以發現這個產品的市場和價值。他們給我的感覺一直就是:“我沒有其它目的,因為我愛它,所以我去做,賺不賺錢以后再說”也許這個觀點帶有個人主觀色彩和片面的地方,但人家至少看起來是醬紫。
一次關于微型四軸的演講
2011年,賓夕法尼亞大學的VIJAYKUMAR教授在TED做了一次關于四軸飛行器的演講,這次的飛行器只有手掌大小,其靈巧程度令人咋舌,演講大部分時間在科普四軸飛行的原理,到最后教授展示了他們飛行器的應用,我驚呆了!它們可以編隊飛行,多個飛行器合作搬運物體,合作彈奏一首音樂,進入建筑物內部飛行一圈,然后對建筑物內部空間結構建立三維模型并上位機重構等。這是讓我內心難以平靜的一段視頻。
一個關于微型四軸的開源項目Crazyflie
偶然的機會,在果殼網看到了一個叫Crazyflie的微型四軸,這一次,我的心理防線被擊得粉碎,因為它的開發者們看起來是跟我們年齡差不多的大學生,工作環境也是在一個類似工作室的地方,并不像賓大叫獸那么專業。他們第一版飛機是這樣的,說實話,穩定性和外形設計不是那么好。
這一次我被徹底點燃了,深陷其中,難以自拔,從那個時候開始謀劃要做一個這樣的小四軸,完成我童年那個對抗地心引力的小小夢想。
Crazepony四軸萌芽就我個人而言,很喜歡小巧的電子產品,那種麻雀雖小,五臟俱全的感覺簡直棒極了要知道,把東西做大很容易,要把東西做小還要保證功能不減,這就需要耐心和體力了,僅僅是因為這樣一個簡單想法,促使了我去做這樣一件看起來很無聊的事情。對這個飛行器的最初的構想是:機身一定是依托PCB板,大小一定不超過手掌,通信一定是我們熟悉的無線解決方案,飛行體驗一定要最好。同時,兼具娛樂性和開發性,讓每個人都能在這里找到童年…
由于這是Crazepony的第一篇博客,寫到這里就歇歇了,后續將會和大家交流一些開發過程中細節。由于筆者工程經驗有限,前期調試過程中,走了不少彎路,很多問題考慮不夠周全,還望能和各位一起探討,共同進步。
傳感器方面:
目前Crazepony采用的是最常用的MPU6050陀螺儀加速度計一體芯片,成本不超過20元,對小四軸來說,它的精度和性能綽綽有余了(當我聽說教研室師兄用的一顆傳感器裸片賣1W+時,我整個人都不好了..),MPU6050在這個價位里面幾乎是占有絕對的性價比優勢。首先,它將陀螺儀和加速計整合在一個片上,通過IIC總線給出六個維度的ADC值;其次,芯片本身提供一個“從”IIC接口,供用戶接第三方的IIC器件,一般選擇是接一個電子羅盤,如HMC5883L,構成一個9軸的輸出的姿態模組,現在MPU9150已經喪心病狂的把電子羅盤功能也整合在片上了,但是要買60+元;最后,這顆芯片內部集成了一個DMP(Digital Motion
Processor)處理器,這是最讓我愛不釋手夜不能寐的一個功能,直接硬件解算四元數,從某種程度上說解放了20%的主控資源
數據通信方面:
數據通信這塊,也沒什么特別要考慮的,短距離高速通信且免費這一點要求就限制了只能選擇2.4GHz這個頻段,在這個頻段出了很多優秀的芯片廠商。在學生時代,我用得最多是Nordic公司的NRF24L01這個系列的收發一體芯片,由于剛開始著手啟動Crazepony這個項目時,我只會這顆操作芯片,本著方便的原則,所以很自然的選擇了這顆它(后來發現國外一個團隊bitcraze也用的這個系列的芯片時,還是有點小激動的,不同的是,crazyfile用的是NRF24LU1,這顆芯片在與USB的接口上要容易些)
差不多了,硬件芯片選型大概是這樣。下面談談這期間的一些細節
(二)
一個處女座僅僅是要求機身上芯片封裝統一是QFN有錯么,不要再黑處女座了好么,他們活得很累的。(~.~)
機身外形:
如上一篇博客談到到的,我前前后后花了兩年時間,以學習STM32這款單片為目的開始著手一個完全陌生的飛行器,從硬件到軟件。可以想象,這兩年我因為無知所走的彎路和畫廢掉的板子以及燒掉的生活費,加起來能換多少個菜包子和素饅頭了。
機身外形的設計對我來說是最頭大的,一直想不到什么好的主意,最關鍵的是我本人是天線專業的,我自以為是的把2.4G的天線露在機身外部(如圖1),凸顯我是學過天線設計的男人。但是這嚴重破壞了美感不說,還強烈的刺激了處女座的用戶。一次偶然的機會拆了一個平板電腦,發現主板上有根長得很像電容貼片電容的元件,百度后才發現,居然是一根2.4G的陶瓷天線,這….我這四年天線專業的所學算是全部還給老師了。于是,后來再參考了某公司的某飛行器外形,壓縮了天線,有了最終雙曲線過度的Crazepony外形(如圖2)
調試方便的考慮:
在第三版之前,我都是用的stm32的SWD接口燒寫調試固件代碼,這種方式的確比較方便和有效,但是有個致命的弊端就是需要外接一個碩大的jlink調試器,這種設計簡直太反人類了。糾結了好長時間,后來在看datasheet時發現STM32支持另外一種下載模式,用串口即可完成代碼的下載,不足是不能在線調試。但是相比于能簡化操作的誘惑,我還是決定在機身整合這樣一個下載電路。(如圖)
這樣一來,機身和外部的有線接口就只有一根安卓手機的標配數據線mircoUSB線。它既是充電線,也是調參、燒寫固件的數據線。這對大媽來說,想必操作也是很簡單的吧
電機驅動:
由于筆者完全是由于一種強烈的愛好選擇了飛行器,最開始連有刷電機和無刷電機的物理結構區別都不知道,電調又是啥?傻傻分不清楚…
從一個幾乎零基礎的狀態去選擇電機驅動芯片,彎路是必須要走的,學費是必須要交的。曾以為書上學到的東西馬上就能用,馬上能轉化為產品,后來發現真的是自己想多了。最開始用的三極管作為電機驅動,采用很經典的共射電路“三極管工作在開關狀態應該就行了吧?”畫了用三極管驅動的PCB板,發現電機越轉越慢,根本沒勁。“也許是因為三極管扛不了大電流,好吧那我換個中功率管吧,集電極最大6A電流行了吧?”可以想象結果是不行的首先了解下為什么三極管作為簡單的電機驅動是不可取的方案:
三極管作為一個古老的半導體先驅,它是以一個放大器件的姿態而出現的,它在線性區域特性集中,飽和與截止都是兩種極端的工作狀態,而作為電機驅動的話,我們只能選擇它的這兩種極端工作模式
用三極管作為大電流負載的驅動管時,不得不考慮的是他自身的管壓降對負載的影響,這是很嚴重的。自身耗散越來越大,電機和管子是串聯關系,電池電壓只有3.7V,電機就只能越轉越慢了
在晶體管家族里面還有一種跟三極管特性互補的,所有特性都集中在開關狀態的晶體管,場效應管,即MOSFET。通常的場效應管完全導通時,源漏極電阻都是mΩ級別的,即它自身的耗散非常小。用它做為驅動管再合適不過了。
最終選擇了一個SOT23封裝的,導通電壓Vgs<4v的場管(SI2302),結果表現出了很好的驅動性能
余下完整的pdf格式文檔51黑下載地址(共254頁):
Crazepony開源四軸飛行器.pdf
(18.3 MB, 下載次數: 909)
2018-6-8 11:05 上傳
點擊文件名下載附件
Crazepony開源四軸飛行器.pdf
|