This is topic Некорректно вычитывает данные при активации «смена типа» [51] в канале типа OUTPUT in forum TRACE MODE 7 профессиональная версия / TRACE MODE 7 professional version at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/59/t/000044.html

Posted by ViktorMaleika (Участник № / Member № 9669) on :
 
Создал OUTPUT канал через который пишу значения в ModBus. Для задания значения использую «Обработка»- множитель [33] = 10, т.е. я на экране в элемент «физическая величина» задаю, к примеру 34 (и на экране в элементе «физическая величина» отображается 34), контроллер принимает значение 340. Всё работает как надо. У меня активирован атрибут смена типа [51]. При старте РТМ из контроллера вычитываются данные, но в элементе «физическая величина» отображается не 34, а 340. Как это исправить?
 
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
 
Здравствуйте.
Значения рассчитываются корректно.

Атрибут 51 (смена типа) однократно при запуске проекта меняет "направление" канала с Output (Запись) на Input (Чтение).

При этом, как описано в Справочной Системе для канала класса Analog, меняется порядок обработки канала.
Упрощенно, для Input: ...->In->Масштабирование->A->...->R
Упрощенно, для Output: ...->In->R->Трансляция->A->Q

quote:
Отправитель / Originally posted by ViktorMaleika:
...При старте РТМ из контроллера вычитываются данные, но в элементе «физическая величина» отображается не 34, а 340. Как это исправить?

Скорее всего, у Вас к аргументу экрана привязан аргумент (0,R). Для канала записи (output), с учетом активного масштабирования, значение аргумента R может отличаться от значение аргумента Q.

В Справке это описано.
Что бы при запуске в любой ГЭ, отображающей значение, было то, что в контроллере, привяжите атрибут Q.

Дополнительно.
Так как Оператор задает значение X, а передается отмасштабированное значение m*X, то, во избежание путаницы, рекомендуется рассмотреть вопрос необходимости привести все "к общему виду".
Т.е., или задавать то значение, которое будет передано в контроллер (надо передать 340? передаем 340) или в окне ввода ("ввести и передать") дополнительно сделать предупреждение (настройка "Подтверждение") вида "Будет передано отредактированное значение".

[ 01.04.2024, 12:48: Сообщение отредактировал / Message edited by АдАстра. Техподдержка ]
 
Posted by ViktorMaleika (Участник № / Member № 9669) on :
 
quote:
Отправитель / Originally posted by АдАстра. Техподдержка:

Скорее всего, у Вас к аргументу экрана привязан аргумент (0,R). Для канала записи (output), с учетом активного масштабирования, значение аргумента R может отличаться от значение аргумента Q.

Да, у меня привязан аргумент R. Но какой бы я аргумент не привязал, при старте канал output показывает не отмасштабированное значение, вычитанное из контроллера, т.е. в контроллере сейчас указано значение 445 (что соответствует заданной температур 44.5 градусов), при старте МРВ канал output вычитает и отобразит 445 (в атрибуте Q вычитается 4450), хотя надо чтобы отобразилось 44.5. Далее когда я введу к примеру 46.7 в контроллер запишется 467 (так и должно быть), и на аргументе экрана будет отображаться 46.7 (что тоже правильно). Получается проблема возникает только при старте, когда на аргументе экрана отображается не отмасштабированное значение
 
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
 
quote:
Отправитель / Originally posted by ViktorMaleika:
... при старте канал output показывает не отмасштабированное значение, вычитанное из контроллера, ...

Спасибо за информацию.
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2