Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » Пользователи для пользователей » Пользователи для пользователей » Преобразование 2х слов в реал

   
Автор / Author Тема / Topic: Преобразование 2х слов в реал
Артем ТрэйсМодФан
Junior Member / Новичок
Участник № / Member № 9130


Icon 5 отправлено / posted      Профиль для / Profile for Артем ТрэйсМодФан           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Коллеги, прошу помощи:
Появилась трудность с преобразованием данных.
По ссылке ниже пример проектика в котором указал, что делаю, и указал ожидаемые данные (проект накидан в базовой бесплатной версии).
Коротко проблема в следующем: из ОВЕН ПЛК210 получаю два регистра типа WORD в скаду. Создав программу по склейке слов, ожидаю получить на выходе переменную с точкой типа FLOAT. У меня не выходит, что я делаю не так.
Заранее спасибо.
ссылка на проект: https://disk.yandex.ru/d/CRiQfvO9BDQm0A

Сообщения / Posts 1 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
WORD – целочисленное значение. Его нельзя просто так взять и привести к вещественному виду (FLOAT).

Обычно либо с устройства считывают непосредственно вещественное число с плавающей запятой, либо в описании к устройству указано как преобразовывать считанное значение в необходимое (какие операции необходимо провести, например, разделить на 10, что бы из 123 получить 12,3).

Так как Вам необходимо из двух целочисленных (431B и BD00) получить одно вещественное (155.74), то не достаточно "склеить" два целочисленных.

После склейки необходимо произвести преобразование из целочисленного в вещественное. Описание преобразования изложено в IEEE 754.

Рекомендую использовать FBD-блоки. Сначала разбить оба WORD'а на биты, из всех бит выделить биты знака, экспоненты и мантиссы. Затем собрать их в три числа и провести мат.обработку.

Сообщения / Posts 17316 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2