littlebot
Published on 2025-04-12 / 2 Visits
0

【源码】基于Arduino和AWS的DIY安全摄像头系统

项目简介

本项目是一个具备WiFi连接功能的自定义摄像头设备,内置运动传感器且支持电池供电。该设备可通过WiFi联网,使用户能远程安全地监控附近区域。它与AWS云平台连接,可发送遥测信息和捕获的图像,支持远程操作和设备更新,便于管理大量摄像头。目前该设备为实验性原型,相关内容可能随设备规格发展而变化。

项目的主要特性和功能

  1. 硬件特性:采用电池供电,内置摄像头和PIR运动传感器,可配置为仅在检测到运动时唤醒以延长电池寿命。
  2. 云连接功能:与AWS云平台建立长寿命的MQTT连接,可发送遥测信息和捕获的图像,支持远程操作和设备更新。
  3. 本地功能:支持在同一网络中本地可视化视频流。
  4. 面部检测与识别:实现面部检测和识别功能,检测到面部会在图像上绘制边界框。
  5. 参数控制:用户可通过HTTP GET请求更改摄像头的分辨率、质量、颜色平衡等参数。

安装使用步骤

硬件组装

  1. 准备材料,包括3D设计的外壳、磁铁、电池、ESP32 - cam模块等。
  2. 按3D设计打印外壳的后盖和前盖,后盖打印约需1小时。
  3. 在打印好的后盖侧面孔固定2个M3螺母,将2个磁铁放入后盖背面的孔。
  4. 将天线猪尾的SMA连接器放入侧面孔并用螺母和组件固定,电池模块放入后盖侧面预留空间,电池放在后盖中间。
  5. 用小螺丝将PIR模块固定在前盖,将摄像头模块连接到ESP并固定在前盖顶部,摄像头朝外。
  6. 整理设备内部电缆,将前盖滑入后盖并使用螺丝固定。

固件配置与烧录

  1. WiFi配置:打开packages/device/config.h文件,修改WIFI_SSIDWIFI_PASSWORD为你的WiFi信息。
  2. AWS云配置
    • 在AWS的Iot Core控制台或使用AWS CLI获取端点地址,复制到packages/device/config.h文件的AWS_IOT_URL中,为摄像头设置唯一名称AWS_IOT_THING_NAME
    • 运行bash scripts/provision - device.sh脚本生成认证材料,将.provision/文件夹中的文件内容复制到packages/device/secrets.h文件。
  3. 烧录固件:使用Arduino IDE打开packages/device/device.ino文件,连接设备板,在GPIO0GND之间添加跳线使板子进入烧录模式,点击上传。烧录完成后,移除跳线并按下复位按钮。

云部署

  1. 确保已为设备生成安全凭证,修改packages/cloud/bin/cloud.ts文件中的证书ARN。
  2. 使用AWS CDK 2.0,在packages/cloud目录下运行cdk deploy命令部署云基础设施。部署完成后,设备即可与新创建的云基础设施配合使用。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】