Зашел я как то пару месяцев назад в зоомагазин и увидел Дегу. Это вроде как чилийские белочки (хотя смахивают на крыс ))) ). Зверьки шустрые и интересные. В общем теперь я заядлый деговод ))) 3 самки + 1 самец. На текущий момент уже 5 мелких спиногрызов. Днем бегают. Ночью спят. Забавные. Это предыстория. Собственно почему тут пишу: Давно давно хотел организовать автоматизацию просмотра/кормления/играния с мелкими животными. Но тогда (давно) не было ардуино. А сейчас есть ))) На текущий момент: 1 - Есть raspberry pi 2 с родной камерой. Камера прилеплена к двум сервам. К интернету подключена через WiFi-свисток. 2 - Сервами с прилепленной на них камерой шевелит ардуина через Multiservo Shield. 3 - на клетку навесил лазер + фоторезистор. Лазерный луч проходит через барабан, в котором бегают белки. На основании прерывания луча получаю данные о кручении барабана. В итоге получилась такая вот связка: ** Ардуина ** Ардуина мониторит команды, приходящие из Serial. Если пришла команда поворота камеры по X - крутим одной сервой на нужный угол. Если пришла команда поворота камеры по Y - крутим другой сервой. Как только обработали команду поворота той или иной сервой - кидаем обратно в Serial отбойку, что поворот успешно осуществлен. Ардуина мониторит фоторезистор. Как только фиксирую, что барабан прокрутился - кидаю в Serial информацию о этом. ** Raspberry pi 2 ** Подключена по USB к ардуине. Компиляцию скетчей выполняю тут же. Малинка слушает USB-порт, на который навешана ардуина. Raspberry делает сразу несколько вещей: 1 - Постоянно мониторит базу данных удаленного сайта (http://degu.live) на предмет записей, говорящих о том, что надо повернуть камеру. Ну то есть когда на сайте кто то нажимает на кнопку поворота камеры - в базу данных пишется строка, что нужно выполнить соответствующую команду. И этой строке присваивается признак, что она еще не выполнена. Малинка как раз мониторит подобные записи на удаленном сайте. Как только находится еще не выполненная команда - она эту команду кидает в виде сообщения в порт с USB на ардуино, а в базу данных для команды указывает статус = выполнено. 2 - Если из порта с USB приходят сообщения от ардуины - то происходит анализ того, что пришло: Если это пришли отбойки о том, что камера повернулась по X или Y - в этих отбойках есть указание текущего градуса поворота. Эти данные raspberry пишет в базу данных на удаленном сайте и эти данные выводятся на странице в статистике. Если из ардуины пришла отбойка о том, что барабан прокрутился один раз - малинка пишет в удаленную базу данных этот факт. На основании этих записей сайт уже будет строить данные о текущей скорости/расстояниях вращения барабана. 3 - Raspberry pi 2 получает данные с своей встроенной камеры (которая висит на сервах), кодирует их кодеком h264 при помощи ffmpeg и отправляет на удаленный сайт в виде rtmp-потока ** Удаленный сайт Degu.Live ** Это уже отображает изображение с камеры + дает возможность управлять положением камеры + отображение статистики. 1 - На сервере настроил возможность прямой трансляции из RTMP-потока. Если в кратце, то это у nginx расширение nginx-rtmp-module. Более подробно как я там все настраивал есть тут: http://spravkacrm.ru/forums/topic/19-настройка-прямой-видео-трансляции-на-сайте-при-помощи-raspberry-pi-2/ 2 - Настроил веб-сервер на YII2 для отображения самого сайта. 3 - Настроил WebSocket на phpDaemon - для получения данных о статистике + отправка данных о кликах на элементах управления камерой. WebSocket - это новая возможность осуществления запросов на сервер и получения ответа + рассылка ответов сервера на все клиенты - намного ловчее, чем AJAX. В общем на текущий момент можно смотреть за дегусятинами. Можно крутить камерой в каком то диапазоне. В ближайшее будущее хочу прилепить туда подсветку в клетку (Управление с страницы) + думаю над тем, как бы организовать подачу вкусняшек (пока мысль остановилась на чем то типа спирали в трубе, спираль будет крутить мотор на нужные углы и тем самым в трубе проталкивать вкусняки). Плюс надо с камерой что то еще придумать. От малинки камера конечно прикольная, но очень маленький угол обзора.
Вы можете поменять объектив и увеличить угол обзора. Более подробно тут - http://wiki.raspberrytorte.com/index.php?title=Camera_Module_Lens_Modifcation. Спойлер: Конечный результат - фото
Типа морских свинок. Понравились тем, что активные, не вонючие, спят ночью днем бегают. Интеллект не тестировал ))
штука клевая, наверное. а где бы уже готовое решение купить? на амазоне или в россию не поставляют, или пересылка в 4 раза дороже детальки.
Готовые с обычным объективом 3,6мм с углом 75 градусов, их хватает, вот пример - https://item.taobao.com/item.htm?spm=a230r.1.14.200.bLle08&id=38745875290&ns=1&abbucket=8#detail. А вот с широкоугольным надо поискать, впрочем, Вы можете купить просто крепление и отдельно объектив. К примеру такие 1. Крепление - https://item.taobao.com/item.htm?spm=a230r.1.14.90.HHaMPL&id=17584594365&ns=1&abbucket=12#detail. 2. Объектив - https://item.taobao.com/item.htm?sp...878&pvid=636c3b2d-515c-479c-b328-88c1a4c72ff2. 3. 2 самореза. Цены в юанях. Немного работы и Вы получаете именно то что Вам нужно. По амазону ни чего сказать не могу, пользуюсь китайским taobao.com, через посредника в РБ.
Добавил управление двумя кусками светодиодных лент. Подключил их через полевые транзисторы к блоку питания на 12V 1.5A. Светит ярко. Даже слишком. Особенно, когда две. Думаю буду резать еще на куски и включать посегментно. И не пойму почему, но свет заметно "дрожит". Причем когда скетч компилится - они на полсекунды загораются ярко без дрожания. Судя по всему что то именно с ардуиной? Подключал: на Gate - выход с пина без резисторов. на SOurce - минус с блока питания, на Dest - выход на минус ленты. К плюсу ленты - плюс от блока питания. И земля у блока питания и земля у ардуины объеденены. Может в этом дело?
Прилепил еще две светодиодные ленты. Вроде стало лучше видно. Но свет "дрожит". Как бы его стабилизировать?
Если дрожит, значит ШИМ, горят не на полную катушку, вот и муарят с разверткой камеры. Посмотрел на Тытрубе, зверьки прикольные. )) Но до кошки далеко, конечно, другая категория.