Стартовая страница › Форумы › Rapid SCADA на Linux-контроллерах и Raspberry Pi › Ошибка ScadaComm
- В этой теме 79 ответов, 3 участника, последнее обновление 9 лет, 6 месяцев назад сделано
manjey73.
-
АвторЗаписи
-
16.06.2016 в 15:46 #2313
djbond07УчастникНа самом деле странная ситуация продолжается, но немного в другом ключе. Если Распи просто включить, то такие логи выдаёт коммуникатор
2016-06-16 12:28:05 <raspberrypi><root><ACT> ScadaCommService 4.5.0.5 is started
2016-06-16 12:28:09 <raspberrypi><root><ACT> Load device library: KpModbus.dll
2016-06-16 12:28:10 <raspberrypi><root><ACT> Connect to SCADA-Server «localhost»
2016-06-16 12:28:10 <raspberrypi><root><EXC> Error connecting to SCADA-Server: Connection refused
2016-06-16 12:28:10 <raspberrypi><root><ACT> Disconnect from SCADA-Server
2016-06-16 12:28:10 <raspberrypi><root><ERR> Unable to start operation due to SCADA-Server communication error.
Delay before trying again
2016-06-16 12:28:20 <raspberrypi><root><ACT> Connect to SCADA-Server «localhost»
2016-06-16 12:28:21 <raspberrypi><root><ACT> Start communication lines
2016-06-16 12:28:21 <raspberrypi><root><ACT> Start receiving commands
2016-06-16 12:31:06 <raspberrypi><root><ACT> Request SCADA-Server state
2016-06-16 12:31:06 <raspberrypi><root><ERR> Incorrect SCADA-Server response to state request
2016-06-16 12:31:06 <raspberrypi><root><ACT> Disconnect from SCADA-Server
2016-06-16 12:31:06 <raspberrypi><root><ACT> Connect to SCADA-Server «localhost»Но если перезагрузить Распи после этого, то логи уже другие
2016-06-16 12:39:22 <raspberrypi><root><ACT> ScadaCommService 4.5.0.5 is started
2016-06-16 12:39:23 <raspberrypi><root><ACT> Load device library: KpModbus.dll
2016-06-16 12:39:25 <raspberrypi><root><ACT> Connect to SCADA-Server «localhost»
2016-06-16 12:39:26 <raspberrypi><root><EXC> Error connecting to SCADA-Server: Connection refused
2016-06-16 12:39:26 <raspberrypi><root><ACT> Disconnect from SCADA-Server
2016-06-16 12:39:26 <raspberrypi><root><ERR> Unable to start operation due to SCADA-Server communication error.
Delay before trying again
2016-06-16 12:39:36 <raspberrypi><root><ACT> Connect to SCADA-Server «localhost»
2016-06-16 12:39:37 <raspberrypi><root><ACT> Start communication lines
2016-06-16 12:39:37 <raspberrypi><root><ACT> Start receiving commandsБолее того, при недавнем включении вся система Распи сильно зависла, подождал минут 5 пока отвиснет и проверил командой top приложения. 65% процессора загружает mono, а скада-коммуникатор в это время, судя по логам (которые я не смогу приложить), несколько раз пытался безуспешно подключиться к скада-серверу. Давайте разберёмся в чём тут дело.
-
Ответ изменён 10 лет, 3 месяца назад пользователем
djbond07.
16.06.2016 в 16:37 #2315
djbond07УчастникЗабыл добавить. Перезапуск демонов помогает, после перезапуска в коммуникаторе такой лог
2016-06-16 12:28:05 <raspberrypi><root><ACT> ScadaCommService 4.5.0.5 is started
2016-06-16 12:28:09 <raspberrypi><root><ACT> Load device library: KpModbus.dll
2016-06-16 12:28:10 <raspberrypi><root><ACT> Connect to SCADA-Server «localhost»
2016-06-16 12:28:10 <raspberrypi><root><EXC> Error connecting to SCADA-Server: Connection refused
2016-06-16 12:28:10 <raspberrypi><root><ACT> Disconnect from SCADA-Server
2016-06-16 12:28:10 <raspberrypi><root><ERR> Unable to start operation due to SCADA-Server communication error.
Delay before trying again
2016-06-16 12:28:20 <raspberrypi><root><ACT> Connect to SCADA-Server «localhost»
2016-06-16 12:28:21 <raspberrypi><root><ACT> Start communication lines
2016-06-16 12:28:21 <raspberrypi><root><ACT> Start receiving commandsВставил старый лог, но по информации он полностью совпадает. Очень странно ещё то, что после перезапуска демонов всё работало, но через какое-то время система просто повисла (100% ЦП). Может действительно SD карточка накрылась?
16.06.2016 в 18:19 #2316
MikhailМодераторПроверьте ещё комбинации, как я писал в http://forum.rapidscada.ru/?topic=%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-scadacomm/#post-2278
Вообще, connection refused — странное сообщение, т.е. при попытке подключения, соединение просто оборвалось. Попробуйте перезапустить только Коммуникатор.
17.06.2016 в 11:21 #2319
djbond07УчастникДобрый день! проделал все манипуляции, вот результат:
1. При подключении коммуникатора с Windows на сервер Raspi такой лог:
2016-06-17 10:35:21 <M1><СИСТЕМА><ACT> Служба ScadaCommService 4.5.0.5 запущена
2016-06-17 10:35:21 <M1><СИСТЕМА><ACT> Загрузка библиотеки КП: KpModbus.dll
2016-06-17 10:35:21 <M1><СИСТЕМА><ACT> Установка соединения со SCADA-Сервером «192.168.1.211»
2016-06-17 10:35:21 <M1><СИСТЕМА><ACT> Запуск линий связи
2016-06-17 10:35:21 <M1><СИСТЕМА><ACT> Запуск приёма команд
То есть всё отлично. В Raspi по логам сервера читается, что всё отлично прошло.2. При подключении коммуникатора с Raspi на сервер Windows тоже всё отлично, логи не могу приложить, но там всё безупречно, и сервер на Windows говорит, что всё успешно и хорошо
Теперь внимание=) Все эти манипуляции проводились без выключения Raspi, то есть через перезапуск скады. После выкл-вкл Raspi такие логи:
2016-06-17 10:49:58 <raspberrypi><root><ACT> ScadaCommService 4.5.0.5 is started
2016-06-17 10:49:59 <raspberrypi><root><ACT> Load device library: KpModbus.dll
2016-06-17 10:50:01 <raspberrypi><root><ACT> Connect to SCADA-Server «192.168.1.230»
2016-06-17 10:50:02 <raspberrypi><root><EXC> Error connecting to SCADA-Server: Network is unreachable
2016-06-17 10:50:02 <raspberrypi><root><ACT> Disconnect from SCADA-Server
2016-06-17 10:50:02 <raspberrypi><root><ERR> Unable to start operation due to SCADA-Server communication error.
Delay before trying again
2016-06-17 10:50:12 <raspberrypi><root><ACT> Connect to SCADA-Server «192.168.1.230»
2016-06-17 10:50:13 <raspberrypi><root><ACT> Start communication lines
2016-06-17 10:50:13 <raspberrypi><root><ACT> Start receiving commands
2016-06-17 10:54:47 <raspberrypi><root><ACT> Request SCADA-Server state
В принципе ничего страшного тут, подключились со второго раза, но всё равно настораживает, не нравится мне это.
После этого я перезапустил ТОЛЬКО ScadaComm на Raspi, и получил такие логи:
2016-06-17 11:04:00 <raspberrypi><root><ACT> ScadaCommService 4.5.0.5 is started
2016-06-17 11:04:01 <raspberrypi><root><ACT> Load device library: KpModbus.dll
2016-06-17 11:04:02 <raspberrypi><root><ACT> Connect to SCADA-Server «192.168.1.230»
2016-06-17 11:04:04 <raspberrypi><root><ACT> Start communication lines
2016-06-17 11:04:04 <raspberrypi><root><ACT> Start receiving commands
Это уже идеальный лог. И Виндовс сказал, что всё хорошо.
Вывод: Проблема при выключении или перезагрузке компьютера.17.06.2016 в 12:00 #2320
djbond07УчастникОчень важную корректировку вношу! Обязательно прочитайте перед тем, как писать ответ!
строка
В принципе ничего страшного тут, подключились со второго раза, но всё равно настораживает, не нравится мне это.
Неправильна! При включении или перезагрузке коммуникатор работает некорректно, данные не принимаются (communication error), хотя порт открыт. Может всё-таки со временем связано? Хотя тогда почему раньше всё нормально было?17.06.2016 в 13:54 #2321
MikhailМодераторПроблема была не в том, что подключение происходит через несколько попыток при перезагрузке — это допустимо. Проблема была в том, что процессор загружен и ошибки уже в процессе обмена данными:
2016-06-14 17:37:26Incorrect SCADA-Server response to state request Сейчас подобных ошибок уже не возникает?
17.06.2016 в 15:05 #2323
djbond07УчастникВозникает. Вот только что после включения получил такой лог
———————————————————————————
2016-06-17 12:22:29 <raspberrypi><root><ACT> ScadaCommService 4.5.0.5 is started
2016-06-17 12:22:31 <raspberrypi><root><ACT> Load device library: KpModbus.dll
2016-06-17 12:22:33 <raspberrypi><root><ACT> Connect to SCADA-Server «localhost»
2016-06-17 12:22:34 <raspberrypi><root><EXC> Error connecting to SCADA-Server: Connection refused
2016-06-17 12:22:34 <raspberrypi><root><ACT> Disconnect from SCADA-Server
2016-06-17 12:22:34 <raspberrypi><root><ERR> Unable to start operation due to SCADA-Server communication error.
Delay before trying again
2016-06-17 12:22:44 <raspberrypi><root><ACT> Connect to SCADA-Server «localhost»
2016-06-17 12:22:44 <raspberrypi><root><ACT> Start communication lines
2016-06-17 12:22:44 <raspberrypi><root><ACT> Start receiving commands
2016-06-17 14:59:30 <raspberrypi><root><ACT> Request SCADA-Server state
2016-06-17 14:59:30 <raspberrypi><root><ERR> Incorrect SCADA-Server response to state request
2016-06-17 14:59:30 <raspberrypi><root><ACT> Disconnect from SCADA-Server
2016-06-17 14:59:30 <raspberrypi><root><ACT> Connect to SCADA-Server «localhost»После перезапуска коммуникатора имеем такой лог:
———————————————————————————
2016-06-17 15:02:21 <raspberrypi><root><ACT> ScadaCommService 4.5.0.5 is started
2016-06-17 15:02:22 <raspberrypi><root><ACT> Load device library: KpModbus.dll
2016-06-17 15:02:23 <raspberrypi><root><ACT> Connect to SCADA-Server «localhost»
2016-06-17 15:02:24 <raspberrypi><root><ACT> Start communication lines
2016-06-17 15:02:24 <raspberrypi><root><ACT> Start receiving commandsВот честно ничего не менял, настройки те же, всё то же. Вообще не трогал Raspi после написания предыдущего поста.
17.06.2016 в 16:31 #2324
djbond07УчастникЕсли посмотреть на логи, то вот что я вижу. При включении комптьютера коммуникатор подключается к серверу и не может подключиться, так как интернета нет, локальный хост ещё не создан, и не к чему подключаться. после появления интернета коммуникатор успешно подключается к серверу. После синхронизации часов с интернетом, коммуникатор запрашивает состояние сервера. получает некорректный ответ и отключается. И потом не может подключиться. Может просто сделать так, чтобы после синхронизации времени с интернетом перезапускалась вся скада? или же коммуникатор отдельно? Я пробовал сделать, чтобы после поднятия сети перезапускался коммуникатор, добавляя скрипт в
/etc/network/if-up.d (ну или как-то так, я точно не помню). Это не помогло. Скорей всего потому что этот перезапуск происходит в промежуток между подключением интернета и синхронизацией времени.17.06.2016 в 18:21 #2326
MikhailМодераторА если ничего не трогать после перезапуска, то связь так и не наладится через некоторое время или потом нормально работает?
Какова загрузка процессора?В коде демона уже стоит зависимость от наличия сети:
# Required-Start: $remote_fs $network $timeНужно разбираться, почему она игнорируется.
17.06.2016 в 19:10 #2327
djbond07УчастникЯ не тестировал на длительное время, так что не знаю, в Пн попробую. Сколько приблизительно Вы предполагаете нужно оставить времени? Ну 10 минут точно стояла, связь не налаживалась.
Процессор в норме 5-15% mono грузит примерно. То есть старт скады откладывается, пока не будет подключена сеть и синхронизированно время? Это условие точно не выполняется, потому что я скаду тестировал на 3g модеме. Он подключается примерно через минуту-две после запуска системы, а логи коммуникатора и сервера я сразу открывал при входе в систему.
Что мне сделать, чтобы помочь Вам разобраться?18.06.2016 в 10:17 #2328
MikhailМодератор10 минут достаточно. Можете выложить в общий доступ полные логи Сервера, Коммуникатора и Веб за это время?
Вообще, чтобы разобраться что происходит, нужно с помощью снифера получить протокол обмена между этими программами. Как это сделать на Linux — не могу сказать, если бы Вы нашли, как собрать информацию, было бы замечательно.
18.06.2016 в 20:29 #2331
djbond07УчастникМихаил, вы скинули строчку кода из демонов, она закомментирована. Не в этом случайно дело ? 🙂
19.06.2016 в 13:06 #2334
MikhailМодераторНасколько я понимаю, это специальный формат комментариев, которые обрабатываются системой 🙂
20.06.2016 в 10:33 #2335
djbond07УчастникДобрый день! Вот ссылка на все файлы логов после запуска распи
https://drive.google.com/open?id=0Bzn5jzldeU-ddXByNGltOG5oVHc
Ситуация та же. скада работала минут 20, соединение не надалилось. После этого перезапустил только ScadaComm, соединение появилось, и всё ОК.Где можно глянуть код демона?
20.06.2016 в 11:41 #2336
MikhailМодераторКод демона в дистрибутиве для РПи.
Можете доступ к логам открыть для всех? -
Ответ изменён 10 лет, 3 месяца назад пользователем
-
АвторЗаписи
- Для ответа в этой теме необходимо авторизоваться.