Тема: Rocrail&BiDiB
Показать сообщение отдельно
Старый 19.04.2015, 12:42   #3
laba
Местный
 
Аватар для laba
 
Регистрация: 06.03.2009
Адрес: Питер
Сообщений: 3,693
Сказал(а) 'не согласен(а)'!: 10
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 6,942
Поблагодарили 4,844 раз(а) в 1,822 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: репутация неоспорима (5127)
По умолчанию

И так мы остановились на том, что создали в программе новый локомотив и настроили её для работы с интерфейсом BiDiB.
Теперь нужно сделать настройки, необходимые для работы Rocrail с RailCom. Для этого идём в свойствах Rocrail на вкладку Автоматика. Там есть группа настроек отвечающая за работу с двухсторонними интерфейсами.



Пробежимся коротко по ним.
1. Использовать BiDi соединение.
Собственно эта галочка разрешает саму работу с двухсторонними интерфейсами.
2. Create guest on BiDi.
При установленной галочке программа будет сама создавать временный локомотив в таблице Локомотивов, если не найдёт в ней локомотива с полученным адресом. Этот лок будет удалён при перезапуске сервера Rocrail.
3. Использовать BiDi direction/
Эта функция позволяет использовать полученную информацию о направлении локомотива, при его работе не в автоматическом режиме.
4. Use identifier to set in block.
При выборе этого пункта, программа будет помещать идентификатор лока в блок или перемещать его из одного Блока в другой, при работе не в автоматическом режиме.
5. Отключение в случае несовпадения идентификации.
В случае, если полученный от датчика идентификатор не будет совпадать с идентификаторм, который ожидается программой в данный момент от этого датчика, то питание на макете будет выключено.

Теперь настроим датчик на плане пути. Выберем нужный датчик на плане пути и откроем его свойства, где можем прописать ему некоторые настройки.
На вкладке Общие можно дать ему оригинальный идентификатор датчика, а также привязать его к какому-либо объекту на плане пути.



На вкладке Интерфейс, выбираем Идентификатор интерфейса(BiDiB), а в окне Шина прописываем уникальный ID модуля BiDiB, к которому подключен этот датчик.



Чтобы не вбивать этот идентификатор вручную, в программе есть возможность сделать это методом Drag&Drop.
Для этого выбираем модуль BiDiB из списка и перетаскиваем его на символ датчика в плане пути.





Далее нужно выбрать тип датчика как Sensor(тип RailCom в данный момент не используется) и прописать адрес датчика на шине обратной связи BiDiB. На модулях, адресация датчиков начинается с 0(0-15, 16-31 и т.д.). Однако в Rocrail не может быть датчика с нулевым адресом, поэтому значение адреса на модуле, увеличивают на единицу(0-1, 1-2, 2-3, 3-4 и т.д.)



Последнее что надо сделать, это привязать это датчик к нужному Блоку. Для этого идём в свойства Блока на вкладку Маршруты и там настраиваем датчик для любых или определённых маршрутов, а также выбираем то событие, которое он должен вызывать на Блоке.



Вот вроде бы и все настройки, которые надо сделать, чтобы получить идентификацию лока на путях.
Теперь если поместить лок на секцию подключенную через этот токовый датчик модуля BiDiB, то он появиться в Блоке, а в окне сообщений Контроллер, можно увидеть полученную информацию.



__________________
HO, цифра, OpenDCC, S-88N, OpenCar, BiDiB
С приветом из подземки!!!
laba вне форума  
Вверх
7 пользователя(ей) сказали cпасибо: