1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

modbus rtu

ПЛК SIMATIC (S7-200, S7-1200, S7-300, S7-400, S7-1500, ET200)

Модератор: Глоб.модераторы

Ответить

Автор темы
pocheto
здесь недавно
здесь недавно
Сообщения: 11
Зарегистрирован: 30 янв 2024, 18:12
Имя: Сергей
Страна: Россия
город/регион: Челябинск

modbus rtu

Сообщение pocheto »

Добрый вечер! Опрашиваем 10 slave устройств , в регистрах наших устройств нету регистра отвечающего за СВЯЗЬ с устройством, при обрыве связи, все данные в блоках данных сохраняются в тех же состояниях в которых они были до обрыва связи, внимание вопрос, можно ли как то с помощью блока "MB_MASTER_DB" выявлять обрыв связи? Сразу скажу, что опыта в связке modbus rtu - tia portal(seiemns) мало. Заранее спасибо!
Аватара пользователя

Nicolayy
не первый раз у нас
не первый раз у нас
Сообщения: 318
Зарегистрирован: 14 фев 2014, 11:55
Имя: Николай
Страна: Россия
Благодарил (а): 16 раз
Поблагодарили: 72 раза

modbus rtu

Сообщение Nicolayy »

pocheto, у MB_MASTER есть выходная переменная ERROR, она установится в true при ошибке связи

Автор темы
pocheto
здесь недавно
здесь недавно
Сообщения: 11
Зарегистрирован: 30 янв 2024, 18:12
Имя: Сергей
Страна: Россия
город/регион: Челябинск

modbus rtu

Сообщение pocheto »

Nicolayy писал(а): 06 май 2024, 20:51 pocheto, у MB_MASTER есть выходная переменная ERROR, она установится в true при ошибке связи
А что делать если при обрыве связи ERROR не меняет свой статус? Как буд то бы ошибка не возникает вообще. Если я правильно понимаю то переменная DONE меняет свое значение в true при выполнение блока, я вот думаю может её использовать? Что то примерное никидал.
//Связь true
IF "Mdone" AND "Clock_1Hz" AND NOT "modbus".takt THEN
"modbus".x := "modbus".x + 1;
"modbus".s := 1;//Связь есть
ELSIF
"modbus".x = 3 THEN
"modbus".x := 0;
"modbus".f := 0;
END_IF;
//Связь false
IF NOT "Mdone" AND "Clock_1Hz" AND NOT "modbus".takt THEN
"modbus".f := "modbus".f + 1;
IF "modbus".f = 15 THEN
"modbus".s := 0;//Отсутствие связи
"modbus".f := 0;
END_IF;
END_IF;
"modbus".takt := "Clock_1Hz";

AlexandrGr
не первый раз у нас
не первый раз у нас
Сообщения: 305
Зарегистрирован: 26 май 2022, 12:10
Имя: Александр
Страна: Россия
город/регион: lipetsk
Благодарил (а): 5 раз
Поблагодарили: 28 раз

modbus rtu

Сообщение AlexandrGr »

Снимок3.PNG
У вас нет необходимых прав для просмотра вложений в этом сообщении.

Автор темы
pocheto
здесь недавно
здесь недавно
Сообщения: 11
Зарегистрирован: 30 янв 2024, 18:12
Имя: Сергей
Страна: Россия
город/регион: Челябинск

modbus rtu

Сообщение pocheto »

AlexandrGr писал(а): 06 май 2024, 22:40 Снимок3.PNG
Александр, спасибо! Пока что использовал свой вариант, всё работает, как говориться будем посмотреть.

AlexandrGr
не первый раз у нас
не первый раз у нас
Сообщения: 305
Зарегистрирован: 26 май 2022, 12:10
Имя: Александр
Страна: Россия
город/регион: lipetsk
Благодарил (а): 5 раз
Поблагодарили: 28 раз

modbus rtu

Сообщение AlexandrGr »

F1 вам в помощь.
Ответить

Вернуться в «Simatic TIA Portal»