Созданные ответы форума
-
АвторСообщения
-
Oakim
УчастникВ общем заработало, сравнил xml файлы для 10 и 41 и они отличались одним параметром в заголовке файлов
у Овен КТР-121.01.10
<?xml version="1.0" encoding="utf-8"?> <DeviceTemplate> <Options> <ZeroAddr>true</ZeroAddr> <DecAddr>true</DecAddr> <DefByteOrder2 /> <DefByteOrder4 /> <DefByteOrder8 /> </Options> <ElemGroups>
у Овен КТР-121.02.41
<?xml version="1.0" encoding="utf-8"?> <DeviceTemplate> <Options> <ZeroAddr>true</ZeroAddr> <DecAddr>true</DecAddr> <DefByteOrder2>2301</DefByteOrder2> <DefByteOrder4 /> <DefByteOrder8 /> </Options> <ElemGroups>
Убрал 2301 и все заработало, что это такое не знаю и откудя ….
А вспомнил в Редакторе шаблонов устройств — Параметры шаблона — Порядок байт по умолчанию 2 байта !!! Я их туда поставил…
Ну теперь точно все работает!
Oakim
УчастникВ общем на приборах Овен КТР 121-10 помогло и теперь все данные читаются, а вот на КТР 121-41 не помогло, читаются только битовые регистры и типа Float, а типа ushort нет.
В чем причина не пойму все настройки для всех КТР 121 абсолютно одинаковые.
Oakim
УчастникСпасибо большое, помогло!
Oakim
УчастникНастройка сигнала в Owen OPC:
Настройка сигнала в Коммуникаторе:
Настройка сигнала в Каналах:
Oakim
УчастникКак раз использование SVG графики для интерфейса HMI самое то,
— картинка это xml который поддерживается всеми браузерами,
— занимает меньше места,
— не нужна гора одинаковых картинок ведь достаточно изменить какое нужно свойство
— отлично выглядит на экранах любых размеров.
Куча плюсов от внедрения данного форматаOakim
УчастникХорошо сделаю скриншоты
Oakim
УчастникЯ тут еще немножко подумал (утро вечера мудренее и еще ролик по использованию SVG в WinCC посмотрел 😉 ), а что если сделать так, ведь SVG это XML
— открываем картинку
— пробегаем по ней в поисках id
— если есть id, то ищем свойства типа «цвет заливки», «толщина обводки» и отображаем их
— если нет id, то работаем с ней как с обычной картинкой с подменой
— после чего передаем в Редактор и он должен сделать тоже самое, но уже создать поля согласно id svg для привязки к параметрам сигналовOakim
УчастникЯ нашел вашу тему по разработке SVG редактора для СКАДы и могу сказать, что вы все правильно понимаете и даже больше чем я.
Но как по мне именно редактор для SVG «пилить» нет смысла, так как их сейчас безплатных предостаточно Inkscape, Figma, Pixso и пр.
Нужно в менеджер по добавлению картинок возможность отображать id и свойства фигур под этими id, а в редакторе возможность этим id и их свойствам привязывать сигналы.
В принципе судя по вашей переписке вы, как раз этим и занимаетесь.
Oakim
УчастникСмысл тут вот в чем в файле SVG разным элементам можно присвоить уникальные id через которые можно изменять свойства этих элементов такие, как цвет, видимость и пр.
Вот один из примеров использования (надеюсь Админы этот наглядный пример не забанят)
Masterscada4d и SVG файлы. Инструция от ОлегаЕсть еще SCADA/HMI от ECAVA которая использует Плагин SAGE к Inkscape который позволяет «готовить» svg файлы для SCADA, но с ним я пока до конца не разобрался.
P.S. К сожалению на форуме нет лички, так бы через нее это бы отправил.
Oakim
УчастникЕсли это реализуете, то будет замечательно!
Oakim
УчастникЯ статус канала определяю формулой Stat(номер канала с измерением), но иногда формула возвращает Статус не «0» или «1», а «13», тогда нужно дописать формулу которая будет проверять значение Состояния канал меньше «0» или больше «0», как то так.
Oakim
УчастникУ канала Статус которого я проверяю границы не заданы.
Oakim
УчастникА мне нужно что бы была «1», тогда к нему можно статус привязать «Нет»/»Да», как это изменить и почему на других каналах этаже формула возвращает «1»
Oakim
УчастникИ появился еще один вопрос: я определяю состояние связи с объектом через формулу
Stat(номер канала с измерением), раньше значение возвращаемое этой формулой всегда было равно «1», если связь в норме, но с недавних пор на некоторых объектах эта формула стала возвращать значение «13», почему?Oakim
УчастникМне помогла формула Михаила из Темы Ограничить Максимум на графике получилось отфильтровать неадекватные показания, но я ее немного изменил так как у меня неправильные значения всегда меньше нуля, то формула
Cnl; Cnl < 0 ? 0 : CnlStat
-
АвторСообщения