Ang isang IP camera ay hindi kailangang magastos ng malaki. Sa isang Raspberry Pi Zero W at module ng camera maaari kang gumawa ng isang mahusay at partikular na compact na camera na medyo madali, at gamitin ito upang mag-set up ng isang rtsp streaming server, halimbawa. Sa artikulong ito, matututunan mo kung paano gawin iyon, at pagkatapos ay gamitin ang camera sa Surveillance Station sa isang Synology o QNAP NAS.
Siyempre, maaari kang bumili ng murang IP camera na may lahat ng mga dekorasyon sa China, ngunit kadalasan ay hindi maganda ang seguridad at mahirap i-set up. Ito ay hindi kaagad mas mura kung ikaw mismo ang bumuo nito, ngunit ikaw ay mas flexible at higit sa lahat ito ay masaya at pang-edukasyon. Gumagamit kami ng Raspberry Pi Zero W (mga 11 euros) kasama ang opisyal na 8megapixel camera module v2 (29.95 euros). Mayroon itong mahusay na sensor ng Sony IMX219. Available din ang isang variant ng NoIR na nagbibigay ng mas magandang larawan sa twilight. Kung pagsasamahin mo ang mga ito sa mga infrared na LED, mayroon ka ring mga larawan sa magandang gabi (sa grayscale). Kung gusto mong makatipid, makakahanap ka ng abot-kayang alternatibo sa China mula sa humigit-kumulang 8 euro. Kailangan mo rin ng micro SD card para sa software at isang power adapter na may micro USB na mas mainam na makapaghatid ng hindi bababa sa 1.2 amps.
01 Aling software?
Maraming paraan para sa streaming mula sa isang Raspberry Pi Zero W. Bilang karagdagan sa module ng camera, sinusuportahan din ng karamihan sa mga pamamaraan ang isang USB camera o webcam na ikinonekta mo sa Pi Zero W sa pamamagitan ng USB-on-the-go cable. Alinmang paraan ang pipiliin mo: dahil sa medyo limitadong kapangyarihan sa pagpoproseso, makabubuting iwanan ang motion detection sa video surveillance software gaya ng Surveillance Station. Ang isang kilalang opsyon ay ang motionEyeOS, na may magandang web interface para sa pag-configure ng camera. Ang isang kawalan ay ang medyo malaking pagkaantala, kahit na may opsyon Mabilis na Network Camera kung saan mawawalan ka rin ng maraming iba pang mga pagpipilian. Kaya pinili naming mag-set up ng manu-manong stream.
02 Pag-install ng Raspbian
Nagsisimula kami sa pag-install ng Raspbian Buster Lite. Kunin ang pinakabagong bersyon. Pagkatapos mag-download, i-extract ang archive at gamitin ang balenaEtcher para ilagay ang img file sa micro-sd card. Bago mo simulan ang Pi gamit ang micro-sd card, idagdag ang root (na naglalaman din ng file kernel.img estado) isang text file na tinatawag wpa_supplicant.conf kasama ang mga panuntunan sa ibaba. ilagay ito sa likod ssid ang pangalan ng iyong WiFi network at punan psk ang password. Sa parehong folder, lumikha ng isang walang laman na file na tinatawag ssh upang maaari kang mag-log in sa pamamagitan ng isang shell pagkatapos magsimula.
bansa=NL
update_config=1
ctrl_interface=/var/run/wpa_supplicant
network={
scan_ssid=1
ssid="yoursid"
psk="iyong password"
}
Pagkatapos mag-boot ang Pi Zero W, maaari mong malaman ang IP address na itinalaga ng DHCP server ng iyong router mula sa mga pahina ng configuration ng router (kung magiging maayos ang lahat). Mag-log in sa ip address na iyon sa pamamagitan ng ssh gamit ang isang programa tulad ng PuTTY at gamitin ang default na username pi at ang kaukulang password prambuwesas. Pagkatapos ay mas mainam na baguhin ang mga detalye sa pag-log in.
03 Pag-install ng rtsp server
Tiyaking napapanahon ang Pi sa mga utos:
sudo apt-get update
sudo apt-get dist-upgrade
Gamitin ang sudo raspi-config upang buksan ang pahina ng pagsasaayos ng Pi. I-activate sa pamamagitan ng Mga Opsyon sa Interfacing ang module ng camera. I-activate mo ang video-for-linux kernel driver gamit ang:
sudo modprobe bcm2835-v4l2
Suriin kung mayroon kang isang /dev/video0 may kasamang:
sudo ls -la /dev/vid*
I-install ang mga tool git at cmake gamit ang:
sudo apt install git cmake
Pagkatapos nito, maaari mong i-compile at gawing available ang rtsp server, na sumusuporta sa h.264, bukod sa iba pang mga bagay, gamit ang mga sumusunod na command:
git clone //github.com/mpromonet/v4l2rtspserver.git
cd v4l2rtspserver
cmake .
gumawa
sudo gumawa ng pag-install
04 Pagsisimula ng rtsp stream
Halimbawa, magsisimula ka ng stream mula sa folder v4l2rtspserver ng:
./v4l2rtspserver -F 10 -W 1920 -H 1080
Pagkatapos simulan ang rtsp server maaari mong basahin ang anumang mga mensahe ng error at isang link sa stream sa form rtsp://ipaddress:8554/unicast. Magagamit mo ito sa, halimbawa, VLC player para kumonekta sa camera, ngunit gayundin sa Surveillance Station gaya ng ipapakita namin sa ibaba. Gamit ang pagpipilian -Ikaw user:password magpasok ng user at password para protektahan ang stream. Sa kasong iyon, ang link sa stream ng rtsp ay kumukuha ng form rtsp://user:password@ipaddress:8554/unicast. Ito ay maayos na ang pag-load ng processor ay nananatiling napakalimitado, ginagawa ng gpu ang karamihan sa trabaho.
05 Autostart ng Server
Gusto naming awtomatikong magsimula ang rtsp server pagkatapos i-on ang Pi. Upang gawin ito, lumikha ng isang simpleng script na may:
sudo nano /etc/systemd/system/v4l2rtspserver.service
Kabilang dito ang mga sumusunod na patakaran:
[Yunit]
Paglalarawan=v4l2rtspserver rtsp-server
Pagkatapos=network.target
[Serbisyo]
ExecStartPre=/usr/bin/v4l2-ctl --set-ctrl vertical_flip=1
ExecStartPre=/usr/bin/v4l2-ctl --set-ctrl h264_i_frame_period=5
ExecStart=/home/pi/v4l2rtspserver/ v4l2rtspserver -F 10 -W 1280 -H 720
ExecReload=/bin/kill -HUP $MAINPID
Uri=simple
user=pi
Grupo=video
I-restart=laging
[I-install]
WantedBy=multi-user.target
Bumalik ka ExecStart ang lokasyon ng v4l2rtspserver. Mayroong ilang mga opsyon na maaari mong eksperimento (tulad ng vertical_flip para sa pag-ikot ng imahe). Gawing aktibo ang script gamit ang:
sudo systemctl paganahin ang v4l2rtspserver
At simulan ang script sa:
sudo systemctl simulan ang v4l2rtspserver
Magdagdag ng larawan ng camera sa Surveillance Station
Madali mong magagamit ang larawan ng camera sa Surveillance Station sa pamamagitan ng manu-manong pagtukoy ng camera. Sa software na ito, lumilitaw na medyo limitado ang pagkaantala ng larawan. Habang nasa VLC player na halos dalawang segundo, ang pagkaantala sa Surveillance Station ay halos isang segundo lang. Mukhang marami iyon, ngunit maraming iba pang mga paraan ng streaming mula sa isang Raspberry Pi ay kadalasang may mas malaking pagkaantala ng apat na segundo o higit pa.