Вход

Просмотр полной версии : [ПР205] Как определить обрывы связи по RS-485 и Ethernet, как получить текущее время?



FPavel
20.08.2023, 16:24
Здравствуйте, уважаемые специалисты

Решил вывести аварийную индикацию от разряженной батарейки - не то, чтобы очень нужно, но, почему бы и не вывести.
В стандартных переменных объявил булеву, указал её в параметре прибора "Батарея - состояние".
На экран добавляю "Индикатор с двум состояниями". В свойствах "данные" открываю список переменных - там отсутствует привязанная переменная.

То же самое и с выводом целочисленной переменной, привязанной к секундам часов реального времени.

Привязал целую переменную к дате и времени, но также не могу выбрать её из списка для привязки на экране к "ввод/вывод" времени.

В связи с этим вопросы:

1. как вывести дату и время на экран?

2. как получить время в секундах для использования макроса OperTimer? Кроме очевидного функционального блока BLINK...

3. как определить обрыв связи по RS-485 и Ethernet?

Dimensy
20.08.2023, 18:51
1. Записывайте переменную, привязанную к "Время и дата (UTC)" из настроек "Часы реального времени" в переменную, привязанную к полю "Ввод/Вывод времени"
2. Настройки "Часы реального времени", далее, "Переменные даты и времени"
3. У устройства, добавленного в разделе Мастер есть поле "Статус"

Да, все что связано с часами в симуляции не работает

FPavel
20.08.2023, 21:46
Спасибо

Уже ознакомился с https://owen.ru/forum/showthread.php?t=37840

ПР205 на руках и спорные вопросы проверяю на "железе".
Сначала растерялся - в ПР200 переменные не исчезали из списков.

А для Slave как определить обрыв? Причина - в задаче включения насоса по Modbus (RTU или TCP) при обрыве связи с вышестоящим ПЛК есть смысл отключить безнадзорное оборудование. Даже если заказчик сейчас отвергнет такое решение, на другой задаче - потребует.

Dimensy
20.08.2023, 22:25
Спасибо

Уже ознакомился с https://owen.ru/forum/showthread.php?t=37840

ПР205 на руках и спорные вопросы проверяю на "железе".
Сначала растерялся - в ПР200 переменные не исчезали из списков.

А для Slave как определить обрыв? Причина - в задаче включения насоса по Modbus (RTU или TCP) при обрыве связи с вышестоящим ПЛК есть смысл отключить безнадзорное оборудование. Даже если заказчик сейчас отвергнет такое решение, на другой задаче - потребует.

Да, в ПР205 при работе с экраном много непонятных решений от разработчиков.
По поводу контроля обрыва, вот https://youtu.be/-gjHoICH55c

FPavel
21.08.2023, 00:05
Спасибо

Реально странно - имея возможность получать интервал времени с последнего обмена напрямую, приходится придумывать дополнительные средства контроля обрыва.

Сергей0308
21.08.2023, 00:13
Опрос можно сделать и по событию(булевой переменной), например раз в сутки, это же не является потерей связи!

FPavel
21.08.2023, 19:26
На ПР200 пробовал различные варианты обмена - записи команд Пуск/Стоп в ПЧВ - и по изменению, и по событию от таймера (запуск записи переменной), и ещё какие-то - работал только один какой-то вариант. Для ПР205 поэтому даже и не пытался настраивать события.

Вот как пробовал (нерабочие варианты)
69709

69710

Сергей0308
21.08.2023, 20:00
На ПР200 пробовал различные варианты обмена - записи команд Пуск/Стоп в ПЧВ - и по изменению, и по событию от таймера (запуск записи переменной), и ещё какие-то - работал только один какой-то вариант. Для ПР205 поэтому даже и не пытался настраивать события.

Вот как пробовал (нерабочие варианты)
69709

69710

Так Вы хотите на ПЧВ получить сигнал обрыва связи?
В смысле, мне кажется, это достаточно проблематично(если возможно в принципе), проще два проводка с ПР кинуть!

1exan
22.08.2023, 08:41
А для Slave как определить обрыв? Причина - в задаче включения насоса по Modbus (RTU или TCP) при обрыве связи с вышестоящим ПЛК есть смысл отключить безнадзорное оборудование. Даже если заказчик сейчас отвергнет такое решение, на другой задаче - потребует.

Как связаны насос (ПЧ?), ПР и "вышестоящий ПЛК" - отследить обрыв связи между какими устройствами?

FPavel
22.08.2023, 19:18
Нет, не с ПЧВ. То когда-то экспериментировал со связью ПР200 по ModBus - и по таймеру и ещё как-то. Из устройств с ModBus под рукой был ПЧВ, на который и подавал команду вкл/откл. В самом ПЧВ имеется возможность останова по прерыванию обмена, чем обязательно пользуемся при наладке.

Сейчас другая задача. Имеется несколько однотипных устройств с управлением на нескольких ПР205. Команда на включение к каждой ПР205 приходит от вышестоящего устройства (это может быть сенсорная панель или ПЛК или SCADA - заказчик пока не определился) по ModBus (или Ethernet). Далее, ПР205 по другому интерфейсу ModBus включает или отключает мотор через устройство плавного пуска.

Хотя в ТЗ напрямую нет требования контролировать обрыв связей (панель-ПР205 и ПР205-УПП), но сам хотел бы предусмотреть, хотя бы диагностику.

------------------------

Можно изменить формулировку.

Имеется ПР205. Один интерфейс ModBus Slave, другой интерфейс ModBus Master.
Требуется диагностировать обрыв связи по каждому интерфейсу.

Сергей0308
22.08.2023, 20:22
Нет, не с ПЧВ. То когда-то экспериментировал со связью ПР200 по ModBus - и по таймеру и ещё как-то. Из устройств с ModBus под рукой был ПЧВ, на который и подавал команду вкл/откл. В самом ПЧВ имеется возможность останова по прерыванию обмена, чем обязательно пользуемся при наладке.

Сейчас другая задача. Имеется несколько однотипных устройств с управлением на нескольких ПР205. Команда на включение к каждой ПР205 приходит от вышестоящего устройства (это может быть сенсорная панель или ПЛК или SCADA - заказчик пока не определился) по ModBus (или Ethernet). Далее, ПР205 по другому интерфейсу ModBus включает или отключает мотор через устройство плавного пуска.

Хотя в ТЗ напрямую нет требования контролировать обрыв связей (панель-ПР205 и ПР205-УПП), но сам хотел бы предусмотреть, хотя бы диагностику.

------------------------

Можно изменить формулировку.

Имеется ПР205. Один интерфейс ModBus Slave, другой интерфейс ModBus Master.
Требуется диагностировать обрыв связи по каждому интерфейсу.

Это же тысячу раз обсуждалось на форуме, короче, сформировать в ПР сигнал отсутствия связи проще пареной репы, можно примерно как-то так: мастер пишет(по изменению) в ПР секунды часов реального времени, если записи не происходит более 3 секунд появляется(формируется) сигнал потери связи:

69727

Мне кажется будет удобно это делать, если много слейвов, широковещательной посылкой!

1exan
23.08.2023, 04:39
Для экономии сетевых переменных (для ПР205 конечно не сильно актуально) можно для этого использовать 1 бит, постоянно инвертируя его в мастере.

Сергей0308
23.08.2023, 13:21
В режиме мастер ПР205 не поддерживает широковещательные посылки, в смысле, пишет, что диапазон адресов 1-247, а в режиме слейв, интересно, поддерживает или нет, в смысле, примет посылку с адресом "0"?

FPavel
23.08.2023, 18:40
Спасибо.

Мне кажется, имеется ещё один экзотичный.
ПР205 поддерживает перевод выходов в безопасное состояние при диагностике обрыва связи с мастером.
Настроить один выход на безопасное состояние 1 и подключить его к свободному входу.
Йёоу!

Как будет время попробую костыль. Преимущество - отсутствует контрольное число, которое ещё нужно менять скриптами панели оператора.

Сергей0308
23.08.2023, 21:51
Спасибо.

Мне кажется, имеется ещё один экзотичный.
ПР205 поддерживает перевод выходов в безопасное состояние при диагностике обрыва связи с мастером.
Настроить один выход на безопасное состояние 1 и подключить его к свободному входу.
Йёоу!

Как будет время попробую костыль. Преимущество - отсутствует контрольное число, которое ещё нужно менять скриптами панели оператора.

Какой Вы неугомонный! Я же уже писал, что опрос может быть по событию(булевой переменной), например раз в сутки, короче, слейв не может знать, что мастер посылал ему посылку, но она не дошла до него в результате обрыва связи! Вам, для своих хотелок нужно отказаться от ПР, так как они другие протоколы не поддерживают, кроме modbus, короче Вам надо ПЛК брать, там можно и свой протокол придумать, чтобы мастер постоянно опрашивал все слейвы на уровне протокола, тогда и в слейве можно будет определять обрыв связи по пропаданию этого постоянного опроса всех слейвов, но это пустой трафик, по сути это принципиально ничем не отличается, что Вам предлагают сделать в рамках протокола modbus, возможно можно и другие варианты придумать?!