Страница 2 из 6 ПерваяПервая 1234 ... ПоследняяПоследняя
Показано с 11 по 20 из 58

Тема: Получение значений float32

  1. #11
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,243

    По умолчанию

    А я устал уже повторять что модбас это стандартный протокол, он собирается и разбирается по одним и тем же законам, что во второй что в третьец версии

  2. #12

    По умолчанию

    Цитата Сообщение от инок Посмотреть сообщение
    Извините Александр.
    Вы бы не могли, если Вас это не затруднит описать как собирать во флоат словами, как у Вас построен алгоритм разбора флоат для передачи по Модбас. Понятно что 4 алгоритма разборки, какой применяете ВЫ.
    Именно так, как в примере описано.

  3. #13

    По умолчанию

    Хорошо. Если Вы так упрямо стоите на своем, то объясните почему в CDS2.3 я этого не делал.

  4. #14

    По умолчанию

    Может быть у Вас это коммерческая тайна? Почему если в данной версии нет того же функционала, какой был в предыдущей Вы не напишите пользователям внятной инструкции. Вы поймите мы работу делаем и занимаемся разработками малую часть своей деятельности. У меня нет времени долго и нудно сидеть и разбираться в этом вопросе. За то время которое я убиваю не понятно на что, я бы уже написал программу по обработке флоатовского значения, а я тупо не могу нормально получить значения веса, который выдает Ваш же прибор, а не прибор стороннего производителя. Подумайте над моими словами, мы в конце концов Ваши партнеры.

  5. #15

    По умолчанию

    Я Ваш пример в проект встроил, но значения REAL отличаются от значений которые у меня выдает прибор в программе на CDS2.3. Там у меня выдает -9.8....... а здесь.... высылаю скриншот.
    Изображения Изображения
    Последний раз редактировалось инок; 10.09.2013 в 23:37.

  6. #16
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,243

    По умолчанию

    А код без онлайн можно увидеть, а то как то не вяжеться мысль что Вы тосуете байты местами, если одни и теже значения три раза повторяются и указатель из указателя это вообще круто, в каком примере это описано?

  7. #17

    По умолчанию

    Этот пример программы мне прислал СуперМодератор в первом ответе можете оригинал посмотреть.
    Я не супер программист, но я тоже немного засомневался и попросил словами объяснить, может у меня лучше бы получилось. Просто нужно понять, что нужно сделать. Я из этого текста кода просто даже понять не могу ни чего и тем более внятно объяснить.
    Последний раз редактировалось инок; 11.09.2013 в 00:30.

  8. #18

    По умолчанию

    Цитата Сообщение от инок Посмотреть сообщение
    Я Ваш пример в проект встроил, но значения REAL отличаются от значений которые у меня выдает прибор в программе на CDS2.3. Там у меня выдает -9.8....... а здесь.... высылаю скриншот.
    А байты сами пробовали перетосовать?
    Этот код я использовал при опросе значений с МВ110-8А.
    Если получится, попробую сегодня проверить на 4ТД.

  9. #19
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,243

    По умолчанию

    Цитата Сообщение от инок Посмотреть сообщение
    я тоже немного засомневался и попросил словами объяснить
    Ссылка на ссылку это как бы нормальное дело, но в плк это делать лучше имея большой опыт, меня удивило что так предлагают в примерах для новичков, считаю что надо показывать каждый шаг в таких делах, вот этоо реал, вот это указатель на реал, вот это массив из четырех байт, вот указатель ложим в ячейку массива, вот дедаем смещегие указателя, снова ложим и т.д.
    Тогда новичку было бы ронятно

  10. #20
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,840

    По умолчанию

    Цитата Сообщение от инок Посмотреть сообщение
    Извините Александр.
    Вы бы не могли, если Вас это не затруднит описать как собирать во флоат словами, как у Вас построен алгоритм разбора флоат для передачи по Модбас. Понятно что 4 алгоритма разборки, какой применяете ВЫ.
    Для начала о формате Float. Число в этом формате представлено в виде мантиссы и экспоненты+знак числа. Для представления такого числа используются 32 бита=4байта=2WORD.
    Есть такой онлайн ресурс http://www.binaryconvert.com/convert_float.html, где можно проводить преобразование чисел из одного формата в другой.
    Так вот, попробую с его помощью объяснить почему возможны 4 варианта
    Вот так выглядит представление числа Float
    1.png
    Хорошо видно где находятся знак, мантисса и экспонента.
    В ПЛК число "1" должно быть представлено так
    2.png
    Как уже было сказано, в стандарте на протокол ModBus не описано как должны передаваться 32-битные числа в формате Float. Просто для предачи 32 бит используют передачу двух 16-битных регистров WORD. Назавем их WORD_0 и WORD_1
    В каком порядке будет передавать эти WORD в Ваш ПЛК подключенное к нему Slave устройство выбрал изготовитель Slave устройства, так как ему понравиться. Ведь стандарта нет.
    Мало того, что порядок передачи регистров может быть WORD_0,WORD_1 или WORD_1,WORD_0.
    Так еще есть два вариант упаковки байт исходного числа в WORD.
    Вот и получаются еще три варианта в дополнение к выше приведенному.
    3.png
    4.png
    5.png
    Можете попробовать вставить сюда 2 WORD, которые Вы прочитали из Slave, может будет понятно в каком порядке нужно будет переставлять байты (какой из четырех алгоритмов использовать)
    Последний раз редактировалось petera; 11.09.2013 в 12:04.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

Страница 2 из 6 ПерваяПервая 1234 ... ПоследняяПоследняя

Похожие темы

  1. Как читать Float32 по Modbus-RTU
    от servo в разделе ПЛК1хх
    Ответов: 8
    Последнее сообщение: 13.03.2019, 09:30
  2. Получение данных с датчиков
    от qawaq в разделе Помощь Разработчикам
    Ответов: 8
    Последнее сообщение: 13.05.2013, 18:54
  3. Получение сертификата.
    от smk1635 в разделе Трёп (Курилка)
    Ответов: 8
    Последнее сообщение: 13.08.2011, 20:58
  4. ТРМ32+ПЛК110 (FLOAT32)
    от DiMKiN в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 26.05.2011, 15:58
  5. Получение данных от МВА8
    от КИПиА в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 03.03.2008, 14:10

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •