При использовании в расчете беззнакового целого, оно воспринимается как знаковое, т.е. при 1 в старшем разряде числа - это отрицательное значение в доп. коде. Это ошибка? В справке указанный случай - не рассмотрен.
При использовании в расчете беззнакового целого, оно воспринимается как знаковое, т.е. при 1 в старшем разряде числа - это отрицательное значение в доп. коде. Это ошибка? В справке указанный случай - не рассмотрен.
А на закладке "Формула" тип данных тоже беззнаковый целый?
Выложите сюда пример проекта и укажите какое число вы задаете и что возвращает расчет (приложите скриншот).
Спасибо.
Вот скриншот. Проект я думаю не нужен. В режиме разработки тип беззнаковый целый.
Без проекта трудно понять какой тип у вас имеет значение uiE. Вещественный двойной точности?
Установите у значения тип "Вещественный двойной точности" и такой же тип в расчете (в таблице переменных - правая кнопка - Редактировать).
Спасибо.
uiE имеет тип "беззнаковый целый". Я правильно понимаю, что это 32 бит без знака? В проекте она получает значения типа uint32 от OPC Insat.
Переменная Е после ввода формулы имеет тип "вещественный двойной точности".
Мы уточнили у программиста - да, расчет не умеет работать с беззнаковыми числами. Но можно их преобразовать вначале в вещественное (сменить тип у переменной). Тогда операции над ними будут идти точно
Спасибо.
Тогда такой вопрос.
Эта переменная типа целый введена исключительно ради отсутствия ошибки округления значащих цифр при архивировании. Переход на вещественный в расчете - для вывода на мнемосхемы, тренды...
Выполнить преобразование в блоке повторитель? Или как?
Можно у самого расчета - на закладке "Формула", через контектное меню переменной вызовите ее редактирование, и задайте "Вещественный тип".
Спасибо.