Re: EMC2 и Joystick
Добавлено: 07 июн 2012, 21:11
я думал ее нельзя менять .nkp писал(а):F1Виталий писал(а):где она находится?
Статьи, обзоры, цены на станки и комплектующие.
https://cnc-club.ru/forum/
я думал ее нельзя менять .nkp писал(а):F1Виталий писал(а):где она находится?
советовали что не надо.пробывал и с g38.4 одинаковоnkp писал(а):а почему ты отказался от g38.4 ?
nkp писал(а):покажи на скрине где motion.probe-input сработал
Код: Выделить всё
O<touchoff> SUB
G91 F20
G38.2 Z-10
O<touchoff> ENDSUBОшибок никаких не выдает?Виталий писал(а):делаю пробу ,ось z опускается, касается (бобышку) и останавливается ,без уточнений.координаты не обнуляются и не равны высоте 5
(если я правельно понял последнюю строчку)
Код: Выделить всё
O<touchoff> SUB
G91 F20
G38.2 Z-10
G90
G92 Z0
G00 Z5
O<touchoff> ENDSUBтоже самое (касание,остановка)Nick писал(а):Ошибок никаких не выдает?Виталий писал(а):делаю пробу ,ось z опускается, касается (бобышку) и останавливается ,без уточнений.координаты не обнуляются и не равны высоте 5
(если я правельно понял последнюю строчку)
Хммм... может ему не нравится G92 в относительном режиме... попробуй:
да и G01 я на G00 заменил, чтобы быстро поднималась.Кстати, похоже, что проба работает, т.к. если она за 10мм не сработает G38.2 должен выдать ошибку.Код: Выделить всё
O<touchoff> SUB G91 F20 G38.2 Z-10 G90 G92 Z0 G00 Z5 O<touchoff> ENDSUB
в каком смысле подпружиненая,изогнутая чтоли? на счет плохого контакта ,думаю не в нем дело ,так как проба тогда срабатывала по разному.чтото подсказывает что дело в ж коде,пытаюсь сам (прочитать) и понять почему так ,а не подругому.billsmith писал(а):Попробуй простоПотом сам, после остановки, обнулиш ось и отъедеш. Я думаю что у тебя просто ненадёжный контакт. У меня например подпружиненная пластинка.Код: Выделить всё
O<touchoff> SUB G91 F20 G38.2 Z-10 O<touchoff> ENDSUB
где посмотреть ?Nick писал(а):Хмм.... Да, сразу после касания должно остановиться и поехать наверх. Дальнейшее состояние пина probe-in не влияет. Но! может у тебя этот пин заведен на что-то еще???
по файлам хал пробежатьсяВиталий писал(а):где посмотреть ?
Код: Выделить всё
# Создан stepconf в Sun May 27 15:27:55 2012
# Все изменения в этом файле будут перезаписаны
# при следующем запуске stepconf
loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt probe_parport
loadrt hal_parport cfg="0x378 out "
setp parport.0.reset-time 500
loadrt stepgen step_type=0,0,0
addf parport.0.read base-thread
addf stepgen.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 stepgen.update-freq servo-thread
net spindle-cmd <= motion.spindle-speed-out
setp parport.0.pin-02-out-invert 1
net xstep => parport.0.pin-02-out
setp parport.0.pin-02-out-reset 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
net zstep => parport.0.pin-06-out
setp parport.0.pin-06-out-reset 1
net zdir => parport.0.pin-07-out
net home-x <= parport.0.pin-10-in
net home-y <= parport.0.pin-11-in
net estop-ext <= parport.0.pin-13-in-not
setp stepgen.0.position-scale [AXIS_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 0
setp stepgen.0.dirhold 19000
setp stepgen.0.dirsetup 16000
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 => 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 19000
setp stepgen.1.dirsetup 16000
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 => axis.1.home-sw-in
setp stepgen.2.position-scale [AXIS_2]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 0
setp stepgen.2.dirhold 19000
setp stepgen.2.dirsetup 16000
setp stepgen.2.maxaccel [AXIS_2]STEPGEN_MAXACCEL
net zpos-cmd axis.2.motor-pos-cmd => stepgen.2.position-cmd
net zpos-fb stepgen.2.position-fb => axis.2.motor-pos-fb
net zstep <= stepgen.2.step
net zdir <= stepgen.2.dir
net zenable axis.2.amp-enable-out => stepgen.2.enable
net estop-out <= iocontrol.0.user-enable-out
net estop-ext => iocontrol.0.emc-enable-in
loadusr -W hal_input -KRAL 2-Axis,8-Button
net joystick_enable <= input.0.btn-base => axis.0.jog-enable
net joystick_enable => axis.1.jog-enable
setp axis.0.jog-vel-mode 1
setp axis.1.jog-vel-mode 1
setp halui.jog-speed 5000
net jog_scale input.0.abs-x-position => halui.jog.0.analog
net jog_scale1 input.0.abs-y-position => halui.jog.1.analog
net probe motion.probe-input => parport.0.pin-12-in-notКод: Выделить всё
# Создан stepconf в Thu May 31 20:59:36 2012
# Все изменения в этом файле будут перезаписаны
# при следующем запуске stepconf
[EMC]
MACHINE = cnc
DEBUG = 0
[DISPLAY]
DISPLAY = axis
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
INTRO_GRAPHIC = emc2.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/vitaliy/emc2/nc_files
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm
[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[RS274NGC]
PARAMETER_FILE = emc.var
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 100000
SERVO_PERIOD = 1000000
[HAL]
HALFILE = cnc.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal
HALUI = halui
[HALUI]
MDI_COMMAND = O<touchoff> CALL
[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 20.00
MAX_LINEAR_VELOCITY = 200.00
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[AXIS_0]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 200.0
MAX_ACCELERATION = 300.0
STEPGEN_MAXACCEL = 375.0
SCALE = 5.28
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -1000.0
MAX_LIMIT = 1000.0
HOME_OFFSET = 1.000000
HOME_SEARCH_VEL = 50.000000
HOME_LATCH_VEL = 50.000000
[AXIS_1]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 200.0
MAX_ACCELERATION = 300.0
STEPGEN_MAXACCEL = 375.0
SCALE = 5.28
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -1000.0
MAX_LIMIT = 1000.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = 50.000000
HOME_LATCH_VEL = 50.000000
[AXIS_2]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 8.0
MAX_ACCELERATION = 303.0
STEPGEN_MAXACCEL = 378.75
SCALE = 100.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -200.0
MAX_LIMIT = 200.0
HOME_OFFSET = 0.0
net start_probe input.0.btn-top => halui.mdi-command-00да работает отлино ,пост #146Nick писал(а):ЗЫ а пин датчика probe точно к 12 пину LPT подключен? Попробуй замкнуть его в ручную и посмотреть в hal meter, что он на true меняется...
выполняю как обычный ж код.Nick писал(а):Может ему не нравится, что все это в режиме mdi выполянется... попробуй это сохранить в файл, открыть его в LinuxCNC и выполнить как обычную программу ...G91 F20G38.2 Z-10G0 z5 G90