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

Тема: Modbus Master как и что?

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

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

    По умолчанию Modbus Master как и что?

    Приветствую вас, о мудрые форумчане.

    К сожалению, только начинаю знакомиться со средой CoDeSys. В целом разобрался в большей части вопросов для себя, однако ModBus остается чем-то страшным в ПЛК.
    Причем не сам протокол, а именно в CoDesys.

    Есть у меня следующий набор
    1) ПЛК-160 [M02]
    2) Устройство modbus slave( это не ПЛК ). Подключение по TCP-RTU. Например будет у него slaveID: 11

    И есть задача управление. Собственно реализация на других языках следующая:

    1) Надо авторизоваться. Для этого в адрес 0xD002 я записываю параметры WriteMultipleRegisters {0x65, 0x70, 0x4D, 0x20, 0x45, 0x43 } с длинной 3 соотвественно. Это некая базовая авторизация на устройстве, дабы в последствии разрешить изменение параметров
    2) Далее я записываю уже значение конкретных параметров, к примеру берем адрес 0xD001 и делаю WriteSingleRegister с записью например 100.

    Так вот, к сожалению я так и не разобраться как же мне это реализовать в CoDeSys.
    В целом язык не важен, но если это будет ST наверно самое оптимальное.

    Так я уже и видосики посмотрел вроде.
    И почитал это:
    https://owen.ru/forum/attachment/5/7/9/9/1/23301.attach
    https://owen.ru/forum/attachment/6/5/8/8/0/24841.attach

    да и вроде много чего еще. Но увы(

  2. #2

    По умолчанию

    Ну протокол сам Modbus он без авторизации, а если с авторизацией, то не называйте Modbus, добавьте "2" или "+".

    Если бы мне дали такую задачу, то вначале реализовал бы этот алгоритм авторизации - ищите материалы работы с COM
    После авторизации подключал бы библиотеку опроса
    +79104444236
    С уважением,
    Лапшин Вячеслав

  3. #3

    По умолчанию

    И в чем смысл такой авторизации? Канал как был открытый так и остался. Берешь снифер, смотришь паттерн "авторизации" и вуаля, ты в системе. Доступно даже гопникам.
    Обычно посылают случайный паттерн, его на другой стороне по известному алгоритму и секретному ключу преобразуют и обратно отдают. Так обеспечивается невзламываемость прослушкой. Ну если алгоритм нормальный а не 3 XOR... Хотя и 3 XOR от гопников защищает.
    Далее контроль канала на лишние пакеты и периодическая (раз в 1-5 секунд) переавторизация. А лучше уже секретный канал делать, с шифрацией.
    Тролль-наседка, добрый, нежный и ласковый

  4. #4

    По умолчанию

    Защита через тайну в средние века ещё как-то работала. В 21 веке это моветон.
    Тролль-наседка, добрый, нежный и ласковый

  5. #5

    По умолчанию

    К сожалению данную авторизацию придумал не я, так что как там работает так и работает. Я бы вообще отключить будь такая возможность, ибо физически все это дело будет сильно отрезано от цивилизации.

    А по библиотекам если честно до конца все равно не совсем понятно стало, как запись multi делать. на эмулятор приходит совсем не то что отправляю

  6. #6

    По умолчанию

    К сожалению данную авторизацию придумал не я, так что как там работает так и работает. Я бы вообще отключить будь такая возможность, ибо физически все это дело будет сильно отрезано от цивилизации.

    А по библиотекам если честно до конца все равно не совсем понятно стало, как запись multi делать. на эмулятор приходит совсем не то что отправляю.
    Кто подскажет, как правильно сформировать переменную для данной последовательности {0x65, 0x70, 0x4D, 0x20, 0x45, 0x43 }?

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

    По умолчанию

    Цитата Сообщение от gOsToFf Посмотреть сообщение
    К сожалению данную авторизацию придумал не я, так что как там работает так и работает. Я бы вообще отключить будь такая возможность, ибо физически все это дело будет сильно отрезано от цивилизации.

    А по библиотекам если честно до конца все равно не совсем понятно стало, как запись multi делать. на эмулятор приходит совсем не то что отправляю.
    Кто подскажет, как правильно сформировать переменную для данной последовательности {0x65, 0x70, 0x4D, 0x20, 0x45, 0x43 }?
    Дебри какие-то.
    Используйте в конфигурации "String output module State, заносите туда строку
    'epM EC'; (*Это и есть 0x65, 0x70, 0x4D, 0x20, 0x45, 0x43 *) длина - 3 регистра
    командуете в программе в нужный момент для отправки

    Захват-1.png Захват-2.png

    И все дела!
    Последний раз редактировалось petera; 14.01.2020 в 15:19.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  8. #8

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    Дебри какие-то.
    Используйте в конфигурации "String output module State, заносите туда строку
    'epM EC'; (*Это и есть 0x65, 0x70, 0x4D, 0x20, 0x45, 0x43 *) длина - 3 регистра
    командуете в программе в нужный момент для отправки

    Захват-1.png Захват-2.png

    И все дела!
    Грациозно, идеально и даже работает
    Спасибо!

  9. #9
    Пользователь
    Регистрация
    22.12.2006
    Адрес
    Тихое зимовье
    Сообщений
    182

    По умолчанию

    Добрый день, вопрос маленько не по этой теме, но я почему то не могу создать новую тему...

    Вопрос следующий: Необходимо с ПЛК110 писать регистры модбас по адресам с 62А81h по 62В80h. Стандартные средства не поддерживают такой большой адресации, библиотека Modbus.lib тоже.
    Существуют еще какие то решения?

  10. #10
    Пользователь
    Регистрация
    22.12.2006
    Адрес
    Тихое зимовье
    Сообщений
    182

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    пишите в адреса 16#1000 до 16#10FF 16 функцией
    To capzar: Не понял Вас, я могу писать адреса 16#1000, но мне надо 16#62А81. И про 16 функцию то же не могу сообразить, это по описанию запись с использованием маски...
    Напишите чуть подробней плиз.

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

Похожие темы

  1. Ответов: 2
    Последнее сообщение: 04.06.2019, 16:55
  2. Modbus (Master) не отображается в память Modbus (Slave)
    от ghoch в разделе Помощь Разработчикам
    Ответов: 3
    Последнее сообщение: 07.05.2018, 09:40
  3. ПЛК160: Modbus TCP Master и Modbus TCP Slave одновременно.
    от Антон Костюченко в разделе ПЛК1хх
    Ответов: 10
    Последнее сообщение: 18.07.2016, 10:36
  4. Ответов: 2
    Последнее сообщение: 15.09.2014, 17:40
  5. Ответов: 5
    Последнее сообщение: 14.10.2010, 14:42

Ваши права

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