Страница 1 из 1

Тип Float

СообщениеДобавлено: Чт ноя 15, 2007 5:00 pm
Casey
Здравствуйте. Подскажите есть ли решение проблемы. Обращаюсь к квик-функцие с real параметром. Этот параметр имеет много знаков после запятой, но в функцие этот параметр округляется до второго знака :( . Например, если параметр 1023.625, то в функции будет 1023.63. Можно ли сделать, чтоб не округлялось мое число?

СообщениеДобавлено: Чт ноя 15, 2007 5:14 pm
rys
У Вас I/O Real параметр??
Смотрите в настройках тэга MAX EU и RAW. И MIN......те, например, 999.999999.
Или так: Text( Oil1_Press_Line2 , "#.0000000"). Или я не так поняла???

СообщениеДобавлено: Чт ноя 15, 2007 6:37 pm
Dimitor
Поподробнее бы описали проблему...
Навскиду могу предположить, что
1. если значение проходит через REAL тег, то у этого тега надо проверить deadband (зону нечувствительности) и поставить в нем 0, если нужна максимальная точность
2. если на экран значение выводите с помощью "текстового поля", то там точность значения определяется шаблоном вида #.###### - чем больше решеток после точки, тем точнее
3. если используете преобразование функцией Text, то, как заметил оратор выше, там тоже настраивается точность возвращаемого значения (во втором параметре функции)

СообщениеДобавлено: Пт ноя 16, 2007 11:16 am
Casey
Сначала я тоже решил, что проблема в шаблоне, но оказалось нет.
Разъясняю далее подробнее. Мою проблему удалось свести к
следующей более простой.Определяю Тэг типа Memory Real:
Min/Max Value +/- 320000
Deadband 0
Initial Value 0.625

Нажимаю Save. Все сохраняется отлично.
А теперь другой пример, где происходит округление:

Определяю Тэг типа Memory Real:
Min/Max Value +/- 320000
Deadband 0
Initial Value 1000.625

Нажимаю Save. Initial Value становится равным 1000.63
Сразу не видно, надо выйти из настроек тэга, а потом зайти снова.

Если ответите как убрать округление, то ответите на вопрос топика.
Спасибо.

СообщениеДобавлено: Пт ноя 16, 2007 2:37 pm
Admin
Уважаемый Casey,

действительно есть такая беда (сам удивлен).
Утешает лишь то что округление (седьмого дес. знака) возникает только при инициализации, а потом все отрабатывает нормально.
То есть желательно инициализировать переменную нулем.