S7-1200 + Modbus TCP + Altivar Process

ПЛК / Децентрализованная периферия

Re: S7-1200 + Modbus TCP + Altivar Process

Сообщение ермак » 23 ноя 2017, 20:24

Михайло писал(а):А что Вы уже сделали и поняли? И что Вы не сделали и не поняли?

У меня есть пример по соединению S7-1200 - Sentron PAC. Как я понял, никакие сетевые настройки не конфигурируются, А конфигурируются только блоки получения/передачи - MB_Server/MB_Client. Ну и опрос..
До этого я программировал в основном логику, когда контроллер управляет напрямую исполнительными механизмами посредством релейных выходов. А со связью - впервые, вот тут то и встала загвоздка по параметрированию MB_Server/MB_Client. Длина слов, ID - я не могу понять, откуда это все берется, и как мне передать задание в ЧРП, и получить обратно несколько слов от ЧРП. Сам механизм конфигурирования/передачи/получения мне не ясен. Если можете посоветовать умную литературу (в которой доступно будет объяснено) - буду очень признателен!
ермак
Дилетант
 
Сообщения: 6
Зарегистрирован: 23 ноя 2017, 05:58

Re: S7-1200 + Modbus TCP + Altivar Process

Сообщение mr_Frodo » 23 ноя 2017, 20:37

Найдите здесь сообщения участника Chant. У него в подписи есть информация.
Вот моя подпись...
Аватара пользователя
mr_Frodo
Специалист
 
Сообщения: 297
Зарегистрирован: 22 июл 2016, 20:38

Re: S7-1200 + Modbus TCP + Altivar Process

Сообщение ермак » 24 ноя 2017, 12:47

Не совсем понял терминологию "в подписи". Это где?
ермак
Дилетант
 
Сообщения: 6
Зарегистрирован: 23 ноя 2017, 05:58

Re: S7-1200 + Modbus TCP + Altivar Process

Сообщение ермак » 24 ноя 2017, 13:07

Мне не понятен сам механизм передачи.
1. Настраивается только MB_Client/MB_Server.. Или же еще что-то. Когда вставляю MB_Client в OB1 - на самом блоке нет настройки адреса (IP_OCTET).
2. Куда должны записываться передаваемые/считываемые данные? Я так подозреваю что в соответствующие блоки данных MB_Client/MB_Server. Но опять же... я не знаю каким образом это делать.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ермак
Дилетант
 
Сообщения: 6
Зарегистрирован: 23 ноя 2017, 05:58

Re: S7-1200 + Modbus TCP + Altivar Process

Сообщение Михайло » 24 ноя 2017, 16:44

Вам нужно использовать MB_Client. Контроллер обращается к ЧРП как клиент, а ЧРП обслуживает контроллер (ЧРП - сервер). Клиент сам решает, какие данные куда переложить. Он может скомандовать "возьми вот эти данные, запиши их в такую-то свою ячейку" или "дай мне данные из такой-то твоей ячейки". Modbus-сервера, как правило, вообще не нужно программировать даже, они простые исполнители, работают все одинаково. MB_Server в S7-1200 предназначен лишь для возможности организации ограничения доступа к своим данным.

MB_Client/MB_Server имеют несколько разных версий с заметной разницей в настройках. Раньше, насколько я помню, IP-адрес вбивался прямо в MB_Client/MB_Server. Потом видимо настроек стало больше и эти настройки вывели в отдельную структуру TCON_IP_v4, которая цепляется к функции MB_Client/MB_Server ко входу Connect. Видимо поэтому Вы не видите, куда вводить IP.

Итак, Вы добавили MB_Client и связали его с датаблоком MB_Client_DB. Создайте еще один датаблок DB1, добавьте в него тэг с любым именем, тип тэга "TCON_IP_v4". Увидели, куда вбивать IP? :p
Второй сложный вопрос: что такое MB_DATA_PTR? Это указатель на область памяти, которые нужно либо передать серверу, либо куда принять от сервера. Добавьте в DB1 нужные тэги, которыми Вы будете обмениваться с ЧРП. Я уже забыл, кажись их потом и надо будет прописывать в MB_DATA_PTR.
Михайло
Администратор
 
Сообщения: 3453
Зарегистрирован: 19 сен 2012, 19:16

Re: S7-1200 + Modbus TCP + Altivar Process

Сообщение mr_Frodo » 24 ноя 2017, 20:00

Подпись - это текст в конце письма (поста), которым автор обозначает свой профиль. В последнее время - на этот аппендикс никто не обращает внимания, хотя зря...
Вот моя подпись...
Аватара пользователя
mr_Frodo
Специалист
 
Сообщения: 297
Зарегистрирован: 22 июл 2016, 20:38

Re: S7-1200 + Modbus TCP + Altivar Process

Сообщение ермак » 01 дек 2017, 20:31

Соединение создал с помощью MB_Client. Задал IP-адрес, режим работы, начальный адрес для чтения, длину сообщения и адрес куда записывать. В общем-то все дело было в некоторых тонкостях. Начальный адрес для чтения был найден экспериментально-эмпирическим путем. Попозже выложу скрин и описание настройки.
ермак
Дилетант
 
Сообщения: 6
Зарегистрирован: 23 ноя 2017, 05:58

Re: S7-1200 + Modbus TCP + Altivar Process

Сообщение ермак » 01 дек 2017, 20:34

Теперь встала проблема с записью в ЧРП. При попытке записать в ЧРП уставку скорости связь с ПЛК нарушается. Не работает ни запись, ни чтение. Помогает только перезагрузка ЧРП. Кто-нибудь когда-нибудь записывал данные в ЧРП?
ермак
Дилетант
 
Сообщения: 6
Зарегистрирован: 23 ноя 2017, 05:58

Re: S7-1200 + Modbus TCP + Altivar Process

Сообщение Михайло » 02 дек 2017, 07:16

Может нужно сделать swap? То есть поменять местами байты в слове, просто разные производители придерживаются разного порядка байтов в слове (младший-старший little-endian или старший-младший big-endian). Кажется Schneider Electric придерживается порядка big-endian, а Siemens - little-endian.
Для этого у S7-1200 есть инструкция SWAP. На вход подай частоту вращения little-endian, на выходе получи big-endian для вставки в Modbus-сообщение.
Михайло
Администратор
 
Сообщения: 3453
Зарегистрирован: 19 сен 2012, 19:16

Re: S7-1200 + Modbus TCP + Altivar Process

Сообщение mr_Frodo » 03 дек 2017, 06:51

Просто посмотри что идет на выход в Стёпе в слове управления для альтиварпроцесс до того и после.
Вот моя подпись...
Аватара пользователя
mr_Frodo
Специалист
 
Сообщения: 297
Зарегистрирован: 22 июл 2016, 20:38

Пред.

Вернуться в LOGO! / S7-200 / S7-1200 / S7-300/ S7-400 / S7-1500 / ET200

Кто сейчас на конференции

Сейчас этот форум просматривают: POV и гости: 1