я хотел спросить зачем пользователи настраивают CAM на "выдачу" относительных координат?Nick писал(а):Это удобно не для кам, а для программы управляющей станком. Так проще рассчитать перемещение на текущий кадр.
что это им дает??
я хотел спросить зачем пользователи настраивают CAM на "выдачу" относительных координат?Nick писал(а):Это удобно не для кам, а для программы управляющей станком. Так проще рассчитать перемещение на текущий кадр.
кнопка аварийной остановки (большой красный грибок) должен отрубать питание станка1240 писал(а):2.) При аварийном снятии УП плазма остается включенной (это проблема).
хал:1240 писал(а):Осталась (вроде бы) последняя проблема:В оригинальном коде включение плазмы идет по М04выключение по М03 (это вообще мне не понятно).В постпроцессорах настройки этого не нашел (пока).Можно ли ЕМС научить понимать такой код ?
Код: Выделить всё
loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES num_dio=5
loadrt probe_parport
loadrt hal_parport cfg="0x378 out "
setp parport.0.reset-time 5000
loadrt stepgen step_type=0,0,0
loadrt pwmgen output_type=0
loadrt classicladder_rt numPhysInputs=15 numPhysOutputs=15 numS32in=10 numS32out=10 numFloatIn=10 numFloatOut=10
addf parport.0.read base-thread
addf stepgen.make-pulses base-thread
addf pwmgen.make-pulses base-thread
addf parport.0.write base-thread
addf parport.0.reset base-thread
addf stepgen.capture-position servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf classicladder.0.refresh servo-thread
addf stepgen.update-freq servo-thread
addf pwmgen.update servo-thread
net all-home <= parport.0.pin-12-in
net all-home => axis.0.home-sw-in
net all-home => axis.1.home-sw-in
setp pwmgen.0.pwm-freq 100.0
setp pwmgen.0.scale 1166.66666667
setp pwmgen.0.offset 0.114285714286
setp pwmgen.0.dither-pwm true
net estop-out => parport.0.pin-01-out
setp parport.0.pin-02-out-invert 1
net xstep => parport.0.pin-02-out
setp parport.0.pin-02-out-reset 1
setp parport.0.pin-03-out-invert 1
net xdir => parport.0.pin-03-out
setp parport.0.pin-04-out-invert 1
net ystep => parport.0.pin-04-out
setp parport.0.pin-04-out-reset 1
setp parport.0.pin-05-out-invert 1
net ydir => parport.0.pin-05-out
setp parport.0.pin-14-out-invert 1
net xenable => parport.0.pin-17-out
setp stepgen.0.position-scale [AXIS_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 0
setp stepgen.0.dirhold 35000
setp stepgen.0.dirsetup 35000
setp stepgen.0.maxaccel [AXIS_0]STEPGEN_MAXACCEL
net xpos-cmd axis.0.motor-pos-cmd => stepgen.0.position-cmd
net xpos-fb stepgen.0.position-fb => axis.0.motor-pos-fb
net xstep <= stepgen.0.step
net xdir <= stepgen.0.dir
net xenable axis.0.amp-enable-out => stepgen.0.enable
net home-x parport.0.pin-10-in axis.0.home-sw-in
setp stepgen.1.position-scale [AXIS_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 0
setp stepgen.1.dirhold 35000
setp stepgen.1.dirsetup 35000
setp stepgen.1.maxaccel [AXIS_1]STEPGEN_MAXACCEL
net ypos-cmd axis.1.motor-pos-cmd => stepgen.1.position-cmd
net ypos-fb stepgen.1.position-fb => axis.1.motor-pos-fb
net ystep <= stepgen.1.step
net ydir <= stepgen.1.dir
net yenable axis.1.amp-enable-out => stepgen.1.enable
net home-y parport.0.pin-12-in axis.1.home-sw-in
net tool-number <= iocontrol.0.tool-prep-number
net tool-change-loopback iocontrol.0.tool-change => iocontrol.0.tool-changed
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
#------------------------------------------------------------------------------------------------------
net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in
# Load Classicladder (--nogui - скрывать окно ладдера)
loadusr classicladder custom.clp
net feed-hold classicladder.0.out-00 motion.feed-hold ######## feed-hold ############
#net fire motion.digital-out-00 parport.0.pin-09-out # M64 P00 вкл-выкл влазмы M65 P00
net name motion.digital-out-01 parport.0.pin-07-out # M64 P01 пневмоцилиндр M65 P01
net and0-in1 motion.digital-out-02 classicladder.0.in-02 # M64 P02 контроль дуги M65 P02
#net block motion.digital-out-03 classicladder.0.in-03 # M64 P03 если >10c M65 P03
net down parport.0.pin-13-in-not motion.digital-in-00 # сигнал с концевика ПЦ
net and0-in0 parport.0.pin-15-in-not classicladder.0.in-01 # сигнал наличия дуги
net unbl2 parport.0.pin-11-in-not classicladder.0.in-04 # разблокировка схемы "reset"
#net avost motion.digital-out-04 classicladder.0.in-05 # M64 P04 EStop если >10c M65 P04
#net pr-is-run halui.program.is-running classicladder.0.in-07
#-----------------------
net fire classicladder.0.out-01 parport.0.pin-08-out
net fire_m3 motion.spindle-reverse classicladder.0.in-06
net fire_m4 motion.spindle-forward classicladder.0.in-0Цитату привел для того чтобы вспомнить, почему плазма включена.nkp писал(а):тут вот какие дела:
наши команды M64 ,включающие пины,если не выключить - так и остаются во включенном состоянии
так и в этой ситуации - сигнал контроля был включен из программы - затем программа была прервана - а он так и остался включенным
(что мы и наблюдаем)
подача теперь - ноль
и мы не можем сдвинуться
решений несколько :
1. подать команду MDI- M65 P02
2. кнопка (ну это как то избыточно выглядит)
3. еще подумать
(обрубать питание нельзя т.к. после снятия дуги плазмотрон должен остыть)nkp писал(а):кнопка аварийной остановки (большой красный грибок) должен отрубать питание станка
если она и плазму будет отрубать (просто не знаю с плазмой - можно ли так прекращать ее работу??)
имхо , если это ей не вредит - то так и сделать...кнопка аварийной остановки (большой красный грибок) должен отрубать питание станка1240 писал(а):2.) При аварийном снятии УП плазма остается включенной (это проблема).
если она и плазму будет отрубать (просто не знаю с плазмой - можно ли так прекращать ее работу??)
имхо , если это ей не вредит - то так и сделать...
Код: Выделить всё
loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES num_dio=5
loadrt probe_parport
loadrt hal_parport cfg="0x378 out "
setp parport.0.reset-time 5000
loadrt stepgen step_type=0,0,0
loadrt pwmgen output_type=0
loadrt classicladder_rt numPhysInputs=15 numPhysOutputs=15 numS32in=10 numS32out=10 numFloatIn=10 numFloatOut=10
addf parport.0.read base-thread
addf stepgen.make-pulses base-thread
addf pwmgen.make-pulses base-thread
addf parport.0.write base-thread
addf parport.0.reset base-thread
addf stepgen.capture-position servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf classicladder.0.refresh servo-thread
addf stepgen.update-freq servo-thread
addf pwmgen.update servo-thread
net all-home <= parport.0.pin-12-in
net all-home => axis.0.home-sw-in
net all-home => axis.1.home-sw-in
setp pwmgen.0.pwm-freq 100.0
setp pwmgen.0.scale 1166.66666667
setp pwmgen.0.offset 0.114285714286
setp pwmgen.0.dither-pwm true
net estop-out => parport.0.pin-01-out
setp parport.0.pin-02-out-invert 1
net xstep => parport.0.pin-02-out
setp parport.0.pin-02-out-reset 1
setp parport.0.pin-03-out-invert 1
net xdir => parport.0.pin-03-out
setp parport.0.pin-04-out-invert 1
net ystep => parport.0.pin-04-out
setp parport.0.pin-04-out-reset 1
setp parport.0.pin-05-out-invert 1
net ydir => parport.0.pin-05-out
setp parport.0.pin-14-out-invert 1
net xenable => parport.0.pin-17-out
setp stepgen.0.position-scale [AXIS_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 0
setp stepgen.0.dirhold 35000
setp stepgen.0.dirsetup 35000
setp stepgen.0.maxaccel [AXIS_0]STEPGEN_MAXACCEL
net xpos-cmd axis.0.motor-pos-cmd => stepgen.0.position-cmd
net xpos-fb stepgen.0.position-fb => axis.0.motor-pos-fb
net xstep <= stepgen.0.step
net xdir <= stepgen.0.dir
net xenable axis.0.amp-enable-out => stepgen.0.enable
setp stepgen.1.position-scale [AXIS_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 0
setp stepgen.1.dirhold 35000
setp stepgen.1.dirsetup 35000
setp stepgen.1.maxaccel [AXIS_1]STEPGEN_MAXACCEL
net ypos-cmd axis.1.motor-pos-cmd => stepgen.1.position-cmd
net ypos-fb stepgen.1.position-fb => axis.1.motor-pos-fb
net ystep <= stepgen.1.step
net ydir <= stepgen.1.dir
net yenable axis.1.amp-enable-out => stepgen.1.enable
net tool-number <= iocontrol.0.tool-prep-number
net tool-change-loopback iocontrol.0.tool-change => iocontrol.0.tool-changed
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
#------------------------------------------------------------------------------------------------------
net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in
# Load Classicladder (--nogui - скрывать окно ладдера)
loadusr classicladder custom.clp
net feed-hold classicladder.0.out-00 motion.feed-hold ######## feed-hold ############
#net fire motion.digital-out-00 parport.0.pin-09-out # M64 P00 вкл-выкл влазмы M65 P00
net name motion.digital-out-01 parport.0.pin-07-out # M64 P01 пневмоцилиндр M65 P01
net and0-in1 motion.digital-out-02 classicladder.0.in-02 # M64 P02 контроль дуги M65 P02
#net block motion.digital-out-03 classicladder.0.in-03 # M64 P03 если >10c M65 P03
net down parport.0.pin-13-in-not motion.digital-in-00 # сигнал с концевика ПЦ
net and0-in0 parport.0.pin-15-in-not classicladder.0.in-01 # сигнал наличия дуги
net unbl2 parport.0.pin-11-in-not classicladder.0.in-04 # разблокировка схемы "reset"
#net avost motion.digital-out-04 classicladder.0.in-05 # M64 P04 EStop если >10c M65 P04
#net pr-is-run halui.program.is-running classicladder.0.in-07
#-----------------------
net fire classicladder.0.out-01 parport.0.pin-08-out
net fire_m3 motion.spindle-reverse classicladder.0.in-06
net fire_m4 motion.spindle-forward classicladder.0.in-05вопрос то в чём ??1240 писал(а):опрос у господ/товарищей консультантов linuxCNC 2.5 ?
Аааааа,токо дошло в чем был вопрос1240 писал(а):нашел: у Вас 2,6,0
Если добавить G90.1 импортируется и второй1240 писал(а):Но один раскрой импортируется, один не импортируется
думаю из за g02 g03