Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 16

Тема: Настройка опроса счётчика ОВЕН СИ30 по Modbus

  1. #1

    По умолчанию Настройка опроса счётчика ОВЕН СИ30 по Modbus

    Подключаю СИ30 по Modbus RTU к ПЛК100. Как в конфигурации (Universal Modbus Device) в CoDeSys 2.3 правильно задать опрос текущего значения? Оно имеет тип Long. Что нужно выбирать для этого регистра?

  2. #2
    Пользователь
    Регистрация
    11.07.2012
    Адрес
    г. МИНСК
    Сообщений
    519

    По умолчанию

    Выбрать REAL

  3. #3

    По умолчанию

    REAL не работает. В конфигурации указал 32bit input module (тип DWORD) и всё стало ОК!

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

    По умолчанию

    а Long никогда и не был Real. так что чуть сбили вас с толку.

  5. #5

    По умолчанию

    Я ещё пока не пробовал читать Master OPC Universal Modbus server-ом. Настроил для режима slave как 4 byte (DWORD). Завтра проверю.

  6. #6
    Пользователь
    Регистрация
    11.07.2012
    Адрес
    г. МИНСК
    Сообщений
    519

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    а Long никогда и не был Real. так что чуть сбили вас с толку.
    Если Long это Dword,то что такое Unsigned long?

  7. #7
    Пользователь
    Регистрация
    11.07.2012
    Адрес
    г. МИНСК
    Сообщений
    519

    По умолчанию

    Цитата Сообщение от zendo057 Посмотреть сообщение
    Если Long это Dword,то что такое Unsigned long?
    ответте кто нибудь.

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

    По умолчанию

    Цитата Сообщение от zendo057 Посмотреть сообщение
    ответте кто нибудь.
    Unsigned - без знаковый, long - 32 бита
    Это DWord или UDINT,
    Захват-1.png

    А просто long, будет целое 32 битное со знаком, т.е. DINT.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  9. #9
    Пользователь
    Регистрация
    11.07.2012
    Адрес
    г. МИНСК
    Сообщений
    519

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    Unsigned - без знаковый, long - 32 бита
    Это DWord или UDINT,
    Захват-1.png

    А просто long, будет целое 32 битное со знаком, т.е. DINT.
    Как тогда понять пост 3,Long указали Dword и все ОК
    Последний раз редактировалось zendo057; 12.09.2016 в 19:56.

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

    По умолчанию

    Цитата Сообщение от zendo057 Посмотреть сообщение
    Как тогда понять пост 3,Long указали Dword и все ОК
    Не так там написано!
    В конфигурации указал 32bit input module (тип DWORD) и всё стало ОК!
    Ключевая фраза здесь -32bit input module
    Просто в конфигурации ПЛК для модбас мастера, в нужном нам модуле 32bit input, тип переменной жестко забит как DWORD и изменить его нельзя.

    Для 32 битных типов данных в КДС существуют типы DWORD, DINT, UDINT.
    Для без знаковых целых чисел это DWORD и UDINT (0..4294967295), а для целых чисел со знаком - DINT(-2147483648..2147483647)
    А для чисел со знаком (тип DINT) используется представление в дополнительном коде. Старший, 31 бит, используется для указания знака числа. Если значение 31 бита равно 0, то в остальных разрядах записано положительное число, совпадающее с прямым кодом.
    По этому пока по сети приходят числа от 0 до 2147483647, то в конфигурации в переменной в Modbus увидите это же число. Но как только придет отрицательное число, то в переменной в Modbus увидите это число в дополнительном коде, например не "-30", а "4294967266" или не "-5", а "4294967291".
    Потому, что дополнительный код для "-5" это 0хFFFFFFFB, а это без знаковое число "4294967291".

    Но волноваться не стоит. Это никак не влияет на результат использования такого числа в программе. Из-за неявного преобразования типов результаты арифметических операций и операции присваивания с использованием DWORD в правой части выражений вместо DINT получаются правильными без дополнительных телодвижений.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

Страница 1 из 2 12 ПоследняяПоследняя

Похожие темы

  1. Ответов: 14
    Последнее сообщение: 28.10.2020, 12:33
  2. Настройка счётчика ОВЕН СИ30.
    от super100 в разделе Эксплуатация
    Ответов: 1
    Последнее сообщение: 28.07.2016, 04:47
  3. Настройка скорости сети 485 и частоты опроса
    от and909 в разделе Эксплуатация
    Ответов: 9
    Последнее сообщение: 16.05.2014, 17:29
  4. настройка modbus s7300 - овен мк 110
    от werg в разделе Мх110
    Ответов: 4
    Последнее сообщение: 26.03.2013, 09:56

Ваши права

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