概述
最近在学习树莓派顺手做了一个小监控,下面我来介绍一下过程:
1.硬件准备
(1)准备一个树莓派(我用的是4B版本,系统是bulllseye)
(2)一个CSI或者USB摄像头
2.树莓派配置
(1)安装motion
sudo apt-get install motion
(2) 打开motion daemon守护进程,使得motion可以一直在后台运行。
sudo nano /etc/default/motion打开配置文件并添加 start_motion_daemon=yes
(3)编辑/etc/motion/motion.conf
sudo nano /etc/motion/motion.conf后会出现如下界面,这个是motion默认配置文件,修改里 面的配置参数。
-
将daemon修改为on target_dir /home/pi/Motion 设置图像保存路径设置 stream_port 8081 确认视频流接口是8081 width 800 height 600 设置分辨率 stream_localhost off 关闭localhost本地限制 为了防止视频流畅最好设置 stream_maxrate 70 framerate 100 //可以使用ctrl+w查询逐个修改 nano自带功能
(界面如下)
(4)开启或关闭motion服务
sudo motion //开启motion服务
sudo kilall -TERM motion //关闭motion服务
(5)开启或关闭motion服务
ifconfig查看电脑的ip地址
(6)在内网(局域网)的电脑或其他设备上登录ip地址+端口号
在chorm上登录http://192.xxx.xx.xxx:端口号。
3.外网控制树莓派
首先,需要一个内网穿透的工具。即当你不在家的时候,你可以利用网络连接到家里正在连着路由器的树莓派(或者电脑)。这里我选择的穿透工具为ngrok。看见好多人也选择花生壳,但是真的有点太贵了。
ngrok的下载网址:Setup - ngrok,请自行下载。(在访问 ngrok.com 会创建一个Ngrok账号,这里推荐使用github来注册一个账号,因为其他的方式我注册不下来。。。。。)
(1) 花生壳下载完成后可以根据网站步骤,自行安装。(这里我安装的是linux的arm64版本)
下载完成后您可以使用以下命令从终端解压缩 ngrok。或者在在视窗上,只需双击 ngrok.zip即可将其解压缩。
unzip /path/to/ngrok.zip
(2) 在注册账号时会给你一个身份码,将其与自己的树莓派绑定即可。(只需要绑定一次,你的ngrok账户就和树莓派连接在一起了)在树莓派终端输入下面这行命令。
ngrok config add-authtoken 2F9xtsemWGRiX3ui1E7euwP6Nml_xxxxxxxxxxxxxxxx
ps:这里我花费了好长时间。因为总是说没有ngrok命令。。。。。但是我已经按照步骤下载好了啊,最后我发现自己有两个重要的却很弱智的问题。第一个是没有切换到ngrok的目录下,ngrok下载到哪里就cd到哪里。。第二个是命令行前面要加./,如果不加这个shell会找不到你程序的路径。
终端中命令搜索规则
- 如果在路径名中存在
./
字符,那么就不搜索$PATH
。- 如果
./
不在路径名中,那么只在$PATH
中搜索。
(3)根据需要,运行命令开发端口
ngrok http 8081
需要注意的是,这里的端口8081
可以根据需要替换成其他端口。这条命令的意思是将本地8081端口对应的服务暴露到外网中。(而我的8081端口现在正好是开启着摄像头)执行完成后代码如下,需要注意的是这个forward。
这样,凡是访问http://xxxxxxxxxxx的请求都将发送到localhost:8081。
最终在外面也能观看家里的摄像头。
最后
以上就是激情手机为你收集整理的树莓派实现远程监控motion(通过ngrok)最近在学习树莓派顺手做了一个小监控,下面我来介绍一下过程:的全部内容,希望文章能够帮你解决树莓派实现远程监控motion(通过ngrok)最近在学习树莓派顺手做了一个小监控,下面我来介绍一下过程:所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复