3回答

3收藏

树莓派小车(三)Python控制小车

Raspberry Pi Raspberry Pi 6054 人阅读 | 3 人回复 | 2018-12-11




在树莓派小车系列之二中,讲到了树莓派的引脚定义方式有两种:
  • PHYSICAL NUMBERING
  • GPIO NUMBERING
我采用的是第二种方式。



开始写

1. 导入库

  1. <blockquote>import RPi.GPIO as GPIO
复制代码
2. 定义接口方式以及接口位置
  1. GPIO.setmode(GPIO.BCM)
  2. IN1 = 17
  3. IN2 = 18
  4. IN3 = 27
  5. IN4 = 22
  6. IN5 = 23
  7. IN6 = 24
复制代码
IN1 - IN4为L298N接入,IN5和IN6为红外线模块接入。

车轮驱动方式:

IN1和IN2负责驱动车轮转动(前进)。
IN3和IN4负责驱动车轮转动(后退)。


3. 初始化
  1. <blockquote>def init():
复制代码


4. 基础方向行为
  1. <blockquote>def up():
复制代码
需要说明的是:由于不含舵机,转弯的操作是单边车轮驱动,带动车身转动

5. 红外控制
  1. <blockquote>init()
复制代码


如果前方遇到障碍,就后退一秒,然后转弯,最后继续直行,直到遇到下一个障碍。

需要说明的是time.sleep()的用法:
time.sleep(time) 表示的是经过 time 秒后执行下一步操作,就是休眠一段时间的意思。
如果不使用time.sleep(),将会一直执行第一步操作。

关于运行:
由于红外传感器的有效距离偏短(5cm左右),以及传感器的安装位置在车的底部,所以在车辆运动时,如果遇到凹凸不平的物体,有可能造成避障的延迟。

运行动画:


遇到凹凸不平的物体有些许碰撞(环境简陋)

关于树莓派信息的内容就先告一段落,等我做出安卓遥控app再来介绍,谢谢大家的关注。



作者:胖若两人_
來源:简书


相关文章:
树莓派小车(一)小车配件选购及安装
树莓派小车(二)树莓派、小车和红外线
树莓派小车(三)Python控制小车
关注下面的标签,发现更多相似文章
分享到:
回复

使用道具 举报

回答|共 3 个

倒序浏览

板凳

cun888

发表于 2020-2-11 20:25:12 | 只看该作者

有码发过来
回复 支持 反对

使用道具 举报

地板

leosun123

发表于 2020-5-25 08:52:04 | 只看该作者

大佬,可以分享一下电路图(AD)吗?
2697773011@qq.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条