树莓派python编程小车_Sunny的树莓派小车DIY教程(附视频)
一、組件介紹
大家好,我是Sunny。今天將給大家?guī)?lái)系列教程《樹(shù)莓派小車系列》,先給大家介紹介紹我這次使用到的一些組件。
1、樹(shù)莓派
2、小車底盤
3、小車車輪(馬達(dá))
4、L298N電機(jī)驅(qū)動(dòng)模塊
5、超聲波測(cè)距模塊、杜邦線
6、電池盒
7、無(wú)線網(wǎng)卡
二、模塊接線
首先樹(shù)莓派要安裝好系統(tǒng)和python的一些模塊。這個(gè)小車最主要部分就是L298N模塊的控制,控制住了L298N這個(gè)模塊就控制住了我們整個(gè)小車,這里我弄一張圖片,大家可以看到每一個(gè)地方是干嘛的。然后就是跟樹(shù)莓派的對(duì)接。
L298N的每個(gè)接口負(fù)責(zé)的功能如下圖
下面是樹(shù)莓派和l298n接線圖
把馬達(dá)接到L298N上面,然后把電池盒的正極接到12v接口,負(fù)極接到接地接口(中間那個(gè)),然后第三個(gè)接口需要一個(gè)5v的輸入,我就從樹(shù)莓派的GPIO2取。
in1、in2、in3、in4分別接樹(shù)莓派GPIO的11、12、13、15這幾個(gè)口。這張圖大家應(yīng)該能理解到上面in1到in4的接法了,還有電源的接法。
三、馬達(dá)轉(zhuǎn)動(dòng)
上面講了我們?nèi)绾伟褬?shù)莓派和l298n和馬達(dá)接線連接起來(lái)。既然連起來(lái)了,我們就應(yīng)該來(lái)試試如何用樹(shù)莓派通過(guò)python來(lái)控制這個(gè)馬達(dá)的轉(zhuǎn)動(dòng)。
首先我們需要安裝python的gpio模塊,可以通過(guò)pip安裝也可以通過(guò)下載源代碼安裝。
sudo vim xiaoche.py
#導(dǎo)入gpio的模塊
import RPi.GPIO as GPIO
import time
#設(shè)置gpio口的模式
GPIO.setmode(GPIO.BOARD)
#定義信號(hào)接口gpio口
INT1 = 11
INT2 = 12
INT3 = 13
INT4 = 15
#設(shè)置gpio口為輸出
GPIO.setup(INT1,GPIO.OUT)
GPIO.setup(INT2,GPIO.OUT)
GPIO.setup(INT3,GPIO.OUT)
GPIO.setup(INT4,GPIO.OUT)
#這里參考上一節(jié)模塊接線的L298N模塊的控制圖
GPIO.output(INT1,GPIO.HIGH)
GPIO.output(INT2,GPIO.LOW)
GPIO.output(INT3,False)
GPIO.output(INT4,False)
#延時(shí)2秒之后執(zhí)行cleanup釋放GPIO接口
time.sleep(2)
GPIO.cleanup()
代碼寫(xiě)到之后我們保存退出,接著執(zhí)行一下觀看馬達(dá)有沒(méi)有轉(zhuǎn)動(dòng)。
sudo python xiaoche.py
四、底盤安裝
五、小車跑起來(lái)
下面是 xiaoche.py 完整的代碼。
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
IN1 = 11
IN2 = 12
IN3 = 13
IN4 = 15
def init():
GPIO.setup(IN1,GPIO.OUT)
GPIO.setup(IN2,GPIO.OUT)
GPIO.setup(IN3,GPIO.OUT)
GPIO.setup(IN4,GPIO.OUT)
def qianjin(sleep_time):
GPIO.output(IN1,GPIO.HIGH)
GPIO.output(IN2,GPIO.LOW)
GPIO.output(IN3,GPIO.HIGH)
GPIO.output(IN4,GPIO.LOW)
time.sleep(sleep_time)
GPIO.cleanup()
def cabk(sleep_time):
GPIO.output(IN1,GPIO.LOW)
GPIO.output(IN2,GPIO.HIGH)
GPIO.output(IN3,GPIO.LOW)
GPIO.output(IN4,GPIO.HIGH)
time.sleep(sleep_time)
GPIO.cleanup()
def left(sleep_time):
GPIO.output(IN1,False)
GPIO.output(IN2,False)
GPIO.output(IN3,GPIO.HIGH)
GPIO.output(IN4,GPIO.LOW)
time.sleep(sleep_time)
GPIO.cleanup()
def right(sleep_time):
GPIO.output(IN1,GPIO.HIGH)
GPIO.output(IN2,GPIO.LOW)
GPIO.output(IN3,False)
GPIO.output(IN4,False)
time.sleep(sleep_time)
GPIO.cleanup()
init()
cabk(10)
總結(jié)
以上是生活随笔為你收集整理的树莓派python编程小车_Sunny的树莓派小车DIY教程(附视频)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 基于ssm企业工资考勤管理系统
- 下一篇: 甲骨文的转型路,道阻且长