你的位置:首頁 > RF/微波 > 正文

DIY:樹莓派+L298N制作遙控小車攻略

發(fā)布時間:2015-04-01 責(zé)任編輯:sherry

【導(dǎo)讀】想做一個遙控小車嗎?用樹莓派與L298N來怎么做呢?小編來教你,下文將描述使用樹莓派和L298N制作一個簡單的遙控小車,遙控器使用簡單的WEB來實現(xiàn)。發(fā)燒友們趕緊看多來吧!
 
本文主要描述使用樹莓派和L298N制作一個簡單的遙控小車,遙控器使用簡單的WEB來實現(xiàn)。
準(zhǔn)備工作
  
樹莓派,(本文使用的是Raspberry PI 2 B型,即2B)
  
8G以上TF卡 樹莓派上可用和不可用的SD卡列表
  
四驅(qū)小車底(含電機(jī),注:本文中的小車底盤佩戴的是高扭矩直流電機(jī))
  
母對母、公對母、公對公(可不用)杜邦線
  
L298N雙HD橋電機(jī)驅(qū)動板
  
無線網(wǎng)卡(最好支持AP的)
  
充電電池組(7V以上的,鎳氫或者18650充電電池皆可)
  
系統(tǒng)安裝沒什么說的,系統(tǒng)燒到SD就可以了,我使用的Raspbian,這貨是基于Debian的,配置命令習(xí)慣幾乎和ubuntu/debian一樣,接上網(wǎng)線開機(jī)進(jìn)入系統(tǒng)配置。
  
換上中科大的源,再apt-get update一次;
  
為root用戶設(shè)置密碼;
  
配置無線網(wǎng)卡有兩中方案,編輯/etc/network/interface,網(wǎng)上教程蠻多的:
  
自動連接到路由器,家里有無線路由器,小車在WIFI覆蓋的地方;
  
樹莓派上搭建WIFI熱點,信號更好,可以在小區(qū)里面開,順便勾搭妹子,哦哦哦,不對,應(yīng)該是淘氣小孩。唯一需要注意的是網(wǎng)卡芯片。
[page]
底盤組裝
  
拼裝沒啥難度,亞克力板上的牛皮紙沾得簡直是喪心病狂,馬蛋,廢了好一會兒功夫才撕干凈(⊙﹏⊙)b;
  
馬達(dá)那貨就比較坑了,沒有帶線是裸機(jī)的,手中也恰巧沒有電烙鐵,當(dāng)時我就懵逼啦。好吧,手中還有多余的公對公杜邦線,拔掉其中一頭的接頭,打火機(jī)燒一下(小時候?qū)W會的神技),拔掉一部分把銅線擰緊。最后銅線穿過馬達(dá)接口的小洞里面,再擰緊。哎丫,沒有膠帶,最后用透明膠湊合湊合,綁緊。 repeat 4次。
  
線路連接
線路連接
+12V接口
  
+5V~+35V, 如需要板內(nèi)取電,則供電范圍Vs:+7V~+35V
  
電機(jī)
  
OUT1、OUT2 為電機(jī)A輸出;OUT3、OUT4為電機(jī)B輸出
  
IO接口
  
ENA和ENA分別為A、B電機(jī)的使能端,一開始ENA和ENB各自的上下兩個針腳是用跳線帽連接起來的,拔掉就可以接線了。 IN1-IN4 為IO控制輸入。
  
弄明白L298N之后,連接就方便多了,
  
OUT1 OUT2 連接小車左側(cè)前后兩個電機(jī)(并聯(lián)),之前電機(jī)接出來的杜邦線公頭直接往接口里面塞(好羞羞),擰緊螺絲;同理,OUT3 OUT4 連接小車右側(cè)前后兩個電機(jī);
[page]
便宜的鎳氫電池組電源正負(fù)極分別連接12V、GND,電池組的接頭是JST母頭,比較好連接;
  
5V和GND連接到樹莓派上的5V和GND用于供電。
  
ENA、ENB、IN1-IN4連接到樹莓派I/O端口上。
  
接好之后是這樣子:
攝像頭模塊
  
攝像頭是好幾年前臺式機(jī)用的攝像頭,分辨率是奇葩的470x640,而不是480x640,mjpg-streamer下,畫面是花的,等到畫面調(diào)正常之后,畫面卻如放幻燈片一樣。我勒個去!攝像頭連接到裝了openwrt的wndr3800路由器上流暢的沒朋友,在樹莓派上調(diào)來調(diào)去卻怎么也不行,認(rèn)命了,放棄放棄,沒有攝像頭也能當(dāng)遙控車開。下面是演示展示:
攝像頭模塊
[page] 
小車遙控器
  
終于到了編程部分,為了簡單,使用python的RPI.GPIO模塊來操作I/O,不過我發(fā)現(xiàn)功能蠻少的,沒找到調(diào)速的API,文檔在這里,代碼如下,輪子的參數(shù)視接的I/O口而定。
小車遙控器
小車遙控器
最后用Flask模塊實現(xiàn)Web,這需要在樹莓派裝Flask模塊,在安裝的時候發(fā)現(xiàn)樹莓派的python環(huán)境是不完整的。代碼僅供參考。
 
要采購電池組么,點這里了解一下價格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉