汤果 发表于 2020-9-14 12:51:19

入侵防御系统

【项目介绍】这个项目的名称为入侵防御系统,功能是用来检测房屋四周是否有人靠近。如果有人靠近,系统会发出警报声,并点亮红色警报灯,提示入侵。该入侵系统还具备遥控开关功能,可以在不需要使用的时候关闭。【解决方案】入侵探测用到的是红外热释电运动传感器,可以在房屋各个方向都装上这个传感器,这样就可以不留死角地检测到所有靠近房屋的人。红外热释电运动传感器能检测运动的人或动物身上发出的红外线,从而判断是否有生物靠近。我们的入侵防御系统需要实现以下功能:1.检测各个方向是否有人入侵。2.如有人入侵发出警报。3.统计入侵发生的人次。4.系统可以开启和关闭。为了便于操作,这里选用了遥控开关来开启或关闭防御入侵系统。同时为了节约成本,我们选择掌控板作为主控,免去了显示屏、蜂鸣器及 LED 灯的配备。具体用到的器材如下:
材料清单

1x
掌控板2.0编程入门学习主控板 含microUSB转TypeC两用线
链接
1x
micro:IO Extend micro:bit 掌控板 IO扩展板
链接
2x
人体红外热释电运动传感器
链接
1x
数字红外接收模块
链接
1x
红外遥控器(2按键)
链接

【作品演示】https://v.qq.com/x/page/w31513jhff8.html【制作过程】
步骤1 设备连线

我们需要用到若干个红外热释电运动传感器,放在房屋四周。我手头只有两个,就都用上了,其中一个是 BOSON 的传感器,效果是一样的。

红外接收模块接到 P0。两个红外热释电运动传感器分别接在 P1 和 P2 即可。注意这款扩展板需要反插掌控板!连接好如下所示:

步骤2 加载扩展

打开 Mind+ 软件,切换到上传模式。选择左下角的“扩展”,在“主控板”类别下选择“掌控板”。

选择“通信模块”下的“红外接收模块”。

将“功能模块”下的“多线程”也添加到项目中。

步骤3 编写代码

我们首先编写最核心的入侵检测功能。因为有多个红外热释电运动传感器,任何一个检测到入侵都需要发出警报。所以我们用“或”这个条件。当 P1 与 P2 两个任何一个检测到入侵都发出警报,即播放警报音符,点亮红色警报灯。如果没有检测到入侵就把 LED 灯熄灭。我们用子线程来实现入侵检测的功能。

因为要统计入侵的次数,所以需要创建一个数字类型的变量“次数”来统计。另外红外接收模块接收到的信息也需要进行判断,因此也创建一个字符串类型的变量“按钮值”。

次数统计功能是这样实现的。在子线程开启时先清零,这样统计的就是开启入侵探测器到目前为止入侵的次数,而不是一直累加。然后每当检测到入侵就把“次数”加一,这样就能统计出入侵人次了。 接着编写主程序。主程序很简单,不停接收红外接收模块收到的值并进行判断。如果按钮 ON 按下,则打开入侵探测器,即启动子线程。如果按钮 OFF 按下则关闭系统。因为系统关闭状态下是不进行检测的,所以需要提醒用户是关掉的,用绿色 LED 来提示用户系统已经关闭。

为什么要用子线程?因为入侵检测是要不停进行的,在一个循环里。如果直接把循环放在主程序中,那就不能一直处理红外接收模块接收到的信息了。也就是无法关闭探测器。而子线程是相对独立运行的一段程序,不会受到影响。
步骤4 设计造型

找一个合适大小的纸盒,挖几个孔。一个给掌控板屏幕和LED,一个放红外接收模块,一个放红外热释电运动传感器。

把器材都装进盒子里。这里用充电宝供电。

完成后的造型是这样的:

红外热释电运动传感器需要放在不同方向,这样能最大限度检测各个方位的入侵。
附件

入侵防御系统.sb3

【总结】1.入侵检测的基本功能已经实现。但是红外热释电运动传感器无法区分是人还是动物,运动的动物也会触发警报。所以可能还需要辅助人工观察,或者加个摄像头。2.造型方面有改进的空间。这个显示屏应该是放在室内的。后期可以用激光切割设计一个大一点的房间造型,这样呈现效果会好一些。

rzyzzxw 发表于 2020-9-17 20:57:12

这个太好啦。{:5_150:}

佛系唐法官 发表于 2020-9-19 18:15:41

好棒{:6_209:}

hnyzcj 发表于 2020-9-20 07:40:36

这算僵尸的那个吗?

hnyzcj 发表于 2020-9-20 07:41:20

原来可以发两遍,这个弄个精华,那边算积分,好呀,我也这么弄。

汤果 发表于 2020-9-20 08:01:25

hnyzcj 发表于 2020-9-20 07:41
原来可以发两遍,这个弄个精华,那边算积分,好呀,我也这么弄。

参加活动的精华不算的呢{:7_221:}

hnyzcj 发表于 2020-9-20 08:29:42

汤果 发表于 2020-9-20 08:01
参加活动的精华不算的呢

那你还搞两遍

汤果 发表于 2020-9-20 08:35:39

hnyzcj 发表于 2020-9-20 08:29
那你还搞两遍

顺手发了过来{:7_222:}你提醒我这个月帖子还没发,要去构思了。

gray6666 发表于 2020-9-24 15:53:18

好棒{:6_202:}{:6_202:}{:6_202:}

发表于 2020-9-24 22:15:25

8错8错

赤星三春牛! 发表于 2022-1-24 12:41:11

厉害厉害!
页: [1]
查看完整版本: 入侵防御系统