第四课:认识超声波(加强课)

1、编程知识点(逻辑模块、循环逻辑、智能逻辑)

2、模块知识点(超声波模块)

3、科学知识点(超声波的奥秘、机器人智能)

4、加强一遍编程知识点

环境:网络及手机/电脑

准备:超声波传感器、杜邦线、主控板/组装好的初始态小龟小车,并做好车轮校验

车轮校验工具:http://guidan.com/wheelcheck/

第四课:认识超声波(加强课)



第一节:认识超声波传感器和体验超声波测量(约15分钟)


课程内容

1、认识超声波传感器,介绍管脚和连线方法

2、使用图形编程获得超声波测量距离


1、认识超声波传感器,介绍管脚和连线方法

首先拿出主控板、电池、超声波,我们先来认识一下超声波的各个管脚

如图所示,小龟为大家标记了四个管脚的名称以及对应的作用:


接下来我们介绍超声波的连接方法:

1、首先拿出超声波传感器和4根杜邦线,对准孔位将杜邦线连接到超声波传感器上。


2、剪一段双面胶贴到杜邦线胶壳上,利用双面胶将超声波模块固定到前轮电机上。


3、然后将杜邦线从小车底部穿过


4、小伙伴们可以根据小龟给的图,把超声波和主控板连接起来。

Gnd——黑色Gnd接地管脚(杜邦线接任意一个黑色管脚都可以)

Vcc——红色3V供电管脚(杜邦线接任意一个红色管脚都可以)

Tric——黄色A1信号管脚(注意是A1)

Echo——黄色A2信号管脚(注意是A2)


5、接下来给主板接入电源和电机,超声波小车就组装完成了,别忘记车轮校验哦!


2、使用图形编程获得超声波测量距离

我们把超声波靠近障碍物,执行下方的图形编程,每点一次执行按钮,它会探测一次,并会显示返回的结果。

执行结果会显示在工具的下方,单位是厘米,数字代表与障碍物的距离。

小伙伴们快试试吧!


<xml xmlns="https://developers.google.com/blockly/xml"><block type="hcsr04" id="|[O*])+tIv2{-7Qn(PPc" x="96" y="68"><field name="trig">A1</field><field name="echo">A2</field></block></xml>



第二节:靠近预警小车(约15分钟)


课程内容

1、学习小车的轻抖动作

2、学习图形编程逻辑判断功能


1、学习小车的轻抖动作

执行下方图形编程,小车就可以展示轻抖动作。

<xml xmlns="https://developers.google.com/blockly/xml"><block type="hello" id="|+B9hx_yTRTf-t}.EyKw" x="16" y="420"></block></xml>

2、学习图形编程逻辑判断功能

我们先来看一下这段图形编程,当超声波检测到小车和障碍物距离为0-10厘米时,小车就轻抖。


让我们执行一下,看看效果。

<xml xmlns="https://developers.google.com/blockly/xml"><block type="hcsr04_exec" id="jM-[p^B62}j5)?w;P;H{" x="123" y="96"><field name="trig">A1</field><field name="echo">A2</field><field name="loop">TRUE</field><statement name="action"><block type="hcsr04_exec_item" id="pinC*#NB-n_aaJLu8qbr"><field name="dis_from">0</field><field name="dis_to">10</field><statement name="action"><block type="hello" id="v`[gpRCUqd@$BHEW~B[_"></block></statement></block></statement></block></xml>



终极挑战:房间漫步小车(约30分钟)


课程内容

基于超声波探测障碍物的距离,然后使用随机数来实现随机转弯。


首先我们先来看一下房间漫步小车执行的效果,原理是基于超声波探测小车与障碍物距离,然后使用随机数来实现随机转弯。


再来看一下房间漫步小车的图形编程。


1、首先我们拖出“超声波探测距离”积木块。


2、在“RGB彩灯篇”我们讲解了随机数,相信小伙伴们已经有了一定的基础。

和“靠近预警小车”同样的原理,我们设置一个距离,在0-10厘米的时候小车做出随机转弯的动作。

再设立一个随机数,范围为1-2,

当i=1时,小车慢速左转2s;

当i=2时,小车慢速右转2s。


3、为了让小车探测更精准做出更准确的判断,我们让小车慢速前进摸索,

再设立一个当距离在10到100cm时,小车慢速前进1s。

这就是整个图形编程的逻辑,一辆房间漫步小车就做好了!

大家快去试试吧!

<xml xmlns="https://developers.google.com/blockly/xml"><variables><variable id="M*v/CKs7vCghS^?_B#Jc">i</variable></variables><block type="hcsr04_exec" id="xa15qIbge*ZTf0{`?H$a" x="150" y="88"><field name="trig">A1</field><field name="echo">A2</field><field name="loop">TRUE</field><statement name="action"><block type="hcsr04_exec_item" id="?/68YMq[=,{Zy0Nf/G~X"><field name="dis_from">0</field><field name="dis_to">10</field><statement name="action"><block type="variables_set" id="o1S$Xs@T.U}27akpk)A("><field name="VAR" id="M*v/CKs7vCghS^?_B#Jc">i</field><value name="VALUE"><block type="math_random_int" id="8]dO`*uC9?a!O.j%?.v`"><value name="FROM"><shadow type="math_number" id="LlUYHT|kh`yZ,JNAtn1@"><field name="NUM">1</field></shadow></value><value name="TO"><shadow type="math_number" id="Rp!*s_0OXk6)T,J+!v/o"><field name="NUM">2</field></shadow></value></block></value><next><block type="controls_if" id="]G2/gAsGCl]ASisP^]Y8"><value name="IF0"><block type="logic_compare" id="Wpy^g$4iY}5@^Sx:USh5"><field name="OP">EQ</field><value name="A"><block type="variables_get" id="f:i5JvK9*`$Q4qW+okP="><field name="VAR" id="M*v/CKs7vCghS^?_B#Jc">i</field></block></value><value name="B"><block type="math_number" id="Paez:7#Mxtx0%cx/M8Ma"><field name="NUM">1</field></block></value></block></value><statement name="DO0"><block type="left" id="C9w)*JWW(Rodr4Eak.tW"><field name="v">30</field><field name="keep">2</field><field name="delay">TRUE</field></block></statement><next><block type="controls_if" id="_f6sCikbFFty=AkOO)db"><value name="IF0"><block type="logic_compare" id="UROlI:A)J2avp?![y4{-"><field name="OP">EQ</field><value name="A"><block type="variables_get" id="~HH7a1U:N|iwvl:GGXw/"><field name="VAR" id="M*v/CKs7vCghS^?_B#Jc">i</field></block></value><value name="B"><block type="math_number" id="1vJ_(tvGd=8}cU^*0b2+"><field name="NUM">2</field></block></value></block></value><statement name="DO0"><block type="right" id="YPfg5qwm#1#1TV@A``:e"><field name="v">30</field><field name="keep">2</field><field name="delay">TRUE</field></block></statement></block></next></block></next></block></statement><next><block type="hcsr04_exec_item" id="U;tG[J7S_Po*U-VP)y+R"><field name="dis_from">10</field><field name="dis_to">100</field><statement name="action"><block type="go" id="z#mMt0YDbgUt8dV.XfOl"><field name="v">30</field><field name="keep">1</field><field name="delay">TRUE</field></block></statement></block></next></block></statement></block></xml>