Страница 304 из 1044 ПерваяПервая ... 204254294302303304305306314354404804 ... ПоследняяПоследняя
Показано с 3,031 по 3,040 из 10438

Тема: ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)

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

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    ПЛК100 - LREAL не поддерживается или костыли в КДС ?
    В OSCAT есть функции для вычислений с двойной точностью.
    Не знаю нужно ли для выходной переменной kwt такая точность. Если оставить ее REAL, то максимальное количество знаков в у нее будет 7, т.е. 9999999 или 999999.9 или 99999.99. Подходит ли такое разрешение по условию задачи?
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

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

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    ПЛК100 - LREAL не поддерживается или костыли в КДС ?
    Предлагаю такой вариант.
    Вложение 14292

    Для вычислений kwt_summ с двойной точностью использую функции R2_ADD из OSCAT. При этом kwt_summ удалил из глобальных переменных, скорей всего она там не нужна.
    Для вычислений с двойной точностью используется пользовательский тип данных REAL2
    Код:
    TYPE REAL2 :
    STRUCT
        R1 : REAL;    (* small value *)
        RX : REAL;    (* big value *)
    END_STRUCT
    END_TYPE
    Предлагаю еще один из вариантов для коррекции начального значения kwt_summ - использовать действие.
    Вложение 14293
    По этому для программы PR2 добавил действие CORRECT
    Получилось так
    Вложение 14292
    В основной программе используется функция R2_SET из OSCAT для преобразования начальных значений kwt_start из REAL в формат с двойной точностью REAL2.
    Вроде все работает.
    Вложение 14294
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

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

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    Откуда инфа?
    ЗЫ. Вопрос снимаю.
    А в опциях проекта ставили галку работать с lreal?
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

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

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    А в опциях проекта ставили галку работать с lreal?
    Там галка называется "Трактовать LREAL как REAL". В этом случае вернемся к исходной проблеме переполнения разрядной сетки.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

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

    По умолчанию

    Да, проблема остается, как petera говорит.
    А какие ПЛК от ОВЕН работают с LREAL ? 110-й работает ?

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

    Попробую с оскатовской библиотекой. На выходе да, точность 99999.99 достаточна, вроде счетчик больше и не показывает.
    Важно при расчете и чтобы собственно считало...

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

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Да, проблема остается, как petera говорит.
    Попробую с оскатовской библиотекой. На выходе да, точность 99999.99 достаточна, вроде счетчик больше и не показывает.
    Важно при расчете и чтобы собственно считало...
    А почему не хотите готовым примером воспользоваться из поста #3253?
    Хочу заметить, что здесь проблема в точности вычислений глубже. При использовании REAL в Вашей формуле kwt:=kwt+(IN/3600000); будет накапливаться систематическая ошибка из-за ограничения разрядной сетки, при чем чем больше накопленная величина kwt, тем больше погрешность.
    Ваш счетчик энергии врать будет безбожно. Я бы вернулся к формуле из поста http://www.owen.ru/forum/showthread....l=1#post143899
    summa:=summa+IN;
    kwt:=summa/3600000;
    И перешел бы на арифметику с фиксированной точкой для вычисления summa.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

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

    По умолчанию

    http://www.owen.ru/forum/showthread.php?t=10285&page=5 это мое первое вложение из сохранившихся на этом форуме. Помню где то ешается проблема используя целую часть как дворд,а знаки после запятой как реал, и для визуализации получается строковая переменная как конкат этих значений

  8. #3038

    По умолчанию

    подскажите пожалуйста будет ли работать опрос на ПЛК160, если у меня будет на одном 485 порту в конфигурации 2 мастера, один RTU, второй ASCII? При этом в одном цикле опрашиваем одно устройство, в другом другое. Или одну секунду одно устройство, вторую сек. другое устройство и т.д.
    Чтобы понять рекурсию нужно понять рекурсию

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

    По умолчанию

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

  10. #3040

    По умолчанию

    Поидее слейв должен ингнорировать непонятный для него запрос
    Попробовал сейчас, используя лектус как 2 слейв устройства. Вроде работает
    Чтобы понять рекурсию нужно понять рекурсию

Страница 304 из 1044 ПерваяПервая ... 204254294302303304305306314354404804 ... ПоследняяПоследняя

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

Ваши права

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