- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Значения по умолчанию с возможностью изменения по Modbus
Модератор: Глоб.модераторы
-
- почётный участник форума
- Сообщения: 193
- Зарегистрирован: 25 фев 2013, 07:14
- Имя: Шамилов Данис
- Страна: Россия
- город/регион: Уфа
- Благодарил (а): 10 раз
- Поблагодарили: 1 раз
Значения по умолчанию с возможностью изменения по Modbus
Программирую ПЛК110 на CFC.
Контроллер подключен в качестве Modbus slave к панели оператора Weintek.
Одна из уставок задается с панели оператора. Каким образом задать для этой уставки значение по умолчанию, чтобы при пуске и работе контроллера без панели это значение было ненулевым?
Контроллер подключен в качестве Modbus slave к панели оператора Weintek.
Одна из уставок задается с панели оператора. Каким образом задать для этой уставки значение по умолчанию, чтобы при пуске и работе контроллера без панели это значение было ненулевым?
-
- эксперт
- Сообщения: 1172
- Зарегистрирован: 14 ноя 2013, 20:35
- Имя: Анатолий Сергеевич
- Страна: Россия
- город/регион: Башкортостан
- Благодарил (а): 13 раз
- Поблагодарили: 68 раз
Re: Значения по умолчанию с возможностью изменения по Modbus
А почему бы константу не сделать?
В контроллере будет крутиться константа до того момента пока не запишешь какоето значение с панели...
В контроллере будет крутиться константа до того момента пока не запишешь какоето значение с панели...
-
- почётный участник форума
- Сообщения: 193
- Зарегистрирован: 25 фев 2013, 07:14
- Имя: Шамилов Данис
- Страна: Россия
- город/регион: Уфа
- Благодарил (а): 10 раз
- Поблагодарили: 1 раз
Re: Значения по умолчанию с возможностью изменения по Modbus
Думал об этом. Но по-моему в Codesys нет возможности изменять константы по Modbus.megavolt86 писал(а):А почему бы константу не сделать?
В контроллере будет крутиться константа до того момента пока не запишешь какоето значение с панели...
-
- почётный участник форума
- Сообщения: 5790
- Зарегистрирован: 07 окт 2011, 09:12
- Имя: Гаско Вячеслав Эриевич
- Страна: Россия
- город/регион: Рязань
- Благодарил (а): 673 раза
- Поблагодарили: 841 раз
Re: Значения по умолчанию с возможностью изменения по Modbus
А указание начального значения при объявлении переменной не спасёт? Ну или занесение значения по событию возобновления питания.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
-
- почётный участник форума
- Сообщения: 193
- Зарегистрирован: 25 фев 2013, 07:14
- Имя: Шамилов Данис
- Страна: Россия
- город/регион: Уфа
- Благодарил (а): 10 раз
- Поблагодарили: 1 раз
Re: Значения по умолчанию с возможностью изменения по Modbus
дело в том что в Codesys переменные, привязанные к Modbus, дополнительно не объявляются, - имя переменной дается в Конфигурации при указании адреса Modbus.А указание начального значения при объявлении переменной не спасёт?
а вот это вариант. только как в программном коде указать это событие?Ну или занесение значения по событию возобновления питания
-
- почётный участник форума
- Сообщения: 193
- Зарегистрирован: 25 фев 2013, 07:14
- Имя: Шамилов Данис
- Страна: Россия
- город/регион: Уфа
- Благодарил (а): 10 раз
- Поблагодарили: 1 раз
Re: Значения по умолчанию с возможностью изменения по Modbus
Только что получил ответ на форуме ОВЕН. Может быть кому-нибудь в будущем понадобится:
Сам еще этот вариант не тестировалТ.к. все переменные в модуле Slave являются retain по умолчанию, то достаточно один раз ввести начальное значение с панели. После этого панель можно даже не включать, значение переменной останется таким, каким было перед выключением ПЛК.
В общем случае нужно объявить в разделе глобальных переменных
VAR_GLOBAL RETAIN
My_1 AT %QW7.1.0: WORD := 100;
END_VAR
где %QW7.1.0 -соответствующий адрес из конфигурации Slave.
При этом этот адрес не должен быть именован в Slave.
ЗЫ. Но в последнем случае переменная My_1 всегда будет равна 100 после каждого включения ПЛК.
-
- почётный участник форума
- Сообщения: 5790
- Зарегистрирован: 07 окт 2011, 09:12
- Имя: Гаско Вячеслав Эриевич
- Страна: Россия
- город/регион: Рязань
- Благодарил (а): 673 раза
- Поблагодарили: 841 раз
Re: Значения по умолчанию с возможностью изменения по Modbus
Со свойствами глобальных переменных Вы уже разобрались, а если по событию, то можно запускать какой-нибудь POU, в котором делать все необходимые присвоения.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
-
- эксперт
- Сообщения: 1172
- Зарегистрирован: 14 ноя 2013, 20:35
- Имя: Анатолий Сергеевич
- Страна: Россия
- город/регион: Башкортостан
- Благодарил (а): 13 раз
- Поблагодарили: 68 раз
Re: Значения по умолчанию с возможностью изменения по Modbus
В примере вы сами как ретейн объявляете переменную, по умолчанию она без этого.tank_urg писал(а):Только что получил ответ на форуме ОВЕН. Может быть кому-нибудь в будущем понадобится:
Сам еще этот вариант не тестировалТ.к. все переменные в модуле Slave являются retain по умолчанию, то достаточно один раз ввести начальное значение с панели. После этого панель можно даже не включать, значение переменной останется таким, каким было перед выключением ПЛК.
В общем случае нужно объявить в разделе глобальных переменных
VAR_GLOBAL RETAIN
My_1 AT %QW7.1.0: WORD := 100;
END_VAR
где %QW7.1.0 -соответствующий адрес из конфигурации Slave.
При этом этот адрес не должен быть именован в Slave.
ЗЫ. Но в последнем случае переменная My_1 всегда будет равна 100 после каждого включения ПЛК.
Можно присвоить начальное значение как в примере, можно в программе строчку добавить в виде : My_1:=100...
Не помню есть ли системная переменная показывающая плк в ране или нет, можно сделать по переднему фронту этой переменной присвоение начальных значений...)))
-
- почётный участник форума
- Сообщения: 193
- Зарегистрирован: 25 фев 2013, 07:14
- Имя: Шамилов Данис
- Страна: Россия
- город/регион: Уфа
- Благодарил (а): 10 раз
- Поблагодарили: 1 раз
Re: Значения по умолчанию с возможностью изменения по Modbus
Создал глобальные переменные, указав начальные значения, однако при запуске ПЛК без панели в этих переменных вместо требуемых начальных значений появляются нули.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- почётный участник форума
- Сообщения: 193
- Зарегистрирован: 25 фев 2013, 07:14
- Имя: Шамилов Данис
- Страна: Россия
- город/регион: Уфа
- Благодарил (а): 10 раз
- Поблагодарили: 1 раз
Re: Значения по умолчанию с возможностью изменения по Modbus
Не понял, можно поподробнее?Может надо ретайном сделать переменную отличную от регистра Modbus (%QW8.95.0)? А в первом цикле ПЛК уже определятся, какое ей значение присвоить.
-
- почётный участник форума
- Сообщения: 193
- Зарегистрирован: 25 фев 2013, 07:14
- Имя: Шамилов Данис
- Страна: Россия
- город/регион: Уфа
- Благодарил (а): 10 раз
- Поблагодарили: 1 раз
Re: Значения по умолчанию с возможностью изменения по Modbus
спасибо. попробую в ближайшее времяМожно присвоить начальное значение как в примере, можно в программе строчку добавить в виде : My_1:=100...
Не помню есть ли системная переменная показывающая плк в ране или нет, можно сделать по переднему фронту этой переменной присвоение начальных значений...)))
-
- освоился
- Сообщения: 233
- Зарегистрирован: 26 мар 2017, 13:05
- Имя: Денис
- Страна: Россия
- город/регион: Самара
- Благодарил (а): 15 раз
- Поблагодарили: 38 раз
Значения по умолчанию с возможностью изменения по Modbus
Уставку объявить как RETAIN-переменную. В теле POU присваивать этой переменной значение соответствующего регистра Modbus Slave, если оно не равно нулю.
-
- администратор
- Сообщения: 4909
- Зарегистрирован: 25 июл 2008, 07:12
- Имя: Диев Александр Васильевич
- Страна: Россия
- город/регион: г. Сегежа, Карелия
- Благодарил (а): 236 раз
- Поблагодарили: 425 раз
Значения по умолчанию с возможностью изменения по Modbus
Если не заметили, вопрос обсуждался 3 года назад...
Повторное использование кода не отменяет повторного использования мозга при его повторном использовании.