本制作以STC89C52RC單片機(jī)和ADXL345加速度模塊。加速度模塊固定在手上時,當(dāng)手向左傾斜,小車左轉(zhuǎn);手向右傾斜,小車右轉(zhuǎn);手向前傾斜,小車前進(jìn);手向后傾斜,小車倒退;手水平不動,小車停止任何動作。有效控制范圍 10米(開闊地)。小車視頻可以見教程附件。
原理:ADXL345加速度模塊可以測量X Y Z三軸的加速度和傾角。人的手做動作時,勢必會改變模塊的加速度大小和傾角。由于測量加速度叫繁瑣,所以測量的是傾角數(shù)據(jù)。當(dāng)傾角數(shù)據(jù)滿足一定范圍時,通過藍(lán)牙模塊傳輸控制指令到小車,實(shí)現(xiàn)小車的動作。 制作教程(配圖見附于文章結(jié)尾): 本制作除了單片機(jī)最小系統(tǒng)需要焊接外,其他的組件都是模塊(單片機(jī)系統(tǒng)可以自己焊接,也可以使用模塊。最小系統(tǒng)圖看最后面附圖),直接和單片機(jī)的IO口連線就可以了,單片機(jī)最小系統(tǒng)原理圖我已經(jīng)上傳,本教程主要是講解模塊的說明和接線方式。 一 小車系統(tǒng): 可以是四驅(qū)型的,也可以是萬向型的,只要你會改程序,就無需局限于小車制動類型。當(dāng)然,如果你不會改程序,那就使用四驅(qū),小車的套件在淘寶上的價格都很便宜,幾十塊的也有,根據(jù)自己的經(jīng)濟(jì)能力決定。購買時注意電機(jī)的額定電壓和轉(zhuǎn)速就可以了。 小車電機(jī)接線: 1號輪紅線接L293D輸出端:8 1號輪黑線接L293D輸出端:7 2號輪紅線接L293D輸出端:6 2號輪黑線接L293D輸出端:5 3號輪紅線接L293D輸出端:4 3號輪黑線接L293D輸出端:3 4號輪紅線接L293D輸出端:2 4號輪黑線接L293D輸出端:1 注:必須確定小車的方向,本例為1號輪為小車前進(jìn)輪;實(shí)際的接線可以完全相反,只需要改變輸入端線序即可! 二 電機(jī)驅(qū)動模塊 我使用的是成品模塊,型號為L293D,模塊省去了焊接調(diào)試工作,直接使用即可。此類模塊還有一個優(yōu)點(diǎn),就是當(dāng)你的供電電源大于6V時,模塊可以當(dāng)5V的電源使用,可以給單片機(jī)系統(tǒng)和藍(lán)牙系統(tǒng)供電, 模塊的供電電壓是5v到16V,當(dāng)你需要外接5V電源時,可用6V至16V電源供電。最大可提供1A驅(qū)動電流。 模塊接線: P1.0接IN8 P1.1接IN7 P1.2接IN6 P1.3接IN5 P1.4接IN4 P1.5接IN3 P1.6接IN2 P1.7接IN1 注:若組裝好后,小車運(yùn)動與預(yù)設(shè)完全相反,只需要單片機(jī)端口線序倒置即可:如P1.7接IN8,P1.6接IN7以此類推。 三 供電系統(tǒng) 我使用的是12V鉛酸蓄電池。注意,你使用的電池電壓必須在你電機(jī)的額定電壓工作范圍內(nèi)。驅(qū)動模塊的控制信號是0到5V(單片機(jī)電壓),但驅(qū)動模塊給電機(jī)供電是,就是電源電壓,所以一定要注意電機(jī)的額定工作范圍。 供電接線: 蓄電池正極——L293D Vcc 蓄電池負(fù)極——L293D Gnd L293D 5V ——單片機(jī)系統(tǒng)Vcc L293D Gnd——單片機(jī)Gnd 四 無線傳輸模塊 我使用的是UART藍(lán)牙模塊,這種模塊自動配對,且無需額外編程,價格在30元左右(一只),雖然網(wǎng)上有很多幾塊錢的模塊,性價比較高,但是我的程序重點(diǎn)在于加速度模塊程序的設(shè)計,所以沒有過多精力來搞無限通信。如果你有良好的程序基礎(chǔ),那么建議你購買價格便宜的無線模塊。藍(lán)牙模塊分主從模式,我使用的是主從一體的藍(lán)牙模塊,通過管腳可以切換主從,但有些是需要AT指令切換主從的,購買的時候需要注意。藍(lán)牙模塊工作時必須一主一從才能配對成功。 藍(lán)牙模塊連接: 1主模塊連接: SET與3V3腳短接 VCC接可接3.3或5V RX接單片機(jī)TX TX接單片機(jī)RX GND接地 2從模塊連接 SET腳與地短接 VCC接可接3.3或5V RX接單片機(jī)TX TX接單片機(jī)RX GND接地 注:不管是主模塊還是從模塊,只要配對好,是可以互相通信的。所以不管是哪個連接到小車都可以。 五 加速度ADXL345模塊 此模塊的程序設(shè)計是整個制作的核心。模塊的詳細(xì)參數(shù)見模塊官方手冊說明。 模塊接線: VCC接5V GND接地 SCL接P1.0 DAT接P1.1
|