Еще на стадии рисования плана я решил, что макете точно нужно поставить несколько камер. Камеры эти нужны, чтоб иметь возможность посмотреть на макет с тех сторон, с которых нельзя нему подойти, а именно со стороны задника и из дальнего угла, который будет расположен в углу комнаты.
Купив первую камеру для теста, стало понятно, что ее угла зрения в 120° более чем достаточно не только для наблюдения за макетом, но и за всей комнатой, где он стоит. Можно было даже подумать о покупке более дешевого аналога, с углом зрения 90°.
Камера покупалась на али и никаких проблем с доставкой или таможней или нарушением чего-либо не возникло, как в той старой истории, когда фермер купил GPS-трекер для своей коровы и получил уголовное дело за ввоз "специальных технических средств" для шпионажа. Сейчас ситуация другая.
В постановлении №3-П Конституционный суд указывает, что к специальным техническим средствам, предназначенным для негласного получения информации, относятся технические средства, которые закамуфлированы под предметы (приборы) другого функционального назначения, в том числе бытовые, обнаружение которых возможно только при помощи специальных устройств.
Поэтому камеры в явном виде, т.е. не замаскированные в шариковые ручки и прочие, не имеющие отношения к камерам приборы, приобретать вполне можно. Проверил на собственном опыте.
В процессе работы камера ощутимо греется, для отвода тепла пришлось организовать радиатор 14х14х8 мм., который крепится на специальный термо-скотч.
Для размещения камеры на макете пришлось создать специальный держатель, который позволял небольшие корректировки положения. Модель держателя можно скачать в формате FreeCAD.
Первоначальная идея разместить камеру внутри церкви провалилась по причине слишком маленького слухового окна для такой камеры и невозможности ее регулировки после установки. В результате камеру было решено поместить на горе рядом с порталом туннеля и попытаться обыграть какими-то элементами так, чтоб она более-менее естественно вписывалась в мир на макете.
Держатель распечатал из темно-серого пластика, близкого по цвету к камню. Вдоль горы к нему ведет дорожка, которая в будущем будет кончаться приставной лестницей к держателю. А к концу стройки появятся еще миниатюрная бригада монтажников телекоммуникационных сетей, проводящая работы с камерой :)
Для теста подключил камеру к телефону и понаблюдал за процессом стройки макета с другой стороны. Как оказалось, угол зрения камеры 120° более чем достаточен для наблюдения за макетом, для моих целей хватило бы и более дешевой модели с углом 90°. Помимо макета получилась система наблюдения за комнатой.
Спустя примерно 2 года после монтажа камеры дело дошло до ее подключения к малине. Само подключение крайне банально - просто воткнуть USB-разъем, а вот с вещанием картинки в сеть все не так просто.
Для начла берем гайд и проверяем, что можем получать картинки с камеры с помощью fswebcam
. Затем можно пойти простым путем и поставить motion
, но он совсем не для наблюдения за макетом, да и производительность его на малине оставляет желать лучшего.
Поэтому идем сложным путем, будем использовать MJPG-streamer. Его придется клонировать из репозитория и собрать:
sudo apt-get install cmake libjpeg-dev git clone https://github.com/jacksonliam/mjpg-streamer.git cd mjpg-streamer/mjpg-streamer-experimental/ make sudo make install
Справедливости ради, стоит отметить, что на момент установки у меня уже был установлен motion
, который затянул кучу зависимостей вместе с собой, возможно, часть из них сгодилась при сборке mjpg-streamer
.
После успешной установки можно поковыряться с настройками или просто запускаем:
mjpg_streamer -i "input_uvc.so -d /dev/video0 -r 1280x720" -o "output_http.so"
и наслаждаемся живой картинкой с макета прямо в браузере по адресу http://<ip малины>:8080/?action=stream
Так же можно создать файл /var/www/mjpg-streamer/index.html
следующего содержания:
<html> <head> <title>MJPG-streamer</title> </head> <body align="center"> <h1>MJPG-streamer</h1> <p> <a href="?action=stream">stream</a> • <a href="?action=snapshot">snapshot</a> </p> <p> <img src="?action=snapshot"> </p> <hr> <address> ©2023 <a target="_blank" href="http://aleksandr.ru">aleksandr.ru</a> </address> </body> </html>
и запускать вещание командой mjpg_streamer -i "input_uvc.so -d /dev/video0 -r 1280x720" -o "output_http.so -w /var/www/mjpg-streamer"
чтоб при входе на http://<ip малины>:8080
вас приветствовала страничка со ссылкой на стрим и картинкой с камеры.
Для начала этого вполне достаточно. Далее предстоит научиться включать-выключать вещание с кнопки на пульте управления.