树莓派3B+搭配七牛云做网络监控

硬件准备

  • 树莓派
  • CSI摄像头
  • 电脑+路由器

1、更改密码

把树莓派连接路由器,用IPscanner找到树莓派的ip地址,使用putty通过SSH连接。
默认用户名为:pi
密码为:raspberry

更改登陆密码

1
passwd

设置root账户的密码

1
sudo passwd root

2、准备七牛云

七牛云官网 http://www.qiniu.com/

七牛云注册首月可以有1GB存储空间,实名认证后,下月开始将可享受免费的10GB存储空间。

1、点击管理控制台后点击左边对象存储,然后点击左上方新建存储空间,并记住该空间的名字。

2、点击右上角的个人面板,选中密钥管理。里面会有AccessKey(AK)和SecretKey(SK),记下备用。

3、安装七牛云的python SDK

1
2
3
su   #登录为root用户

sudo pip install qiniu

4、制作拍照和上传脚本

1
nano photo.sh   #填入以下代码
1
2
sudo raspistill -o /home/pi/1.jpg
python /home/pi/photo.py

按下Ctrl+X输入Y回车保存

1
nano photo.py   #填入以下代码,并修改相关参数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import time
from qiniu import Auth, put_file, etag, urlsafe_base64_encode
import qiniu.config
import os
#需要填写你的 Access Key 和 Secret Key
access_key = '' #这里的密钥填上刚才记下的Access Key
secret_key = '' #这里的密钥填上刚才记下的Secret Key
#构建鉴权对象
q = Auth(access_key, secret_key)
#要上传的空间名
bucket_name = '' #这里填入新建的储存空间名
#上传到七牛后保存的文件名
key = '%s_%s_%s_%s_%s_%s.jpg'%(time.localtime()[0],time.localtime()[1],time.localtime()[2],time.localtime()[3],time.localtime()[4],time.localtime()[5])
#生成上传 Token,可以指定过期时间等
token = q.upload_token(bucket_name, key, 3600)
#要上传文件的本地路径
localfile = '/home/pi/1.jpg'
ret, info = put_file(token, key, localfile)
filename = '/home/pi/1.jpg'
if os.path.exists(filename):
os.remove(filename)

按下Ctrl+X输入Y回车保存

给脚本授权

1
2
3
sudo chmod 777 /home/pi/photo.sh

sudo chmod 777 /home/pi/photo.py

5、定时拍照上传

1
crontab -e

在打开的crontab的最底部加上

1
* * * * * /home/pi/photo.sh

按下Ctrl+X输入Y回车保存

1
sudo service cron restart  #重启cron

此时打开七牛管理控制台>>对象存储>>内容管理就能看到每隔一分钟会有一张新的照片被上传上来。

可以使用七牛云的本地同步工具qshell来方便的查看更新照片。

qshell使用教程

1
http://developer.qiniu.com/code/v6/tool/qshell.html

11