- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Выполнение программы перед переходом в STOP
Модератор: Глоб.модераторы
-
- здесь недавно
- Сообщения: 6
- Зарегистрирован: 09 фев 2017, 13:24
- Имя: Сергей
- Благодарил (а): 1 раз
Выполнение программы перед переходом в STOP
Добрый день.
Каким образом можно выполнить функцию перед переходом контроллера в режим STOP? Может есть что-то похожее на OB100 Startup, но только выполняющееся перед отключением PLC, или какое-то прерывание по переходу в состояние STOP и какой-нибудь организационный блок, который выполняется в режиме STOP?
Суть дела.
Есть контроллер серии S7-1200, модуль CANopen и сервопривод. В случае перехода контроллера в режим STOP при вращающемся сервоприводе происходит проблема. Контроллер не может обновить данные в блоке управления серводвигателем и двигатель продолжает движение.
Каким образом можно выполнить функцию перед переходом контроллера в режим STOP? Может есть что-то похожее на OB100 Startup, но только выполняющееся перед отключением PLC, или какое-то прерывание по переходу в состояние STOP и какой-нибудь организационный блок, который выполняется в режиме STOP?
Суть дела.
Есть контроллер серии S7-1200, модуль CANopen и сервопривод. В случае перехода контроллера в режим STOP при вращающемся сервоприводе происходит проблема. Контроллер не может обновить данные в блоке управления серводвигателем и двигатель продолжает движение.
-
- эксперт
- Сообщения: 2469
- Зарегистрирован: 20 дек 2018, 04:45
- Имя: Сергей
- Страна: РБ/РФ
- город/регион: РФ Сергиев Посад
- Благодарил (а): 2119 раз
- Поблагодарили: 207 раз
Выполнение программы перед переходом в STOP
В стоп, контроллер, переходит по исключительной ситуации. Для обработки каждой из ситуации - свой OB, в котором можно принять решение, переводить ли контроллер в стоп (и как в данном случае безопасно остановить оборудование), или как-то можно исправить ситуацию.
В стопе OB не выполняются.
В стопе OB не выполняются.
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.
-
- здесь недавно
- Сообщения: 6
- Зарегистрирован: 09 фев 2017, 13:24
- Имя: Сергей
- Благодарил (а): 1 раз
Выполнение программы перед переходом в STOP
Сергей, спасибо. Осталось выяснить, как обработать последний сценарий. При загрузке программы в контроллер иногда требуется перевести его в стоп. Возможно ли сделать так, чтобы перед этим выполнился некий функциональный блок?
-
- эксперт
- Сообщения: 3643
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 8 раз
- Поблагодарили: 286 раз
Выполнение программы перед переходом в STOP
Для работы сетевого интерфейса (CAN и др.) требуются миллисекунды, а не один прогон ЦПУ перед отключением.
Отправлено спустя 3 минуты 21 секунду:
Отправлено спустя 3 минуты 21 секунду:
В сервоприводе активируйте таймаут: нет данных в течение n миллисекунд стоп.
-
- эксперт
- Сообщения: 2469
- Зарегистрирован: 20 дек 2018, 04:45
- Имя: Сергей
- Страна: РБ/РФ
- город/регион: РФ Сергиев Посад
- Благодарил (а): 2119 раз
- Поблагодарили: 207 раз
Выполнение программы перед переходом в STOP
Это не правильное решение. Поясните ситуацию, скорее всего, это можно решить другим способом.
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.
-
- не первый раз у нас
- Сообщения: 318
- Зарегистрирован: 14 фев 2014, 11:55
- Имя: Николай
- Страна: Россия
- Благодарил (а): 16 раз
- Поблагодарили: 72 раза
Выполнение программы перед переходом в STOP
Ну, наверно, прежде чем загружать программу в ПЛК (при условии обязательного перехода ПЛК в СТОП) на работающем оборудовании, следовало бы работу этого оборудования прекратить, не?
Или загрузка программы - это просто как пример? Просто надо понять, для какой конкретно ситуации нужно то, о чем Вы спрашиваете.
-
- не первый раз у нас
- Сообщения: 372
- Зарегистрирован: 12 дек 2018, 14:47
- Имя: Влад
- Благодарил (а): 1 раз
- Поблагодарили: 50 раз
Выполнение программы перед переходом в STOP
В библиотеке есть системный блок который переводит контроллер в СТОП. Перед тем как перевести можно выполнить сценарий. Только зачем все это?
-
- здесь недавно
- Сообщения: 6
- Зарегистрирован: 17 сен 2024, 16:46
- Имя: Сергей
- Страна: Россия
- город/регион: Вологодская обл, г Череповец
Выполнение программы перед переходом в STOP
Приветствую!!! Точно такая же проблема. Сервопривод управляется через блок данных , при останове MC-SERVO формирует телеграмму со словом управления - "остановить" , но POST-SERVO не выполняется,из блока данных в адрес входной телеграммы привода слово управления со стопом не попадает, контроллер останавливается а привод едет, так как при останове S7-1500 телеграммы в привод идут, он не видит ,что контроллер в стопе.Последняя телеграмма - ехать, он и едет и бьется в упор,пока в аварию не выйдет.
-
- администратор
- Сообщения: 18749
- Зарегистрирован: 17 июн 2008, 16:01
- Имя: Евгений свет Брониславович
- Страна: Россия
- город/регион: Санкт-Петербург
- Благодарил (а): 973 раза
- Поблагодарили: 1852 раза
Выполнение программы перед переходом в STOP
И точно такое же решение раз:
И точно такое же решение два:
По вопросам работы Форума можно обратиться по этим контактам.
-
- здесь недавно
- Сообщения: 6
- Зарегистрирован: 17 сен 2024, 16:46
- Имя: Сергей
- Страна: Россия
- город/регион: Вологодская обл, г Череповец
Выполнение программы перед переходом в STOP
Спасибо . Конечно при перезагрузке со стопом - все должно стоять, это выполняется. Но здесь риски есть если сбой какой-нибудь - контроллер ушел в стоп а привод уехал. Про блок "стоп" и сценарий - ничего не нашел, если есть возможность - подскажите!!!!!!
-
- эксперт
- Сообщения: 2469
- Зарегистрирован: 20 дек 2018, 04:45
- Имя: Сергей
- Страна: РБ/РФ
- город/регион: РФ Сергиев Посад
- Благодарил (а): 2119 раз
- Поблагодарили: 207 раз
Выполнение программы перед переходом в STOP
Для этого, "Enable" на привод подают физически (проводом) с контроллера.
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.
-
- здесь недавно
- Сообщения: 6
- Зарегистрирован: 17 сен 2024, 16:46
- Имя: Сергей
- Страна: Россия
- город/регион: Вологодская обл, г Череповец
Выполнение программы перед переходом в STOP
Так все-таки есть какая-то обработка при переходе контроллера в стоп?
-
- не первый раз у нас
- Сообщения: 372
- Зарегистрирован: 12 дек 2018, 14:47
- Имя: Влад
- Благодарил (а): 1 раз
- Поблагодарили: 50 раз
Выполнение программы перед переходом в STOP
И все-таки контроллер не должен уходить в стоп. Для это есть соответствующие OB, которые и вызываются если что то не так.
Если Вы сами хотите что бы контроллер вышел в стоп, то есть библиотечный SFC46
-
- здесь недавно
- Сообщения: 6
- Зарегистрирован: 17 сен 2024, 16:46
- Имя: Сергей
- Страна: Россия
- город/регион: Вологодская обл, г Череповец
Выполнение программы перед переходом в STOP
А если допустим ошибка памяти - какой OB будет выполняться и будет ли вообще?
-
- здесь недавно
- Сообщения: 94
- Зарегистрирован: 29 окт 2017, 19:52
- Имя: Дмитрий
- Благодарил (а): 5 раз
- Поблагодарили: 18 раз
Выполнение программы перед переходом в STOP
Есть различные OB, которые вызываются при появлении нарушений например ниже. Про них можете почитать в Help или на просторах интернета. Как Вы их будите использовать - это Ваше дело.
Вызов блока ошибок времени (OB80)
Вызов блока неисправностей источника (OB81)
Вызов блока диагностических прерываний (OB82)
Вызов блока снятия/установки модулей (OB83)
Вызов блока аппаратных ошибок CPU (OB84)
Вызов блока ошибок класса приоритета (OB85)
Вызов блока неисправностей стоек (OB86)
Вызов блока коммуникационных ошибок (OB87)
Вызов блока ошибок времени (OB80)
Вызов блока неисправностей источника (OB81)
Вызов блока диагностических прерываний (OB82)
Вызов блока снятия/установки модулей (OB83)
Вызов блока аппаратных ошибок CPU (OB84)
Вызов блока ошибок класса приоритета (OB85)
Вызов блока неисправностей стоек (OB86)
Вызов блока коммуникационных ошибок (OB87)
-
- почётный участник форума
- Сообщения: 1075
- Зарегистрирован: 25 июл 2008, 23:23
- Имя: Бондарев Михаил Владимирович
- Страна: Россия
- город/регион: Магнитогорск
- Благодарил (а): 52 раза
- Поблагодарили: 20 раз
-
- здесь недавно
- Сообщения: 6
- Зарегистрирован: 17 сен 2024, 16:46
- Имя: Сергей
- Страна: Россия
- город/регион: Вологодская обл, г Череповец
Выполнение программы перед переходом в STOP
Я так понял , что обработки перед переводом в стоп контроллера кнопкой или командой с программатора нет?
-
- здесь недавно
- Сообщения: 94
- Зарегистрирован: 29 окт 2017, 19:52
- Имя: Дмитрий
- Благодарил (а): 5 раз
- Поблагодарили: 18 раз
Выполнение программы перед переходом в STOP
Почитайте для чего можно использовать SFC46.
https://support.industry.siemens.com/fo ... -stp/46002
https://support.industry.siemens.com/fo ... -stp/46002
-
- здесь недавно
- Сообщения: 6
- Зарегистрирован: 17 сен 2024, 16:46
- Имя: Сергей
- Страна: Россия
- город/регион: Вологодская обл, г Череповец
Выполнение программы перед переходом в STOP
Задам вопрос по другому - какой OB запускается при переводе контроллера в стоп кнопкой или с программатора?
-
- здесь недавно
- Сообщения: 94
- Зарегистрирован: 29 окт 2017, 19:52
- Имя: Дмитрий
- Благодарил (а): 5 раз
- Поблагодарили: 18 раз
Выполнение программы перед переходом в STOP
На сколько я знаю, такого ОВ нет. Но ОВ указанные выше, как раз служат для того, что бы CPU не ушел в стоп, продолжал работать. Но при появлении ошибки блок вызывается и в этом блоке Вы можете натворить все, что хотите.