Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 16 из 16

Тема: Обнуление значений после 65535

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

    По умолчанию

    в 4 байта можно закинуть дату до скончания 9999 и время с дискретностью 5 минут

  2. #12
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    8,305

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    в 4 байта можно закинуть дату до скончания 9999 и время с дискретностью 5 минут
    В смысле, Вы предлагаете товарищу вместо наработки дату выводить, на случай если он дату забудет? Хорошо, выведет он дату, как Вы предлагаете, в смысле, как он по дате узнает время наработки(моточасы)?
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  3. #13
    Пользователь Аватар для and909
    Регистрация
    25.10.2013
    Адрес
    Пермь
    Сообщений
    602

    По умолчанию

    Цитата Сообщение от Григори Посмотреть сообщение
    Думаю переменной с плавающей точкой будет достаточно для передачи показаний счетчика
    Использование для счетчика переменной Float не очень хорошая идея. Из-за особенностей округления чем больше будет число, тем большая ошибка будет в младших разрядах.

  4. #14

    По умолчанию

    Исходя из ответов буду пробовать использовать все же int32, всем спасибо за помощь

    Изначальная мысль про Float обусловлена задачей передачи показаний импульсного счетчика расхода воды (у которого 1 имп - 0.1 м3),
    а фото с 65535 - пример, это ретрансляция переменной с акрона по MB
    Ничего не понятно, но очень интересно

  5. #15
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    10,719

    По умолчанию

    Сергей0308 не, я про то, что в программе можно в int упаковать время старта, потом время останова, потом посчитать разницу и вывести в виде 4-х байт время работы. Но придется колдовать со стороны scada как это потом все складывать и раскладывать.

    для моточасов конечно проще простой int32 без заморочек. Упаковка времени в 4 байта это больше для отображения событий, аварий и т.д. то есть Дата + Время

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

    По умолчанию

    Цитата Сообщение от Григори Посмотреть сообщение
    Исходя из ответов буду пробовать использовать все же int32, всем спасибо за помощь

    Изначальная мысль про Float обусловлена задачей передачи показаний импульсного счетчика расхода воды (у которого 1 имп - 0.1 м3),
    Целочисленные переменные можно интерпретировать как числа с фиксированной точкой - это нормальная практика,
    например для вывода на панель СП есть такой формат
    Захват-01.png

    Здесь полученное по сети число 65535 отобразится на экране как 655.35
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

Страница 2 из 2 ПерваяПервая 12

Похожие темы

  1. Обнуление переменной
    от Алексей87 в разделе ПЛК1хх
    Ответов: 8
    Последнее сообщение: 23.03.2017, 12:31
  2. Ответов: 6
    Последнее сообщение: 19.01.2017, 16:51
  3. Обнуление регистра MODBUS RTU
    от Алексей Александрович в разделе ПЛК1хх
    Ответов: 1
    Последнее сообщение: 22.10.2014, 16:18
  4. обнуление при отсутсвии питания
    от Artem в разделе ПЛК1хх
    Ответов: 1
    Последнее сообщение: 03.09.2010, 21:08
  5. Ответов: 3
    Последнее сообщение: 22.03.2010, 14:11

Метки этой темы

Ваши права

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