Реализация halui.program.stop

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
doctorzx
Новичок
Сообщения: 31
Зарегистрирован: 30 сен 2019, 10:50
Репутация: 0
Настоящее имя: Евгений
Контактная информация:

Реализация halui.program.stop

Сообщение doctorzx »

как реализовать "стоп программы", после ошибки выбора инструмента и от внешней кнопки?

net T_error toolError.trigger <= halui.program.stop <= classicladder.0.out-03 # при не правильном выборе инструмента ладдер
остановит программу и выдаст ошибку

net abort halui.program.stop
net abort <= hm2_5i25.0.7i77.0.0.input-2 внешняя кнопка "стоп программы"
net abort halui.program.stop

по отдельности, работает кнопка "стоп программы" и эррор инструмента. А вместе, машина ругается что halui.program.stop уже занят. Да и логично что halui.program.stop не может быть одновременно входом и выходом.
Аватара пользователя
merkwurdigliebe
Мастер
Сообщения: 609
Зарегистрирован: 17 дек 2013, 22:14
Репутация: 580
Откуда: București
Контактная информация:

Re: Реализация halui.program.stop

Сообщение merkwurdigliebe »

можно объединить логическим ИЛИ

Код: Выделить всё

loadrt or2 names=program_stop
addf program_stop servo-thread
net T_error program_stop.in0 <= classicladder.0.out-03
net stop_button program_stop.in1 <= hm2_5i25.0.7i77.0.0.input-2
net abort halui.program.stop <= program_stop.out
doctorzx
Новичок
Сообщения: 31
Зарегистрирован: 30 сен 2019, 10:50
Репутация: 0
Настоящее имя: Евгений
Контактная информация:

Re: Реализация halui.program.stop

Сообщение doctorzx »

Or2 уже используется в ориентации шп. Ругается на новое ИЛИ
"exit value:1"
"insmod for or2 failed, returned - 1"
Как использовать 2 or2. Каждое нужно прописывать в loadrt и addf?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Реализация halui.program.stop

Сообщение nkp »

Код: Выделить всё

loadrt or2  count=2
addf or.0   servo-thread
addf or.1   servo-thread
======================
получаем or.0 и or.1
----------------------
то есть - в count= ставим количество экземпляров компонента
а вот функцию(и) загружаем для каждого отдельной строкой
Ответить

Вернуться в «LinuxCNC»