窥视孔、窥视孔或窥视孔是穿过门的一个小开口,允许从内到外观看。此类门孔允许在不打开门的情况下看到门外。通常,这些门孔有一个鱼眼透镜,可以看到更宽的外部。在这个项目中,我们利用树莓Pi摄像机和树莓Pi板开发了窥视孔的数字版本。数字窥视孔的第一个明显优点是,与传统窥视孔相比,它可以很容易地隐藏在门设计中。其次,基于摄像头的窥视孔可提供180˚的外部视图。同一窥视孔的复杂编程版本可以提供诸如访客识别(通过面部检测)、记录身份不明的访客以及向特定访客播放预先录制的语音消息等功能。
本项目设计的设备使用Raspberry Pi摄像机、Raspberry Pi板、PIR传感器和带有HDMI输入的小LCD屏幕。它可以很容易地集成到任何门中,也可以很容易地隐藏在门设计中。这里演示的原型是在Raspberry Pi 3上开发的。这个项目的商业或爱好版本可以开发使用树莓皮零,使设计紧凑。一旦安装在门设计中,整个设备可以通过5V 2A适配器供电。
所需组件
- 树莓皮2/3/4或树莓皮零x1
- 覆盆子皮照相机x1
- 用于连接Raspberry Pi摄像头x1的带状电缆
- PIR传感器x1
- 5〃HDMI液晶显示器
- 用于在试验板上测试原型的连接线/跨接线
电路连接
在测试项目时,您可以将Raspberry Pi与桌面显示器连接起来。将一个小型HDMI LCD连接到Raspberry Pi的HDMI端口。将Raspberry Pi摄像头连接至电路板的CSI端口。
要将PIR传感器与Raspberry Pi连接,请将PIR传感器的输入引脚连接到任何GPIO。此处,板针脚7连接到PIR传感器的输入针脚。将PIR传感器的VCC和GND引脚与Raspberry Pi的3.3V输出和接地引脚连接。
应注意,需要调整PIR传感器的灵敏度,以获得正确的数字输入。PIR传感器经过校准,以在程序测试期间提供规定的输出。
Python代码
项目如何运作
Raspberry Pi摄像头和PIR传感器安装在车门前部。覆盆子Pi本身安装在车门后部。门上有一个小的水平切口,可以穿过树莓皮相机的带状电缆。整个电路通过电源组或直流适配器在车门后部供电。一个5英寸的LCD与门后部的覆盆子Pi相连。
用户可以在设备通电和Raspberry Pi启动时运行python脚本。python脚本可以在启动时自动启动。当python脚本运行时,它会在LCD上开始外部预览。为了测试预览,Raspberry Pi还可以连接到带有HDMI输入的桌面显示器。在整个脚本执行过程中,预览将继续进行,不会中断。启动预览后,Raspberry Pi会持续检查PIR传感器的数字信号。在这里,PIR传感器经过校准,以在检测到车门外的任何运动时提供数字高输出。当它检测到任何运动时,Raspberry Pi摄像头会捕获外部图像,并将其与具有升序编号的文件名一起存储。
代码
python脚本首先从PiCamera库导入PiCamera类,从GPIO库导入RPi.GPIO类。如果未安装PiCamera库,则必须使用pip安装或手动安装。类似地,时间类也从睡眠库导入。GPIO设置为线路板编号,线路板引脚7分配给来自PIR传感器的输入。声明用于保存图像编号、图像名称和图像URL的变量。GPIO.setwarning()被设置为false。
camera类的对象使用Picamera()方法实例化。PIR传感器引脚设置为数字输入。相机预览是使用start_preview()方法启动的。开始预览后会提供5秒的延迟。这有助于将相机稳定在环境光和曝光下。
运行一个无限循环来捕捉门外任何运动的图像。如果PIR传感器检测到任何运动,它将给出逻辑高输出。如果PIR传感器的输出较高,则图像编号将增加1,并连接到变量“imagename”中的字符串“image”。图像名称将附加到变量“pathname”中的文件路径。使用capture()方法使用更新的文件位置捕获外部图像。使用print()函数将新图像名称记录到控制台。捕获图像后,将提供5秒的延迟。
示范
以下图像和视频是使用桌面显示器测试设备的过程。请注意,设备如何在检测每次移动时捕获外部图像。
演示视频
您可能还喜欢:
根据以下文件提交:188金宝搏提款有问题吗,微控制器,覆盆子皮