Потребителски рейтинг: 4 / 5

Звезда активнаЗвезда активнаЗвезда активнаЗвезда активнаЗвезда неактивна
 

Малинката като охранителна камера със снимки за движение и пращане на е-меил

Преди време реших да си направя система за "охрана" докато ме няма използвайки подръчни средства. Единият вариянт беше да ползвам РС-то си, но не е рентабилно от гледна точка на използвана енергия и т.н. Затова реших да си поиграя с Малинката и да видя как точно да направя нещата използвайки WEB камерата, с която разполагах. И намерих не-лошо решение. Ето и как направих нещата и какво ми беше необходимо.

За да направим това ще ви трябват няколко неща:

  1. Raspberry естествено. По-добре версия В
  2. Камера, която е съвместима с малинката. Може да видите в официалната страница въпреки, че всяка USB WEB камера ще ви свърши работа
  3. Ако имате доста устройства свързани към малинката да са захранени адекватно, като няма да влизам в подробности тук
  4. Да сте свързани мрежово с кабел или безжична мрежа, за да може да ви се праща e-mail. Ще използваме gmail за текущата конфигурация.

Държа да отбележа тук в началото на статията, че портовете, които ще ползвам и адресите съм си ги настроил предварително и няма да са тема на тази статия.
Само ще приемем, че PI-то има адрес 192.168.1.4 с DHCP резервация, и съм направил пренасочвания към рова IP на портове 22, 80, 8080, 8081, 10000, за да мога да "докопам" малинката, която е "зад" рутера.

Какво ще правим?

Ще настроим софтуер за следене на движение и ще направим системата да праща e-mail от gmail-ска поща/акаунт, при наличие на движение, а също така ще имаме и time lapse запис.

Да започнем. Трябва да се настроят общо 3 неща/пакета:

mpack, ssmtp и moution пакетите.

На бързо иписание на пакетите: mpack е пакет за пращане на поща през BASH, ssmpt е пакет за пращане на gmail и moution е пакета, отговарящ за следенето с камерата.
Да започнем едно по едно.

Първо да инсталираме и настроим mpack  и ssmtp

# apt-get install mpack
# apt-get install ssmtp

След инсталацията на тези пакети редактираме /etc/ssmtp/ssmtp.conf като аз правя това с vim. Можете да използвате който и да е било текстов редактор.

Тук ни се отваря конфигурационният файл и правим следните промени, за да изглежда така:
#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=Този имейл адрес е защитен от спам ботове. Трябва да имате пусната JavaScript поддръжка, за да го видите.
# The place where the mail goes. The actual machine name is required no
# MX records are consulted. Commonly mailhosts are named mail.domain.com
mailhub=smtp.gmail.com:587
# Where will the mail seem to come from?
rewriteDomain=
# The full hostname
hostname=Този имейл адрес е защитен от спам ботове. Трябва да имате пусната JavaScript поддръжка, за да го видите.
# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
FromLineOverride=YES
UseSTARTTLS=Yes
AuthUser=YOU
AuthPass=PASSWORD

Запаметяваме и излизаме.
ВАЖНО! Ако паролата ви за пощата има специални символи, ще имате проблеми и няма да може да пращате писма. Аз така и не се преборих бързо с проблема и се отказах. Сложих си по-проста парола. Специални символи са символи като =, #, !, %, ^, &

За да пробваме дали можем да пращаме писма от конзолата пишем:

ssmtp test-adres@za-poluchavane.napisma

След това пишем текст, и за да изпратим самото писмо натискаме CTRL+D

Сега инсталираме motion

#apt-get install motion

След това редактираме записът, който позволява автоматично стартиране на демона

#vim /etc/default/motion

и преправяме

start_motion_daemon=yes

Следващата стъпка е да редактираме самият конфигурационен файл на motion

#vim /etc/motion/motion.conf

Аз съм нарпавил следните промени:

направете "daemon on"
направете "minimum_frame_time 5", this can be modified, depending how often you want to take picture
направете "pre_capture 2"
направете "post_capture 2"
направете "output_normal on"
направете "quality 100"
направете "ffmpeg_cap_new off"
направете "ffmpeg_timelapse 30"
направете "ffmpeg_variable_bitrate 2"
направете "get_dir /media/motion"
направете "webcam_port 8080"
направете "control_port 8081"
направете "webcam_localhost off"
направете "width 640"
направете "height 480", ТОВА Е ВАЖНО!!! Тези стойности трябва да са точните от вашата камера. Примерно камерата ми е 1.3 Mpx т.е. стойностите ми са 1280/1024
направете target_dir /media/motion
направете on_picture_save mpack -s "Alert" -а %f Този имейл адрес е защитен от спам ботове. Трябва да имате пусната JavaScript поддръжка, за да го видите.

На бързо да опиша какво съм променил. Основно папката, където да се правят снимките (/media/motion), портовете за отдалечено наблюдение, native разделителната способност на камерата и най-важното on_picture_save mpack -s "Alert" -а %f Този имейл адрес е защитен от спам ботове. Трябва да имате пусната JavaScript поддръжка, за да го видите., командата която праща снимката на пощата ви като прикачен файл.

Запаметете и сега направете сътоветно папката /media/motion и и дайте права всички да пишат в нея:

#mdkir /media/motion
#chmod 777 /media/motion

Следва най-сладкото:

#/etc/init.d/motion reload
#reboot

И всичко трябва да работи и системата да праща съобщения с прикачена снимка при движение.
Съответно можете да прочетете още коя настройка и кой параметър за какво е в детаилност.

Може да си поиграете с броя на пикселите, които са необходими да се променят, за да се задейства/направи снимка. Аз лично вдигнах този лимит в последствие, защото имаше много снимки само от разни отражения.

Също така в папката /media/motion освен снимките ви се съхранява и timelapse клип, който прави снимка на всеки 30 сек и обединява всичко на видео клип.