教学对象:初中生
引言:
这个有趣的视频其实是扫地机器工作时绕开障碍物的过程,其原理是利用触碰传感器碰撞物体,然后通过程序设计控制机器人逐步绕开障碍物。
问题:
扫地机器人需要通过碰撞物体才能知道前方有障碍物,时间长了会对家居有所损伤。请同学们思考一下,有什么方法可以解决这个问题呢?
机器视觉是人工智能正在快速发展的一个分支。简单说来,机器视觉就是用机器代替人眼来做测量和判断。机器视觉系统是将被摄取目标转换成图像信号,传送给专用的图像处理系统,得到被摄目标的形态信息,根据像素分布和亮度、颜色等信息,转变成数字化信号;图像系统对这些信号进行各种运算来抽取目标的特征,进而根据判别的结果来控制现场的设备动作。
通过视频我们可以了解到,也许可以利用机器视觉来代替传统的触动传感器,来实现视觉绕障。
接下来我们就用虚拟空间中来实现这样的功能吧~
在视频中我们用蓝色的线代表墙壁或者其他障碍物,当机器人即将碰到线时候右转避开障碍物后继续前进,让我们学习一下程序是如何设计的。
软件准备:
DJI Education Hub 虚拟编程软件
下载地址:
https://www.dji.com/cn/edu-hub
1
机器人“眼”中的线是什么样的?
机器人看到的线和我们人眼看到的线是不一样的,机器人看到的是一组组数据,包含各个点的X坐标、Y坐标、切线角、曲率这4个数据,一条线共有10个点即40个数据,加上一项代表点数量以及第二项代表线类型两个数据,共有42个数据。
2
机器人是如何判断
是否有障碍物(线)的呢?
其实很简单,如果识别到线,那么就会有42个数据,反之,则没有识别到线。
识别到线
没有识别到线
1. 在智能选项卡中,找到以下两个图标,开启线识别功能,同时设置识别线的颜色为蓝色
2. 在云台选项卡中找到以下图标,将云台往下转动30度,方便机器人可以低“头”看线
3. 在数据对象选项卡中创建一个列表,用于存放线的数据,并对列表进行命名
4. 找到以下图标,将线的数据存放进列表中
5. 此段程序的意思是,机器人以0.5米每秒的速度向前(即0度方向)前进直到看到线为止(即有42个数据)
6. 运行程序,同学们会发现机器人一直前进,直到看到线后停止运动
7. 最后将程序进行如下调整,就可以看到机器人前进直到看到线后向右旋转10度,并一直循环此动作
1.请同学们思考一下,在避开障碍物的同时也需要“无死角”来清理角落区域,请大家用实验不同的数据思考不同的专项角度对覆盖区域的影响。
结论:旋转角度越小覆盖率越高,旋转角度越大覆盖率越低。
2.接下来请同学们自己设计一个表格,进一步分析,旋转角度大小和清理效率之间的关系,快动手尝试并记录数据加以分析吧~
上期答案:B
部分资料来源于网络,如有侵权,请联系删除
-近期精彩链接-
-END-
今天的创智之旅就结束啦
下期的空中大课堂 敬请期待
本课设计:张智彦
制作:徐哲颖
审核:马 昕
官方网站
微信视频号
微信公众号