Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > CyberWrt

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.05.2014, 15:35   #1
shveps
Junior Member
 
Регистрация: 03.05.2014
Сообщений: 22
Вес репутации: 0
shveps has a reputation beyond reputeshveps has a reputation beyond reputeshveps has a reputation beyond reputeshveps has a reputation beyond reputeshveps has a reputation beyond reputeshveps has a reputation beyond reputeshveps has a reputation beyond reputeshveps has a reputation beyond reputeshveps has a reputation beyond reputeshveps has a reputation beyond reputeshveps has a reputation beyond repute
По умолчанию Проект yandexcamera.ru для видеонаблюдения

CyberWRT отличная штука для MR3020!
Это мой первый пост.
Была поставлена задача - сделать систему видеонаблюдения из 5 камер (по одной на 1 квартиру) с дальнейшим увеличением пользователей. чтобы пользователи могли смотреть все камеры на 1 страничке.
У каждой квартиры - свой роутер, свой интернет-провайдер.
В качестве решения был выбран TP-LINK MR-3020 + вебкамера Logitech C270 HD + USB хаб (без питания)
В качестве прошивки была выбрана CyberWRT
В качестве подключения был выбран - клиент Wifi - для подключенния к роутера к домашней сете каждой квартиры.

-Установлен драйвер вебкамер mjpg_streamer
-Установлен Yandex диск и в самом Яндекс-Диске создаем папки под каждую камеру - к примеру - CAM1, CAM2 и т.п. чтобы раздельно их использовать.
-Установлен планировщик

Камера отлично выдавала видеопоток mjpg 1280x720, но для видеонаблюдения из нескольких квартир (на парковку) достаточно фотографий сменяемых 1 раз в минуту.
Опытным путем выяснилось что без зависонов mjpg делает фотки максимально 800x600, а еще лучше 640x480, иногда удавалось сделать фото 1024x576
в иных случаях - зависание камеры и необходимость ребута.

создаем задание в планировщике
ставим задание

Минуты, часы и прочее ставим - *
Путь к скрипту:
mjpg_streamer -i "input_uvc.so -y -d /dev/video0 -r 640x480" -o "output_file.so -f /mnt/Yandex/CAM1 -d 5000 -c /www/cgi-bin/modules/video_driver/stop.cgi"
и создаем задание
Примечание - в задании указана папка /mnt/Yandex/CAM1 - это та папка куда будут сыпаться фотки

прежде чем нажать START - проверим выключен ли стрим в Драйвер_Webcam - если включен - остановите его.
Теперь снова в планировщик и запускаем Start.
После чего каждую минуту на ваш яндекс диск будут сыпаться фотки примерно такие:
2013-03-26 23-22-26.JPG
2013-04-12 16-39-12.JPG
2013-04-12 16-39-22.JPG
2013-04-12 16-39-28.JPG
2013-04-27 14-21-40.JPG

ВАЖНО! ДЛЯ ТОГО ЧТОБЫ СЕРВИС НОРМАЛЬНО РАБОТАЛ - ПЕРЕИМЕНУЙТЕ ОДНУ ФОТКУ В 'image.JPG' - это требования yandexcamera - об этом речь пойдет ниже!

Зачем вообще такой гимор, спрашиваете вы - если можно пробросить порты, DynDNS подключить и смотреть видео с камеры?

Проброс портов 8080 отпал - ибо некоторые квартиры подключены через роутеры МГТС к которым нет доступа (сброс на дефолт не предлагать)

Рендер видеопотока MJPG напрямую на Яндекс диск отпадал - ибо его трудно смотреть через http c любого компа.

В идеале захотелось сделать все камеры на 1 вебстранице.

Для этого был найден сайт yandexcamera.ru который использует API Яндекс диск (можно в принципе и самому написать движок PHP под этот API).

Для работы всего этого дела нам понадобится зайти
http://online.yandexcamera.ru/
далее выбрать - Создать виджет для Яндекс.ДИСК
выбрать папку куда кладутся фотки MJPG-ом (или просто в корне) и нажать кнопку - Создать

после чего вы попадете на страничку что-то типа http://online.yandexcamera.ru/yandex/show/215 - это моя камера - сори но она не обновляется - я временно отключил роутер для других дел.

Если вы правильно все сделали - то страничка бует автообновляться раз в минуту и показывать последнюю фотку! если не показывает - то вы не переименовали первую фотку в image.JPG

если вы не хотите иметь архив фоток то в интернете есть баш скрипт для openwrt переименования выходного файла в другой - (вам нужно в image.JPG), можно просто Файл Менеджером подправить /www/cgi-bin/modules/video_driver/stop.cgi

Цитата:
#!/bin/sh
mv -f "$1" '/mnt/Yandex/CAM1/image.JPG'
killall mjpg_streamer
далее вы можете собрать картинки с нескольких камер:
yandexcamera дает сразу код iframe - их вы соберете на 1 страничке и все кто знает ее адрес - будут видеть свои камеры.

Код HTML:
<iframe width="640" height="480" src="http://online.yandexcamera.ru/yandex/show/215/iframe"></iframe>
Единственное с чем не разобрался - это нужен какой то скриптик проверяющий что камера зависла и чтобы он делал ребут при этом.
поэтому нидхелп.

Еще хотелось бы bash script чтобы удалять старые фотки позже 3-5 дней. чтобы место на диске не переполнялось.

Минус yandexcamera - это легкость перебора камер - меняете 215 на 3 к примеру - и смотрите. паблик - не хорошо, поэтому, если Yandexcamera когда нибудь сломается - то смогу написать собственный PHP движочек и чтобы все делалось автоматом (удаление старых фоток ну и другой функционал) и можно было установить на любой хостинг (опыт есть - мой eurowebcart.ru)


Также планирую создать модуль для CyberWRT - принсервер на основе сервера p910nd. Потому что идеально работает, а народу хочется WiFi принтер поиметь и поставить принтер подальше от компа.

Спасибо ADMINу - именно он своим терпением подвиг на все это.

Последний раз редактировалось shveps; 03.05.2014 в 17:45.
shveps вне форума   Ответить с цитированием
 

Метки
cyberwrt, mr3020, webcam, yandexcamera, камера


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 07:45. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика