Созданные ответы форума
-
АвторСообщения
-
AlexanderUshakovУчастник
Спасибо за помощь!
Я так понял в 6й версии можно для определенных тэгов период записи выбирать?AlexanderUshakovУчастникДа у нас большой проект с кучей оборудования, это время надо выделить. А пришел один пользователь и говорит мне нужны секундные данные, чтобы эффективность работы вакуумных насосов отслеживать. Вот думал быстренько что-то где-то подправить и пусть смотрит.
То есть я правильно понял, что мой предел это 30 секунд (поменять время в параметрах записи) и изменить в xml графиков период опроса на 30000 ?AlexanderUshakovУчастникВы имеете ввиду это?
<RefreshRate>60000</RefreshRate>
Что-то я поменял на 10000 ничего не произошло.
Да и если графики берут из минутного архива данные, то там нет секундных значений.AlexanderUshakovУчастникА можно поподробнее узнать в каких настройках?
в настройка сервер->Параметры записи ? Там вроде только 30 секунд минимумAlexanderUshakovУчастникОтвечу за коллегу, проблему решили.
На сервере в это время происходил процесс — Служба VSS выключается из-за тайм-аута простоя.
Решение — для службы VSS был выбран режим запуска «Автоматический».
Отключение ScadaServer и ScadaComm прекратились.AlexanderUshakovУчастникЧтобы задать цвет для записи в журнале событий
AlexanderUshakovУчастникСделал как вы написали и все получилось, спасибо всем за помощь!
Правильно я понял, что у расчетного канала, какой бы тип данных в него для расчета не передаешь, то он всегда преобразуется в double?AlexanderUshakovУчастникRomiros, сделал как вы описали, через мастера, все получилось, длинна данных сама определилась, и номера каналов перераспределились. Только теперь каналы на мнемосхеме поправить надо, смещение получилось.
Теперь мне надо в расчетном канале получается соединить значение Val(129) и Val(130) и сделать преобразование в Double? А то если написать просто DecodeUnicode(Val(129)), то он преобразует без пятой цифры, а DecodeUnicode(Val(130)) преобразует в одну недостающую пятую цифру, но DecodeUnicode(Val(129)+Val(130)) выдает значение 0, а string.Concat(Val(129), Val(130)) не компилируетсяAlexanderUshakovУчастникRomiros, так у меня же каналы приходят из OPC сервера, как они сканируются коммуникатором так и БК появляются, если я в БК принудительно правлю номер каналов например, из 150 каналов я каналу 129 ставлю длинна 2, а каналу 130 присваиваю номер в конце списка 151 и тоже длинну 2, чтобы 129 занял два места 129-130, то перенесенный канал 151 вообще не показывается. А при сканировании через Коммуникатор я не могу менять нумераци
AlexanderUshakovУчастникВообщем я в свойствах устройства сделал длинну строки 16, при опросе стали приходить корректные значения в таблице.
Но при выводе на схему обрезается одна цифра у значений с пятью цифрами.
Так же происходит корректное преобразование в double формулой DecodeUnicode(Val()), но так же без последней цифры.
То есть наглядно:
Фактическое значение параметра — 32525
При опросе через коммутатор в таблице — 32525
При отображении на схеме — 3252
При переводе в double — 3 252.00
Скрин: https://disk.yandex.ru/i/lV3RHVyQ4bc92Qполное значение получается добиться, если у входного параметра поставить длинну данных 2, а не 1, но тогда сбивается порядок каналов. Как я описывал ранее.
AlexanderUshakovУчастникRomiros, странно как то привязались, у Y1 длинна массива или строки 8 а у Y2 — 2. Оно же все автоматически установилось, получается надо править вручную и пересинхронизировать?
AlexanderUshakovУчастникИ еще такой момент. У меня значения стринг приходят не полностью. Вот скрин где сравнение с OPC клиентом и значений в скаде — значение Частота Вентилятора М3 — нет одной цифры, а Положение клапапна Y1 показано полностью, но при отображении на схеме тоже одной цифры не хватает:
https://disk.yandex.ru/i/GdaXArcf2_NIIg
Если я им делаю длинна — 2 то на схеме показывается полностью число. Но вот изза того что у Y1 и Y2 каналы идут друг за другом, канал Y1 как будто занимается два канала для значения. Поэтому Y2 на схеме показан некорректно. Скрин:
https://disk.yandex.ru/i/nIBPGpki44rmYAAlexanderUshakovУчастникМихаил, был в отпуске, снова вернулся в неравный бой со стринг параметрами.
Вот скрин, надеюсь я правильно понял, что вы просили сделать:
https://disk.yandex.ru/i/YDgzV5_GIwhNPwСамое интересное, что когда я делаю расчетный канал с типом UnicodeString и в формуле пишу Val(128), то он не пишет тоже значение что и у канала 128 с типом UnicodeString на прямую.
AlexanderUshakovУчастникМихаил, еще вопрос. Весь день сегодня убил, но вопрос решить не вышло. Все из-за это передачи в стринг.
У меня приходит значение от 0 до 32767, это открытие клапана. Надо его в проценты переделать, соответственно разделить текущее значение на 327.67, но у меня не выходит.
Если я прям в канале формулу делаю Cnl / 327.67, то получается некорректное значение (например 3,05, а должно быть 77).
Если я делаю расчетный канал,
«Тип данных — пустой», Формат D
И скрипт:
public double AnalogConv(double s)
{
return s/327.67;
}
то выходит просто 0
Что то не пойму логику преобразований каналов.AlexanderUshakovУчастникМихаил, спасибо, заработало. Я поправил все прям из администратора в конфигурационных файлах Коммуникатора DrvOpcUa.Logic.xml и DrvOpcUa.View.xml.
<!— WARNING: SHA1 signed certficates are by default rejected and should be phased out.—>
<RejectSHA1SignedCertificates>false</RejectSHA1SignedCertificates>
<MinimumCertificateKeySize>1024</MinimumCertificateKeySize> -
АвторСообщения