项目简介
本项目是一个用C语言编写的应用程序,可将Raspberry Pi(树莓派)转化为家用报警系统。该系统能监控人体感应传感器(PIR传感器)的状态,当检测到活动时,会通过互联网向用户手机发送通知,利用树莓派相机拍照存储,并将照片上传到Owncloud服务器。此外,还搭建了网络流服务器,便于用户远程查看树莓派相机画面、管理报警系统状态以及控制连接到GPIO引脚的继电器。
项目的主要特性和功能
- 入侵监测与响应:实时监测PIR传感器,检测到活动时向手机发通知,拍照存储本地并上传Owncloud服务器。
- 夜间照明控制:若连接灯光到树莓派,夜间检测到活动自动开灯。
- 远程监控管理:通过网络流服务器,支持远程查看相机画面、管理报警系统状态和控制继电器。
- 多线程任务处理:利用多线程技术,同时处理图像捕获、通知发送和数据存储等任务。
- 网络映射:支持使用UPnP实现网络端口映射,方便远程访问树莓派。
安装使用步骤
硬件准备
确保树莓派连接以下硬件: - PIR传感器连接到GPIO 17(引脚11)。 - 树莓派相机连接到相机端口。 - 可选:最多4个继电器开关可连接到GPIO 8、9、10和11。
软件配置
- 下载项目源码:从代码托管平台下载alarm4pi项目的源代码。
- 配置可选组件
- Pushover:购买并安装Pushover应用,获取用户密钥。在项目目录下创建
pushover_conf.txt
文件,配置相关信息。未创建该文件,通知机制将被禁用。 - SocketXP:树莓派通过使用CG - NAT的网络连互联网时,需在SocketXP注册账号,下载并配置socketxp代理。不需要反向隧道功能,可在
alarm4pi.c
中注释REVERSE_TUNNELING
定义。 - Owncloud:在Owncloud服务器注册账号,安装命令行客户端,创建存储照片的目录。在项目目录下创建
owncloud_conf.txt
文件,配置相关信息。未创建该文件,上传机制将被禁用。
- Pushover:购买并安装Pushover应用,获取用户密钥。在项目目录下创建
- 激活相机接口:树莓派相机接口未激活时,运行
sudo raspi - config
进行激活。 - 编译mjpg - streamer
- 安装依赖:
sudo apt - get install cmake libjpeg8 - dev
和sudo apt - get install gcc g++
。 - 从项目目录编译:
cd mjpg - streamer - master/mjpg - streamer - experimental
,然后执行make
。 - 可单独测试:
cd mjpg - streamer - master/mjpg - streamer - experimental
,执行./mjpg_streamer -i "input_raspicam.so" -o "output_http.so -w www -p 8008"
,在树莓派浏览器中访问http://localhost:8008
。
- 安装依赖:
- 编译alarm4pi:安装依赖
libminiupnpc - dev
(若之前未安装gcc,还需安装),然后在项目目录执行make
。 - 安装服务:执行
sudo./install_service.sh
创建系统服务,使alarm4pi在开机时自动启动。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】