Как настроить MODBUS SLAVE?
Как настроить MODBUS SLAVE?
Прошу совета (опыт работы с ПЛК минимален).
Контроллер AS228T, нужно связаться с ним с ПК по Modbus RTU (чтение + запись), ПК (точнее - универсальный OPC сервер) должен быть ведущим.
Не могу понять (может, просто не вижу очевидного ), как настроить COM ПЛК для работы ведомым...
PS Если можно, используя ST.
Контроллер AS228T, нужно связаться с ним с ПК по Modbus RTU (чтение + запись), ПК (точнее - универсальный OPC сервер) должен быть ведущим.
Не могу понять (может, просто не вижу очевидного ), как настроить COM ПЛК для работы ведомым...
PS Если можно, используя ST.
Re: Как настроить MODBUS SLAVE?
Ваша тема viewtopic.php?f=6&t=2181. По ST не подскажу. Изучайте сами.
Re: Как настроить MODBUS SLAVE?
Спасибо, по ссылке кое-что есть... но там "раскладка" нужных данных по нужным D регистрам...
Но мне (увы) непонятно, как указать ведомый режим, назначить адрес устройства и т.д.
MODBUS_Data Exchange Table - конфигурация Мастера, команда MODRW тоже инициирует запрос с ПЛК...
Чего я не вижу?
Но мне (увы) непонятно, как указать ведомый режим, назначить адрес устройства и т.д.
MODBUS_Data Exchange Table - конфигурация Мастера, команда MODRW тоже инициирует запрос с ПЛК...
Чего я не вижу?
Re: Как настроить MODBUS SLAVE?
Не используйте в программе ПЛК нужный вам COM порт как Master и всё, он будет Slave.
А в HWConfig задайте нужные параметры порта.
Таблица modbus адресов:
https://deltronics.ru/images/manual/AS3 ... _table.pdf
А в HWConfig задайте нужные параметры порта.
Таблица modbus адресов:
https://deltronics.ru/images/manual/AS3 ... _table.pdf
Re: Как настроить MODBUS SLAVE?
Т.е., если я ограничусь заданием физических параметров (скорость, четность, RTU, таймаут...), но не задам ни цикла, ни буду использовать команды обмена в программе, порт будет принимать запросы (по адресам из таблицы...) и отвечать, в т.ч. и писать в заданные адреса них по соответствующей команде (а моя забота - класть и забирать по нужным адресам регистров?) ?? Или нужно программно отслеживать флаги и обрабатывать "вручную"?
А где задать Модбас адрес ведомого ??? Или "COM2 ID No." - это оно и есть?
А где задать Модбас адрес ведомого ??? Или "COM2 ID No." - это оно и есть?
Re: Как настроить MODBUS SLAVE?
Ваша забота - класть и забирать по нужным адресам регистров.
Да, COM2 ID No или SR202. Заводская настройка = 1.
Да, COM2 ID No или SR202. Заводская настройка = 1.
Re: Как настроить MODBUS SLAVE?
Спасибо. Буду работать...
Re: Как настроить MODBUS SLAVE?
Совсем без программы ПЛК возможно не перейдёт в режим RUN, поэтому, думаю что мимимальную программу надо бы загрузить, например,
M0 := SM400;
M0 := SM400;
Re: Как настроить MODBUS SLAVE?
Еще раз спасибо.
Программа там есть, опрос по другому порту ведомого... входов, выдача задания на частотник...
Нужно еще управление/отображение от СКАДА...
Вот доберусь до железа (сейчас не могу) постараюсь отписаться.
Программа там есть, опрос по другому порту ведомого... входов, выдача задания на частотник...
Нужно еще управление/отображение от СКАДА...
Вот доберусь до железа (сейчас не могу) постараюсь отписаться.
Re: Как настроить MODBUS SLAVE?
Отписываюсь.
Все заработало, оказалось гораздо проще, чем думал... (были даже мысли о реализации протокола "вручную"...). Еще раз, спасибо уважаемому коллеге Nomad.
Единственно, флагов, по которым можно было бы контролировать наличие обмена, я не нашел, пришлось выделить бит в передаваемой на ПЛК команде (передается всегда "1", после чтения регистра стирается).
Все заработало, оказалось гораздо проще, чем думал... (были даже мысли о реализации протокола "вручную"...). Еще раз, спасибо уважаемому коллеге Nomad.
Единственно, флагов, по которым можно было бы контролировать наличие обмена, я не нашел, пришлось выделить бит в передаваемой на ПЛК команде (передается всегда "1", после чтения регистра стирается).