1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

Преобразовать в формат float

Unity Pro (Control Expert), Quantum, Premium, M340, M580, Hybrid DCS, Process Expert, Zelio, Twido, M17*, M2**, SCADAPACK, SoMachine, MachineExpert, ZelioSoft, TwidoSoft, TwidoSuite, TelePace

Модератор: Специалисты SE

Ответить

Автор темы
a1dar_v
здесь недавно
здесь недавно
Сообщения: 89
Зарегистрирован: 01 июн 2016, 16:43
Имя: Валиев Айдар Илдусович
Благодарил (а): 7 раз
Поблагодарили: 1 раз

Преобразовать в формат float

Сообщение a1dar_v »

Здравствуйте. Необходимо преобразовать в другой формат параметр FT1, КАК ЭТО СДЕЛАТЬ? Кто-нибудь сталкивался этим?
Выкладываю проект. https://drive.google.com/file/d/1SHWQLz ... sp=sharing

ogorsv
завсегдатай
завсегдатай
Сообщения: 576
Зарегистрирован: 02 дек 2015, 06:57
Имя: Огородников Сергей
Страна: РФ
Благодарил (а): 120 раз
Поблагодарили: 103 раза

Преобразовать в формат float

Сообщение ogorsv »

Добрый день!

1. Открыл проект. Переменной FT1 нет. Есть только ФБ Scale_FT1 типа AI_Scale


2. Выход ФБ AI_Scale как раз типа REAL(FLOAT). Который потом преобразовывается в тип INT блоком REAL_TO_INT

3.
a1dar_v писал(а): 28 июл 2020, 08:29Необходимо преобразовать в другой формат
В какой формат?
Нужен Float (он же REAL) - получайте сразу на выходе блока AI_Scale
Нужен другой формат (какой?) - используйте блок перевода в другой формат (REAL_TO_DINT, REAL_TO_UDINT ...)
СВ

leon78
эксперт
эксперт
Сообщения: 1031
Зарегистрирован: 25 июл 2008, 10:06
Имя: Леонид
Страна: РФ
Благодарил (а): 34 раза
Поблагодарили: 110 раз

Преобразовать в формат float

Сообщение leon78 »

Надо иметь ввиду, что REAL_TO_WORD преобразует не в то же число, только в формате WORD (как это делают REAL_TO_INT, REAL_TO_UINT,...), а возвращает младшее слово из 2х WORD, составляющих REAL.
Поэтому если нужно число в формате WORD, надо сделать двойное преобразование - xWord := UINT_TO_WORD(REAL_TO_UINT(xReal));
Хард - это то, что можно швырнуть об стенку, а софт - это то, что можно лишь обматерить.
Ответить

Вернуться в «ПЛК»