欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

MicroPython实战:DIY一台会思考的避障车

来源:本站整理 作者:佚名 时间:2018-07-03 TAG: 我要投稿

第五步,放入铜柱,拧紧8个螺丝固定万向轮,手捏住电机(保护紧固件),并往里面 插入轮子,组装完成。

最后,我们来看一下组装完成的效果图。

3.3.3 电机驱动和超声波的安装
超声波模块共4个引脚,分别是VCC、GND、Trig和Echo。VCC接TurnipBit扩展板的+5V引脚,GND接TurnipBit扩展板的GND引脚,Trig触发引脚接P5,Echo回传引脚接P8。
L298N电机驱动模块左侧OUT3、OUT4接线端子对应接入左轮电机的下侧、上侧侧铜片,右侧也是。L298N的输入端IN1、IN2、IN3、IN4分别接入扩展板的P19、P13、P12、P11。
详细见下表:
TurnipBit扩展板
超声波模块
L298N
+5V
VCC
+12V、+5V
GND
GND
GND
P5
Trig
 
P8
Echo
 
P11
 
IN4
P12
 
IN3
P13
 
IN2
P19
 
IN1


3.4 程序设计
3.4.1 伪代码分析  
让我们先用伪代码来分析一下避障车的程序逻辑。首先,我们通过小车的超声波模块来检测前方是否存在障碍物,计算出与障碍物之间的距离。当与障碍物的距离小于或等于我们预设的安全距离时,控制小车进行转向避开障碍物;当与障碍物的距离大于我们预设的安全距离时,控制小车进行继续前进;逻辑顺序如下:
第一步,触犯超声波模块开始检测;
第二步:计算出与前方障碍物的距离;
第三步:判断与障碍物的距离是否小于设定的安全距离;
第四步:若小于或等于则进行转向,避开障碍物;
第五步:若大于则继续保持前进。
根据伪代码,画成流程图如下:

 
3.4.2 拼插编程
步骤1:让避障车开始向前走,如下图。

步骤2:添加一个死循环,使程序一直运行,如下图。

步骤3:接下来就需要完成检测障碍物的功能,这部分需要超声波模块来实现。我们需要在死循环内添加障碍物检测的内容,让避障车一直不断的检测与前方障碍物的距离。如下图。

步骤4:为了更简单、方便、快捷的实现功能,我们采用计数的方式,测量一个大概的距离,然后进行判定是否进行避障。细心的同学可能会发现我们在程序一开始的时候定义了一个num的变量,我们就用num来计数。当引脚8为高电平时,我们就不断的让num自加1,一直等到引脚8为低电平时再停止计数。大家可以先进行测试,设定一个安全距离观察num的数值。 我设定了大约25cm的距离,num的数值为8。那么,我就在程序中判断如果num的值小于或等于8时,就进行转向避障。如下图。

步骤5:到此,会思考的避障车已经完成了。为了让避障车更加炫酷,我们可以使用LED屏来动态显示当前避障车行驶的方向。最后,整体的拼插代码如下图:


步骤6:将程序名修改成turnipbit-car,点击【下载hex】按钮将程序保存到电脑里。

把保存的turnipbit- car.hex文件拖入TurnipBit磁盘中,我们会看到TurnipBit板子上的灯在闪烁,说明正在下载到控制板中。
下载成功后,将TurnipBit正确插入TurnipBit扩展板的金手指卡槽内,开始启动避障车吧。
3.4.3 代码分析
会思考的避障车整体代码,可参考右侧代码显示区,如下。
from microbit import *
display.show(Image.ARROW_N)
               

上一页  [1] [2] [3] [4] [5]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载