Wendigo
Junior Member / Новичок
Участник № / Member № 4518
отправлено / posted
прибор выдает данные в виде signed word. два байта, знаковое число. Значение -1 представлено в виде 0xFFFF Создаю канал1 Float, связываю с источником(прибором) Далее, на экране создаю каналы, привязанные к канал1 с типами int(наиболее подходящий), uint, sint, usint, real, dint, udint. Вывожу в текстовые поля с различным форматированием, вывожу их же в мигающий контур, по условию значение>10. В итоге значения представлены как FFFF, 65535, 65535.000, 6.554e+004, контур мигает, что неверно. Почему не работает типизация и как вывести значение -1?
[ 04.12.2012, 13:29: Сообщение отредактировал / Message edited by AdAstra Technical Support ]
Сообщения / Posts 18 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
В ближайшем релизе будет введена возможность отображения значения HEX-канала в виде знакового целого числа.
Сообщения / Posts 17317 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Wendigo
Junior Member / Новичок
Участник № / Member № 4518
отправлено / posted
релиз 6.08 Проблема все ещё не решена! прибор выдает по Modbus Tcp значения в диапазоне -10:100 Signed Word. канал источника - Rout_Word -10 представлено как FFF6 канал в RTM типа hex16 привязан к источнику в экране все каналы разного типа привязаны к каналу RTM типа hex16 эмуляция правильно отображает отрицательные числа, а профайлер нет. почему? хостинг изображенийСообщения / Posts 18 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Надо установить каналу HEX16 флажок "Вид представления DEC", привязать его к аргументу экрана с типом данных INT (знаковое!), а в соответствующем ГЭ "Текст" выбрать формат "По умолчанию" или "Integer %hd".
Сообщения / Posts 17317 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Wendigo
Junior Member / Новичок
Участник № / Member № 4518
отправлено / posted
Спасибо, флажок DEC изменяет механизм типизации. Однако, логически правильный тип канала Int (знаковое 16 бит) отображает числа неверно(65536) как в текстовом окне, так и в архивном тренде. Как временное решение - аргумент экрана с типом DINT отображает отрицательные числа в рабочем диапазоне -10:100 верно
Сообщения / Posts 18 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
В Trace Mode 6 канала типа INT, есть каналы типа HEX, основное назначение которых - хранение, обработка, архивирование упакованных бинарных сигналов. На тренде эти каналы отображаются набором отдельных битов. Для отображения хранимого в канале HEX значения в ГЭ "Текст" в виде целого со знаком предложен описанный выше механизм, который никак не противоречит типизации данных.
Сообщения / Posts 17317 | Из / From: Россия
| IP / IP: IP адрес / IP address |