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

Ввод числа целого типа

СообщениеДобавлено: Вт ноя 13, 2007 2:07 pm
Виталий Л.
Здраствуйте!
Есть число в контроллере типа Integer, например 297. В Интаче несложно отобразить его как (Температура=29,7). Но как осуществить ввод в формате real(float)? Например ввел 32.5, экране 32,5, в контроллере 325?
Есть ли простое решение?

СообщениеДобавлено: Вт ноя 13, 2007 2:20 pm
Admin
Заходите в визарды, выбираете подходящий Value Dispaly и привязываете к нему вещественный тэг. Поставьте галочку Allow Input.
Теперь Вы можете вводить в рантайме вещественные значения (разделителем служит .)
Однако если Вы хотите передать это значение на контроллер например по Modbus, то требуется сначала преобразовать его в целое, поскольку данный протокол хранит данные в формате
unsigned int 16 []

СообщениеДобавлено: Ср ноя 14, 2007 5:41 pm
Dimitor
Я бы в этом случае создал тег типа IOReal и настроил в нем преобразование масштаба с 10-кратным изменением диапазона.
Например, следующим образом:
Min EU = -10000 Min Raw = -100000
Max EU = 10000 Max Raw = 100000

преобразование работает в обе стороны

проверил только что на excel-е, работает, но и с контроллерами я такую фишку вроде проворачивал