Подключение 5ой оси в LinuxCNC

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
DjVellf
Мастер
Сообщения: 636
Зарегистрирован: 23 июл 2012, 12:28
Репутация: 0
Контактная информация:

Подключение 5ой оси в LinuxCNC

Сообщение DjVellf »

Доброго времени суток, поставил себе 5ую ось и решил ее подключить в Linux, в настройках (степконф) указал 4 оси XYZA, потом зашел в блокнот ini, там вместо 4х осей, указал 5 осей, ниже добавил AXIS 4, и указал параметры, когда включаю Linux, все отлично якобы, появилась ось В, но ездить она отказывается и выбивает ошибку, может какойто файл еще надо править?что я не правильно делаю?может надо исправить hal файл, подскажите
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение nkp »

DjVellf писал(а):надо исправить hal файл
конечно
прописать в хал 5-ю ось по принципу 4-ой
DjVellf
Мастер
Сообщения: 636
Зарегистрирован: 23 июл 2012, 12:28
Репутация: 0
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение DjVellf »

ну скопировал я там 4ую ось, и для 5ой оси там где цифра 4, везде прописал цифру 5, и при входе ругается и выдает ошибку, ничего не получается, можно пример?где и что менять?
DjVellf
Мастер
Сообщения: 636
Зарегистрирован: 23 июл 2012, 12:28
Репутация: 0
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение DjVellf »

меняем всего 2 файла?ini и hal?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение nkp »

DjVellf писал(а):где и что менять?
в 37 строке)
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение nkp »

файлы выкладывай - будет предметный разговор
DjVellf
Мастер
Сообщения: 636
Зарегистрирован: 23 июл 2012, 12:28
Репутация: 0
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение DjVellf »

Это файл ini

[EMC]
MACHINE = токарный
DEBUG = 0

[DISPLAY]
DISPLAY = axis
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
ARCDIVISION = 64
GRIDS = 10mm 20mm 50mm 100mm 1in 2in 5in 10in
MAX_FEED_OVERRIDE = 1.2
MIN_SPINDLE_OVERRIDE = 0.5
MAX_SPINDLE_OVERRIDE = 1.2
DEFAULT_LINEAR_VELOCITY = 2.50
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 25.00
DEFAULT_ANGULAR_VELOCITY = 36.00
MIN_ANGULAR_VELOCITY = 0
MAX_ANGULAR_VELOCITY = 360.00
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/cnc/linuxcnc/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 = linuxcnc.var

[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 55555
SERVO_PERIOD = 1000000

[HAL]
HALFILE = токарный.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal

[TRAJ]
AXES = 4
COORDINATES = X Y Z A
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 36.00
MAX_VELOCITY = 25.00

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl

[AXIS_0]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 25.0
MAX_ACCELERATION = 750.0
STEPGEN_MAXACCEL = 937.5
SCALE = 80.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -0.001
MAX_LIMIT = 200.0
HOME_OFFSET = 0.0

[AXIS_1]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 25.0
MAX_ACCELERATION = 750.0
STEPGEN_MAXACCEL = 937.5
SCALE = 80.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -0.001
MAX_LIMIT = 200.0
HOME_OFFSET = 0.0

[AXIS_2]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 25.0
MAX_ACCELERATION = 750.0
STEPGEN_MAXACCEL = 937.5
SCALE = 80.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -100.0
MAX_LIMIT = 0.001
HOME_OFFSET = 0.0

[AXIS_3]
TYPE = ANGULAR
HOME = 0.0
MAX_VELOCITY = 342.003420034
MAX_ACCELERATION = 1200.0
STEPGEN_MAXACCEL = 1500.0
SCALE = 50.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -9999.0
MAX_LIMIT = 9999.0
HOME_OFFSET = 0.0
DjVellf
Мастер
Сообщения: 636
Зарегистрирован: 23 июл 2012, 12:28
Репутация: 0
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение DjVellf »

тут я меняю эти параметры, меняю это:
[TRAJ]
AXES = 4
COORDINATES = X Y Z A
на это:
[TRAJ]
AXES = 5
COORDINATES = X Y Z A B
и добавляю в конце эту строку:
[AXIS_4]
TYPE = ANGULAR
HOME = 0.0
MAX_VELOCITY = 342.003420034
MAX_ACCELERATION = 1200.0
STEPGEN_MAXACCEL = 1500.0
SCALE = 50.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -9999.0
MAX_LIMIT = 9999.0
HOME_OFFSET = 0.0

ось B появляется, но выбивает ошибку, пишет joint 4 following error
DjVellf
Мастер
Сообщения: 636
Зарегистрирован: 23 июл 2012, 12:28
Репутация: 0
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение DjVellf »

вот hal файл

# Generated by stepconf 1.1 at Sat Oct 19 18:10:44 2019
loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt hal_parport cfg="0 out"
setp parport.0.reset-time 5000
loadrt stepgen step_type=0,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-rpm <= motion.spindle-speed-out
net spindle-cmd-rpm-abs <= motion.spindle-speed-out-abs
net spindle-cmd-rps <= motion.spindle-speed-out-rps
net spindle-cmd-rps-abs <= motion.spindle-speed-out-rps-abs
net spindle-at-speed => motion.spindle-at-speed

net estop-out => parport.0.pin-01-out
net xstep => parport.0.pin-02-out
setp parport.0.pin-02-out-reset 1
net xdir => parport.0.pin-03-out
net ystep => parport.0.pin-04-out
setp parport.0.pin-04-out-reset 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 astep => parport.0.pin-08-out
setp parport.0.pin-08-out-reset 1
net adir => parport.0.pin-09-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

setp stepgen.2.position-scale [AXIS_2]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 0
setp stepgen.2.dirhold 35000
setp stepgen.2.dirsetup 35000
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

setp stepgen.3.position-scale [AXIS_3]SCALE
setp stepgen.3.steplen 1
setp stepgen.3.stepspace 0
setp stepgen.3.dirhold 35000
setp stepgen.3.dirsetup 35000
setp stepgen.3.maxaccel [AXIS_3]STEPGEN_MAXACCEL
net apos-cmd axis.3.motor-pos-cmd => stepgen.3.position-cmd
net apos-fb stepgen.3.position-fb => axis.3.motor-pos-fb
net astep <= stepgen.3.step
net adir <= stepgen.3.dir
net aenable axis.3.amp-enable-out => stepgen.3.enable

net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in

loadusr -W hal_manualtoolchange
net tool-change iocontrol.0.tool-change => hal_manualtoolchange.change
net tool-changed iocontrol.0.tool-changed <= hal_manualtoolchange.changed
net tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
DjVellf
Мастер
Сообщения: 636
Зарегистрирован: 23 июл 2012, 12:28
Репутация: 0
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение DjVellf »

Пробовал после этой строки:

setp stepgen.3.position-scale [AXIS_3]SCALE
setp stepgen.3.steplen 1
setp stepgen.3.stepspace 0
setp stepgen.3.dirhold 35000
setp stepgen.3.dirsetup 35000
setp stepgen.3.maxaccel [AXIS_3]STEPGEN_MAXACCEL
net apos-cmd axis.3.motor-pos-cmd => stepgen.3.position-cmd
net apos-fb stepgen.3.position-fb => axis.3.motor-pos-fb
net astep <= stepgen.3.step
net adir <= stepgen.3.dir
net aenable axis.3.amp-enable-out => stepgen.3.enable

добавить еще одну строку, вот такую:

setp stepgen.4.position-scale [AXIS_4]SCALE
setp stepgen.4.steplen 1
setp stepgen.4.stepspace 0
setp stepgen.4.dirhold 35000
setp stepgen.4.dirsetup 35000
setp stepgen.4.maxaccel [AXIS_4]STEPGEN_MAXACCEL
net apos-cmd axis.4.motor-pos-cmd => stepgen.4.position-cmd
net apos-fb stepgen.4.position-fb => axis.4.motor-pos-fb
net astep <= stepgen.4.step
net adir <= stepgen.4.dir
net aenable axis.4.amp-enable-out => stepgen.4.enable

а это надо писать?правильно я писал?или не обязательно?
Последний раз редактировалось DjVellf 19 окт 2019, 18:04, всего редактировалось 1 раз.
Аватара пользователя
evgenymcp
Мастер
Сообщения: 1422
Зарегистрирован: 23 апр 2017, 05:37
Репутация: 328
Настоящее имя: Евгений
Откуда: Абакан,Хакасия
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение evgenymcp »

[TRAJ]
AXES = 4
надо заменить на
[TRAJ]
AXES = 5
DjVellf
Мастер
Сообщения: 636
Зарегистрирован: 23 июл 2012, 12:28
Репутация: 0
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение DjVellf »

evgenymcp писал(а):[TRAJ]
AXES = 4
надо заменить на
[TRAJ]
AXES = 5
так вот я писал, я менял в ini

это:
[TRAJ]
AXES = 4
COORDINATES = X Y Z A
заменил на это:
[TRAJ]
AXES = 5
COORDINATES = X Y Z A B
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение nkp »

DjVellf писал(а):loadrt stepgen step_type=0,0,0,0
loadrt stepgen step_type=0,0,0,0,0
DjVellf
Мастер
Сообщения: 636
Зарегистрирован: 23 июл 2012, 12:28
Репутация: 0
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение DjVellf »

nkp писал(а):
DjVellf писал(а):loadrt stepgen step_type=0,0,0,0
loadrt stepgen step_type=0,0,0,0,0

и все?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение nkp »

DjVellf писал(а):добавить еще одну строку, вот такую:

setp stepgen.4.position-scale [AXIS_4]SCALE
setp stepgen.4.steplen 1
setp stepgen.4.stepspace 0
setp stepgen.4.dirhold 35000
setp stepgen.4.dirsetup 35000
setp stepgen.4.maxaccel [AXIS_4]STEPGEN_MAXACCEL
net apos-cmd axis.4.motor-pos-cmd => stepgen.4.position-cmd
net apos-fb stepgen.4.position-fb => axis.4.motor-pos-fb
net astep <= stepgen.4.step
net adir <= stepgen.4.dir
net aenable axis.4.amp-enable-out => stepgen.4.enable

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

setp stepgen.4.position-scale [AXIS_4]SCALE
setp stepgen.4.steplen 1
setp stepgen.4.stepspace 0
setp stepgen.4.dirhold 35000
setp stepgen.4.dirsetup 35000
setp stepgen.4.maxaccel [AXIS_4]STEPGEN_MAXACCEL
net bpos-cmd axis.4.motor-pos-cmd => stepgen.4.position-cmd
net bpos-fb stepgen.4.position-fb => axis.4.motor-pos-fb
net bstep <= stepgen.4.step
net bdir <= stepgen.4.dir
net benable axis.4.amp-enable-out => stepgen.4.enable
DjVellf
Мастер
Сообщения: 636
Зарегистрирован: 23 июл 2012, 12:28
Репутация: 0
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение DjVellf »

и все должно работать?или есть еще какие-то моменты?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение nkp »

работать не будет ,но запуститься емс должен
работать не будет - потому как выходы парпорта на драйвер не прописаны(степ,дир)
DjVellf
Мастер
Сообщения: 636
Зарегистрирован: 23 июл 2012, 12:28
Репутация: 0
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение DjVellf »

прописывать как я понимаю их здесь?

net estop-out => parport.0.pin-01-out
net xstep => parport.0.pin-02-out
setp parport.0.pin-02-out-reset 1
net xdir => parport.0.pin-03-out
net ystep => parport.0.pin-04-out
setp parport.0.pin-04-out-reset 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 astep => parport.0.pin-08-out
setp parport.0.pin-08-out-reset 1
net adir => parport.0.pin-09-out
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение nkp »

да
DjVellf
Мастер
Сообщения: 636
Зарегистрирован: 23 июл 2012, 12:28
Репутация: 0
Контактная информация:

Re: Подключение 5ой оси в LinuxCNC

Сообщение DjVellf »

в таком виде:

net estop-out => parport.0.pin-01-out
net xstep => parport.0.pin-02-out
setp parport.0.pin-02-out-reset 1
net xdir => parport.0.pin-03-out
net ystep => parport.0.pin-04-out
setp parport.0.pin-04-out-reset 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 astep => parport.0.pin-08-out
setp parport.0.pin-08-out-reset 1
net adir => parport.0.pin-09-out
net bstep => parport.0.pin-10-out
setp parport.0.pin-10-out-reset 1
net bdir => parport.0.pin-11-out
Ответить

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