4是dd444
時(shí)間:2020-04-27 08:23:20
來(lái)源:4阿斯頓撒多
作者:信盈達(dá)
平衡小車,這個(gè)開源項(xiàng)目已經(jīng)出來(lái)很多年了,雖然是一個(gè)比較基礎(chǔ)的項(xiàng)目,但也牽扯到方方面面的知識(shí),單片機(jī)程序開發(fā)、硬件電路設(shè)計(jì)、焊接手法等。在許多朋友咨詢信盈達(dá)小編,電子設(shè)計(jì)入門,該選什么項(xiàng)目時(shí),小編都會(huì)首推這個(gè)。
那么,如果一個(gè)新手,或者對(duì)電子設(shè)計(jì)有興趣但不知道從何下手時(shí),看這篇文章就對(duì)了。我將平衡小車分為三種技術(shù)路線,不同的技術(shù)路線都可以實(shí)現(xiàn)完成平衡小車,不同的路線,針對(duì)不同的基礎(chǔ)的人群,難度都不同。
直接網(wǎng)上買一套平衡小車底盤, 100元以內(nèi)足以,太貴的沒(méi)必要買。一般來(lái)說(shuō),車底盤都含有電機(jī)、輪子、車板。
有了車架,還差電路部分,如何設(shè)計(jì)?為了讓大家快速熟悉平衡小車的系統(tǒng)電路,加快開發(fā)速度。第一條路線,我們采用模塊化的設(shè)計(jì)方式。也就是電路部分都采用模塊,將各個(gè)模塊電路連接起來(lái)即可完成電路設(shè)計(jì)。那么需要哪些模塊電路呢?
單片機(jī)最小系統(tǒng):這個(gè)是用來(lái)寫入程序的。
電機(jī)驅(qū)動(dòng):用來(lái)驅(qū)動(dòng)電機(jī);單片機(jī)IO電流不夠,不足以驅(qū)動(dòng)電機(jī)。
姿態(tài)傳感器:MPU6050(用來(lái)獲取小車姿態(tài)數(shù)據(jù),來(lái)保持平衡)。
電源模塊:用來(lái)做電源升降壓,給各個(gè)單元電路(單片機(jī)、電機(jī)驅(qū)動(dòng)MPU6050)供電。
電池:給整個(gè)系統(tǒng)供電。
無(wú)線模塊:用來(lái)做遙控,控制小車移動(dòng)行走。
做個(gè)簡(jiǎn)要說(shuō)明:
單片機(jī)最小系統(tǒng)(10~20元) ;根據(jù)自己的單片機(jī)型號(hào)來(lái)選擇,喜歡用32的可以買32,喜歡用51的可以用51等。電機(jī)驅(qū)動(dòng)(10~15元) :據(jù)購(gòu)買的電機(jī)電壓來(lái)購(gòu)買,比如,你的電壓是12v,應(yīng)該選用工作在12V下的電機(jī)驅(qū)動(dòng)。姿態(tài)傳感器(10元) :這個(gè)基本不用考慮其他的,常用的就是MPU6050,當(dāng)然,還有其他的一些數(shù)字的、 模擬的姿態(tài)傳感器,像icm20602+ ak8975+sp106-001等。電池和電源模塊:為了方便,多少V的電機(jī)就選多少V的電池,一般而言,現(xiàn)在都是12V的直流減速電機(jī)直接選用12V的航模電池套裝即可。無(wú)線模塊:無(wú)線模塊建議選用藍(lán)牙, HC05/06主從一體??谕ㄐ?,便宜,主要是,可以直接連接手機(jī)藍(lán)牙,用手機(jī)APP直接對(duì)小車進(jìn)行控制。(手機(jī)控制不香嗎?)
將各個(gè)系統(tǒng)模塊化之后,根據(jù)電路原理圖,要進(jìn)行的就是,手工焊接。針對(duì)完全不熟悉的朋友而言,更推薦此種方式,此種方式能讓我們更快速且有效的去搭建起電路,并去驗(yàn)證我們的電路。畢竟PCB的繪制以及腐蝕都是需要時(shí)間的,更加不說(shuō)那些對(duì)PCB設(shè)計(jì)不熟悉的朋友了。手工焊接,需要一塊和車架板差不多大小的洞洞板,方便我們的板子后面安裝在車上。手工焊接和PCB設(shè)計(jì)一樣,需要考慮各個(gè)模塊以及元件的布局。也就是各個(gè)模塊的擺放位置。模塊位置的擺放正確與否,能讓我們少走錫,少布跳線。能讓我們省去許多精力,到底能多省。用烙鐵去體會(huì)!
同樣的,第二條路線也采用模塊化設(shè)計(jì),但與第一條不同的是,在于不再使用洞洞板焊接,但此種方法路線,針對(duì)于基礎(chǔ)較好,對(duì)PCB繪制以及一些單片機(jī)基本電路較為熟悉的朋友。當(dāng)然,用第一種方法完成平衡小車的設(shè)計(jì)之后,可以采用第二種方法進(jìn)行進(jìn)階學(xué)習(xí),可以通過(guò)此方法來(lái)學(xué)習(xí)或加強(qiáng)PCB設(shè)計(jì)。畢竟,別人的電路板,哪有自己設(shè)計(jì)的香。本質(zhì)上,此種方法路線與第一種沒(méi)有什么不同。省去了人工焊接布線,使用機(jī)器布線,再通過(guò)自我腐蝕或工廠打樣制作,來(lái)完成整個(gè)電路板的設(shè)計(jì)。
同樣的,第三條路線都可以作為第一條、第二條的進(jìn)階學(xué)習(xí)之路。想要完成集成化主板的設(shè)計(jì),需要對(duì)單片機(jī)系統(tǒng)以及外圍電路非常熟悉,能進(jìn)行自我電路設(shè)計(jì),包括一些基本的電源電路等。當(dāng)然,網(wǎng)上也有許多電路可以進(jìn)行參考,畢竟做的人特別多。在此我也為大家準(zhǔn)備了一套完整的電路和程序資料。長(zhǎng)按圖片二維碼即可獲取該平衡小車開源設(shè)計(jì)資料等。
*信盈達(dá)工程師設(shè)計(jì)的主板和小車
講完了三種硬件搭建路線之后,需要談?wù)摰膽?yīng)該是程序部分了。我為大家已經(jīng)準(zhǔn)備好了各個(gè)“單詞”,只要大家學(xué)會(huì)拼即可。在資料包中,我準(zhǔn)備好了MPU6050測(cè)試、電機(jī)驅(qū)動(dòng)測(cè)試、藍(lán)牙測(cè)試程序。我們可以通過(guò)程序?qū)蝹€(gè)模塊電路進(jìn)行測(cè)試,一步一步的移植拼接。
先測(cè)試MPU6050程序,通過(guò)測(cè)試程序正確讀取出6050數(shù)據(jù)。
單獨(dú)再調(diào)試單片機(jī)和電機(jī),單片機(jī)程序是否能正確控制電機(jī)驅(qū)動(dòng),使得電機(jī)正反轉(zhuǎn)、加減速。
以MPU6050程序?yàn)榛A(chǔ),將電機(jī)轉(zhuǎn)動(dòng)程序加入其中,并添加PID控制函數(shù),以6050數(shù)據(jù)為閉環(huán)入口參數(shù),調(diào)節(jié)PID參數(shù),計(jì)算出控制PWM,來(lái)控制電機(jī)轉(zhuǎn)動(dòng),保持小車車身平衡。
小車控制平衡后,對(duì)藍(lán)牙測(cè)試程序進(jìn)行單獨(dú)測(cè)試,并將藍(lán)牙控制信號(hào)輸入到PID控制函數(shù)中,作為速度環(huán)和轉(zhuǎn)向環(huán)的一個(gè)控制變量,來(lái)達(dá)到控制小車前后左右移動(dòng)的效果。以上,就是平衡小車程序的整體設(shè)計(jì)思路。
最后,想要表明一點(diǎn),關(guān)于平衡小車設(shè)計(jì),說(shuō)來(lái)簡(jiǎn)單且粗暴,但實(shí)施起來(lái),需要花費(fèi)的時(shí)間和精力不言而喻。因?yàn)槠浜w軟硬件設(shè)計(jì),對(duì)于新手而言,工作量確實(shí)較高,但等完成之后,回過(guò)頭再看,腦子里覺(jué)得沒(méi)什么工作量。但手上卻多了各種技術(shù)活。這也許就是電子設(shè)計(jì)的魅力之所在:享受設(shè)計(jì)制作過(guò)程之折磨,收獲成果后之享受。
----------- E N D -----------