Страница 1 из 1

Управление камерой

Добавлено: 26 ноя 2015, 09:52
milo
Здравствуйте! С помощью EMC я управляю моторизированным штативом для видеокамеры. Возникла потребность програмно управлять параметрами объектива . Управление осуществляется по последовательному протоколу LANC.Протокол двусторонний последовательный.В нете нашёл следующую информацию.
Поток данных составляет 8 байт, далее пауза 5 миллисекунд. Затем еще ​​8 байт и новая пауза и так далее. Чтобы отправить команду на камеру команда должна быть синхронизирована с сигналом LANC от камеры. Камера слушает первые 4 байта и передает информацию о состоянии в последние 4 байта. Но только первые два байта нужны для управления видеокамерой. Остальные 2 могут быть проигнорированы. Возможно ли средствами EMC осуществить управление камерой? Через lpt порт.

Re: Управление камерой

Добавлено: 26 ноя 2015, 10:16
Nick
Надо написать компонент. Все в принципе просто.

Надо только уточнить, по протоколу.

Напиши примерную последовательность чего надо отправлять.

Я правильно понимаю, что надо отправлять 8 байт менее чем за 5миллисекунд, а потом 5миллисекунд слушать, что происходит на тех же пинах?
ЗЫ у lpt все пины жестко направленные - или in или out.

Re: Управление камерой

Добавлено: 26 ноя 2015, 10:22
milo
Вот из картинок какая то инфа.

Re: Управление камерой

Добавлено: 26 ноя 2015, 10:27
milo
http://www.boehmel.de/lanc.htm Здесь описание протокола.

Re: Управление камерой

Добавлено: 26 ноя 2015, 10:28
selenur
Загуглил, и вот что нашел:
видео реализации на ардуине
https://www.youtube.com/watch?v=mwNAoGslrew
пример кода для ардуины: http://robocraft.ru/blog/3090.html который можно взять за основу, для работы через LPT

Re: Управление камерой

Добавлено: 26 ноя 2015, 10:33
milo
А однонаправленность пинов лпт порта можно решить по предлагаемой схеме?

Re: Управление камерой

Добавлено: 26 ноя 2015, 10:35
Nick
Наверное да.
Но ИМХО лучше взять ардуинку.

Re: Управление камерой

Добавлено: 26 ноя 2015, 10:40
Сергей Саныч
Вообще, протокол довольно жесткий по времени. Реализовать лучше через COM-порт, добавив адаптер, согласующий уровни и обеспечивающий двунаправленный обмен по одному проводу.
Кроме того, скорее всего потребуется драйвер real-time для COM-порта.

Re: Управление камерой

Добавлено: 26 ноя 2015, 10:41
milo
selenur писал(а): пример кода для ардуины: http://robocraft.ru/blog/3090.html который можно взять за основу, для работы через LPT
В программировании не силён к сожалению...

Re: Управление камерой

Добавлено: 26 ноя 2015, 10:49
Сергей Саныч
milo писал(а):А однонаправленность пинов лпт порта можно решить по предлагаемой схеме?
Можно, почему нет? Но придется писать компонент, эмулирующий RS-232. Можно и на hal попробовать раскрутить. Но базовая частота должна быть кратна 9600 Гц, а конкретно 28800 или 38400.

Re: Управление камерой

Добавлено: 26 ноя 2015, 11:18
milo
Сергей Саныч писал(а): Можно и на hal попробовать раскрутить. Но базовая частота должна быть кратна 9600 Гц, а конкретно 28800 или 38400.
Если пробовать через hal, то как?

Re: Управление камерой

Добавлено: 26 ноя 2015, 11:25
Nick
Через чистый хал может и можно, но будет очень сложно!
Лучше взять arduino - и все будет очень просто или писать отдельный компонент на Си.

Re: Управление камерой

Добавлено: 26 ноя 2015, 11:25
Сергей Саныч
milo писал(а):Если пробовать через hal, то как?
Прикинул - довольно заморочно. Проще написать специальный компонент.
На Ардуино тоже, конечно, можно, но вопрос стыковки с LCNC остается. Правда, снимается требование реалтайма.

Re: Управление камерой

Добавлено: 26 ноя 2015, 11:33
milo
Спасибо, попробую познакомиться с ардуиной.

Re: Управление камерой

Добавлено: 26 ноя 2015, 11:36
Nick
Сергей Саныч писал(а):На Ардуино тоже, конечно, можно, но вопрос стыковки с LCNC остается. Правда, снимается требование реалтайма.
отдельный компонент, который будет слать в ардуинку нужное значение. Управление или через M100 или через M68.

Re: Управление камерой

Добавлено: 26 ноя 2015, 13:12
Serg
Сергей Саныч писал(а):Прикинул - довольно заморочно. Проще написать специальный компонент.
На Ардуино тоже, конечно, можно, но вопрос стыковки с LCNC остается. Правда, снимается требование реалтайма.
Не очень-то и сложно должно получится... Один компонент работает в base-thread и дергает пинами LPT. Другой в servo-thread - обменивается с ним байтами через U32.

Re: Управление камерой

Добавлено: 26 ноя 2015, 13:22
Сергей Саныч
UAVpilot писал(а):Не очень-то и сложно должно получится...
Если компоненты писать - да. А на чистом hal - громоздко выходит, особенно прием.
Кстати, не очевидно, что прием от камеры вообще нужен, тогда проще всё.

Re: Управление камерой

Добавлено: 27 ноя 2015, 20:10
milo
Сергей Саныч писал(а): Кстати, не очевидно, что прием от камеры вообще нужен, тогда проще всё.
Судя по присутствию пачек импульсов на входе управления камерой ,слушать всё же надо.
Заказал ардуино, буду разбираться.