8.10. Как реализовать кнопку экстренной остановки?

Для реализации кнопки аварийной остановки вам потребуется использовать цифровой вход/выход общего назначения, (контакты 25. EXTGPIO_0 и 14. DGND, digital ground), расположенный на разъеме HDB-26.

Используя библиотеку libximc, нужно будет установить флаг 0x5 - EXTIO_SETUP_MODE_IN_ALARM (см. Команду SEIO).

Если вы используете XiLab, нужно снять флажок «IO pin is output» в настройках EXTIO , а затем из выпадающего списка выбрать «Alarm on input».

../../_images/alarm_on_input.png

Важно

Для кнопки аварийной остановки рекомендуется использовать именно ALARM, так как ALARM не позволит выполнять какие-либо действия до тех пор, пока он не будет сброшен (сброс происходит с помощью кнопки stop или при вызове команды stop).
Если вместо ALARM используется другая команда, например «stop» или «power off», то при вызове любой команды движения (MOVE/MOVR/LEFT/RIGT) движение продолжится, несмотря на то, что кнопка осталась нажатой.

В функционал аварийной кнопки не заложена плавная остановка!