市面上的监控产品很多,可是价格大部分挺贵的,由于产品残次不齐,部分杂牌产品还有暴露隐私被黑的风险.这里组件的简易监控主要适用于要求不高,可是又不想用市面产品的隐私场合,例如看着某些地方,只要有画面有变化就截图或者录像并保存起来.
网上一大堆关于树莓派搭建视频监控服务器的教程,例如RTSP MJPEG等等,可是基本限于一个摄像头一个画面的配置.这里使用的是树莓派安装motioneyeos,最大可以添加4路画面,可以添加由motioneyeos搭建的树莓派摄像机(如下图),或者是其他你搭建的视频RTSP之类的视频流之类.

硬件准备

项目 数量 备注
树莓派 1套 一套已经可以正常运行的树莓派普通OS的套件,这里用的是2B
树莓派CSI摄像头模块 1个 这里是普通山寨的,你可以买官方的,或者市面魔改带夜视的
安卓手机 1台 安装好IP摄像头服务器APP
用于运行网云穿的服务器 1台 可以是你的X86 x64电脑,也可以是另一台树莓派或者其他ARM Linux主机

软件准备

  1. 根据机型下载motionos系统镜像,刷入后把TF卡插入树莓派.
  2. 手机安装好APP,苹果和安卓用户可以在市场搜IP摄像头这个APP,作者是沈垚的那个,作者主页:https://www.shenyaocn.com/category/myapp/ip-cam/
  3. 网云穿官网注册一个账号并获得一个免费试用端口(不想映射到官网的可以省略这一步)

启动服务器

  • 树莓派插上网线,启动后会通过路由DHCP获取IP地址,例如我是192.168.10.223在浏览器输入该地址,可以看以下登录界面,默认账号是admin,密码留空:

  • 如果你的CSI摄像头已经连接好了的话,那么你在登陆后应该可以看见一个监控画面

  • 添加你的手机监控

    1. 手机端打开IP摄像头APP,直接点击打开IP摄像头服务器即可画面中可以看见你的局域网路径,或者点击连接?这个按钮,例如我这里的地址是:http://192.168.10.253:8888/video
    2. 点击左上角的菜单图标,点击add camera,如下填写你的信息(参考下图),并确认:
  • 这时候如果成功,你应该可以看见两个监控画面了,见下图

    到这里的话,如果你不需要映射到公网看到这里就已经完成了,否则请接着看.

映射motionOS端口到公网

SakuraFRP和云网穿使用方法已经改版,详细请参考官网

  • 由于默认是使用80端口,直接映射80端口的话需要网站备案实名认证等等,很麻烦.所以这里修改一下80端口,详细设置见下图

  • 网云穿设置端口映射

    1. 进入控制台
    2. 设置好你要映射的树莓派内网IP地址和端口,然后参照如下设置:
    3. 安装服务器软件,我使用的是LinuxARM,亲测ARM版本可以在香橙派和树莓运行,这里不啰嗦配置问题,直接参展这里的Windows无界面教程 Linux版教程,windows图形化版本直接无脑鼠标流+粘贴复制就行.
    4. 测试访问:http://你的域名:外网端口,效果见下图:

补充

  • 在Linux下设置网云穿客户端开机自动启动
    1. 创建并编辑服务配置文件:sudo nano /etc/systemd/system/wyc.service
    2. 配置文件内容如下:
[Unit]
Description=Frp
After=network.target network-online.target syslog.target
Wants=network.target network-online.target

[Service]
Type=simple
ExecStart=/opt/wyc_linux_arm -token=你的令牌

[Install]
WantedBy=multi-user.target
  1. 开启服务:sudo systemctl enable wyc
  2. 开启服务:sudo systemctl start wyc
  3. 查看服务状态:sudo systemctl status wyc,正常的话,内容大概如下:
root@orangepipcplus:~# systemctl status wyc
● wyc.service - Frp
   Loaded: loaded (/etc/systemd/system/wyc.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2020-06-06 16:26:27 CST; 1h 34min ago
 Main PID: 20115 (wyc_linux_arm)
    Tasks: 7 (limit: 2065)
   Memory: 6.7M
   CGroup: /system.slice/wyc.service
           └─20115 /opt/wyc_linux_arm -token=你的令牌号

Jun 06 16:26:27 orangepipcplus wyc_linux_arm[20115]: 请求数据中: 请求成功
Jun 06 16:26:27 orangepipcplus wyc_linux_arm[20115]: 
Jun 06 16:26:27 orangepipcplus wyc_linux_arm[20115]: 数据解析中: 解析完成
Jun 06 16:26:27 orangepipcplus wyc_linux_arm[20115]: 
Jun 06 16:26:27 orangepipcplus wyc_linux_arm[20115]: 当前时间: 2020-06-06 16:26:27
Jun 06 16:26:27 orangepipcplus wyc_linux_arm[20115]: 
Jun 06 16:26:27 orangepipcplus wyc_linux_arm[20115]: 隧道连接中: 连接成功,正在登录...
Jun 06 16:26:27 orangepipcplus wyc_linux_arm[20115]: 
Jun 06 16:26:27 orangepipcplus wyc_linux_arm[20115]: Info[2020-06-06 16:26:27]:当前为TCP模式
Jun 06 16:26:27 orangepipcplus wyc_linux_arm[20115]: [1B blob data]
  • 最大可以添加到四画面,除此以外还,motionos有很多功能,例如:移动侦测触发抓屏和录像 开启SAMBA FTP服务以及上传图片和录像到FTP和其他网盘 检测变化后发送邮件等通知.
  • Call A Web Hook功能(如图),是发送GET 或者 POST请求到server酱推送到微信,可以点击这里看我以前的教程.其他功能和玩法,详细自己挖掘

一沙一世界,一花一天堂。君掌盛无边,刹那成永恒。