Сообщение создано: 26. 09. 2016 [07:37]
|
LANC
Алексей Уланов
Создатель темы
Зарегистрирован(а) с: 23.09.2016
Сообщения: 3
|
Добрый день.
У меня в проекте есть опрос прибора Ш9327 по протоколу ModBus. Опрос идет через преобразователь Tibbo Ethernet-RS485. Создан сокет H9327 для доступа через преобразователь. Все нормально опрашивается, данные поступают.
Одновременно с двух станций опрос не будет работать, поэтому создан шлюз, который запущен на станции H2 (более высокого уровня), а станция H1 берет данные через шлюз. Тут тоже все работает.
Резервирование сбора данных H9327 настроено Ассиметричное, Высокий уровень.
При остановке проекта на станции H2: пропадают данные на H1, происходит запуск сокета на станции H1 и данные появляются.
Проблема №1: когда я просто отключаю сетевой кабель от H2 (имитируя отвал станции), то сокет на H1 не запускается (при попытке запуска вручную ругается, что сокет занят, возможно на преобразователе сеанс связи не закрыт)
Проблема №2: Закрываем проект на H2, сбор начинается на H1, запускаем H2 и данные пропадают везде! Получается, что сокет запущен на 1 станции, а через шлюз она теперь пытается получать данные через 2 станцию, а там сокет остановлен.
Я так понимаю, что резервирование правильно настроено, но переключения сбора с H1 на H2 не происходит. Может кто подскажет в чем проблема?
|
Сообщение создано: 27. 09. 2016 [11:32]
|
roman
Roman Savochenko
Moderator Contributor Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
|
"LANC" wrote:
Проблема №1: когда я просто отключаю сетевой кабель от H2 (имитируя отвал станции), то сокет на H1 не запускается (при попытке запуска вручную ругается, что сокет занят, возможно на преобразователе сеанс связи не закрыт)
Никогда не видел в принципе чтобы исходящий транспорт, точнее сетевая подсистема ОС за ним, был занят!
Learn, learn and learn better than work, work and work.
|
Сообщение создано: 30. 09. 2016 [10:15]
|
andrelek
Андрей Полевой
Зарегистрирован(а) с: 13.12.2008
Сообщения: 210
|
"LANC" wrote:
Опрос идет через преобразователь Tibbo Ethernet-RS485. Создан сокет H9327 для доступа через преобразователь.
Я так понимаю что создан сокет в Транспорты-Сокеты-ВыходнойТрнспорт на станции Н1? Правильно?
"LANC" wrote:
Одновременно с двух станций опрос не будет работать
Потому как устройство не поддерживает одновременно 2 соединения для опроса по МодБас? (У меня такая ситуация была)
"LANC" wrote:
поэтому создан шлюз, который запущен на станции H2 (более высокого уровня), а станция H1 берет данные через шлюз. Тут тоже все работает.
Вот здесь не ясно. Н1 тянет с преобразователя а Н2 через шлюз с Н1 так ?
|
Сообщение создано: 03. 10. 2016 [08:35]
|
LANC
Алексей Уланов
Создатель темы
Зарегистрирован(а) с: 23.09.2016
Сообщения: 3
|
"andrelek" wrote:
"LANC" wrote:
поэтому создан шлюз, который запущен на станции H2 (более высокого уровня), а станция H1 берет данные через шлюз. Тут тоже все работает.
Вот здесь не ясно. Н1 тянет с преобразователя а Н2 через шлюз с Н1 так ?
Наоборот, я немного не правильно написал, H2 тянет с преобразователя, H1 через шлюз с H2. Сокеты в Транспорты-Сокеты-ВыходнойТранспорт созданы на обоих станциях. Закрываем проект на H2 и запускается сокет на H1, данные идут. Когда я просто отключаю сеть на H2 такого не происходит. Одновременно с двух станций опрос не поддерживает устройство.
|
Сообщение создано: 04. 10. 2016 [16:44]
|
andrelek
Андрей Полевой
Зарегистрирован(а) с: 13.12.2008
Сообщения: 210
|
"LANC" wrote:
H2 тянет с преобразователя, H1 через шлюз с H2
Используйте, пожалуйста, терминологию ОпенСкады, а то не понятно что за шлюз, то ли "DAQGate Шлюз источников данных" что есть вертикальное резервирование, то ли использовано горизонтальное резервирование, уместное в Вашем случае.
У меня подобная конфигурация, как у Вас, работала корректно, только я просто выключал машину, а не выдергивал сетевой кабель, что должно иметь одно значение для резервной станции, если резервирование настроено по этому же интнрфейсу.
Еще раз перечитал Ваш вопрос.
Проблема №1: когда я просто отключаю сетевой кабель от H2 (имитируя отвал станции), то сокет на H1 не запускается (при попытке запуска вручную ругается, что сокет занят, возможно на преобразователе сеанс связи не закрыт)
С вами согласен, что не закрыт. Перегрузите преобразователь - если сокет запустится значит так оно и есть. Если так, то смотреть настройки преобразователя на наличие сброса соединения по таймауту входящих запросов итп
Проблема №2: Закрываем проект на H2, сбор начинается на H1, запускаем H2 и данные пропадают везде! Получается, что сокет запущен на 1 станции, а через шлюз она теперь пытается получать данные через 2 станцию, а там сокет остановлен.
Я так понимаю, что резервирование правильно настроено, но переключения сбора с H1 на H2 не происходит. Может кто подскажет в чем проблема?
Думаю потому что остался запущен сокет на резервной станции. Чтобы проверить эту версию выключите сокет на резервной станции вручную и данные должны появиться сами.
|
Сообщение создано: 19. 10. 2016 [07:26]
|
LANC
Алексей Уланов
Создатель темы
Зарегистрирован(а) с: 23.09.2016
Сообщения: 3
|
Вернулся я к своей проблеме. Все таки все дело было в преобразователе, при отключении одной станции он поддерживал соединение и не давал подключиться с другой станции. Теперь он обрывает соединение через минуту после потери связи.
В OpenSCADA все было настроено правильно, сейчас резервирование работает. Настроено горизонтальное резервирование контроллера сбора данных с прибора, когда станция верхнего уровня H2 не работает, сбор идет с другой станции Н1. И "DAQGate Шлюз источников данных" т.е. вертикальное резервирование станция Н1 получает данные от Н2.
|