Кремень КД Реклама
Кремень КМ Реклама

Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.

vasyna
Идет загрузка
Загрузка
12.06.2017
25638
35
Техничка

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

56
Смотрю народ кинулся в камеры. Кто на что горазд. но все забывают о том что есть почти у каждого и он камерой в нем либо не пользуется, либо это что-то уже залито кофе-пивом и просто пылится на полке. Я про ноутбуки/нетбуки и иже с ним.

Вообще у меня есть парочка вебок, но все они приобретались по нужде и брал я или с авито или самые дешевые. Итого все они вообще ни как не заводятся на armbian и им подобным ОС и хорошо если заводтся на win7x64. Но вот ноутбучные камеры... производитель как бы изначально заботится чтобы камера имела драйвера в как можно большем числе ОС, чтобы покрыть как можно больший рынок. Выглядят они примерно вот так:
Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.
В 99.9% случаях это простая usb web камера, очень часто и густо 720р, чуть по реже 1080р, ну и если взять совсем динозавра, то... сами понимаете. Если честно я попробовал и 720р и 1080р и уныние в 320*240 (честные конечно) и для общей картины работы принтера и последнего разрешения за глаза.

И так что же нам надо?

1. Камера от ноутбука;

2. Паяльник, припой, флюс/канифоль и немного спиртика для промывки;

3. USB кабель скажем от принтера (лично у меня пару кг USB A-B кабелей от бесперебойников);

4. Мультиметр;

4. Немного свободного времени.

Для начала нам надо узнать что у нас за модель камеры и найти ее рабочее напряжение. Дело в том что некоторые камеры хоть и имеют USB интерфейс, но рабочее напряжение у них 3.3В. Если 5В, то все просто подключаем провод в провод (хочу сразу извинится перед всеми, фотки почти все не мои, ибо я давно пользуюсь своей камерой, а делать новую - нет ни какой необходимости):
Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.
Но сильно не обольщайтесь на счет цветов в вашем USB кабеле. У меня цвета были перепутаны. По сему прозвонка и только прозвонка:
Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.
Тут есть еще небольшой лайфхак. Дело в том что на волне камрада Eta4ever очень много народу прикупило OrangePi One. А там один USB-A-female. И получается что для подключения нужен USB-хаб. Но все упорно забывают о micro-USB. Он OTG, а значит он может как быть устройством, так и подключать к себе устройства!

Распиновка microUSB кабеля:
Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.
Соответствие номеров пинов к именам:

PIN# SIGNAL

1 +5

2 -Data

3 +Data

4 NC/GND

5 GND

Распиновка самой камеры:
Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.
Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.
Камеру легко прозвонить. Если крайний контакт звонится на следующий (может и не звониться) и на патяки винтов, то это земля и это соответственно это 5 пин.

Соединяем каждый пин с одной стороны с одноименным с другой стороны.

Если у Вас камера на 3.3В питания, то надо поступить или так:
Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.
или так:
Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.
В первом не кашерном случае мы просто просаживаем напряжение на двух диодах, во втором случае на линейном стабилизаторе напряжение. Конденсаторы для сглаживания и чисто теоретически работать будет и без них. Есть еще самый кошерный вариант - шим контроллер, но я думаю мы его не будем рассматривать. Но есть еще более кошерный вариант, но он не столь практичный - 1 пин гребенки GPIO OrangePi. Там как раз 3.3В.

Я очень советую взять провод которым подключалась камера изначально в ноутбуке. Но те кто уверенно держат паяльник в руках могут припаяться и к самой плате. Но это конечно уже куда сложнее.

Мне повезло, у меня 5В камера и я подключил все просто болт-он. Накидал за пару минут корпус под свои реалии:

http://3dtoday.ru/3d-models/detali-dlya-3d-printerov/raznoe/boks_dlya_web_kamery_noutbuka И получил на выходе:
Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.
Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.
В окте по итогу я вижу такую картинку:
Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.
С вот такой вот нагрузкой:
Octoprint. Плюшки. Часть 3. Дешевая (если не дармовая) камера для наблюдения за принтером.
Покдлючение в том же Armbian делал по мануалу вышеупомянутого камрада eta4ever - http://3dtoday.ru/blogs/eta4ever/orange-octopus-an-ordinary-webcam/Одна из старых камер при sudo ./mjpg_streamer -i './input_uvc.so' -o './output_http.so' дала следующие:

MJPG Streamer Version.: 2.0

i: Using V4L2 device.: /dev/video0

i: Desired Resolution: 640 x 480

i: Frames Per Second.: -1

i: Format............: JPEG

i: TV-Norm...........: DEFAULT

i: Could not obtain the requested pixelformat: MJPG , driver gave us: PJPG

... will try to handle this by checking against supported formats.

Init v4L2 failed !! exit fatal

i: init_VideoIn failed

Что это за поток я с наскока не нашел. По поводу качества - это подобранная камера чтобы изначально был такой поток (у меня инет 4G от МТС и соответственно ширина канала не очень).

Теперь самое сложное - просмотр камеры из вне локальной сети. дело в том что окта просто показывает сам поток который находится по IP указанному в настройках. Но сама она его не транслирует ни как. Следовательно скажем указав в окте 192.168.0.10 ip камеры и имея белый IP с проброшенными портами (скажем 5000 для окты и 4999 для stream потока) из вне мы не увидим поток. Надо в настройках окты указывать наш внешний IP. Но тут засада великая - очень не великое количество роутеров из коробки умеют loopback. И получится так что с такой настройкой не удастся смотреть камеру находясь внутри локальной сети. Или скажем подключившись по VPN/Hamachi. Я бы очень был бы рад если бы разработчики окты добавили служебное слово %IP% и %LOCALIP% (при чем иметь возможность устанавливать эти переменные глобально как для всех пользователей, так и только для одного). Я пытался как-то выкрутится всякими дополнительными скриптами по верх окты, но во первых не на всех браузерах по итогу это работает, а во вторых при каждом обновлении приходится все это переделывать. По итогу бросил и пользуюсь дармовым VPN сервером в который завернул окту, а правилами в Microtik все обращения к VPN ip-адресу из локальной сети перенаправляю на локальный адрес (т.е. у меня одна ссылка в хроме на панеле и на всех устройствах она работает так как надо, а в локальной сети даже трафик не выходит за пределы lan интерфейса).

Засим откланиваюсь. Всем спасибо за внимание.

Источники картинок:

1. http://best-chart.ru/android-os-pad-mid-eken-proshivki-dorabotki-soft/sxema-podklyucheniya-modulya-kamery-plansheta-k-usb2-0.html 2. http://cxem.net/comp/comp70.php 3. http://tutlay.ru/article/articles-electronics/68-kak-podklyuchit-veb-kameru-ot-noutbuka-v-usb.html

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

56
Комментарии к статье