Cubieboard搭建节能的家庭安防监控平台

由于最近资金紧张,暂缓购买四轴飞行器的相关传感器。那么我就在现有的资源上进行了一些开发。

这一套系统所能实现的功能:

实时监控当前环境,如果发现环境中有运动,就进行视频和照片的采集并输出,同时发送邮件并附加静态画面通知主人。

这一监控系统的应用:

家中防盗和报警,父母不在家时监控幼儿并及时得知情况,禁止入内的敏感地区布防

相比于普通监控系统的优势:

1.无须人长期值守注视监控画面,能够自动判断监控画面中是否有运动物体。

2.节约电能,功耗不到4W,适合24×7长期开机。

3.节约存储空间,仅仅记录运动画面。

4.能够在侦测到运动的情况下自动发送邮件(也可以执行其他功能)

 

所需设备:

1.cubieboard (或者任何安装Linux并支持USB,uvcvideo的计算机,路由器)

2.摄像头 (我使用罗技C170)

3.无线网卡 (我使用mw150us)

所需要装的软件:

sudo apt-get install libio-socket-ssl-perl libnet-ssleay-perl #用于SSL协议
sudo apt-get install sendemail motion #motion就是用来监控的主程序,sendemail是发送邮件的程序

配置motion

vim /etc/motion/motion.conf #motion默认配置文件在此处

要说明的是,配置文件相当长,但是都有注释,我就不一一说明了,按照个人需求进行配置。

需要注意的有这几处:

# Start in daemon (background) mode and release terminal (default: off)
daemon off  #后台运行关闭

# Videodevice to be used for capturing  (default /dev/video0)
# for FreeBSD default is /dev/bktr0
videodevice /dev/video0  #设置摄像头设备路径

# Values :
# V4L2_PIX_FMT_SN9C10X : 0  ‘S910’
# V4L2_PIX_FMT_SBGGR8  : 1  ‘BA81’
# V4L2_PIX_FMT_MJPEG   : 2  ‘MJPEG’
# V4L2_PIX_FMT_JPEG    : 3  ‘JPEG’
# V4L2_PIX_FMT_RGB24   : 4  ‘RGB3’
# V4L2_PIX_FMT_UYVY    : 5  ‘UYVY’
# V4L2_PIX_FMT_YUYV    : 6  ‘YUYV’
# V4L2_PIX_FMT_YUV422P : 7  ‘422P’
# V4L2_PIX_FMT_YUV420  : 8  ‘YU12’
v4l2_palette 2   #选择mjpeg编码

# Threshold for number of changed pixels in an image that
# triggers motion detection (default: 1500)
threshold 2000  #这是设定画面中有多少像素发生变化后定义为一次动作

# Ignore sudden massive light intensity changes given as a percentage of the picture
# area that changed intensity. Valid range: 0 – 100 , default: 0 = disabled
lightswitch 70  #由于开关灯可能造成误报,将此值调高可以忽略突然的大幅度光照变化

 

#设定远程查看画面的相关参数

# The mini-http server listens to this port for requests (default: 0 = disabled)
webcam_port 8081

# Quality of the jpeg (in percent) images produced (default: 50)
webcam_quality 85

# Output frames at 1 fps when no motion is detected and increase to the
# rate given by webcam_maxrate when motion is detected (default: off)
webcam_motion off

# Maximum framerate for webcam streams (default: 1)
webcam_maxrate 1

# Restrict webcam connections to localhost only (default: on)
webcam_localhost off

 

#设定自动跟踪运动物体,如果有云台(步进电机)的话我会开启此选项

# Enable auto tracking (default: off)
track_auto off

# Serial port of motor (default: none)
; track_port value

 

 

#设定捕捉到运动时发送邮件

# Do not sound beeps when detecting motion (default: on)
# Note: Motion never beeps when running in daemon mode.
quiet on
# Command to be executed when an event starts. (default: none)
# An event starts at first motion detected after a period of no motion defined by gap
on_event_start sendEmail -f 你的邮箱@gmail.com -t 收件人邮箱@gmail.com -u “主题” -m “运动被侦测,Movement has been detected on: %d %m %Y. The time of movement was: %H:%M” -a 照片附件 -o tls=yes -s smtp.gmail.com:587 -xu 用户名,@之前 -xp 密码

使用Gmail的SMTP服务可能遇到的invalid SSL_version specified at /usr/share/perl5/IO/Socket/SSL.pm line 332的解决办法

一个临时解决办法:

修改 /usr/bin/sendemail 第1907行: 'SSLv3 TLSv1' => 'SSLv3' 

目前的问题和解决办法

1.白天在识别率上非常高,但是如果到了晚上就不行了,得装红外线。

2.要是自己家人回家了岂不是邮箱要被塞爆了(我想到的解决办法是把cubieboard作为路由,当家人回来时,手机连上路由,当路由发现这个AP连入,就认为是家人回来了,关闭监控)

实际测试:

捕获Capture

分享到:

3 条评论

昵称
  1. Rex Lin

    請問motion sensor 建議是接cubieboard 的哪幾隻腳呢?

    1. Tim Xiao

      我是直接用的USB摄像头,接USB就可以了

  2. Pingback: 完善版的家庭安防监控 | fusion for Future