第8课会看家的机器狗

网友投稿 2019-10-10 12:53

  离前一次《跟着牛牛老师学机器人》的文章已经有半年之久了,牛牛老师 在这里向大家致歉,这段时间牛牛老师确实有些忙,但心里一直记挂着公众号里继续的更新。终于在秋天到来的时候又和大家见上面了,继续来学习Arduino机器人。

  前不久和一位校长聊起,目前市场上各种机器人器材,最终一致认为还是选择Arduino为硬件的机器人比较合适。一是因为其硬件和软件设计的开放性,可以进行无限扩展,软件平台适用的也很多;二是因为其基础硬件的开放性和可持续性,特别是学生学习了以后可以不断延续学习,进入不同水平阶段。许多机器人器材虽然也是基于Arduino的芯片基础,但其功能与接口的相对闭环,导致学习到一定的水平就不可持续。所以,牛牛老师还是建议:如果这是你的人生爱好,好就从Arduino机器人的学习开始吧。

今天要和大家一起学习的是第7课会看家的机器狗。

  本课主要是从生活中的防盗报警器入手,了解人体红外传感器以及防盗报警器的原理,这是一个非常实用的案例。

一、搭建实验装置

   1.本课所需要使用的器材除了主控板外,还需要下列模块:人体红外传感器、有源蜂鸣器和LED灯模块,三根PH2.0转3P线。按下图装配好,人体红外传感器连接到数字2号、LED灯连接到数字3号、有源蜂鸣器连接到数字4号接口,相信通过前面的7个案例的学习,应该很容易地完成下面的搭建。人体红外传感器需要使用一个L型支架直立安装。

https://cdn.china-scratch.com/timg/191012/1253001018-0.jpg

人体红外传感器的介绍:

https://cdn.china-scratch.com/timg/191012/1253013N1-1.jpg

人体红外传感器也叫热释电红外传感器,由两部分组成,白色的“帽子”里面是热释电感应器件,“帽子”叫菲涅尔透镜,是若干个区域的螺纹透镜组成,主要是在一定的探测范围内提高人体红外信号的敏感度。当人体在此传感器前移动经过即会触发传感器工作。

防盗报警器的原理:

  防盗报警器就是在设防后机器利用人体红外传感器来实时检测是否有人进入探测区域,如果有人侵入探测区域就驱动警报器发出警报声,并伴有其他信息传输。

二、编程

  1.检测人体红外传感器的工作状态

  前面的案例中学到过,使用变量来记录传感器的输出状态,同样,在这里我们也需要来建立一个变量来记录人体红外传感器的工作状态

在连接主控板串口的和安装好固件的前提下:

https://cdn.china-scratch.com/timg/191012/1253015554-2.jpg

第一步:在“数据和指令”类中选择“新建变量”建立“人体红外”变量

第二步:设置“人体红外”变量到机器人数字接口2

https://cdn.china-scratch.com/timg/191012/125301D09-3.jpg

第三步:点绿旗运行,当人体红外传感器面对人的时候,变量值是“1”,背面人的时候变量值又变量回“0”。判定有人时输出值为“1”,无人时输出值是“0”

https://cdn.china-scratch.com/timg/191012/12530112S-4.jpg

2.使用人体红外传感器控制输出设备

此时,你肯定会想到利用条件判断积木来编制一个“如果……那么……,否则……”的语句来控制外部设备。

https://cdn.china-scratch.com/timg/191012/1253011296-5.jpg

完成程序后点绿旗运行测试一下,是否达到设计要求。

三、拓展提升

完成程序检测后发现,当人进入人体传感器检测范围后,人体传感器的蓝灯亮起,同时变量值变为“1”,蜂鸣器响起、LED灯也同时亮起;当人离开人体红外传感器检测区域后,大约2秒钟后就自动关闭报警。

作为一款防盗报警器,你认为还可以怎样改进?

牛牛老师提出下面几个问题:

1.一开启程序就检测,是否合理,因为主人在离开前开启就进入检测状态,主人未离开前也会报警。

2.当一离开检测区域2秒后就停止报警,是否影响报警效果?

你还想到什么问题?怎样解决?

这些问题由你自己解决可以么?答案到下期告知。

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com