#实验目的:上两次实验试验了基本的前进和转弯动作;这次我们实验两个目标,一个是通过充电宝供电驱动小车转动;另一个目标是组合红外避障传感器,当遇到障碍物时,小车自动停止并后退,以免撞击到障碍物。
#接线效果如图:
#实验代码:
#注:其中驱动类使用解释可参考文章:
(1)http://www.shumeijiang.com/2020/05/24/四驱小车驱动实验(一)
(2)http://www.shumeijiang.com/2020/05/27/四驱小车驱动实验(二)
#!/usr/bin/env python
#coding:utf-8
'''
from JiuJiang
树莓酱的操作实例
http:://www.shumeijiang.com
'''
import RPi.GPIO as GPIO ##引入GPIO模块
import time ##引入time库
#引入驱动类
from baseAct import baseAct
#实例化驱动类并赋值四个电机所占引脚值
act = baseAct(17, 16, 13, 12, 19, 18, 21, 20)
sensePin = 27 ##红外避障传感器
GPIO.setup(sensePin, GPIO.IN) ##设置为接收模式
##实验开始
try:
while True:
run_time = 0.05 ##执行前端时间 也是障碍物检测间隔时间
status = GPIO.input(sensePin)
if status == 0:
print '发现障碍物'
act.act_backward(0.5, 50, 50) ##检测到障碍物则立即后退
break; ##后退后停止动作
else:
act.act_forward(run_time, 50, 50, True) ##没有障碍物则继续前进
except KeyboardInterrupt:
pass
GPIO.cleanup()
#视频效果如下:
#实验效果:
1、执行代码 Python jiujiang.py;
2、当前方没有障碍物或者离障碍物较远时,小车继续前进;
3、当接近障碍物时,可见小车红外避障传感器探测警告灯亮起,小车则立刻后退,然后停止动作。
#下期预告:下期我们将在此次实验的基础上增加更多的动作,比如遇到障碍物后,停止前进,然后左右转弯寻找没有障碍物的方向,然后继续前进;敬请期待。