Показано с 1 по 10 из 5258

Тема: ПР200

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Честно говоря не совсем понял как с помощью булевых переменных управлять модулем. И почему их пять?
    Нашел описание подобного модуля:
    The meaning of each byte:
    [Address 1]
    //--------------------------------------------
    Relay No. 1 is on: 01 05 00 01 01 00 9d 9a
    Byte 1: Address
    Byte 2: Function
    Byte 3 4: Register Address
    Byte 5 6: Register Data
    Byte 7 8: CRC check
    //================================================== ====== ==============
    [Address 1]
    //--------------------------------------------
    Relay No. 0 is on: 01 05 00 00 FF 00 8C 3A
    Relay No. 0 is closed: 01 05 00 00 00 00 CD CA
    //--------------------------------------------
    Последний раз редактировалось mihatin; 10.12.2022 в 11:07.

  2. #2

    По умолчанию

    Цитата Сообщение от mihatin Посмотреть сообщение
    Честно говоря не совсем понял как с помощью булевых переменных управлять модулем. И почему их пять?
    Это опечатка, конечно 8 шт. Добавьте в мастер 8 булевых переменных с адресом регистра 0 и битами от 0 до 7.
    Управляете вы не булевыми переменными, а ПР мастер шлёт запрос модулю слейву, на включение этих битов по данным адресам.
    Протокол Модбас RTU, скорость, чётность, кол-во бит данных, стоп биты, адрес слейва, вам надо назначить по описанию на модуль.

    Главный вопрос, поддерживает ваш модуль Протокол Модбас RTU или Модбас ASCII ?
    Если нет, то ПР200 в пролёте и вам понадобится ПЛК и опрос через биб-ки.
    Последний раз редактировалось kondor3000; 10.12.2022 в 11:44.

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

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Это опечатка, конечно 8 шт. Добавьте в мастер 8 булевых переменных с адресом регистра 0 и битами от 0 до 7.
    Управляете вы не булевыми переменными, а ПР мастер шлёт запрос модулю слейву, на включение этих битов по данным адресам.
    Протокол Модбас RTU, скорость, чётность, кол-во бит, стоп биты, адрес слейва, вам надо назначить по описанию на модуль.

    Главный вопрос, поддерживает ваш модуль Протокол Модбас RTU ?
    Если нет, то ПР200 в пролёте и вам понадобится ПЛК и опрос через биб-ки.
    это и есть модбас RTU, пятая функция, работа с коилсами(булями), не будет только специфичной смены состояния, либо включение либо выключение
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

  4. #4

    По умолчанию

    Обьясните пожалуйста, если не трудно, каким образом изменяя значения в 0 регистре происходит включение реле. Если из описания модуля 0 регистр это адрес.
    Номера регистров модуля:
    0x0000
    Адрес модуля в сети Modbus
    0x0003
    Режим работы реле 1:0x02 - автоматическое включение через заданноевремя0x04 - автоматическое выключение через заданное время
    0x0004
    Значение таймера для реле 1, кратно 100 мс. Значение 10 соответствует 1 сек.
    0x0008
    Режим работы реле 2
    0x0009
    Значение таймера для реле 2
    0x000D
    Режим работы реле 3
    0x000E
    Значение таймера для реле 3
    0x0012
    Режим работы реле 4
    0x0013
    Значение таймера для реле 4
    0x0017
    Режим работы реле 5
    Последний раз редактировалось mihatin; 10.12.2022 в 12:44.

  5. #5

    По умолчанию

    Цитата Сообщение от mihatin Посмотреть сообщение
    Обьясните пожалуйста, если не трудно, каким образом изменяя значения в 0 регистре происходит включение реле. Если из описания модуля 0 регистр это адрес.
    Номера регистров модуля:
    0x0000
    Адрес модуля в сети Modbus
    0x0003
    Режим работы реле 1:0x02 - автоматическое включение через заданноевремя0x04 - автоматическое выключение через заданное время
    0x0004
    Значение таймера для реле 1, кратно 100 мс. Значение 10 соответствует 1 сек.
    0x0008
    Режим работы реле 2
    0x0009
    Значение таймера для реле 2
    0x000D
    Режим работы реле 3
    0x000E
    Значение таймера для реле 3
    0x0012
    Режим работы реле 4
    0x0013
    Значение таймера для реле 4
    0x0017
    Режим работы реле 5
    Тут все что угодно может быть, начиная с опечатки и кончая наложениями областей адресов MODBUS.
    Если интересно, можете посчитатывать значения из регистров, начиная с 0 и сопоставить их с ожидаемыми значениями.

  6. #6

    По умолчанию

    Пишу в в Var1 = 1 включается первое реле, в Var2 второе. Все работает, Спасибо огромное! Но честно не до конца понимаю как.
    Вложения Вложения

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

Ваши права

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