Конвертация floating-point в integer

Hardwarest
Рядовой
Сообщения: 43
Зарегистрирован: 25.12.2019{, 19:40}
Репутация: 5
Имя: Кирилл
Контактная информация:

Конвертация floating-point в integer

#1

Сообщение Hardwarest » 17.03.2021{, 18:53}

Есть некий прибор, счетчик энергии. Подключить, подключил с бубном. Теперь дилемма. Как его читать, он дает floating-point, а как его переводить в понятные цифры затрудняюсь.
изображение_viber_2021-03-14-22-54.jpg
Например пытаюсь вывести напряжение, а имею вот
55555.jpg
Main Board подключаю счетчик.flp
(276.39 КБ) 28 скачиваний

com
Капитан
Сообщения: 831
Зарегистрирован: 31.05.2018{, 22:12}
Репутация: 83
Откуда: Санкт-Петербург
Имя: Ринат

Конвертация floating-point в integer

#2

Сообщение com » 17.03.2021{, 19:48}

Скажите, а зачем плодить разные темы с одинаковым вопросом? Если кто то знает, ответит. Ну можно старую тему поднять чуть погодя

Hardwarest
Рядовой
Сообщения: 43
Зарегистрирован: 25.12.2019{, 19:40}
Репутация: 5
Имя: Кирилл
Контактная информация:

Конвертация floating-point в integer

#3

Сообщение Hardwarest » 17.03.2021{, 19:56}

Вопрос разный, там как читать, вроде разобрались что китайцы чуть про своему сделали, а тут как конвертировать типы...

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

Конвертация floating-point в integer

#4

Сообщение AlexCrane » 17.03.2021{, 20:25}

Hardwarest, А если так
Main Board подключаю счетчик2.flp
(266.9 КБ) 31 скачивание
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

Hardwarest
Рядовой
Сообщения: 43
Зарегистрирован: 25.12.2019{, 19:40}
Репутация: 5
Имя: Кирилл
Контактная информация:

Конвертация floating-point в integer

#5

Сообщение Hardwarest » 17.03.2021{, 20:49}

AlexCrane писал(а):
17.03.2021{, 20:25}
Hardwarest, А если так
Main Board подключаю счетчик2.flp
Я так уже пробовал))) Не канает))) С 0 "регистра хранения" мы читаем битрейд) Можно еще его записать, этим поменять бит рейд.
Показываю наглядно:
изображение_viber_2021-03-17_19-49-18.jpg

Тут читать надо с регистров "Аналоговый вход" причем высокий и низкий бит и как то конвертировать с floating-point в читаемое. А вот как это делать хз.

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Конвертация floating-point в integer

#6

Сообщение Sancho » 17.03.2021{, 20:58}

Выкладывал где-то блок - два инта в флоат...
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Аватара пользователя
nalnik
Подполковник
Сообщения: 1324
Зарегистрирован: 14.05.2016{, 17:12}
Репутация: 100
Откуда: Кисловодск
Имя: Александр

Конвертация floating-point в integer

#7

Сообщение nalnik » 17.03.2021{, 21:03}

Может попробуете изменить порядок приема данных?
СпойлерПоказать
fl.PNG
fl.PNG (5.65 КБ) 524 просмотра
AB CD
CD AB
... там четыре варианта.
СпойлерПоказать
fl1.PNG
fl1.PNG (4.58 КБ) 522 просмотра
Я хочу быть добрее, но люди сами нарываются.

Hardwarest
Рядовой
Сообщения: 43
Зарегистрирован: 25.12.2019{, 19:40}
Репутация: 5
Имя: Кирилл
Контактная информация:

Конвертация floating-point в integer

#8

Сообщение Hardwarest » 17.03.2021{, 22:14}

nalnik писал(а):
17.03.2021{, 21:03}
Может попробуете изменить порядок приема данных?
СпойлерПоказать
fl.PNG
AB CD
CD AB
... там четыре варианта.
СпойлерПоказать
fl1.PNG
Не совсем канает, input registers выдаёт только integer без возможности выбора.
Менял ради эксперимента, никак.
Поменял в integer, тоже что-то не то, но ближе к правде. Очень обманывает...
Вот тут с прибором
изображение_viber_2021-03-17_21-09-15.jpg
Самое интересно как расшифровать адрес?
К примеру Low 00 High 00, или Low 00 High 08... А самое как Low 00 High 2A. Что вбивать в адресс то..

Sancho писал(а):
17.03.2021{, 20:58}
Выкладывал где-то блок - два инта в флоат...
Интересно бы глянуть...

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

Конвертация floating-point в integer

#9

Сообщение AlexCrane » 17.03.2021{, 22:28}

Hardwarest писал(а):
17.03.2021{, 22:14}
К примеру Low 00 High 00, или Low 00 High 08... А самое как Low 00 High 2A. Что вбивать в адресс то..
Адрес в формате uint и состоит из двух байт. Можно расшифровать на калькуляторе windows в режиме программист.... набираешь к примеру 0100 (total active power) и видишь в DEC 100 :smile171:

Float состоит из четырех байт можно вычитать два интежера к примеру по адресу 0100 и 0103 и склеить из них Float
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

Hardwarest
Рядовой
Сообщения: 43
Зарегистрирован: 25.12.2019{, 19:40}
Репутация: 5
Имя: Кирилл
Контактная информация:

Конвертация floating-point в integer

#10

Сообщение Hardwarest » 17.03.2021{, 22:31}

AlexCrane писал(а):
17.03.2021{, 22:28}
Hardwarest писал(а):
17.03.2021{, 22:14}
К примеру Low 00 High 00, или Low 00 High 08... А самое как Low 00 High 2A. Что вбивать в адресс то..
Адрес в формате uint и состоит из двух байт. Можно расшифровать на калькуляторе windows в режиме программист.... набираешь к примеру 0100 (total active power) и видишь в DEC 100 :smile171:

Float состоит из четырех байт можно вычитать два интежера к примеру по адресу 0100 и 0103 и склеить из них Float
А это Уважаемый уже конструктив!
Клеить случайно не при помощи "Конвертации типов" Byte -> World?

Отправлено спустя 3 минуты 23 секунды:
Вы конечно простите, но к примеру два раза по два 00 я не могу вбить( Чтобы получить вольтаж

Отправлено спустя 38 секунд:
Я в программировании ну совсем никак :smile44:

Аватара пользователя
AlexCrane
Капитан
Сообщения: 895
Зарегистрирован: 20.10.2017{, 13:22}
Репутация: 294
Откуда: Ульяновск
Имя: Александр

Конвертация floating-point в integer

#11

Сообщение AlexCrane » 17.03.2021{, 22:39}

Hardwarest писал(а):
17.03.2021{, 22:35}
Вы конечно простите, но к примеру два раза по два 00 я не могу вбить( Чтобы получить вольтаж
Много нулей все равно будет ноль как ни крути ( один вариант только знаю как из двух нулей сделать единицу). Адрес для вольтажа 0.
Блок просите у Sancho помню он выкладывал, но у себя что-то не нашел...
Если не знаю, то не скажу. Если скажу, то сначала проверю...
Если нет возможности отблагодарить материально, хотя бы оцени пост....

Hardwarest
Рядовой
Сообщения: 43
Зарегистрирован: 25.12.2019{, 19:40}
Репутация: 5
Имя: Кирилл
Контактная информация:

Конвертация floating-point в integer

#12

Сообщение Hardwarest » 17.03.2021{, 22:42}

Я правильно понимаю если лоу байт 00 это 0, а хай бай 00 тоже 0
И клеить их из двух адресов

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Конвертация floating-point в integer

#13

Сообщение Sancho » 18.03.2021{, 10:22}

Hardwarest, Попробуйте этот проект.
Подключите нагрузку.
Сделайте замеры тока и напряжения.
Выложите сюда вместе с показаниями индикатора.
Сделаю блок.

Отправлено спустя 1 минуту :
Старый блок мне не нравится.
Вложения
Main Board подключаю счетчик тест 01.flp
(349.87 КБ) 30 скачиваний
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Hardwarest
Рядовой
Сообщения: 43
Зарегистрирован: 25.12.2019{, 19:40}
Репутация: 5
Имя: Кирилл
Контактная информация:

Конвертация floating-point в integer

#14

Сообщение Hardwarest » 18.03.2021{, 11:35}

Sancho писал(а):
18.03.2021{, 10:23}
Hardwarest, Попробуйте этот проект.
Подключите нагрузку.
Сделайте замеры тока и напряжения.
Выложите сюда вместе с показаниями индикатора.
Сделаю блок.

Отправлено спустя 1 минуту :
Старый блок мне не нравится.
Пока сделал Вольтаж. Чуть позже ток. Отправлено спустя 17 минут 46 секунд:
И ток)

edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20.09.2019{, 11:38}
Репутация: 65
Имя: Эдуард

Конвертация floating-point в integer

#15

Сообщение edyapd » 18.03.2021{, 12:45}

Посмотрел первое видео, да, выдаёт то, что нужно.
К примеру смотрим два числа 17216 и 6554. Переводим их в HEX 4340 199A. Для проверки загоняем СЮДА. Нам говорят, что это 192.1.
Потом идём на ЭТОТ САЙТ и вставляем эти два числа без пробела. Жмём перевести обратно в десятичное представление и Решить. И нам разъясняют, как оно преобразуется.

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Конвертация floating-point в integer

#16

Сообщение Sancho » 18.03.2021{, 13:00}

Hardwarest, Пробуй.
Дальше сам экспериментируй.

Отправлено спустя 4 минуты 16 секунд:
edyapd, Я пользуюсь этим

Отправлено спустя 5 минут 12 секунд:
edyapd писал(а):
18.03.2021{, 12:45}
К примеру смотрим два числа 17216 и 6554. Переводим их в HEX 4340 199A. Для проверки загоняем СЮДА. Нам говорят, что это 192.1.
Потом идём на ЭТОТ САЙТ и вставляем эти два числа без пробела. Жмём перевести обратно в десятичное представление и Решить. И нам разъясняют, как оно преобразуется.
И конкретно чешем репу - как это сделать в блоке? :)

Нужно будет оформить в разделе пользовательских блоков - сложно нужное найти в отдельном посте в какой-то теме.
к вечеру сделаю. постараюсь. :)
Вложения
Main Board подключаю счетчик тест 02.flp
(374.15 КБ) 38 скачиваний
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Hardwarest
Рядовой
Сообщения: 43
Зарегистрирован: 25.12.2019{, 19:40}
Репутация: 5
Имя: Кирилл
Контактная информация:

Конвертация floating-point в integer

#17

Сообщение Hardwarest » 18.03.2021{, 17:30}

По финалу даже подробное видео запилю))) Если Вы не против

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Конвертация floating-point в integer

#18

Сообщение Sancho » 18.03.2021{, 17:33}

Hardwarest, Результат есть, промежуточный?
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Hardwarest
Рядовой
Сообщения: 43
Зарегистрирован: 25.12.2019{, 19:40}
Репутация: 5
Имя: Кирилл
Контактная информация:

Конвертация floating-point в integer

#19

Сообщение Hardwarest » 18.03.2021{, 17:33}

Sancho писал(а):
18.03.2021{, 13:09}
Hardwarest, Пробуй.
Дальше сам экспериментируй.
Идеально!
Вложения
изображение_viber_2021-03-18_16-34-42.jpg

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Конвертация floating-point в integer

#20

Сообщение Sancho » 18.03.2021{, 17:37}

Hardwarest, Будет засада при добавлении нескольких блоков.
временная переменная будет несколько раз.
Чтобы сильно не заморачиваться, можно сделать отдельно блок, на первой плате, в котором она будет в loop объявляться.
Второй вариант - сделать в блоке, отдельном, функцию.
Вложения
Main Board подключаю счетчик тест 03.flp
(447.41 КБ) 27 скачиваний
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Ответить

Вернуться в «Помогите, а то я "нимагу"»