Ответы в темах
-
АвторЗаписи
-
kustarУчастникПосмотрел на сайте OPC Foundation, текущая версия 3.00.106
Завтра пообщаюсь с разработчиком моей системы. Если даст добро — поменяю Core
kustarУчастникЛектус, как и коммуникатор запускается от имени системы.
Чтобы заставить работать коммуникатор на другом компе с этим Лектусом, придется настраивать хренову кучу в политиках безопасности и в файерволе на той машине, где Лектус со своей скадой. Не хотелось бы это делать на «боевой» системе.
На отдельной машине могу попробовать коммуникатор с другим Лектусом. На месяц можно поставить в полном функционале.
Если я правильно понял, коммуникатор запускается автоматом со скада-сервером в полной инсталляции Rapid’а.
Что касается черного ящика. С Лектусом установлен OPC Core Components v.3.00.100. Не знаю, насколько современна эта версия. Может, от этого тоже что-то зависит?
По поводу доработок. Если видите мой email в профиле, напишите, обсудим.
kustarУчастникСпасибо, за ссылку.
Матрикон работает ОК. Записывал по одному параметру и группой. Проблем нет.
kustarУчастникПопробовал OPC Viewer (CommServer, Польша)
Читает нормально, с записью та же беда:
переменные в ОРС записывает и показывает ошибку E.Fail IOPCSyncIO.Write
Matricon не могу скачать, не хочет меня их сервер регистрировать, почта моя ему не нравится.
Если есть где инсталляшка, подскажите.
На рабочей машине развернут Iconics, работает уже год, у него с Лектусом проблем не возникает.
kustarУчастникКоманды останова и запуска этой линии проходят (сообщение появляется), но после перезапуска линии данных чтения нет. У коммуникатора статус — работает.
Отправляю команду «Стандартная» с номером команды, привязанным к нужному тэгу в настройках dll
kustarУчастникМихаил, снимаю все вопросы по округлению. Проблема в моем датчике — в значении, которое он отдает Лектусу, значащие только два знака после запятой. Третий — либо 0 либо 9, остальное — просто шум.
Потому и график ступенькой.
kustarУчастникКартинки оболочки сервера и кода страницы.
http://postimg.org/image/fp1sypl1l/
http://postimg.org/image/8pt1bqz0l/
kustarУчастникУбрал из ..\Cmd четыре файла с датой 25.10. Ошибка исчезла.
Даю команду на запись ч-з коммуникатор. Значение тэга меняется и коммуникатор подвисает. GUI говорит, что коммуникатор работает, но чтения тэгов нет.
Жду минуту, изменений нет.
Через минуту останавливаю службу.
Служба останавливается еще через минуту.В файле line016.log:
2016-10-27 15:14:02 КП 60. Обработка изменения текущих данных. Подписка: АРМ
КП 60. Обработка тега. Наименование: Vector1.Line2.Pout. Значение: 3,211069. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Line2.Tout. Значение: 22,452. Качество: good
КП 60. Обработка тега. Наименование: Vector1.BKK.P. Значение: 1,285043. Качество: good
КП 60. Обработка тега. Наименование: Vector1.BKK.T. Значение: 11,19019. Качество: good
КП 60. Обработка тега. Наименование: Vector1.BKK.Ro. Значение: 868,8333. Качество: good
КП 60. Обработка тега. Наименование: Vector1.BKK.Ro20. Значение: 861,827. Качество: good
КП 60. Обработка тега. Наименование: Vector1.BKK.Ro15. Значение: 865,3787. Качество: good
КП 60. Обработка тега. Наименование: Vector1.BIL.Pin. Значение: 2,645329. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Oper_Narast.Tout. Значение: 10,59764. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Oper_Narast.Pout. Значение: 3,168506. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Oper_Narast.Ro. Значение: 870,4327. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Oper_Narast.Tbk. Значение: 11,55105. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Oper_Narast.Pbk. Значение: 1,286798. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Oper_Narast.Robk. Значение: 868,6605. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Oper_Narast.Water. Значение: 0,1495064. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Oper_Narast.QWater. Значение: 0,1721035. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Sut_Narast.Tout. Значение: 11,52255. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Sut_Narast.Tbk. Значение: 12,29791. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Sut_Narast.Pbk. Значение: 1,440838. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Sut_Narast.Water. Значение: 0,1489145. Качество: good
КП 60. Обработка тега. Наименование: Vector1.Sut_Narast.QWater. Значение: 0,1712903. Качество: good
КП 60. Обработка тега. Наименование: Vector1.BKK.Q. Значение: 1,077649. Качество: good
КП 60. Обработка тега. Наименование: Vector1.BKK.Water. Значение: 0,179752. Качество: good
КП 60. Обработка тега. Наименование: Vector1.BKK.QWater. Значение: 0,2068889. Качество: good2016-10-27 15:14:03 Команда КП 60 «ИВК СИКН «, тип: KpOpc
15:14 — время подачи команды.
В файле ScadaCommSvc.log:
———————————————————————————
2016-10-27 15:12:00 <ARM><СИСТЕМА><ACT> Служба ScadaCommService 4.5.0.6 запущена
2016-10-27 15:12:00 <ARM><СИСТЕМА><ACT> Загрузка библиотеки КП: KpOpc.dll
2016-10-27 15:12:00 <ARM><СИСТЕМА><ACT> Установка соединения со SCADA-Сервером «10.162.1.234»
2016-10-27 15:12:00 <ARM><СИСТЕМА><ACT> Запуск линий связи
2016-10-27 15:12:00 <ARM><СИСТЕМА><ACT> Запуск приёма команд
2016-10-27 15:14:03 <ARM><СИСТЕМА><ACT> Получена команда из файла: тип=Standard, КП=60, номер=103
2016-10-27 15:16:06 <ARM><СИСТЕМА><ACT> Прерывание приёма команд
2016-10-27 15:16:06 <ARM><СИСТЕМА><ACT> Остановка линий связи
2016-10-27 15:16:17 <ARM><СИСТЕМА><ACT> Разрыв соединения со SCADA-Сервером
2016-10-27 15:16:17 <ARM><СИСТЕМА><ACT> Служба ScadaCommService остановлена
———————————————————————————
15:14 — время подачи команды, 15:15 — остановил службу через GUI, 15:16 — служба остановилась.
kustarУчастникМихаил, я правильно понял, что запись в тэг можно делать вовсе без настроек в админе? Просто вручную из коммуникатора?
Еще вопрос. Убрал из настроек коммуникатора все, что связано с записью в тэги. Перезапустил сервис. В логе коммуникатора по 5 раз на секунду запись:
2016-10-27 13:37:00 <ARM><СИСТЕМА><ACT> Получена неактуальная команда из файла: команда управления приложением
ARM — это имя компа.
Работает нормально, читает из Лектуса 41 тэг.
kustarУчастникВ оболочке сервера текущие, минутные и часовые — 17 знаков после запятой.
В коде страницы — три знака, как и заказано, но младший знак — всегда ноль.
kustarУчастникДа это и неважно. Порядок старший-младший Вы определили правильно. Если у Михаила будет желание и возможность, он добавит в dll возможность читать четырехбайтные MODBUS регистры.
Manjey73, просьба к ВАМ. Если не сложно, тезисно, опишите порядок настройки в админе работы с переменной на чтение/запись.
У меня на запись не работает. Может, неправильно конфигурю.
Спасибо!
kustarУчастникПервая и третья переменные — ок.
Спасибо!
Вторая и четвертая — в расчетах и отображении не участвуют, поэтому, я не знаю, что это. Ковыряться в работающей на коммерцию системе не рискну.
Там все же четыре переменные, не служебка. У MODBUS TCP вся служебка спереди, CRC в конце нет.
kustarУчастникМаленько переделал отображение данных в админе.
И все же, округление есть!
В админе выставил точность для параметра D.DDD. В таблицу складываются (и на графике отображаются) данные с округлением во втором знаке после запятой.
Значения параметра маленькие, меньше 1,0.
http://postimg.org/image/kagaadtk3/
В источнике (ОРС) все ок, настоящий float.
С SQL близко не знаком, подскажите, как посмотреть в базе?
kustarУчастникХотя, можно и парсеру!
16 байт он видит как данные из регистров.
Если байты сложить в правильном порядке, наверняка получим float
kustarУчастникLectus работает по MODBUS TCP, собственного MODBUS терминала у него нет.
Если зайти на СИКН каким-нибудь терминалом и прочитать 4 первых регистра, получим вот это:[22:39:37,352] <—:00 03 00 00 00 06 01 03 00 00 00 04
[22:39:37,359] —>:00 03 00 00 00 13 01 03 10 8A 23 0B 42 88 67 59 45 F7 2A 1E 42 00 00 80 3FКак видно, устройство отдает 16 байт.
Загружать на парсер смысла нет, т.к. он заточен под двухбайтные регистры. А здесь четыре четырехбайтных.
Где старшие-младшие, не помню. В Lectus’е все стоит по умолчанию, без перестановок, вроде как начиная со старшего. Учитывая то, что Lectus все же не совсем стандартная штука, перестановки возможны. Думаю, так: 78563412.
Для ориентации тэги по адресам:
0 — float, значение ок. +35 с дробной частью;
1 — float, не исп., не знаю;
2 — float, значение ок. +39 с дробной частью;
3 — float, не исп., не знаю.Если нужно больше — пришлю.
-
АвторЗаписи