Форум » » Конгресс-система Bosch DCN » Ответить

Конгресс-система Bosch DCN

mexin: Кто-нибудь встречал модуль или протокол управления?

Ответов - 111, стр: 1 2 3 4 5 6 All

Игорь K.: Модуль управления для Вosch DCN, как вполне работоспосрбный пример есть в файловом архиве www.Crestron.eu

mexin: К сожалению, доступа туда не имею

mexin: Нашел я демку, но, такое ощущение, что там не все


nogai: Woody_MC пишет: могу дать для теста ограниченную версию (на 5 пультов) Вы имеет виду аналоговую DCN или NG? у меня на работе тоже такая имеется, сейчас использую родной софт для управления, но с удовольствием потестил бы вашу разработку

nogai: Woody_MC пишет: работает с блоками DCN-CCU и DCN-CCUB при активированной лицензии LBB 4187/00 (Open Interface) \ понятно значит у вас под новую... , такая тоже есть.. и лицензии тоже. А на каком у вас из портов работает?? не на первом разве??? и зачем переключать ?? скорости меняете?, хотя там по моему нету такого, и еще нюанс, через 2-ой COM я управляю коммутатором. а насчет аналоговой, это я по привычке.. старая дисиэнка проста и доступна, никаких лицензий и прочего.., давно ее вскрыл.. вот и ассоциируеться ... , а новая да. вся какая то.. запаренная.

Игорь K.: nogai, Опишите, какими функциями кроме включения и выключения пультов DCN нужно управлять? Выложу пример модуля и программы + подробное описание подготовки DCN-CCU.

nogai: Игорь K. пишет: Опишите, какими функциями кроме включения и выключения пультов DCN нужно управлять? Добрый день. Хорошо бы, управлять коммутатором (allegiant 8100) через DCN.( на нем камеры( autodome g3) висят и по ID пульта скачут по позициям, но иногда не попадают - приходиться корректировать) Еще бы каналами синхрона управлять, у меня пара блоков.. Выше была описана функция обучения пультов, наверно интересная вещь, приходиться часто разбирать, собирать и менять пульты. Ну вот и все наверно... А что значит подготовки??

Игорь K.: Подготовка - вскрытие крышки, установка DIP переключателей для скорости, режима работы и выбора порта.

nogai: Вариант управления и коммутатором и DCN по отдельности с AV2 это наверно правильно, только вот у меня 1 свободный COM остался , а докупить плату расширения .. боюсь получиться но очень не скоро. Дискуссионная система в единстве с камерами работает, ибо все выступления записываются. Скажите , не сталкивались ли с проблеммой подрывов на Allegiant-e при переключении камер?? и как с ними бороться, думал о синхронизаторе каком нибудь.

Игорь K.: Управлять коммутатором можно, протокол известен. Лучше оставить систему DCN-CCU + Allegiant в шатном включении. Проблема подрывов при коммутации - в простоте Allegiant, его назначение - выдавать картинку не для прямого ТВ вещания, а для переводчиков и профессиональных видеорежиссеров, операторов, для системы видеонаблюдения. Для качественной картинки, согласен, нужен профессиональный коммутатор, другие камеры и генератор синхросмеси. Кстати, могу уступить карту C2COM-3 за 5000 руб.

nogai: Игорь K. пишет: могу уступить карту C2COM-3 за 5000 руб Очень заманчивое предлоджение, если учесть сколько она стоит .. но увы, работаю в госструктуре.., здесь что бы чтонибудь закупить..... ну сами понимаете Woody_MC пишет: есть ДИП-СВИЧ переключение синхронизации (внутренняя и по питанию), а точно на камерах??, на камерах есть переключатели, но они отвечают только за протокол связи, переключение синхры через меню камеры пробовал -результат тот же - подрыв. В хозяйстве имеется видеомикшер Datavideo , вот думаю его как нибудь использовать, но пока не представляю как.

Игорь K.: nogai, обещанный пример управления Bosch DCN + Руководство по вводу лицензии, подготовки CCU к подключению и полный официальный мануал по системе. В программе два блока - прямое управление микрофонами и разбор ответов - увидите команды в чистом виде. Второй блок - сборка из старого модуля DCN и расширений для управления камерами. Также внутри найдете команды управления коммутатором Alegiant. Все модули и команды многократно проверены на железе. Все в порядке. Bosch DCN CCU Driver P.S. Не нужно пытаться передергивать DIP переключатели камер для устранения подрывов, проблема не в них, а в конструкции коммутатора. Решение только в замене камер и коммутатора.

nogai: Игорь K. пишет: обещанный пример управления Bosch DCN Огромное спасибо!!!!! буду пробовать P.S.я что нибудь должен???

Игорь K.: nogai, не за что! Это пример, не решение задачи.

Игорь K.: Спасибо за напоминание, модуль переложу на новый хостинг. Вам какой подать, для CCU или CCU2??

netvideo: Для CCU , пожалуйста.

Игорь K.: Пример управления и мониторинга Bosch-DCN (первого поколения) http://crestron-consulting.com/sw/dcn_primer.zip

netvideo: спасибо!

Alexandr: а для второго поколения есть модуль какой рабочий? (в общем нужно результаты голосования вытащить на панель, но с готовым модулем проще будет, не нужно TCP часть писать)

sky_adv: Доброго всем дня. не могли бы вы еще раз выложить примеры, ссылки к сожалению не работают. или мне на почту скинуть f2all@mail.ru. заранее благодарен.

Игорь K.: Пардон, ссылку подправил: Bosch DCN (первого поколения)http://crestron-consulting.com/sw/dcn_primer.zip

Игорь K.: Пардон, ссылку подправил: Bosch DCN (первого поколения)http://crestron-consulting.com/sw/dcn_primer.zip

Alexandr: а для ccu2 (который ip) пожалуйста тоже ссылочку :)

vtsay: Игорь, добрый день. Можете выслать пример для CCU2?

Игорь K.: Пример, который можно использовать для понимания принципа установления связи и управления. Bosch DCN CCU2

vtsay: Игорь, приветствую. Ранее вы выкладывали пример управления и мониторинга Bosch DCN-CCU первого поколения. Модуль с сайта Crestron для DCN-CCU2, можно использовать только, как вы правильно сказали, для знакомства с принципами управления. Данный модуль работает только с пультами делегатов. Для отслеживания статуса пульта (вкл/выкл) можно ловить строки, которые валятся в переменную from_device$. Строка вида \x05\x0E\x00\x43\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0E\x18\x02 говорит, что включен пульт с ID=536. Строка вида \x05\x0F\x00\x43\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0F\x18\x02 говорит, что выключен пульт с ID=536. Но это мало о чём говорит. Существуют списки SPK, RTS, NBK. С пультами председателя модуль не работает. Голова кругом идёт. Игорь, есть у вас модуль для CCU2, похожий на dcn_primer?

vtsay: Игорь K. Добрый день. Есть пример обработки фидбеков от пультов председателя для DCN-CCU2?

vtsay: Кто-нибудь поможет в обработке фидбеков от пультов председателя? С простыми пультами разобрался. Используется модуль с сайта crestron.

gosha: А в чем проблема-то? Вставить свой код в модуль или что?

Igor: vtsay, действительно, не совсем понятно, что вызывает затруднения. Если Вы настолько разобрались с протоколом, что способны выделять из обратной связи DCN номер микрофонной станции делегата и ее состояние, проанализируйте состав сигналов об изменении состояния микрофонной станции председателя и напишите соответствующую обработку.

Игорь K.: Альтерантивы методике, предложенной Igor выше, я не знаю. Кадры решают почти все, но иногда нужно смотреть в руководства интегрируемого оборудования. Почти всегда это оборудование перед тем, как оно заработает с Crestron необходимо настроить. Например, Bosch CCU2, управление микрофонами, взято из старой рабочей программы: Включение микрофона председателя: \x1B\x24\x0D\x03\x05\x00\x22\x00\x01\x00\x01\x87 Включение микрофона участника № 1: \x1B\x24\x0D\x03\x04\x00\x30\x00\x02\x00\x7A Видны две большие разницы (или четыре маленькие). Сигналы от CCU2 Включение микрофона председателя кнопкой: \x05\x01\x00\x43\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x02\x01\x00\x03\x00 Включение микрофона участника №1 кнопкой: \x05\x0E\x00\x43\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0E\x00\x03\x02

olegdax2: Добрый день. Подскажите, пожалуйста, по Bosch CCU2. Управление CCU2 по IP, соединение устанавливается, телеграммы от Bosch при включении/выключении микрофонов приходят (описанные сообщением выше), а вот включить/выключить их с Crestron (описанными выше командами) не удается. Нужны специальные настройки Bosch CCU2 или команда типа Start_Microphone_Management для того, чтобы Bosch начал слушать Crestron?

Igor: olegdax2 ЕМНИП, для начала работы с Crestron действительно нужно использовать Start_Microphone_Management; я активировал ее коротким импульсом через 10-15 секунд после запуска программы. Правда, взаимодействие Bosch и Crestron на том объекте осуществлялось посредством RS232.

olegdax2: а команды для Ethernet и RS232 способов управления разные? в dcn_primer телеграммы от микрофонов отличаются от того, что приходит на самом деле. Или это зависит от поколения устройства / прошивки? Сейчас команды приходят такие: \x05\x0E\x00\x43\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0E\x00\x03\x02 Какого формата должны быть команды на включение/выключение в таком случае?

gosha: Все равно не понимаю. Мануал на Open Interface есть на сайте, насколько подробный - не знаю, под руками нет DCN. Проблема модуль реализовать?

Igor: olegdax2 пишет:... телеграммы от микрофонов отличаются от того, что приходит на самом деле. Или это зависит от поколения устройства / прошивки? На мой взгляд, вполне возможно. Сам полтора дня сидел над расчетом контрольной суммы - в документации одно, по факту устройство потребляет несколько другое. К счастью, изготовитель заложил подсказку в свое ПО. Если у Вас есть модули, внимательно читайте и пробуйте. Можно обратиться в Bosch за уточнениями. Правда, со мной они в свое время общаться не возжелали; может, Вам повезет. gosha, а по существу обсуждемого вопроса что-то можете сказать?

olegdax2: Управляю Bosch CCU2 по Ethernet. Вот чего удалось достичь: команда от Bosch о том, что микрофон (номер XX) включен \x05\x0E\x00\x43\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0E\x00\xХХ\x02 команда от Bosch о том, что микрофон (номер XX) выключен \x05\x0F\x00\x43\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0F\x00\xХХ\x02 команда от Bosch о том, что микрофон председателя включен \x05\x01\x00\x43\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x01\x02\x01\x00\x03\x00\x05\x02\x00\x43\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x01\x00 команда от Bosch о том, что микрофон председателя выключен \x05\x01\x00\x43\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x01\x02\x02\x00\x03\x00\x05\x02\x00\x43\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00 команда для включения микрофона (номер XX) с Crestron \x03\x30\x00\x43\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\xХХ\x02 команда для выключения микрофона (номер XX) с Crestron \x03\x30\x00\x43\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\xХХ\x02 Мне необходимы команды для включения/выключения микрофона председателя с Crestron. Может кто-нибудь помочь? Может вы, gosha?

gosha: А можно увидеть то же самое, но в виде .pcap файла?

olegdax2: нет, у меня есть только TCP_Client и Serial_IO в Simpl Windows

gosha: Воткнуться хабиком/зазеркалировать порт на коммутаторе, подключить ноут с wireshark - не? Траблшутить TCP/IP с Крестрона, а не сниффером - неправильно

olegdax2: а смысл смотреть на "переговоры" Bosch и Crestron? Что приходит от Bosch при вкл-выкл микрофона оператора я и так вижу, а вот чем его включить-выключить в логах не увидишь. Это надо из мануала выдернуть, а я не понимаю как. Или у кого-то, может, уже было реализовано..

gosha: Вот я и хочу посмотреть, насколько то, что выдает/принимает Bosch, соответствует мануалу. Ибо по мануалу вроде как никаких спецдействий с chairman mic не надо, обычным порядком...

vtsay: Всем привет. Тоже стоит задача по обработке ответов от пультов председателя. В системе 2 пульта председателя. Как получить список активных пультов председателя? olegdax2 приводил ответы от контроллера при включении и выключении пульта председателя. Если значение 21 байта \x01\, пульт включён. Если значение 21 байта \x02, то пульт выключен. Если включены оба пульта председателя, то при выключении одного из пультов непонятно сколько пультов председателя активно. Для одного пульта понятно как. Отслеживаешь значение \x02 и берешь активный пульт из списка пультов делегатов. А если пультов председателя 2 и больше, то всё сложнее. В ответной посылке от бош при вкл/выкл нет информации о количестве активных пультов председателя. Активный пульт у меня завязан на наведение камеры, т. е нужно отслеживать последний активный пульт. С пультами делегатов просто. Смотришь значение переменной num_in_speaker_list - количество активных пультов. Достаёшь из массива последнее ненулевое значение. Вот тебе и номер последнего активного пульта. А у пульта председателя есть ещё режим приоритета. Там ответная посылка ещё в 2 раза больше по размеру.

gosha: vtsay , ну может хоть вы .pcap сделаете? А то диалог слепого с глухим получается...

vtsay: Возникла проблема. Пульты DCN-CON. Для удалённого управления и мониторинга пользуюсь программой CCU_DDTK.exe. При вводе команды mm_c_set_micro_on_off указывал номер пульта председателя. Как положено пульт добавлялся в список NBK list. В список пультов делегатов SPK list, соответственно, эти пульты не попадали, как положено. Для выключения пультов председателя использовал команду mm_c_nbk_remove. Текущее состояние списка показывает команда mm_c_nbk_get. Отклик от контроллера ловлю SIMPL дебаггером. Не знаю, что произошло, но теперь, при включении пульта председателя он всегда попадает в список пультов делегатов SPK list. Соответственно, в список пультов председателя не попадает. Он всегда пустой. Как такое могло произойти? Пульты председателя ведут себя как обычные пульты делегатов. Что делать?

vtsay: Разобрался наконец-то с CCU2. Текущая задача решена. Обработка по активации пультов делегатов и председателей работает. За основу взят стандартный крестроновский модуль для CCU2. В прошлом посте писал, что пульты председателя стали попадать в список пультов делегатов. Оказалось всё просто. Список NBK list содержит все доступные в системе пульты председателя. Независимо от того включен ли пульт или выключен, в списке всегда то количество пультов, что и фактическое. Я же когда разбирался с работой различных команд, использовал команду mm_c_nbk_remove для (как я полагал) для выключения пультов председателя. На самом деле эта команда удаляет из списка NBK list пульт председателя. Ниже отклик на команду mm_c_nbk_get. \x04\x2B\x00\x43\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2B\x00\x00\x00\x02\x00\x01\x02\x01\x00\x01\x02\x02\x01\x00\x00 Видно, что в системе 2 пульта председателя с ID 513, 514 (байты 23, 24 и 28, 29). Байт 27 указывает на текущее состояние пульта 513, а байт 32 на 514. Пульт 513 активен. \x04\x2B\x00\x43\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2B\x00\x00\x00\x02\x00\x01\x02\x01\x00\x00\x02\x02\x01\x00\x00. Здесь пульт 513 выключен. Если значения байтов 27 и 32 ненулевые, то включенных пультов председателя нет и в качестве активного пульта делегата можно брать последний в списке SPK list. Немного сложнее ситуация, когда оба байта 27 и 32 имеют значение 1. Здесь оба пульта председателя включены, а нам нужно знать, какой пульт включен в последнюю очередь. Тут просто нужно запоминать предыдущее состояние байтов 27 и 32. Если конкатенация байтов перед включением пульта будет "\x01\x00", то значит включается пульт 514. Если "\x00\x01", то включается пульт 514. При нажатии на пультах кнопок приоритета отклик такой же.

vtsay: Да, забыл одну деталь. Чтобы в SIMPL дебаггере увидеть посылку вида \x04\x2B\x00\x43\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2B\x00\x00\x00\x02\x00\x01\x02\x01\x00\x01\x02\x02\x01\x00\x00, нужно из SIMPL+ модуля IP Microphone Management послать на контроллер CCU2 команду mm_c_nbk_get, если sTemp = csMM_C_SET_MICRO_ON_OFF. Я вызывал из события CHANGE from_processor$.

vtsay: Заметил неприятность. Если выключить контроллер DCN-CC2 и снова включить, то от контроллера никаких откликов нет. В дебаггере нет никакой информации от контроллера. После рестарта AV2 всё приходит в норму. Что это может быть? На Start_Microphone_Management висит 1 постоянно.

olegdax2: Надо чтобы не висела 1 на start_MM, а посылался импульс (rising edge) после перезагрузки Bosch.

vtsay: Пока непонятно как это реализовать на автомате. Навскидку, только осциллятор приходит в голову. Но в этом случае периодически будут посылаться импульсы включения мониторинга.

marin_n: Все просто: при старте делаешь из 1 импульс через one shot, а затем даешь небольшую задержку через delay и отправляешь импульс на вход модуля

Igor: marin_n, при старте чего?

vtsay: Нужно как-то отследить, что DCN включен и подать импульс включения мониторинга.

Igor: vtsay, именно.

ph1l74: Игорь K. пишет: Включение микрофона председателя: \x1B\x24\x0D\x03\x05\x00\x22\x00\x01\x00\x01\x87 Включение микрофона участника № 1: \x1B\x24\x0D\x03\x04\x00\x30\x00\x02\x00\x7A Какие-то короткие команды у Вас получаются... В моем случае с DCN CCU2 они не работают. А где вы нашли HEX-команды? В руководстве по Открытому Интерфейсу Управления есть только непонятные mm_ и dcnc_

ph1l74: Игорь K. пишет: Включение микрофона председателя: \x1B\x24\x0D\x03\x05\x00\x22\x00\x01\x00\x01\x87 Включение микрофона участника № 1: \x1B\x24\x0D\x03\x04\x00\x30\x00\x02\x00\x7A Какие-то короткие команды у Вас получаются... В моем случае с DCN CCU2 они не работают. А где вы нашли HEX-команды? В руководстве по Открытому Интерфейсу Управления есть только непонятные mm_ и dcnc_

Игорь K.: Приведенные команды действительны для ранних моделей CCU, которые с rs232.

ph1l74: Игорь K. Понятно, спасибо! Но проблема вопрос остается открытым: что отправлять на CCU2, чтобы включить и выключить пульт председателя? И еще эта проблема с постоянным получением ответа от CCU2. Попробовал я сделать так, как пишет marin_n: Все просто: при старте делаешь из 1 импульс через one shot, а затем даешь небольшую задержку через delay и отправляешь импульс на вход модуля То есть я подаю единицу на триггер-вход элемента One-Shot. С нее посылаю сигнал длительностью (кстати, какую лучше?) 600 секунд, и отправляю его на элемент Delay (3 секунды). Все так? Если да, то у меня данная схема не работает. После того, как One-shot отрабатывает свои 600 секунд, больше сигнал Start_Microphone_Managing не работает. Спасибо за советы!

Игорь K.: 600 секунд это перебор. Ставьте 0.1 сек.

ph1l74: Игорь K. Спасибо, так намного лучше. А что с председателем посоветуете сделать? Все-таки хотелось бы как-то включать и выключать его с панели. Заранее спасибо,

ph1l74: BOSCH DCN CCU2 Команда включения микрофона председателя под номером 513: \x03\x22\x00\x43\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x01\x02\x01 К сожалению, иного пути, кроме как подключиться напрямую к CCU2 по Ethernet, отправить через CCU_DDTK команду включения и выключения председательского пульта и просмотреть через Wireshark десяток посылок, -- не нашлось.

ph1l74: Появился еще вопрос: совместим ли модуль управления, представленный на сайте applicationmarket.crestron.com с контроллерами третьей серии?

Igor: ph1l74, вполне сносно работало с CP3. Ничто не мешает открыть модуль и перекомпилировать его.

ph1l74: Igor Игорь спасибо, небольшие трудности возникли. Уже все в порядке.

Вячеслав: Подскажите, какова ситуация с пультами переводчиков в ccu2? Протокол обмена у них аналогичен пультам делегатов или опять специфичный как у пультов председателя? (нужно будет лишь статус активен или не активен)

Игорь K.: Вячеслав, зачем вам управление пультами переводчиков?

Вячеслав: Мне нужен пока только статус активен или нет.

ph1l74: Добрый день, Появился интересный вопрос: а как считать статус того, что микрофон заменен (режим Override)? В протоколе есть команда MM_C_SPK_REPLACE_ON_PC, но что-то она не ловится. Пакет получился следующим для второго микрофона (ID 512): \x05,\x11,\x00,\x43,\x14,\x00,\x00,\x00,\x00,\x00,\x00,\x00,\x00,\x00,\x00,\x00,\x11,\x00,\x02,\x00 Дело в том, что статус микрофона при его замещении не меняется, то есть он отображается включенным даже если был замещен.

woody_mc: Неужели так и не победили управление председателем (председателями - их может быть в CCU2 больше чем один)?

ph1l74: woody_mc пишет: Неужели так и не победили управление председателем (председателями - их может быть в CCU2 больше чем один)? Победили, решение просто тут не опубликовали. Может, позже расскажу.

ph1l74: Если разобрать *.usp-файл модуля управления Bosh, то можно заметить, как формируется посылка: String_Function DCN_Send(string Send_Cmd, string Send_HiByte, string Send_Parms) { string s_field[255]; integer s_chk, s_idx, s_len; s_len = len(Send_Parms) + 18; s_field = csMDSC_REMOTEPROCEDURE_REQ + Send_Cmd + Send_HiByte + "\x43" + chr(low(s_len)) + chr(high(s_len)) + "\x00\x00" + csRESERVED1 + csRESERVED2 + Send_Cmd + Send_HiByte; s_field = s_field + Send_Parms; return(s_field); } Нас интересует в частности вот эта сумма: s_field = csMDSC_REMOTEPROCEDURE_REQ + Send_Cmd + Send_HiByte + "\x43" + chr(low(s_len)) + chr(high(s_len)) + "\x00\x00" + csRESERVED1 + csRESERVED2 + Send_Cmd + Send_HiByte; А все переменные указаны в заголовке файла: #SYMBOL_NAME "Bosch DCN IP Microphone Management v1.0" // #HINT "" #DEFINE_CONSTANT csRESERVED1 "\x00\x00\x00\x00" #DEFINE_CONSTANT csRESERVED2 "\x00\x00\x00\x00" #DEFINE_CONSTANT csEND "\x0D\x0A\x0A" #DEFINE_CONSTANT csMDSC_REMOTEPROCEDURE_REQ "\x03" #DEFINE_CONSTANT csMDSC_REMOTEPROCEDURE_RSP "\x04" #DEFINE_CONSTANT csMDSC_NOTIFY "\x05" //Application Headers #DEFINE_CONSTANT csDCNC_APP_AT "\x09" #DEFINE_CONSTANT csDCNC_APP_SI "\x11" #DEFINE_CONSTANT csDCNC_APP_SC "\x10" #DEFINE_CONSTANT csDCNC_APP_MM "\x00" //Microphone Management Application Commands #DEFINE_CONSTANT csMM_C_START_MM "\x1E" #DEFINE_CONSTANT csMM_C_STOP_MM "\x1F" #DEFINE_CONSTANT csMM_C_GET_SETTINGS "\x20" #DEFINE_CONSTANT csMM_C_SET_SETTINGS "\x21" #DEFINE_CONSTANT csMM_C_SET_MIC_OPER_MODE "\x34" #DEFINE_CONSTANT csMM_C_SET_ACTIVE_MICS "\x35" //Speaker List Function Commands #DEFINE_CONSTANT csMM_C_SET_MICRO_ON_OFF "\x22" #DEFINE_CONSTANT csMM_C_SPK_APPEND "\x30" #DEFINE_CONSTANT csMM_C_SPK_REMOVE "\x31" #DEFINE_CONSTANT csMM_C_SPK_CLEAR "\x2F" #DEFINE_CONSTANT csMM_C_SPK_GET "\x2E" //Request to Speak List Function Commands #DEFINE_CONSTANT csMM_C_SHIFT "\x23" #DEFINE_CONSTANT csMM_C_RTS_APPEND "\x3E" #DEFINE_CONSTANT csMM_C_RTS_REMOVE "\x27" #DEFINE_CONSTANT csMM_C_RTS_CLEAR "\x26" #DEFINE_CONSTANT csMM_C_RTS_GET "\x25" //Operation Modes #DEFINE_CONSTANT csMM_C_OPERATOR_WITH_REQ_LIST "\x00\x00" #DEFINE_CONSTANT csMM_C_DELEGATE_WITH_REQ_LIST "\x01\x00" #DEFINE_CONSTANT csMM_C_DELEGATE_WITH_OVERRIDE "\x02\x00" #DEFINE_CONSTANT csMM_C_DELEGATE_WITH_VOICE "\x03\x00" #DEFINE_CONSTANT csMM_C_OPERATOR_WITH_COMMENT_LIST "\x04\x00" //Notify Events #DEFINE_CONSTANT csMM_C_SET_MIC_OPER_MODE_ON_PC "\x12" #DEFINE_CONSTANT csMM_C_SET_ACTIVE_MICS_ON_PC "\x13" #DEFINE_CONSTANT csMM_C_SET_SETTINGS_ON_PC "\x15" #DEFINE_CONSTANT csMM_C_MICRO_ON_OFF "\x01" #DEFINE_CONSTANT csMM_C_SPK_SET_ON_PC "\x0C" #DEFINE_CONSTANT csMM_C_SPK_CLEAR_ON_PC "\x0D" #DEFINE_CONSTANT csMM_C_SPK_APPEND_ON_PC "\x0E" #DEFINE_CONSTANT csMM_C_SPK_REMOVE_ON_PC "\x0F" #DEFINE_CONSTANT csMM_C_SPK_INSERT_ON_PC "\x10" #DEFINE_CONSTANT csMM_C_SPK_REPLACE_ON_PC "\x11" #DEFINE_CONSTANT csMM_C_RTS_SET_ON_PC "\x04" #DEFINE_CONSTANT csMM_C_RTS_CLEAR_ON_PC "\x05" #DEFINE_CONSTANT csMM_C_RTS_REMOVE_ON_PC "\x06" #DEFINE_CONSTANT csMM_C_RTS_FIRST_ON_PC "\x14" #DEFINE_CONSTANT csMM_C_RTS_INSERT_ON_PC "\x07" #DEFINE_CONSTANT csMM_C_RTS_REPLACE_ON_PC "\x08" //Other constants #DEFINE_CONSTANT ciNUMSTATIONS 200 #DEFINE_CONSTANT ciSPEAKERSIZE 4 #DEFINE_CONSTANT ciREQUESTSIZE 10 #DEFINE_CONSTANT ciDELEGATE 2 #DEFINE_CONSTANT ciMUTE 2 #DEFINE_CONSTANT ciUNIT 1 Команда включения микрофона председателя: \x03\x22\x00\x43\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x01\x02\x01 Команда выключения микрофона председателя: \x03\x22\x00\x43\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x01\x02\x00 Статус включения микрофона председателя: \x05\x01\x00\x43\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x01\x02\x01\x00\x03\x00 Статус выключения микрофона председателя: \x05\x01\x00\x43\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x01\x02\x02\x00\x03\x00 Понятное дело, что готовыми командами удобно пользоваться, но лучше в свободное время почитать и разобраться, как же все это работает. К сожалению, это самое свободное время у меня появилось только после выполнения проекта.

Вячеслав: Подскажите, кто разобрался. Есть ли единый список пультов председателей и делегатов или косвенный инструмент его получения в порядке активации пультов? Уж очень хотелось допилить еще наведение камер малой кровью не заморачиваясь созданием объединенного собственного списка.

ph1l74: Вячеслав , А какой алгоритм автонаведения Вы хотите реализовать? Я понимаю, что речь идет о камерах. Но есть разные принципы работы. По поводу списка. vtsay выше пишет, что вроде как разобрался с получением SPK-List'a. У меня была подобная проблема на AMX'е, но там список микрофонов я составлял сам. В зависимости от полученного пакета, понимал, какой микрофон включен. Дальше в стэк записывался номер микрофона, вызывался нужный пресет на камере. Когда же микрофон выключался, просто исключал его номер из стэка. И вызывал пресет пресет, который шел раньше. На SIMPL+ не писал.

Вячеслав: Алгоритм такой: Если активирован микрофон N: 1.Выбрать камеру (аналоговый выход) номер которой сохранен для данного микрофона N 2.Загрузить preset N (в режиме Npreset=Nmic) или пресет сохраненный для данного микрофона (в режиме manualPreset). Второй вариант удобен при использовании встроенных пресетов камер, так как они как правило ограничены малым числом (аналоговый выход). Если микрофон N выключен: 1.Проверяем был ли он включен последним. Если да то выбираем камеру и пресет для предпоследнего все еще активного микрофона. Либо просто удаляем микрофон из очереди активных микрофонов с корректировкой последовательности включения у оставшихся. 2.Если активных микрофонов не осталось, выбираем камеру общего плана зала и пресет общего плана (оба значения использую как параметры модуля) Дополнительно в режиме OPEN при достижении максимально количества одновременно активных микрофонов и присутствии микрофонов находящихся в очереди ожидания, при выключении одного из активных. Чтоб камеру не крутить зря (на предпоследний активный) перед включением нового после выключения старого проверяем это условие. И наводим сразу на вновь включенный (самый старый "мигающий" из списка очереди RST) //поправил Модуль S+ совмещенный с управлением наведением на указанной логике я уже написал. Очередь микрофонов делегатов и председателей в этот раз не стал делать, придумал более простое решение с параметром очередности.

Вячеслав: Сегодня, надеюсь закончил программировать модуль для CCU2. На все про все ушло дней 16 точно. Ничего не занимало еще так много времени. Кому надо, обращайтесь (не за дорого ;) Ссылку не выкладываю, дабы устава не нарушать. Демо версия имеет ограничение по количеству команд и до 6 микрофонов. Но будет хорошим подспорьем для самостоятельного программирования в качестве примера исполнения да и команды подсмотреть можно. Есть весь "обвес" с интерфейсом для управления и сохранением пресетов. Возможности: 1.Синхронизацию при подключении к CCU2 2.Режим override полноценной с индикацией как на ССU2 3.Режим OPEN (request) полноценной с индикацией как на ССU2 4.Режим PTT полноценной с индикацией как на ССU2 5.Режим VOICE без управления и индикации (т.к. нет fb CCU2) 6.Поддержку пультов председателей в любом количестве и в любой позиции инициализации (+поддержка нажатия кнопки приоритета) 7.Файл справки вызываемый по F1 ....и последнее, но не в последнюю очередь: 8.Автоматическое определение номеров подключенных микрофонов 9.Встроенный алгоритм управления наведением камер P.S. Обладателю радио микрофонных пультов по результатам теста скидка 100%. Принимаются предложения по усовершенствованию, пока ещё я могу читать эту hex "матрицу".

KelorVs: Добрый всем день! Помогите пожалуйста: Не могу понять из этой строки s_field = csMDSC_REMOTEPROCEDURE_REQ + Send_Cmd + Send_HiByte + "\x43" + chr(low(s_len)) + chr(high(s_len)) + "\x00\x00" + csRESERVED1 + csRESERVED2 + Send_Cmd + Send_HiByte; Следующее: Send_Cmd + Send_HiByte + chr(low(s_len)) + chr(high(s_len)). Подскажите как они формируются. И еще не понятно следующее из примера. \x03\x22\x00\x43\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x01\x02\x01 - последние три значения. x01\x02\x01. Я понял что это Send_Parms; А вот как он формируется не понял.

Вячеслав: А когда то я как в матрице читал такие строки налету )) Когда модуль писал Теперь уже вспоминать надо, но насколько я помню \x01\x02\x01 это похоже на включение микрофона (\x01\x02\x01) с номером \x02\x01 (\x01\x02\x01) В нумерации микрофона младший байт следует первым. т.е. \x01\x02 это на самом деле \x02\x01 (он же первый проводной микрофон в системе с десятичным номером 513) У меня для команды включения микрофона формируется так: sParam = chr(low(tmp_num_mic)) + chr(high(tmp_num_mic))+"\x01"; to_bosch = DCN_Send(csMM_C_SET_MICRO_ON_OFF, csDCNC_APP_MM, sParam); описание функции отправки любой команды: String_Function DCN_Send(string Send_Cmd, string Send_HiByte, string Send_Parms) { string s_field1[255],s_field2[255]; integer s_len; s_field1 = csMDSC_REMOTEPROCEDURE_REQ+Send_Cmd+Send_HiByte+"\x43";//csMDSC_REMOTEPROCEDURE_REQ="\x03" s_field2 ="\x00\x00"+reserv+reserv+ Send_Cmd + Send_HiByte+ Send_Parms; //reserv="\x00\x00" s_len = len(s_field1)+len(s_field2)+ 2; s_field1 = s_field1 +chr(low(s_len)) + chr(high(s_len))+ s_field2; return(s_field1); }

KelorVs: Вячеслав Спасибо большое.. попробую собраться с мыслями. И понять что написано. Везет Вам, Вы их хоть читали.

KelorVs: Вячеслав а эта строка chr(low(s_len)) + chr(high(s_len)) что данном случае значит. Исходя из вышеприведенного примера. \x03\x22\x00\x43\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x01\x02\x01 csMDSC_REMOTEPROCEDURE_REQ=\x03 + Send_Cmd = (csMM_C_SET_MICRO_ON_OFF) \x22 + Send_HiByte = ? + "\x43" - с этим понятно + chr(low(s_len)) = ? + chr(high(s_len)) = ? + "\x00\x00" - с этим понятно + csRESERVED1 = \x00\x00\x00\x00 + csRESERVED2 = \x00\x00\x00\x00 + Send_Cmd = (csMM_C_SET_MICRO_ON_OFF) \x22 + Send_HiByte = ? ; s_field - это то что выше. + Send_Parms = \x01\x02\x01 (где \x01\x02 это номер пульта) а \x01 - это включить или \x00 ; - выключить. Вот это я понял вроде. А вот то, что отметил вопросами не могу понять а делать нужно. Хотя бы. чтобы включить выключить и получить состояние пульта. Ведь через Serial I/O я смогу это сделать ?

Игорь K.: KelorVs, что у вас не получается? Опишите пожалуйста попроще, пришлю свой модуль.

Вячеслав: Send_HiByte = csDCNC_APP_MM = \x00 chr(low(s_len)) это chr() -функция из simpl+ которая возвращает символ по его численному значению. В нашем случае это скорее попытка вернуть HEX значение по его десятичному значению low() -функция возвращает младший байт двухбайтного целого числа s_len -переменная вычисленная на предыдущем шаге. Содержит суммарную длину в байтах строк s_field1 и s_field2 В итоге 1. Вычисляем s_len (например длина равна 21 байтам \x00\x15) \x03\x22\x00\x43\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x01\x02\x01 //(0015h=21d) 2. low выделяем младший байт числа 21 (00000000 00010101) 3. chr получаем его шестнадцатеричное представление \x15 и т.п. Если хотите на serial i/o то посчитайте длину команды вручную и прибавьте 2 (2 это длина самого числа кодирующего длину) Запишите по правилу описанному выше. т.е. второй байт всегда \x00. Первый байт длины калькулятором в HEX конвертируете. Если посчитаете количество байт в приведенном вами примере команды получите как раз 21. 2 из которых как раз сама длина \x15\x00 На маркете есть модуль на CCU2 (как оказалось его даже можно использовать для реального управления). По началу мне показался вообще не в тему и использовал его лишь как основу для программирования своего модуля. На днях увидел модуль с маркета с обвесом и понял, что он что то все таки может. )) Если кто то готов поделиться готовым решением безвозмездно соглашайтесь быстрее ) На маркете тоже бесплатно, но реализация своеобразная.

gosha: Модуль на маркете работает через Speakers List, соотв., если я правильно понял, председатели (chairmans) туда не попадают, а MICS_ON_OFF отдельно не выведены - надо вытаскивать самому. Либо я просмотрел способ включения занесения председателей в SPK list...

Вячеслав: Команда включения председательского пульта не отличается от команды включения делегатского пульта. Просто надо использовать команду csMM_C_SET_MICRO_ON_OFF (\x01) , а не csMM_C_SPK_APPEND_ON_PC/csMM_C_SPK_REMOVE_ON_PC (\x0E / \x0F) Другой разговор что в списке делегатов его нет, для этого в Bosch используется отдельный список председателей. Как тут говорили "считайте это чисто немецким решением" )) Они не ищут легких путей интеграторам.

KelorVs: Игорь, Добрый день! Я скачал с маркета модуль боша и не получается заставить его работать. Вот я и подумал что через serial I/O давать две команды. У меня беспроводные микрофоны в количестве 6 штук. в каждом зале и куча радиоприемников. Мне хотелось бы просто включать и выключать заданный микрофон. Ну и получить состояние вкл или выкл. А Вячеслава, за что отдельное спасибо, попросил чтобы помог разобраться со значениями в строке. И вроде как начал понимать немного.

Вячеслав: KelorVs пишет: У меня беспроводные микрофоны в количестве 6 штук. в каждом зале и куча радиоприемников. На этом месте поподробнее )) У Вас радио пульты BOSCH? Что еще за радиоприемники? У радио пультов нумерация отличается от проводных. Так например левая кнопка первого микрофона в системе если он является проводным будет иметь номер \x02\x01, а если это радио пульт то \x3e\x01

Игорь K.: KelorVs, вам нужно изучить как работает модуль в составе программы, а не сам по себе. Но до того, убедитесь, что активирована лицензия тн "Открытого интерфейса". Поищите ту на форуме, кто-то формулировал все условия. Итак, берем тот самый работоспособный, стабильный и очень удобный модуль Bosch DCN с AppMarket. Для меня окончательным и очень простым, успешно тиражируемым и масштабируемым решением по стало дополнение из: 1. Подсистемы старта /останова (останова/старта) управления микрофонами при пропадании связи по сети или сбоев вообще. 2. Подсистемы включения и выключения микрофонов. 3. Подсистемы определения Единственного крайнего микрофона, на который должна быть направлена камера, в тч с отработкой очереди активации, с возвратом на предыдущих выступающих из активных, отработки председательского и его приоритета. Вопросов к исходному модулю нет, отличный опорный материал.

Вячеслав: Вопрос (тому кто вкурил таки модуль с маркета): 1.Работает ли модуль с маркета с беспроводными пультами? 2.Позволяет ли он реализовать режим Override с вытеснением самого первого из активированных делегатов. Да и вообще в каком режиме он "работает" DELEGATE_WITH_OVERRIDE или DELEGATE_WITH_REQ_LIST? 3.Про председательские пульты уже писали. Он может ими управлять, отслеживать нажатие кнопки приоритета, синхронизовать состояние с BOSCH после перезагрзуки Crestron? KelorVs Обработать fb от CCU2 это более сложная задача чем управление вкл/выкл. Есть зависимости от текущего режима, типа микрофона и т.п. В лучшем случае поймаете \x01 и \x0E сразу после нажатия в 17-ом байте Через serial i/o уже не получится включить 3-й микрофон, если в системе установлено ограничение максимально в 2 одновременно говорящих, а вот с пульта это очень даже сработает и с этого места интерфейс крестрона будет не синхронизирован с реальным состоянием CCU2. Правильное решение использовать готовый модуль или решение получится уж слишком топорным. В этом случае лучше вообще не управлять, чем управлять кое как.

KelorVs: Игорь и Вячеслав спасибо за ответы. Вячеслав у меня беспроводная система. Микрофоны подключаются к точке доступа DCN-WAP. Приемники для синхроперевода. Потому как у меня три пульта переводчиков. Лицензии активированы все.

KelorVs: Останавливаюсь на готовом модуле. Только как я понял он на 4 микрофона рассчитан или ошибаюсь. Связка у меня идет так. К CCU-2 подключен INT-TX-04, Точка доступа DCN-WAP, Беспроводные микрофоны к точке доступа.

Игорь K.: KelorVs, да, используйте готовый, с ним все получится.

Dennis41: Добрый день, имеется центральная консоль DCN-CCU2, и Беспроводной дискуссионный пульт DCN-WD-D 17 штук, все работало пару лет нормально, но вот совсем недавно, начинает пропадать сигнал, пульты отключаются, и через время только подхватываются. Есть тут спецы, что может вызывать помехи для плохого сигнала, сам DCN-Wap в прямой видимости микрофонов, самый дальний на расстоянии 10 метров, помех в виде перегородок нет, Wi-Fi-ные точки доступа отключали по всему зданию, это не как не решило проблему, ощущение такое что именно помеха может быть.

Игорь K.: Возможно, где-то запущена базовая станция сотовой (специальной связи), гармоники или субгармоники излучения которой могут попасть в диапазон 2,4ГГц При работе на передачу такие станции излучают приличную мощность, в сотни раз больше, чем точки Wi-Fi, до десятков Ватт. Сталкивался несколько лет назад на объекте около м. Маяковская, тоже работало ОК, о вдруг стало нестабильно. Сравнивали спектроанализатором состояние эфира, с включенной и выключеной Bosch и увидели, что чужие "палки" смешивались со спектром излучения точки Bosch. Решение было одно - изменить диапазон (RF) в настройках DCN-CCU2 (W), где был выбор из четырех поддиапазонов.

Dennis41: Решение было одно - изменить диапазон (RF) в настройках DCN-CCU2 (W), где был выбор из четырех поддиапазонов Игорь день добрый, можно по подробней, что именно изменить надо?Спасибо.

raz1933: Игорь, и другие участники, подскажите по следующей ситуации. У заказчика, помимо прочего, установлен DCN с беспроводными пультами и коммутатор allegiant c камерами. Запланирована замена аналоговых камер bosch на более современный панасоник. Требуется сделать автонаведение на микрофоны. У CCU есть только два ком-порта, эзернета нет. Первый свободен, второй идет на коммутатор. Если подоткнуться компьютером на первый и послать команду start_mic_mngmt (которая скопирована из крестроновского модуля), то ответы отсутствуют. Включение микрофонов без реакции. Второй компорт при подключении к компьютеру при включении микрофонов выдает некоторую информацию - номер пульта, сектор и т.д. Вопрос - как понять, какие лицензии активированы на CCU ? Попытки скачать софт боша и хоть чтото проверить, привели к ошибкам при инсталляции, что якобы неизвестная версия виндовс (используется ноутбук на вин10). Или я не то ставлю? Второй вопрос - я хотел распарсить строчки, адресованные allegiant'у, чтобы использовать их для наведения хотя бы на первый включенный микрофон, так как там есть его номер. И столкнулся с проблемой, что первый компорт на CP3 не видит эти строчки. При этом, ноутбук через переходник ком-порт-усб видит информацию с CCU, если этим же переходником ткнуться в крестрон, то крестрон видит информацию с ноутбука, а если соединить CP3 и CCU - в компорте пустота. Я использовал разные раскладки проводков, так как бывает иногда путаница с Rx/Tx, но тут никакой реакции. Подскажите, в чем может быть дело?

Игорь K.: Попробуйте через сайт Bosch.com введя серийный номер и код.

raz1933: Игорь, Спасибо за ответ. Решил написать им, посмотрю, что ответят. А по второму вопросу есть ли идеи, в чем может быть дело? Почему с компьютером и контроллер и CCU могут общаться, а с друг другом общение не происходит? Нужно ли им обязательно CTS/RTS проводки для установления коннекта?

Игорь K.: Возможно, не хватает именно RTS/CTS. Для работы с Crestron старым CCU был нужен 5-ти проводной кабель.

Вячеслав: Изучать протокол для первого CCU не приходилось, были вменяемые модули. Похоже на маркете сейчас остался модуль как раз для CCU. Там в pdf указано что требуется подключение RTS CTS (7-7 8-8) click here P.S. Интересно, почему с маркета исчез модуль для CCU2 ?? (своеобразный он был конечно но все таки лучше чем ничего)

По: Вячеслав думаю связано с тем что протокол у Боша меняется :). Мы сейчас ушли от "покупки" лицензии открытого интерфейса, но используем свой программный модуль для связи с Бошем. Получается дешевле. ЗЫ Бош потихоньку "убивает" линейку DCN и замещает её Disentisом.

По: Dennis41 Если куплен софт то в нем видно какой сигнал на каждом из пультов. Практика показывает что могут быть проблемы в коммутации точки. Тоесть попробуйте другой оптический кабель. Насчет изменения частот, то все просто...мануал откройте и там сказано как менять частоты.

Chikalov: Вопросы к знатокам по CCU2: 1. Как распределяются ID пультов? Проводные занимают 0х02ХХ и расширение 0х03ХХ... Если подрубаю в слаэйв вторую бошку, то какие диапазоны выдаются микрофонам? 2. Кто знает название функции регулирования громкости на динамиках (крутилка на морде). Мастер вол пробовал, не то(( 3. Какие команды для тестирования микрофонов... перерыл весь интерфейс но так и не нашел((

Игорь K.: Ответы, насколько сам понимаю этот беспредел с Bosch DCN CCU2: 1. ID пультов назначаются автоматически при инициализации системы после сборки и запуска этого процесса через меню CCU2. Не думаю что нужно вникать в принцип распределения ID микрофонов, их привязку можно наблюдать при анализе обмена. 2. Название функции не знаю. Считаю, что не нужно пытаться регулировать и контролировать все. 3. Зачем вам команды тестирования микрофонов? Вы занимаетесь предстартовой подготовкой перед полетом в космос? Если занимаетесь, то сделайте утилиту, поочередно включающую и выключающую микрофоны конгресс-системы и наблюдайте за перемещением индикатора включения и проникающим в микрофоны тестовым сигналом от штатных колонок.

Вячеслав: Chikalov пишет: Как распределяются ID пультов? Проводные занимают 0х02ХХ и расширение 0х03ХХ... 0x02xx - проводной пульт левая кнопка 0x03xx - проводной пульт правая кнопка (режим на один пульт на 2 делегата) 0x3exx - радио пульт левая кнопка 0х3fxx - радио пульт правая кнопка (режим на один пульт на 2 делегата) С slave не приходилось пока сталкиваться, может аналогично, а может и по другому будет, надо ловить статусы там все видно. А что, 245 пультов мало и дело дошло до slave? Chikalov пишет: Кто знает название функции регулирования громкости на динамиках (крутилка на морде). По идее это громкость loudspeaker. Но в API упомянута совместно с master volume Т.е. это команда SI_C_SET_MASTER_VOL Chikalov пишет: Какие команды для тестирования микрофонов... В каком смысле Вы хотели бы их тестировать?

Chikalov: Надо объединить несколько бошек, чтоб по человечески снимать звуковые каналы и нормально управлять этим хозяйством. SI_C_SET_MASTER_VOL работает только микрофонами, но не управляет линейным входом. Есть в боше функция тестирования, которая выдает список ID неисправных/отключенных микрофонов по всем или по выбранным каналам. Основная проблема, что могу узнать сколько проблемных микрофонов, но кто они из 300 - хз...

Вячеслав: Вы спрашивали не про линейный вход ) Для него наверное тоже есть команда, надо поискать в API. Чтоб все причесать, только заново инициализировать, записать порядковые номера на схеме расположения. Потому как если микрофон неисправен, или отключен, то его уж точно не найти включай не включай. Либо методом исключения пойти.

Алексей: Добрый день, Игорь K. Можете помочь. Очень нужен совет специалиста. У нас в зале для проведения видеоконференцсвязи используется блок управления BOSCH DCN-CCU2 вместе с 10 пультами Bosch DCN-DISL. Управление данными устройствами осуществляется через управляющий процессор Crestron MP2E. Изначально была возможность включать/выключать микрофоны средствами Crestron. У двух пультов сменился id и возможность включать/выключать микрофоны средствами Crestron пропала. Из-за этого потребовалось перепрограммировать Crestron. Но в процессе программирования столкнулись с проблемой Bosch dcn-ccu2, управление через tcp/ip. Требуется (видимо средствами open interface) включать/выключать микрофоны (как я понимаю, это добавлять/удалять их из списка SPK), а также получать информацию об их включении/выключении кнопкой на самом пульте делегата (это даёт команда mm_c_mon_on, но при этом пропадает возможность включения микрофонов) Собственно, вопрос в том, где ошибка в рассуждениях, либо как довести схему до финала.

Вячеслав: Я конечно не Игорь, но пару слов сказать по теме могу )) По идее катастрофы не должно было произойти. Если вы запускали DE-Initialize то микрофоны опять бы встали на свои места в порядке нажатия на клавиши пультов после инициализации. Главное надо было активировать их в том же порядке, как они прорисованы в интерфейсе. Нет уникального номера привязанного к железу. Номера порядковые. В порядке того как их проинициализировали после нажатия DE-Initialize в меню центрального модуля. Т.е. не нужно было добавлять пульты взамен вышедших из строя, а выполнить процедуру инициализации заново. 1.Исходника не было что ли? 2.Какой модуль используете, с маркета (Bosch DCN (North America))? 3.Если исходник был, номера микрофонов как то прописывались? Могу предложить свой модуль не за дорого. Отправил подробности в личку.

Алексей: Исходник потеряли ещё до меня((( Работаю с нуля. Модуль использую Bosch DCN (North America). Есть какие-то нарекания на этот модуль?

Вячеслав: Нареканий хммммм Когда я его открыл, то понял что это совсем не то, что я хотел получить от модуля. По сути это какой то невнятный интерактив, а нужны просто кнопки включения/выключения пульта с определенным номером и получения их статусов особенно, если пользователи включают их самостоятельно + выбор режима работы. По большому счету востребованы лишь режимы override - с вытеснением и open_microphon - с постановкой в очередь. Активация голосом не возвращает статусы, а push to talk ну как то пока ниразу не был востребован. Абсолютный лидер режим override. Но у модуля с маркета есть и польза, он дает базовое представление структуры команд для того чтобы написать свой модуль.

Алексей: Вячеслав, а Ваш модуль какой функционал реализует? Подойдёт ли он для моих задач?

Вячеслав: Алексей, какой функционал нужен? А так, я отправлял вам в личные сообщения с ссылкой на pdf с полным описанием модуля. Вот выдержка, чтоб не ходить далеко: 1.Автоматическое определение номеров подключенных микрофонов. Автоматическое определение микрофонов делегатов и председателей. 2.Синхронизацию статусов микрофонов при подключении к центральному блоку CCU2 3.Режим override полноценной с индикацией как на ССU2 4.Режим OPEN (request) полноценной с индикацией как на ССU2 5.Режим PTT полноценной с индикацией как на ССU2 6.Режим VOICE без управления и индикации (т.к. нет fb CCU2) 7.Поддержку пультов председателей в "любом" количестве и в "любой" порядковой позиции (поддержка режима нажатия кнопки приоритета). 8.Файл справки вызываемый по F1 9.Встроенный алгоритм управления наведением камер



полная версия страницы