Стартовая страница › Форумы › Разработка и интеграция › Перезагрузка драйвера на линии связи V6
- В этой теме 25 ответов, 2 участника, последнее обновление 1 год, 4 месяца назад сделано manjey73.
-
АвторСообщения
-
17.11.2022 в 22:57 #26083manjey73Участник
Так вот и прошу пример кода перезапуска линии, вы ведь его придумали, как-то тестировали. Что, куда и как надо прописать, чтобы из Session произошел полный перезапуск линии?
Общий лог Коммуникатора это просто Журнал ?
17.11.2022 в 22:58 #26084manjey73Участник2022-11-17 22:57:47 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Команда с ид. 7167076636911471859 на устройство 5 от C:\Program Files\SCADA\ScadaComm\Cmd\cmd_7167076636911471859.dat
17.11.2022 в 23:01 #26085manjey73УчастникОткрыв проводник я не вижу даже появления такого файла в папке Cmd
При этом Администратор я запускаю от Админа- Этот ответ был изменен 1 год, 4 месяца назад от manjey73.
17.11.2022 в 23:08 #26087manjey73Участник2022-11-17 23:05:56 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Команда приложению App.Comm.RestartLine с ид. 7167078736708355572 от C:\Program Files\SCADA\ScadaComm\Cmd\cmd_7167078736708355572.dat 2022-11-17 23:05:56 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Остановка линии связи [1] My Line 2022-11-17 23:05:57 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Линия связи [1] My Line остановлена 2022-11-17 23:05:57 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Запуск линии связи [1] My Line 2022-11-17 23:05:57 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Источник данных ScadaServer: Приём базы конфигурации 2022-11-17 23:06:01 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Источник данных ScadaServer: База конфигурации получена успешно 2022-11-17 23:06:13 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Команда приложению App.Comm.RestartLine с ид. 7167078809896731873 от C:\Program Files\SCADA\ScadaComm\Cmd\cmd_7167078809896731873.dat 2022-11-17 23:06:13 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Остановка линии связи [1] My Line 2022-11-17 23:06:13 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Линия связи [1] My Line остановлена 2022-11-17 23:06:13 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Запуск линии связи [1] My Line 2022-11-17 23:06:13 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Источник данных ScadaServer: Приём базы конфигурации 2022-11-17 23:06:18 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Источник данных ScadaServer: База конфигурации получена успешно 2022-11-17 23:06:32 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Команда с ид. 7167078891190667365 на устройство 5 от C:\Program Files\SCADA\ScadaComm\Cmd\cmd_7167078891190667365.dat
Ха, надо номер Линии указывать так понимаю 🙂
17.11.2022 в 23:11 #26088manjey73УчастникТут я понял, через Команду вручную в качестве числа надо указывать не Вкл = 1 а именно номер Линии, при этом в логе Опроса команда не светится, только в общем журнале.
Теперь вопрос как правильно в Session прописать, чтобы произошел перезапуск ?
17.11.2022 в 23:11 #26089manjey73УчастникПросто в качестве cmdVal номер линии на которой запущен драйвер ?
17.11.2022 в 23:18 #26090manjey73Участник2022-11-17 23:17:19 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ERR] Устаревшая команда с ид. 0 от Перезагрузка линии связи отклонена
Перезагрузка линии связи
это я в source указал…17.11.2022 в 23:26 #26091manjey73Участник2022-11-17 23:23:29 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Команда приложению App.Comm.RestartLine с ид. 0 от Перезагрузка линии связи
2022-11-17 23:23:29 [LAPTOP-J1GTEM7T][LAPTOP-J1GTEM7T$][ACT] Остановка линии связи [4] OwenCloudНо опять же — ID = 0, я пробовал указать cmd.CommandID = 12345 но при этом ID все равно был 0.
А вот указание времени перезапустило линию.
TeleCommand cmd = new TeleCommand(); cmd.CreationTime = DateTime.Now; cmd.CmdVal = LineContext.CommLineNum; cmd.CmdCode = CommCmdCode.RestartLine; CommContext.SendCommand(cmd, "Перезагрузка линии связи");
Осталось все таки с ID понять, почему он все равно 0, но вот так линия перезапускается, уже плюс 🙂
17.11.2022 в 23:34 #26092manjey73Участникcmd.CommandID = cmd.CreationTime.Ticks;
добавил вот это, теперь ID длинный и красивый 🙂
18.11.2022 в 15:08 #26124MikhailМодераторТак вот и прошу пример кода перезапуска линии
Если бы он был, я бы сразу прислал. Но из кода драйвера не пробовал перезапускать.
Открыв проводник я не вижу даже появления такого файла в папке Cmd
Файл удаляется после считывания.
при этом в логе Опроса команда не светится, только в общем журнале.
Да, потому что это более глобальная команда уровня Коммуникатора, а не самой линии.
Для генерации ID используйте эту функцию.
Сейчас как?
18.11.2022 в 15:43 #26128manjey73Участникcmd.CommandID = cmd.CreationTime.Ticks;
CСейчас вот так, по сути тоже получено от DateTime
-
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.