用Raspberry Pi树莓派做双轮车

易心STEAM编程
关注

树莓派Raspberry Pi 有40 pin GPIO 资源,不好好利用实在可惜,所以周边的扩充板也应运而生。本课程中使用 Adafruit 所出品的 Pi Plate 做一台双马达遥控车

Adafruit 所出的 Pi Plate 可以直接迭在Raspberry Pi 的 GPIO 脚位上,并有小型工作区可以制作简单的电路。不想焊接也可以迭加面包板。

以下是本台机器人的范例程序代码,使用 Python 编写。定义了三个动作:直走、左转与右转。

import RPi.GPIO as GPIO

import time

GPIO.setmode(GPIO.BCM)

GPIO.setup(17, GPIO.OUT)

GPIO.setup(18, GPIO.OUT)

GPIO.setup(22, GPIO.OUT)

GPIO.setup(23, GPIO.OUT)

GPIO.setup(24, GPIO.OUT)

GPIO.setup(25, GPIO.OUT)

def straight():

GPIO.output(17,GPIO.HIGH)

GPIO.output(18,GPIO.HIGH)

GPIO.output(22,GPIO.HIGH)

GPIO.output(23,GPIO.HIGH)

GPIO.output(24,GPIO.HIGH)

GPIO.output(25,GPIO.HIGH)

time.sleep(1)

GPIO.output(17,GPIO.LOW)

GPIO.output(18,GPIO.LOW)

GPIO.output(22,GPIO.LOW)

GPIO.output(23,GPIO.LOW)

GPIO.output(24,GPIO.LOW)

GPIO.output(25,GPIO.LOW)

time.sleep(1)

return

def right():

GPIO.output(17,GPIO.HIGH)

GPIO.output(18,GPIO.HIGH)

GPIO.output(22,GPIO.HIGH)

time.sleep(0.5)

straight()

def left():

GPIO.output(23,GPIO.HIGH)

GPIO.output(24,GPIO.HIGH)

GPIO.output(25,GPIO.HIGH)

time.sleep(0.5)

straight()

while 1:

straight()

time.sleep(5)

right()

time.sleep(5)

left()

time.sleep(5)

GPIO.cleanup()

完成后展示

作者:阿吉老师

更多精彩文章请关注微信公众号?易心Microbit编程

声明: 本文由入驻OFweek维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。
侵权投诉

下载OFweek,一手掌握高科技全行业资讯

还不是OFweek会员,马上注册
打开app,查看更多精彩资讯 >
  • 长按识别二维码
  • 进入OFweek阅读全文
长按图片进行保存