Пробывал M66 внутри Gкода работает, а внутри М кода пролетает, оформлено было так:
Код: Выделить всё
#!/bin/bash
voltage=$1
halcmd setp thc.voltage $voltage // это работает
M66 P0 L3 Q100 //а это не работает, но работает если вынести в G код.
exit 0 M190:
Код: Выделить всё
#!/bin/sh
voltage=$1
halcmd setp thc.voltage $voltage // это работает
~/emc2/nc_files/waitfor m66test TRUE //а это не работает...
exit 0waitfor:
Код: Выделить всё
#!/bin/bash
if [ $# != 2 ]; then
echo usage: $0 SignalName DesiredValue
exit 1
fi
signal=$1
value=$2
COUNTER=0;
while :; do
set -- $(halcmd -s show sig $signal)
if [ x"$2" == x"$value" ]; then // проверка не срабатывает сигнал точно есть и состояние свое меняет
exit 0
fi
if [ $COUNTER == 100 ]; then // задержка срабатывает
exit 0
fi
sleep 1
(($COUNTER++))
doneНе понял как отлаживать M коды, и почему данные конструкции не работаю, если внутри ошибки то при выполнении либо проваливается дальше, либо вылетает без всяких сообщений...
Может кто сталкивался?
З.Ы. http://linuxcnc.org/docs/html/gcode/m-code.html изучил