- Шпионская микро камера из разбитого ноутбука
- Авторизация на сайте
- Делаем веб-камеру из смартфона
- Содержание
- Содержание
- Android-устройства
- Подключение через Wi-Fi
- Проводное подключение
- IOS-устройства
- Подключение через Wi-Fi
- Проводное подключение
- Если компьютер на базе Mac и Ubuntu
- Сверхдешёвая камера с управлением — своими руками
- Пройдём по ценам*
- О реализации
- Довольно лирики!
- Будьте внимательны к мелочам
- Оставшиеся недоработки
- О скидках
- Ссылки
Шпионская микро камера из разбитого ноутбука
Авторизация на сайте
Самодельная шпионская мини камера из разбитого экрана от ноутбука.
Как-то раз, на свалке нашёл разбитый экран ноутбука. Конечно, это уже не нужный хлам, но в нём я заметил веб камеру, появилось желание достать её. Выглядит она так.
Размеры её очень малы и это значительный плюс.
Теперь появилась такая проблема, как же её подключить? Из камеры выходят множество проводов, но нам нужно только 4 из них.
Наша задача: подсоединить камеру под USB шнур, но цвета проводов разные.
Первым делом начал юзать поиск на YouTube. Нашёл видео как подключить, но модель камеры у меня была другая. Подключив, так как показано на видео, всё заработало. :e195: Далее на моём канале под этим видео уроком отписался человек, что у него тоже вышло. В итоге 3 разных камеры подключённых одинаково-работают! К чему я это всё написал? Проще говоря, практика показала, что подключаются камеры одинаково и это очень хорошо.
Далее подключаем её вот так, пожалуй это самое главное в нашей конструкции.
Всё. Теперь наша камера работает от USB шнура! Как её можно теперь использовать?
1) Как обычную вебку, сделав корпус, можно вмонтировать прям в монитор;
2) Вмонтировать в двери квартиры, либо в стену. Размеры камеры позволяют это сделать;
3) Теоретически можно поставить такую камеру в автомобиль для заднего хода.
Рекомендую просмотреть ролик, как я подключал камеру к USB шнуру, ведь это главная задача в работе камеры.
Источник
Делаем веб-камеру из смартфона
Содержание
Содержание
Обладатели гаджетов даже не осознают, насколько функциональным устройством они обладают. Сегодня мы поговорим об одной из мультимедийных возможностей.
С помощью смартфона можно заменить обычную веб-камеру, тем самым решить проблему ее отсутствия или выхода из строя. Камеру смартфона в таких случаях можно использовать для:
- удаленного видеонаблюдения;
- видеозвонков;
- в качестве основной или дополнительной камеры для интернет-трансляции.
Для настройки понадобится минимум времени и навыков. Процесс подключения хорошо автоматизирован и будет под силу рядовому пользователю.
Существует несколько способов подключения. Для разных методов вам понадобятся USB-кабель, Wi-Fi-сеть и приложения для сопряжения камеры телефона и ПК. Разберемся с каждым способом отдельно для платформ Android и iOS.
Android-устройства
Какие приложения можно использовать на базе Android? Мы подобрали несколько актуальных и безотказных вариантов:
DroidCam X устанавливается на смартфон или планшет (необходимо скачать и инсталлировать одноименный клиент для Windows). Передает звук и картинку, поддерживает подключение через провод или Wi-Fi. Предоставляет IP-доступ к камере.
IP Webcam – специализированное приложение для организации видеонаблюдения с помощью смартфона. Для использования смартфона в качестве веб-камеры нужно установить на ПК программу IP Camera Adapter. Смотреть видеопоток можно через браузер или плеер VLC.
EpocCam – автоматическое сопряжение устройств (установка софта на гаджете и ПК), простой функционал без излишеств.
Подключение через Wi-Fi
Рассмотрим пример беспроводного подключения с помощью программы DroidCam X. Это один самых проверенных и универсальных вариантов соединения любого гаджета на базе Android. Итак, следуем пошаговой инструкции:
- Запустить приложение DroidCam на смартфоне. Если приложение запросит права на доступ к камере и интернет-подключению, то следует разрешить данное действие.
- Установить клиент DroidCam на ПК.
- В программе на компьютере выбрать иконку подключения через Wi-Fi. На главном экране приложения на смартфоне появится IP-адрес камеры вашего телефона (Browser IP Cam Access).
Можно использовать и более простой способ, где не нужно заморачиваться с IP-адресами и настраивать какие-либо параметры. С помощью приложения EpocCam можно добиться автоматического сопряжения ПК и камеры смартфона/планшета. Это очень удобно, когда вам нужна веб-камера здесь и сейчас.
Достаточно установить приложение EpocCam на телефон и соответствующий клиент на компьютер. Затем происходит настоящая «магия». Запустите обе программы, и вы увидите, как подключение устройств произойдёт автоматически!
Проводное подключение
Подключение через USB может потребовать некоторых затрат нервных клеток. Применяйте этот способ только когда у вас нет интернета на телефоне или компьютере т.к. здесь придется повозиться с включением режима откладки на смартфоне. Также нам понадобится кабель micro USB или Type-C.
Пример подключения рассмотрим на примере DroidCam X. Далее следуем пошаговому руководству.
- Подключить смартфон к ПК с помощью кабеля.
- Запустить приложение DroidCam на смартфоне.
- Установить клиент DroidCam на ПК
- Включить режим «Отладка по USB» для стабильной работы. Сделать это можно в меню «Для разработчиков». Находим его по пути: «Настройки» — «О телефоне» — «Номер сборки». Далее необходимо 7 раз «тапнуть» по пункту «Номер сборки», после чего откроется «Меню Разработчика». Находим строку с режимом отладки и активируем его. Здесь вы можете найти подробные инструкции о включении этой и других стандартных настроек на телефонах Android.
- В программе на компьютере выбрать иконку подключения через USB.
После нажатия кнопки Start на экране появится видеопоток с камеры. В дальнейшем вы можете использовать камеру по любому назначению, выбирая ее среди списка доступных устройств в других программах на компьютере.
IOS-устройства
Алгоритм подключения iOS-устройств будет приблизительно таким же, как и в случае c девайсами на Android. Меняется только набор программного обеспечения. Следующие приложения получили наибольшее количество положительных отзывов среди обладателей «яблочных» аппаратов:
- iVCam – автоматическое сопряжение ПК и гаджета без возни с IP-адресами, есть выбор ориентации экрана, разрешения и частоты кадров, требуется установка клиента на ПК;
- EpocCam – предлагает те же минимальные функции, что и для Android-версии. Есть возможность использовать любую камеру гаджета. Требуется установка клиента на ПК. Автоматическое сопряжение;
- iCam – дает возможность записи трансляции в облако. Просмотр потока через браузер. Позволяет изменять яркость и контрастность видео, использовать вспышку. Дополнительное ПО для установки на компьютер не требуется.
Подключение через Wi-Fi
iVCam – простой и в то же время гибкий способ подключения. Именно это приложение мы взяли за основу пошаговой инструкции с четырьмя элементарными этапами.
- Установить iVCam на iOS-устройство из магазина приложений iTunes.
- Запустить приложение, и включить возможность передачи звука в настройках. Если приложение запросит права на доступ к камере и интернет-подключению, то нужно разрешить данное действие.
- Скачать и установить клиент iVCam на ПК
- Запустить клиент на компьютере, и подождать пока оба устройства будут сопряжены.
Проводное подключение
Подключение через кабель осуществляется почти в таком же порядке, как и при беспроводном подключении. Разница заключается лишь в том, что сначала нужно подключить ваш iPhone или iPad к компьютеру. В этот раз обойдемся без танцев с бубном вокруг отладки, за что можно поблагодарить экосистему Apple. Затем следуем тем же самым шагам, что и при Wi-Fi-подключении:
- Установить iVCam на iOS-устройство из магазина приложений iTunes.
- Запустить приложение, и включить возможность передачи звука в настройках. Если приложение запросит права на доступ к камере и интернет-подключению, то нужно разрешить данное действие.
- Скачать и установить клиент iVCam на ПК
- Запустить клиент на компьютере, и подождать пока оба устройства будут сопряжены.
Если компьютер на базе Mac и Ubuntu
Пользователи Mac также могут использовать устройство на базе iOS или Android в качестве штатной веб-камеры. Скачивайте приложение и клиент EpocCam для обеих платформ. Для подключения iOS-гаджета к Mac можно также использовать iCam.
А как быть пользователям Ubuntu и других Linux-систем? Для таковых есть единственное решение на базе Droidcam. Скачайте Linux-версию Droidcam и установите с помощью специальных команд.
Источник
Сверхдешёвая камера с управлением — своими руками
В качестве преамбулы скажу, что поскольку, подобная статья уже была, я по-началу и не собирался писать о камере на хабр.
Камера была сделана, просто ради интереса, тренировки навыков и отработки технологии удалённого управления физическими объектами.
Немного позже использовал эту систему как наглядный пример, сопровождающий обзор, на другом ресурсе (а фактически, в качестве чита что-бы подтянуть голоса). Это был настоящий бета-тест, который выявил кучу недоработок. За это огромное спасибо всем неравнодушным, помогавшим кто советом, а кто и куском кода.
При этом, посетители, которые игрались с камерой, помимо того, что не проходило и часу чтобы не помянули хабр, так ещё и начали активно интересоваться устройством всего этого дела, техническими деталями, программной реализацией и конечно же стоимостью.
Вот это всё и сподвигло меня на статью. А чтобы не повторюшничать, я и решил заостриться на стоимости, т.к. у автора предыдущего топика на эту тему, насколько я помню, итоговая стоимость вылилась во что-то в районе 5000р.
О том какова стоимость моей поделки: читаем ниже.
Итак, «как корабль назовешь, так он и поплывет», раз написал заголовок про дешевизну — буду соответствовать прозой, так что, детали — потом, а сперва о стоимости.
Пройдём по ценам*
* все цены даны со скидками. О скидках — отдельно, пожже.
Необходимый набор:
- Arduino Uno (или nano) — 15.29$
- Сервопривод (рулевая машинка) SG90 2х2.37$ = 4.74$
- Вебкамера 3.01$
Итого: 23.04$ (примерно 750р, на данный момент)
Дополнительный набор (ленивости + плюшки):
- Экран от Nokia 5110 — 250р (в комплекте с самой Нокией и блоком питания, куплено пару лет назад, будем считать, что именно для этой цели, реально можно найти уже вдвое дешевле, или вообще на халяву)
- MegaShield v4 к Arduino — 5.86$
- Проводки-коннекторы — 2.86$ (40 штук за эту цену, реально использовано 7)
- Сверхяркий сверхсиний све
рхтодиод для подсветки экрана — 5р/шт (лучше 4шт., у меня сделано неправильно)
Итого: примерно 550р
О реализации
Всё делалось с нуля. Повторять то, что уже было — я не стал, во-первых из соображений тренировки, а во-вторых Ethernet-модуля у меня на тот момент не было, я решил что это всё слишком сложно (там был завязан MySQL) и это решение мне однозначно не подойдёт.
О задачах
Задачи я себе обозначил следующие:
- Видеть картинку/видео
- Иметь возможность управлять камерой
- Иметь возможность управлять размером и качеством видео или картинки, причём не «уже на стороне клиента», а «ещё на стороне сервера, по команде клиента». Такая необходимость возникла из-за того что мне не везде доступен «большой и широкий интырнет»
- Обеспечивать приемлемую «реалтаймовость»
- Иметь задел на будущее — управление нагрузкой 220В и т.д. Собственно ради этого всё и затевалось, т.к. готовые решения либо жутко дороги, либо такой возможности не предоставляют.
О проблемах
В ходе реализации возникли вопросы вот такого плана:
- Видео либо грузит процессор в случает показа на несколько пользователей, либо даёт задержку 5-10, т.е. не обеспечивает «реалтаймовость», из-за чего нельзя сразу определить адекватность и вообще работоспособность управления
- Использование сервиса трансляций, хотя и сильно разгружает сервер в случае большого онлайна, не обеспечивает необходимую надёжность, и, опять же, даёт задержку
- Специальный сервер для трансляции видеопотока требует определённых навыков, которых у меня пока что нет
- Использование отображения путём смены картинок не обеспечивает высокий fps, а также постоянно обращается к жёсткому диску, что, при большом количестве пользователей, может вызывать лаги картинки не из-за загрузки процессора, а именно из-за обращения к диску
О решениях
- Решено использовать в качестве отображения — картинки
- Для исключения жёсткого диска из процесса выдачи картинок установлен RamDisk, на который дважды в секунду «ложится» изображение с вебкамеры
- Для выдачи картинки решено использовать php и gdlib
- Обновление картинки инициируется клиентом посредством javascript и ajax, и происходит без обновления самой странички
Довольно лирики!
Как выглядит
Выглядит всё более чем скромно
Работает примерно так:
Ардуина, если кто не видел
Мегашилд с проводками
«Сэндвич» в профиль
«Сэндвич» анфас
LCDшка
Она же вид сзади (пины и кондёр)
В сборе
В сборе 2
Колхоз — система проводков и верёвочек (крепление камеры)
Куда же без него
Как устроено аппаратно
Вебкамера подлючена по USB к компьютеру.
Arduino тоже подключена к компьютеру по USB.
Все внешние устройства, ввиду исключительно малого потребления тока, подключены напрямую к Arduino, работает круглосуточно уже полтора месяца, с онлайном 10 пользователей в момент наименьшей нагрузки.
Как работает программно
На стороне клиента чистый веб-интерфейс, без всяких плагинов и примочек. Только html, css, и javascript (+ajax).
На стороне сервера
- Сам сервер — Apache
- Обработчик скриптов — php
- Приём картинок с камеры — любая самая простая доступная, бесплатная или самопальная программа для сохранения картинок с вебкамеры
- Хранение картинки — RamDisk, утилита для создания дискового раздела в оперативной памяти (русскоязычная версия RAMDisk «Enterprise» бесплатна для локализованных систем)
- Чтобы не прописывать в php прямых локальных путей, папка с картинкой смонтирована в www папку с помощью juction (бесплатная утилита Марка Руссиновича)
- Передача управления из интернета к Arduino реализована с помощью программы-прокси, следующим образом: php скрипт создаёт UDP сокет и отправляет датаграмму на определённый порт, далее программа-прокси слушает этот этот порт и принимает приходящие на него сообщения и отправляет их на COM-порт Arduino (можно даже без обработки). Выбор UDP вызван исключительно для упрощения системы, UDP не требует никаких подтверждений и проверок о доставке-отправке ни со стороны клиента, ни со стороны сервера.
На стороне Arduino
- Сама (почему «сама»? потому что «плата») Arduino
- Скетч внутри неё — стандартные примеры из штатного набора arduino-0022 servo и serial + найденная на просторах интернета библиотека для дисплея, доработанная до приемлемого вида (в плане кириллицы и латиницы одновременно)
- На данный момент плюсом стоит мегашилд, чисто из-за удобства и культурного вида — в этом варианте я не спаял ни одного проводка (за исключением платы к дисплею)
Система выдержала все нашествия и рейды, а так же онлайн более 120 пользователей.
Были случаи отказа управления, которые случались из-за моих недоработок в программе-прокси, в частности из-за недостаточной обработки ошибок, в то время как програмная часть со стороны Апача и Ардуино держалась достойно.
Будьте внимательны к мелочам
Хочу отметить проблемы с программной частью которые случались из-за собственной невнимательности/неосведомлённости/ненаблюдательности:
- Первое с чем я серьёзно мучался: Arduino принимает из отправленной на её виртуальный COM-порт строки отдельно первый байт и отдельно всё остальное. Какие изощрения я только не пробовал — и с массивами и с кучей проверок… Хоть ты убейся. Решение проблемы? Пришло неожиданно и внезапно, в моментк огда я об этом и не думал: Sleep 2 после чтения каждого байта. ВСЁ!
- Вторая проблема — серьёзная нагрузка на сервер, казалось бы, из ничего, возникла потому, что обновление картинки было сделано по таймеру, не дожидаясь собственно факта загрузки картинки (или ошибки загрузки). Таком образом отсылалась куча «лишних» запросов.
- Третье: FireFox оказался самым правильным и капризным браузером, и заставил меня учиться писать валидный код. Так например, событие OnClick по элементу Option работать не должно. А оно работет, везде кроме огнелиса.
- Четвёртая, совершенно не явная и редко всплывающая: периодически картинка «ломалась». Как выяснилось, это происходило в момент когда файл был занят при записи. Т.е. проверка file_exists() проходила, а файл оставался залоченным. Не помогла и проверка is_writable(). Пришлось организовывать цикл по наличию ошибки и внутри него отрабатывать чтение файла «до победного конца».
Оставшиеся недоработки
Есть и такие.
- Во-первых, это описанные в каментах «левые» символы иногда появляющиеся в конце сообщения на экране. На самом деле это команды управления. Уши этого бага растут из того что если активно спамить или жать кнопки, буфер ком-порта не успевает полностью прочитаться Ардуиной и последующие сообщения валятся в конец буфера. Решение есть, но пока не сделано.
- Во-вторых, это периодическое падение UDP-сокета в программе прокси при большом онлайне. В чём причина — не знаю. Проявляется не сразу. Умирает и не «откисает». Помогает закрытие сокета и бинд по-новой. Возможно, виноват кривой видовский winsock.ocx. Переписывать это дело на API в бейсике, как-то лень. Пока одним из «топорных» решений вижу сброс и ребинд сокета по таймеру, каждые, скажем, полчаса.
О скидках
Общеизвестно, что в Китае — дешевле. Главное знать места, где именно дешевле, и как добыть дополнительную скидку.
Тут смысла писать нет — слишком большой объём текста с картинками, к тому же известный большинству.
Поэтому дабы не провоцировать ярых противников борьбы со спамом и прочим «реферальством», отмечу необходимый минимум — это скидка 15% на BiC, складывающаяся из одноразового купона на 10% и скидки за первую покупку 5% при вводе рекомендателя + хинт, как использовать эту систему неоднократно.
Все заинтересовавшиеся, могут ознакомиться с полной информацией по ссылке на страничке с, собственно, самой камерой.
Ссылки
Камера, работающий экземпляр, для тех кто ещё не видел и не наигрался
Топик, в котором ссылку на камеру слили на хабр раньше времени
RAMDisk
juction
Исходники (упрощённые, во избежание) клиентской части, серверной (php) и программы web-arduino-прокси (VB 6.0)
Apache, php, либо какие-то комбинированые сборки и т.д. — на свой вкус.
Источник