发表日期:2017-08-04 09:11:42文章编辑:信息管理员浏览次数: 标签:亮宁可视化
为了清楚说明分支结构的使用方法,这里先借用五红外接收头(火焰传感器)这个设备。先对设备进行说明。注意,火焰传感器的值是模拟量,要接在模拟输入口上。
在使用火焰传感器之前,先要准备一些变量备用。
然后将几个重要的值赋给变量。
我们先选用火焰传感器的最小值函数和电小通道编号函数。最小值函数代表接收到光的强弱值。值越小,光越强。电小通道号函数代表是五个接收头是谁接收到最强的光线。
下面我们才能用分支结构书写程序。
这里是分支结构的菜单与说明文字。
在火焰传感器接收到的光线很强时,minV的值很小,说明此时机器人应该发现了火焰的位置(或者其它淘汰的方向)。通常我们会在有遮光窗帘的教室里点上蜡烛作为机器人要寻找的火源。
在if语句后面的括号里写上要满足的条件表达式。在其后的花括号对里写上符合条件时要执行的命令。当条件不符合时,机器人会跳过花括号对里的语句不执行,而转到花括号对以后执行后续语句。
如果我们勾选了“否则”选项,程序语言会多出一个else结构。在这对花括号的语句,是在条件表达式无法满足时执行的语句。即“ if (条件)语句1;else 语句2” 中,“语句1”或“语句2”只能执行其中的一项,不会同时被执行,也不会一个也不执行。
上图中左边的程序表示,当机器人感受到火焰时,发出鸣叫并向前走,当机器人未感受到火焰时,机器人停止运动。右边的程序,将几个分支结构嵌套在原来的分支结构之中。此时,编程者可以由五个接收器中哪一个接收光线最强来做为行动的依据。
3号接收头是正中间的,此时说明机器人正正对着火源。其它几个接收头看到火焰,说明机器人运动方向不正确,需要对方向进行调整。将正确处理方式写到各自的花括号对里就可以了。
请读者完善上述程序,并将火焰传感器安装在机器人前端,并试验机器人寻找火源的程序效果。注意火焰传感器前端不能有其他物体遮挡。否则会引起机器人的误判。