Стартовая страница › Форумы › Ошибки в работе › Ошибки Сервера › Ошибка отправки команды ModAutoControl
- В этой теме 18 ответов, 2 участника, последнее обновление 6 лет, 6 месяцев назад сделано Mikhail.
-
АвторСообщения
-
29.09.2017 в 09:31 #7411Komrade82Участник
Всем доброго дня.
Установил новую версию Rapid SCADA от 25 сентября с новым модулем. При проверке триггера на обновление данных канала или на данные канала с отсылкой на канал управления получаю следующее.
В модуле:
2017-09-29 09:23:18 Сработка триггера «chek»
2017-09-29 09:23:18 Команда отправлена. Канал управления 202
В сервере:
2017-09-29 09:23:18 <ASUTP-NOTE><СИСТЕМА><ACT> Команда ТУ: канал упр. = 202, ид. польз. = 2
2017-09-29 09:23:18 <ASUTP-NOTE><СИСТЕМА><EXC> Ошибка при выполнении действий после обработки новых текущих данных в модуле ModAutoControl: Ссылка на объект не указывает на экземпляр объекта.29.09.2017 в 16:54 #7420MikhailМодераторДобрый день!
И сервер и Модуль автоуправления от 25 сентября?
Вы могли бы прислать C:\SCADA\BaseSDF\ScadaBase.sdf и C:\SCADA\ScadaServer\Config\ModAutoControl.xml , чтобы воспроизвести ошибку?01.10.2017 в 22:33 #7424Komrade82УчастникВо вторник заеду на смену и пришлю. Весь дистрибутив и модуль ставил с нуля на тестовом ноутбуке, только конфигурацию с предыдущей версии перенес.
Кстати, как и в прошлый раз через генератор команд сервера команда ТУ проходит без проблем. Может ли быть проблема в .Net или каких-либо ещё компонентах?02.10.2017 в 12:48 #7436MikhailМодераторСамое главное, чтобы получилось воспроизвести проблему у нас. Тогда устраним ошибку.
02.10.2017 в 12:49 #7438MikhailМодераторПроблема в Модуле автоуправления. Но аналогичных ошибок от других пользователей пока не поступало.
03.10.2017 в 14:14 #7456MikhailМодераторПопробовал Вашу конфигурацию.
В логе Модуля:
2017-10-03 14:09:43 Сработка триггера «chek»
2017-10-03 14:09:43 Команда отправлена. КП 21, Команда 2
2017-10-03 14:09:43 Команда отправлена. Канал управления 203В логе Сервера:
2017-10-03 14:09:43<СИСТЕМА> Пользователь ScadaServerCtrl успешно аутентифицирован
2017-10-03 14:09:43<СИСТЕМА> Команда ТУ: канал упр. = 203, ид. польз. = 3 Без ошибок.
Чтобы триггер сработал, я изменял значение канала 201 с помощью генератора Сервера.
Возможно, ошибка возникает при определённом значении канала 201.
Вы можете воспроизвести ошибку, выключив службу Коммуникатора и используя генератор значений Сервера?03.10.2017 в 14:28 #7457Komrade82УчастникПроверил без Коммуникатора через генератор — та же ошибка.
04.10.2017 в 20:28 #7468MikhailМодераторКакие значения нужно отправлять?
Напишите номер версии и дату изменения файла сервера и модуля автоуправления:
ScadaServerSvc.exe
ModAutoControl.dll
Их можно посмотреть в свойствах файла.09.10.2017 в 19:10 #7513Komrade82УчастникScadaServerSvc.exe 5.1.0.1 25.09.2017 10:00
ModAutoControl.dll 5.2.1.0 25.09.2017 8:55Дошли руки проверить на другой системе:
ноутбук с Windows XP SP3, устанавливал с нуля последнюю версию, скопировал базу и папки с конфигурацией сервера и коммуникатора — получил ту же ошибку, только на английском, в логе.По значениям: мне нужно брать значение с канала по OPC и записывать его, переставив байты, в канал Modbus TCP.
Возможно, что проблема и именно в базе. Попробую всё с нуля.
10.10.2017 в 16:55 #7515MikhailМодераторДумаю, Вам нужно скачать заново и установить Модуль автоматического управления.
ModAutoControl.dll должна быть от 29.09.2017 9:18. Номер версии не поменяли, что не очень хорошо, конечно.Напишите, пожалуйста, о результате.
10.10.2017 в 17:01 #7516MikhailМодераторВозможно, что проблема и именно в базе. Попробую всё с нуля.
Я тоже пробовал на Вашей базе, которую Вы отправляли. Странно.
17.10.2017 в 19:32 #7572Komrade82УчастникОбновил модуль, попробовал с чистой базой — та же ошибка. Покопался в более ранних логах модуля автоконтроля:
2017-09-28 20:05:11 Команда отправлена. Канал управления 201
2017-09-28 20:05:11 Ошибка при контроле триггеров на данные канала:
System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
в Scada.Server.Svc.Comm.FillCommandProps(Command cmd, CtrlCnl ctrlCnl)
в Scada.Server.Svc.Comm.SendCommand(Int32 ctrlCnlNum, Command cmd, Int32 userID)
в Scada.Server.Modules.ModAutoControlLogic.b(TrCommand A_0)
в Scada.Server.Modules.ModAutoControlLogic.a(Trigger A_0, Object A_1, Boolean A_2, Boolean A_3)
в Scada.Server.Modules.ModAutoControlLogic.d()
Потом он стал писать что команда отправлена, но ошибка перекочевала в журнал сервера.18.10.2017 в 11:45 #7579MikhailМодераторСтабильность ошибки — это хорошо. Напишите, мне пожалуйста, последовательность действий, чтобы мне воспроизвести ошибку у себя без физического контроллера, если я поставлю чистый дистрибутив Rapid SCADA и модуля.
18.10.2017 в 15:12 #7585Komrade82УчастникОписание системы:
Windows 10 Pro, .Net 3.5 и 4.7.
SCADA установлена по умолчанию на диск C:\
модуль от 29.09.2017Добавляю КП 12 в линию связи 1. Настраиваю на подключение к локальному тестовому серверу с позывным 127.0.0.1 и портом 502 как Modbus TCP-клиент. Добавляю формулу на перестановку байт. Добавляю 3 канала — 131, 132, 133 как телеизмерение. Добавляю 3 канала управления с теми же номерами.
Делаю конфиг-файл на Modbus для чтения 3 переменных float с перестановкой байт 2301, а также 3 множественные команды по 2 регистра.
В модуле автоуправления делаю триггер на изменение данных канала или на данные канала 131. Добавляю 2 команды: на КП12 команда 2 и на канал управления 133 с копированием данных. Если команда на КП идет первой, то она проходит успешно, а команда на КУ даёт ошибку. Если в обратном порядке, то команда на КУ 133 сразу даёт ошибку и следующая не выполняется.18.10.2017 в 15:20 #7586Komrade82УчастникИзменение номеров канала управления не устраняет ошибку.
-
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.