Ответы в темах
-
АвторЗаписи
-
AlexanderUshakov
УчастникПотому что люди, которые его администрируют работают в другом отделе и им якобы трудно, неудобно, очень заморочено заводить тэги в соответствии их реальным типом данных, а в стринг они где-то там используют у себя и им достаточно, мне сложно сказать, мне просто поставили задачу забрать у них данные и вывести в СКАДУ.
Раз уж оффтоп по OPC-серверу. Скажите у меня есть kepserver с которого мастерскада4D забирает параметры. Безопасность и шифрование выключены. Но я не могу подключиться из Рапид Скады к нему, пишет «Ошибка соединения с ОРС-сервером: Certificate doesn’t meet minimum key lenght requrement»AlexanderUshakov
УчастникМихаил, сделал как вы сказали, динамический рисунок заработал.
Получается мне все каналы для динамических рисунков через конвертацию в расчетные каналы делать?
Попробовал сделать тип пустой у родного канала 124 и вашу формулу, получаю 0, что недостоверноAlexanderUshakov
УчастникМихаил, сделал так:
Добавил канал
Номер «159»
Наименование «Расчетный»
Тип данных «Integer»
Тип канала «Расчётный»
Формат «Строка»
Формула «Val(135)» 135- это канал с температурой.
Канал 158 оставил с формулой DecodeUnicode(Val(124)) == «1» ? 1 : 0
Результат в визуализации:
Канал 159 показывает 0, а канал 135 напрямую 14,6 С
Канал 158 показывает 1, канал 124 напрямую 1
https://disk.yandex.ru/i/6omLFWOyDx69TA -администратор
https://disk.yandex.ru/i/uuPv4Trm62oo6Q -отображениеДалее сделал следующее:
Канал 159 поменял тип на Unicode string получил в визуализации:
Канал 159 показывает 1.33, а канал 135 напрямую 14,7 С
https://disk.yandex.ru/i/JyFEIpNcRY84Ug -администратор
https://disk.yandex.ru/i/Qv65Lu39DIu_sg -визуализацияНо потом выключился вентилятор и рисунок принял значение 0 — появился красный треугольник. Потом Вентилятор включился, принял значение 1, но треугольник на зеленый не поменялся, появилось изображение по умолчанию — серый треугольник.
AlexanderUshakov
УчастникМихаил,у меня приходит из OPC сервера в Unicode string.
Я в «Каналах», выбрал «Пустое устройство», там добавил канал:
Номер «158»
Наименование «Расчетный»
Тип данных «Integer»
Тип канала «Расчётный»
Входная формулаDecodeUnicode(Val(124)) == "1" ? 1 : 0124-канал это статус работы вентилятора 1 или 0 в Unicode stringПроект компилируется.
Канал 124 в Unicode string в динамическом тексте показывает 1
Канал 158 в Integer в динамическом тексте показывает 1
Канал 158 в Integer в динамическом рисунке изображение НЕ МЕНЯЕТСЯ. Настройки условия Знач.=1 — Зеленый треугольник, Знач.=0 Красный треугольник, Изображение по умолчанию — Серый треугольник.
Что я делаю не так?-
Ответ изменён 4 года, 2 месяца назад пользователем
Mikhail.
AlexanderUshakov
УчастникСделал конвертацию и из double в строку потом в int и просто из double в int. Проект работает, но картинка не меняется.
Но если выводить в динамический текст, то значение меняется с 0 на 1 и обратно. Причем, если я у канала ставлю Формат D вместо Строка, то получаю в тексте «!!!»
Хотя я же в int сконвертировал, и значение должно быть в int и понимать формат этот.
Если поле формат вообще пустым оставляю, то динамический текст корректно работает.AlexanderUshakov
УчастникСпасибо за замечание.
Сделал так:
1. Написал StrToInt(Val(135)) в ячейке входная формула.
2. В ячейке Формат указал D.Проект не запускается, запись в журнале:
[ERR] Ошибка при компиляции исходного кода скриптов и формул: (362,61):error CS1503: Argument 1: cannot convert from ‘double’ to ‘string’почему описана конвертация из дабл в стринг?
ради интереса выбрал встроенный скрипт public double EncodeUnicode(string s)
результат получил точно такой жеAlexanderUshakov
Участник«Либо нужно в формуле канала преобразовать строку в число»
А формула должна быть входная или выходная? Или без разницы?
А то у меня как-то не вышло.
Сделал такой скрипт
public int StrToInt(string s)
{
int stringToInt = Convert.ToInt32(s);
return stringToInt;
}включил формулу и в клетке Входная формула написал — StrToInt(135) 135- это номер канала, проект у меня не запустился.
-
Ответ изменён 4 года, 2 месяца назад пользователем
-
АвторЗаписи