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

переключение между контроллерами

СообщениеДобавлено: Вт июн 10, 2008 1:47 pm
sasamgn
доброго времени суток...
есть InTouch 10..связь с контроллером через DASSIDirect..
Вопрос: как использовать правильнее Failover для переключения на резервный контроллер и обратно. У DASSIDirect у каждого созданного сокета есть дискретный тэг показывающий статус коннекта. Но в Failover
условие перехода на резервный контроллер и обратно реализовано только ПО ОДНОМУ условию...или тэгу. Если я использую для этого статус коннекта к основному PLC и перейду на резервный....то уже никогда не узнаю восстановился ли коннект к основному PLC, так как условия возврата на основной контроллер не считывается. Или я что-то не понимаю?!?

СообщениеДобавлено: Вт июн 10, 2008 7:15 pm
Elena
Если правильно понимаю,после воостанавления связи с основным контроллером,Вы хотите перейти обратно на него. Там, помоему, как раз в Интаче есть галочка "Switch back to primary when failover conditions clear"-это как раз для вашего случая.
Либо альтернативный способ-написать в ручную функцию,которая будет отслеживать статус коннекта по дискретному тэгу и с помощью функции IOSetAccessName() перключаться с основного контроллера на резервный и обратно

СообщениеДобавлено: Вт июн 10, 2008 9:07 pm
sasamgn
то есть как я понял, сервер все делает автоматически..и переключение на резервный...и переход обратно? даже не надо указывать признак по которому переходить (опционально можно)? Если в Access Name указать топик основного и резервного PLC...Поправьте меня, если я не правильно высказался

СообщениеДобавлено: Ср июн 11, 2008 2:00 pm
Elena
Исходя из того,что написано в помощи, переход с PLC Standby на PLC Primary должен осуществляться автоматически при наличии этой галочки. Единственный нюанс-это само условие перехода.Предлагаю вынести дискрет статуса связи с PLC Primary в отдельный топик,например ConnectPrimary и не использовать для этого топика механизм со альтернативным истчником.Тогда при обрыве связи с PLC Primary этот сигнал просто перейдет в 0,что послужит флагом для всех остальных топиков поменять источник данных на PLC Standby. А в случае восстановления связи, дискрет станет = 1 и ,соответсвенно, так как у нас стоит галочка "Switch back to Primary when failover conditions clear", связь с Primary должна восстановиться.
Честно признаюсь,сама в своих проектах этим механизмом никогда не пользовалась, пишу обычно все в ручную,но мне кажется так все должно вполне корректно работать.Удачи!

СообщениеДобавлено: Ср июн 11, 2008 2:35 pm
sasamgn
в принципе мои мысли склонялись к подобному решению. Теперь еще нужно проверить как ведет себя дискрет статуса связи с PLC - пробовал отключать питание у PLC...остается 1 :-)
Ну теперь тока после праздников проверю детально
Спасибо за подсказку!

СообщениеДобавлено: Ср июн 18, 2008 7:22 pm
Igor V. Zhdanov
А у меня получилась вот такая ситуация.
Сначала оборудование: TREI с резервированием процессоров, Наутсилус ОРС сервер, ОРС Линк, InTouch.
Создаю точку доступа, 2 топика - для основного и резервного контроллера. Создаю дискретный тег rez, 1-резервный, 0-основной. В Failover записываю условие rez=1, снимаю галочку "Switch back to Primary...", запускаю OPC Link и Runtime. Тег rez имеет состояние 0, в работе основной контроллер. Перевожу rez в 0. Включается топик резерва. Перевожу rez назад в 1. Включается основной топик. НО...
Не все теги отображаются. В основном нет дискретных. А для аналоговых, которые не отображаются, качество 0, но сигнал вижу!!! (так написан проект, если качество 0 высвечивается надпись неисправен, но в режиме настройки канала можно смотреть тег)
И еще нюанс. При нормальной работе в OPC Link топик имеет ошибки, просто удалил теги из проекта InTouch, а в сервере остались. В ненормальном режиме ошибок нет, а количество items соответствует действительному количеству. И дальнейшие переключения состояния тега rez ситуацию не меняют.
Есть у кого какие мысли?