Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 6 » Общие вопросы / Common questions » Отображение отрицательного значения

   
Автор / Author Тема / Topic: Отображение отрицательного значения
kashpir88
Junior Member / Новичок
Участник № / Member № 8429


Icon 1 отправлено / posted      Профиль для / Profile for kashpir88           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Здравствуйте.
Чтение с контроллера происходит каналом класса Call ChGrReq, тип данных INT. Все читается правильно (значение нужного аргумента = -40). Привязываю канал класса Float с масштабированием 0.1 к аргументу групп реквеста. По идее на выходе должно быть значение -4. Но отображается значение 65000+ (примерно). В атрибутах канала Float тип данных на реальном значении, входном и аппаратном автоматически выставился REAL.
Как мне получить корректное отображение отрицательных чисел?

Сообщения / Posts 12 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
kashpir88
Junior Member / Новичок
Участник № / Member № 8429


Icon 1 отправлено / posted      Профиль для / Profile for kashpir88           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Было выявлено следующее:
Без масштабирования канал Float отображает число корректно, при применении масштабирования, видимо, происходит перевод в другой тип данных, беззнаковый, а перевод обратно не производится.

Сообщения / Posts 12 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Какой Вы используете релиз TRACE MODE 6?
Описанная ситуация воспроизводится без источника/приемника, но при ручном вводе отрицательного значения в аргумент канала Call.CGR?

Сообщения / Posts 17322 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
kashpir88
Junior Member / Новичок
Участник № / Member № 8429


Icon 1 отправлено / posted      Профиль для / Profile for kashpir88           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Версия 6.10.1
Описанная ситуация воспроизводится как с источником\приемником, так и без него. Т.е. при переводе атрибута состояния в off и ручной записи в аргумент канала CGR отрицательного значения.

При масштабировании канала на целое число, отображение происходит корректно

Сообщения / Posts 12 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
задать тип аргумента DINT
Сообщения / Posts 875 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
kashpir88
Junior Member / Новичок
Участник № / Member № 8429


Icon 1 отправлено / posted      Профиль для / Profile for kashpir88           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Не помогло данное решение. Пробовал создать новый проект. Исходные данные: канал класса float и канал класса CGR. канал класса float (привязан к аргументу Arg00 канала CGR) и имеет множитель 0,1 в обработке. Тип данных аргумента Arg00 DINT; тип данных аргумента экрана DINT. Вывод значения канала float на экран в текстовое поле.
При подаче через панель МРВ в Arg00 положительного значения, выводимое значения канала float на экран корректное, при подаче отрицательного значения происходит искажение типа данных (определить тип данных не получается), выводимое значение не корректное.

Сообщения / Posts 12 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Тип аргумента у канала Call.CGR и Call.Screen - INT
У аргумента канала Call.CGR будет отображено отрицательное значение.
Аргумент привязан к Входному значению канала Float, с масштабированием.
Значение,отображаемое в канале float будет целочисленным с учетом масштабирования.
На экран выводится Реальное значение канала Float.
У ГЭ Текст в Формате укажите Integer %hd

Сообщения / Posts 17322 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


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



Powered by Infopop Corporation
UBB.classic™ 6.7.2