AG250CNC
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
Прописал это строчку и заработало. Ура
Спасибо!
Спасибо!
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
Все хорошо, вот только шпиндель крутится только по часовой стрелке, против отказывается. хотя сигнал на смену направления проходит.
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
Еще такой момент. При включении шпинделя по часовой стрелке на частотник приходит положительное напряжение задания, а при включении против часовой отрицательное. Судя по всему из-за этого он и не вращается. Только вот как сделать, чтоб положительное задание приходило.
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: AG250CNC
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
Что должно стоять вместо N и в какую часть хала нужно добавить этот компонент?
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: AG250CNC
N это обычно номер компонента или количество компонентов , нумерация компонентов идет с "0" , а добавить можно наверное в любую часть хела но лучше в ту часть где настраиваешь шпиндель
тоесть сигнал с мотион-шпиделя у тебя сначала идет на компонент скале и потом ты этот сигнал отправляешь на АБС (абсолютную величину) и выход абс отправляешь на пин управления шпинделем
ты же уже использовал компонент скале , все можно сделать по антологии
тоесть сигнал с мотион-шпиделя у тебя сначала идет на компонент скале и потом ты этот сигнал отправляешь на АБС (абсолютную величину) и выход абс отправляешь на пин управления шпинделем
ты же уже использовал компонент скале , все можно сделать по антологии
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: AG250CNC
Теме уже скоро полгода... Неужели за это время не нашлось времени прочитать несколько страниц документации? Даже в русском переводе?botcman писал(а):Что должно стоять вместо N и в какую часть хала нужно добавить этот компонент?
Почитай хотя-бы пока ждёшь ответа...
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
Прочитываю немного, а что толку. Без подсказок все равно не идет.
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
loadrt abs [count=0]
addf abs.0
abs.0 (scale.0)
abs.0.in float in
abs.0.out float out
abs.0.sign bit out
abs.0.is-positive bit out
abs.0.is-negative bit out
setp scale.0.gain 0.007
setp to_pci.1.out_scale3 1
net spindle-speed-scale motion.spindle-speed-out => scale.0.in
net spindle-speed-to_pci.1.dcontrol3 abs.0 => to_pci.1.dcontrol3
Так?
addf abs.0
abs.0 (scale.0)
abs.0.in float in
abs.0.out float out
abs.0.sign bit out
abs.0.is-positive bit out
abs.0.is-negative bit out
setp scale.0.gain 0.007
setp to_pci.1.out_scale3 1
net spindle-speed-scale motion.spindle-speed-out => scale.0.in
net spindle-speed-to_pci.1.dcontrol3 abs.0 => to_pci.1.dcontrol3
Так?
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: AG250CNC
малеха не так ,
у тебя в хел файле есть такие 3 строки
#============== PWM Generator command SPINDLE================
setp scale.0.gain 0.007
net spindle-speed-scale motion.spindle-speed-out => scale.0.in
net spindle-speed-to_pci.1.dcontrol3 scale.0.out => to_pci.1.dcontrol3
вот вместо этих строк надо вставить это, я попытался шота навоять , за работоспособность не ручаюсь но в моем понимании должно быть так
у тебя в хел файле есть такие 3 строки
#============== PWM Generator command SPINDLE================
setp scale.0.gain 0.007
net spindle-speed-scale motion.spindle-speed-out => scale.0.in
net spindle-speed-to_pci.1.dcontrol3 scale.0.out => to_pci.1.dcontrol3
вот вместо этих строк надо вставить это, я попытался шота навоять , за работоспособность не ручаюсь но в моем понимании должно быть так
Код: Выделить всё
#==============new PWM Generator command SPINDLE new ================
setp scale.0.gain 0.007
net spindle-speed-scale motion.spindle-speed-out => scale.0.in
#net spindle-speed-to_pci.1.dcontrol3 scale.0.out => to_pci.1.dcontrol3
#считываеш компонент абс в количестве =1
loadrt abs count=1
#размешщаеш компонет абс в сервоцикле
addf abs.0 servo-thread
#соединяем командой (НэТ) выход скале с входом (АБС)
net spindle-speed-to_pci.1.dcontrol3abc scale.0.out => abs.0.in
#соединяем выход АБС с пином ту писи
net spindle-speed-to_pci.1.dcontrol3 abs.0.out => to_pci.1.dcontrol3
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
Спасибо. Попробую теперь только через 4 дня. Отпишу о результатах.
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
Код: Выделить всё
loadrt trivkins
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
# My driver
loadrt to_pci
loadrt pid names=pid.x,pid.z,pid.y
loadrt oneshot count=1
loadrt or2 count=1
loadrt and2 count=2
loadrt timedelay count=2
loadrt not count=2
# ################################################
# THREADS
# ################################################
addf to_pci.1.update servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf pid.x.do-pid-calcs servo-thread
addf pid.z.do-pid-calcs servo-thread
addf pid.y.do-pid-calcs servo-thread
addf oneshot.0 servo-thread
addf or2.0 servo-thread
addf and2.0 servo-thread
addf timedelay.0 servo-thread
addf not.0 servo-thread
addf timedelay.1 servo-thread
addf not.1 servo-thread
addf and2.1 servo-thread
# -------E-STOP--------
net estop-ext iocontrol.0.emc-enable-in <= iocontrol.0.user-enable-out
# ---motion control signals---
net in-position <= motion.in-position
net machine-is-enabled <= motion.motion-enabled
# external output signals
net machine-is-enabled to_pci.1.pins.pin-00-out
# external input signals
# --- MAX-X ---
net max-x <= to_pci.1.pins.pin-00-in-n
# --- MIN-X ---
net min-x <= to_pci.1.pins.pin-01-in-n
# --- HOME-X ---
net home-x <= to_pci.1.pins.pin-02-in-n
# --- MAX-Y ---
net max-y <= to_pci.1.pins.pin-03-in-n
# --- MIN-Y ---
net min-y <= to_pci.1.pins.pin-04-in-n
# --- HOME-Y ---
net home-y <= to_pci.1.pins.pin-05-in-n
# --- MAX-Z ---
net max-z <= to_pci.1.pins.pin-06-in-n
# --- MIN-Z ---
net min-z <= to_pci.1.pins.pin-07-in-n
# --- HOME-Z ---
net home-z <= to_pci.1.pins.pin-08-in-n
# rail lube on/off #
# смазка при включении длительностью 10 секунд
setp oneshot.0.width 10
net machine-is-on oneshot.0.in
net delay oneshot.0.out => or2.0.in0
net timer-delay => or2.0.in1
net rail-lube => or2.0.out
net rail-lube => to_pci.1.pins.pin-01-out
# интервал смазки 600 секунд длительностью 10 секунд
setp timedelay.0.on-delay 600
setp timedelay.0.off-delay 10
net machine-is-on => and2.0.in0
net timer-in => and2.0.in1
net timer-in-1 => and2.0.out
net timer-in-1 => timedelay.0.in
net timer-delay => timedelay.0.out
net timer-delay => not.0.in
net timer-in <= not.0.out
#spinle lube on/off#
# интервал смазки 900 секунд длительностью 10 секунд
setp timedelay.1.on-delay 900
setp timedelay.1.off-delay 10
net spindle-on => and2.1.in0
net timer-in => and2.1.in1
net timer-in-2 => and2.1.out
net timer-in-2 => timedelay.1.in
net timer-delay.1 => timedelay.1.out
net timer-delay.1 => not.1.in
net timer-in.1 <= not.1.out
net spindle-lube => to_pci.1.pins.pin-02-out
#*******************
# AXIS X
#*******************
setp pid.x.Pgain [AXIS_0]P
setp pid.x.Igain [AXIS_0]I
setp pid.x.Dgain [AXIS_0]D
setp pid.x.bias [AXIS_0]BIAS
setp pid.x.FF0 [AXIS_0]FF0
setp pid.x.FF1 [AXIS_0]FF1
setp pid.x.FF2 [AXIS_0]FF2
setp pid.x.deadband [AXIS_0]DEADBAND
setp pid.x.maxoutput [AXIS_0]MAX_OUTPUT
net x-enable => pid.x.enable
net x-output => pid.x.output
net x-pos-cmd => pid.x.command
net x-pos-fb => pid.x.feedback
# --------fb--------------
setp to_pci.1.feedback.enc_scale0 [AXIS_0]ENCODER_SCALE
net x-pos-fb <= to_pci.1.feedback.encoder0
net x-pos-fb => axis.0.motor-pos-fb
# ------PWM Generator signals/setup--------
net x-enable axis.0.amp-enable-out
net x-enable => to_pci.1.enable_drive
setp to_pci.1.out_scale0 [AXIS_0]OUTPUT_SCALE
net x-output => to_pci.1.dcontrol0
net x-pos-cmd <= axis.0.motor-pos-cmd
# ---setup home / limit switch signals---
net home-x => axis.0.home-sw-in
net min-x => axis.0.neg-lim-sw-in
net max-x => axis.0.pos-lim-sw-in
#*******************
# AXIS Y
#*******************
setp pid.y.Pgain [AXIS_1]P
setp pid.y.Igain [AXIS_1]I
setp pid.y.Dgain [AXIS_1]D
setp pid.y.bias [AXIS_1]BIAS
setp pid.y.FF0 [AXIS_1]FF0
setp pid.y.FF1 [AXIS_1]FF1
setp pid.y.FF2 [AXIS_1]FF2
setp pid.y.deadband [AXIS_1]DEADBAND
setp pid.y.maxoutput [AXIS_1]MAX_OUTPUT
net y-enable => pid.y.enable
net y-output => pid.y.output
net y-pos-cmd => pid.y.command
net y-pos-fb => pid.y.feedback
# --------fb--------------
setp to_pci.1.feedback.enc_scale1 [AXIS_1]ENCODER_SCALE
net y-pos-fb <= to_pci.1.feedback.encoder1
net y-pos-fb => axis.1.motor-pos-fb
# ------PWM Generator signals/setup--------
net y-enable axis.1.amp-enable-out
setp to_pci.1.out_scale1 [AXIS_1]OUTPUT_SCALE
net y-output => to_pci.1.dcontrol1
net y-pos-cmd <= axis.1.motor-pos-cmd
# ---setup home / limit switch signals---
net home-y => axis.1.home-sw-in
net min-y => axis.1.neg-lim-sw-in
net max-y => axis.1.pos-lim-sw-in
#*******************
# AXIS Z
#*******************
setp pid.z.Pgain [AXIS_2]P
setp pid.z.Igain [AXIS_2]I
setp pid.z.Dgain [AXIS_2]D
setp pid.z.bias [AXIS_2]BIAS
setp pid.z.FF0 [AXIS_2]FF0
setp pid.z.FF1 [AXIS_2]FF1
setp pid.z.FF2 [AXIS_2]FF2
setp pid.z.deadband [AXIS_2]DEADBAND
setp pid.z.maxoutput [AXIS_2]MAX_OUTPUT
net z-enable => pid.z.enable
net z-output => pid.z.output
net z-pos-cmd => pid.z.command
net z-pos-fb => pid.z.feedback
# --------fb--------------
setp to_pci.1.feedback.enc_scale2 [AXIS_2]ENCODER_SCALE
net z-pos-fb <= to_pci.1.feedback.encoder2
net z-pos-fb => axis.2.motor-pos-fb
# ------PWM Generator signals/setup--------
net z-enable axis.2.amp-enable-out
setp to_pci.1.out_scale2 [AXIS_2]OUTPUT_SCALE
net z-output => to_pci.1.dcontrol2
net z-pos-cmd <= axis.2.motor-pos-cmd
# ---setup home / limit switch signals---
net home-z => axis.2.home-sw-in
net min-z => axis.2.neg-lim-sw-in
net max-z => axis.2.pos-lim-sw-in
#_ _ _ SPINDLE _ _ _
net spindle-on <= motion.spindle-on
net spindle-cw <= motion.spindle-forward
net spindle-ccw <= motion.spindle-reverse
net spindle-enable => motion.spindle-at-speed
#============== PWM Generator command SPINDLE================
loadrt abs count=1
addf abs.0 servo-thread
setp to_pci.1.out_scale3 1
setp scale.0.gain 0.007
net spindle-speed-to_pci.1.dcontrol3 abc scale.0.out => abs.0.in
net spindle-speed-to_pci.1.dcontrol3 abs.0.out => to_pci.1.dcontrol3
net spindle-cw => to_pci.1.pins.pin-08-out
net spindle-ccw => to_pci.1.pins.pin-09-out
#----------- SIGNALS ---------------
#net buton_test => to_pci.1.feedback.index_en0
net buton_test => to_pci.1.pins.pin-10-out
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
Код: Выделить всё
loadrt trivkins
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
# My driver
loadrt to_pci
loadrt pid names=pid.x,pid.z,pid.y
loadrt oneshot count=1
loadrt or2 count=1
loadrt and2 count=2
loadrt timedelay count=2
loadrt not count=2
# ################################################
# THREADS
# ################################################
addf to_pci.1.update servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf pid.x.do-pid-calcs servo-thread
addf pid.z.do-pid-calcs servo-thread
addf pid.y.do-pid-calcs servo-thread
addf oneshot.0 servo-thread
addf or2.0 servo-thread
addf and2.0 servo-thread
addf timedelay.0 servo-thread
addf not.0 servo-thread
addf timedelay.1 servo-thread
addf not.1 servo-thread
addf and2.1 servo-thread
# -------E-STOP--------
net estop-ext iocontrol.0.emc-enable-in <= iocontrol.0.user-enable-out
# ---motion control signals---
net in-position <= motion.in-position
net machine-is-enabled <= motion.motion-enabled
# external output signals
net machine-is-enabled to_pci.1.pins.pin-00-out
# external input signals
# --- MAX-X ---
net max-x <= to_pci.1.pins.pin-00-in-n
# --- MIN-X ---
net min-x <= to_pci.1.pins.pin-01-in-n
# --- HOME-X ---
net home-x <= to_pci.1.pins.pin-02-in-n
# --- MAX-Y ---
net max-y <= to_pci.1.pins.pin-03-in-n
# --- MIN-Y ---
net min-y <= to_pci.1.pins.pin-04-in-n
# --- HOME-Y ---
net home-y <= to_pci.1.pins.pin-05-in-n
# --- MAX-Z ---
net max-z <= to_pci.1.pins.pin-06-in-n
# --- MIN-Z ---
net min-z <= to_pci.1.pins.pin-07-in-n
# --- HOME-Z ---
net home-z <= to_pci.1.pins.pin-08-in-n
# rail lube on/off #
# смазка при включении длительностью 10 секунд
setp oneshot.0.width 10
net machine-is-on oneshot.0.in
net delay oneshot.0.out => or2.0.in0
net timer-delay => or2.0.in1
net rail-lube => or2.0.out
net rail-lube => to_pci.1.pins.pin-01-out
# интервал смазки 600 секунд длительностью 10 секунд
setp timedelay.0.on-delay 600
setp timedelay.0.off-delay 10
net machine-is-on => and2.0.in0
net timer-in => and2.0.in1
net timer-in-1 => and2.0.out
net timer-in-1 => timedelay.0.in
net timer-delay => timedelay.0.out
net timer-delay => not.0.in
net timer-in <= not.0.out
#spinle lube on/off#
# интервал смазки 900 секунд длительностью 10 секунд
setp timedelay.1.on-delay 900
setp timedelay.1.off-delay 10
net spindle-on => and2.1.in0
net timer-in => and2.1.in1
net timer-in-2 => and2.1.out
net timer-in-2 => timedelay.1.in
net timer-delay.1 => timedelay.1.out
net timer-delay.1 => not.1.in
net timer-in.1 <= not.1.out
net spindle-lube => to_pci.1.pins.pin-02-out
#*******************
# AXIS X
#*******************
setp pid.x.Pgain [AXIS_0]P
setp pid.x.Igain [AXIS_0]I
setp pid.x.Dgain [AXIS_0]D
setp pid.x.bias [AXIS_0]BIAS
setp pid.x.FF0 [AXIS_0]FF0
setp pid.x.FF1 [AXIS_0]FF1
setp pid.x.FF2 [AXIS_0]FF2
setp pid.x.deadband [AXIS_0]DEADBAND
setp pid.x.maxoutput [AXIS_0]MAX_OUTPUT
net x-enable => pid.x.enable
net x-output => pid.x.output
net x-pos-cmd => pid.x.command
net x-pos-fb => pid.x.feedback
# --------fb--------------
setp to_pci.1.feedback.enc_scale0 [AXIS_0]ENCODER_SCALE
net x-pos-fb <= to_pci.1.feedback.encoder0
net x-pos-fb => axis.0.motor-pos-fb
# ------PWM Generator signals/setup--------
net x-enable axis.0.amp-enable-out
net x-enable => to_pci.1.enable_drive
setp to_pci.1.out_scale0 [AXIS_0]OUTPUT_SCALE
net x-output => to_pci.1.dcontrol0
net x-pos-cmd <= axis.0.motor-pos-cmd
# ---setup home / limit switch signals---
net home-x => axis.0.home-sw-in
net min-x => axis.0.neg-lim-sw-in
net max-x => axis.0.pos-lim-sw-in
#*******************
# AXIS Y
#*******************
setp pid.y.Pgain [AXIS_1]P
setp pid.y.Igain [AXIS_1]I
setp pid.y.Dgain [AXIS_1]D
setp pid.y.bias [AXIS_1]BIAS
setp pid.y.FF0 [AXIS_1]FF0
setp pid.y.FF1 [AXIS_1]FF1
setp pid.y.FF2 [AXIS_1]FF2
setp pid.y.deadband [AXIS_1]DEADBAND
setp pid.y.maxoutput [AXIS_1]MAX_OUTPUT
net y-enable => pid.y.enable
net y-output => pid.y.output
net y-pos-cmd => pid.y.command
net y-pos-fb => pid.y.feedback
# --------fb--------------
setp to_pci.1.feedback.enc_scale1 [AXIS_1]ENCODER_SCALE
net y-pos-fb <= to_pci.1.feedback.encoder1
net y-pos-fb => axis.1.motor-pos-fb
# ------PWM Generator signals/setup--------
net y-enable axis.1.amp-enable-out
setp to_pci.1.out_scale1 [AXIS_1]OUTPUT_SCALE
net y-output => to_pci.1.dcontrol1
net y-pos-cmd <= axis.1.motor-pos-cmd
# ---setup home / limit switch signals---
net home-y => axis.1.home-sw-in
net min-y => axis.1.neg-lim-sw-in
net max-y => axis.1.pos-lim-sw-in
#*******************
# AXIS Z
#*******************
setp pid.z.Pgain [AXIS_2]P
setp pid.z.Igain [AXIS_2]I
setp pid.z.Dgain [AXIS_2]D
setp pid.z.bias [AXIS_2]BIAS
setp pid.z.FF0 [AXIS_2]FF0
setp pid.z.FF1 [AXIS_2]FF1
setp pid.z.FF2 [AXIS_2]FF2
setp pid.z.deadband [AXIS_2]DEADBAND
setp pid.z.maxoutput [AXIS_2]MAX_OUTPUT
net z-enable => pid.z.enable
net z-output => pid.z.output
net z-pos-cmd => pid.z.command
net z-pos-fb => pid.z.feedback
# --------fb--------------
setp to_pci.1.feedback.enc_scale2 [AXIS_2]ENCODER_SCALE
net z-pos-fb <= to_pci.1.feedback.encoder2
net z-pos-fb => axis.2.motor-pos-fb
# ------PWM Generator signals/setup--------
net z-enable axis.2.amp-enable-out
setp to_pci.1.out_scale2 [AXIS_2]OUTPUT_SCALE
net z-output => to_pci.1.dcontrol2
net z-pos-cmd <= axis.2.motor-pos-cmd
# ---setup home / limit switch signals---
net home-z => axis.2.home-sw-in
net min-z => axis.2.neg-lim-sw-in
net max-z => axis.2.pos-lim-sw-in
#_ _ _ SPINDLE _ _ _
net spindle-on <= motion.spindle-on
net spindle-cw <= motion.spindle-forward
net spindle-ccw <= motion.spindle-reverse
net spindle-enable => motion.spindle-at-speed
#============== PWM Generator command SPINDLE================
loadrt scale count=1
loadrt abs count=1
addf scale.0 servo-thread
addf abs.0 servo-thread
setp to_pci.1.out_scale3 1
setp scale.0.gain 0.007
net spindle-speed-scale motion.spindle-speed-out => abs.0.in
net spindle-speed-to_pci.1.dcontrol3 abs.0.out => to_pci.1.dcontrol3
net spindle-cw => to_pci.1.pins.pin-08-out
net spindle-ccw => to_pci.1.pins.pin-09-out
#----------- SIGNALS ---------------
#net buton_test => to_pci.1.feedback.index_en0
net buton_test => to_pci.1.pins.pin-10-out
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
Вот так заработало. Но все равно какая-то ерунда происходит.
При нажатии кнопки включения шпинделя начинается вращение с минимальной частотой. При нажатии кнопки увеличения оборотов ничего не происходит. При перемещении ползунка Скорость шпинделя от 100% в сторону уменьшения шпиндель начинает набирать обороты. Причем если двигать ползунок до нуля, обороты сначала повышаются, потом снижаются, так несколько раз. В чем проблема?
При нажатии кнопки включения шпинделя начинается вращение с минимальной частотой. При нажатии кнопки увеличения оборотов ничего не происходит. При перемещении ползунка Скорость шпинделя от 100% в сторону уменьшения шпиндель начинает набирать обороты. Причем если двигать ползунок до нуля, обороты сначала повышаются, потом снижаются, так несколько раз. В чем проблема?
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
Помогите разобраться.
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: AG250CNC
как то тяжеловато тебе помогать ты что то делаешь исправляешь , а потом у тебя не работа
что у тебя сейчас в хел , что касается шпинделя
я честно говоря не очень знаю как устроена плате "ту пис" но могу сделать предположение что параметром
setp to_pci.1.out_scale3 1 можно регулировать масштаб передачи сигнала от мотион шпинднля до выхода и раньше ты вычислял , что эта величина должна быть 0.007 попробуй установить
setp to_pci.1.out_scale3 0.007
что у тебя сейчас в хел , что касается шпинделя
Код: Выделить всё
#============== PWM Generator command SPINDLE================
loadrt scale count=1
loadrt abs count=1
addf scale.0 servo-thread
addf abs.0 servo-thread
setp to_pci.1.out_scale3 1
setp scale.0.gain 0.007
net spindle-speed-scale motion.spindle-speed-out => abs.0.in
net spindle-speed-to_pci.1.dcontrol3 abs.0.out => to_pci.1.dcontrol3
net spindle-cw => to_pci.1.pins.pin-08-out
net spindle-ccw => to_pci.1.pins.pin-09-out
setp to_pci.1.out_scale3 1 можно регулировать масштаб передачи сигнала от мотион шпинднля до выхода и раньше ты вычислял , что эта величина должна быть 0.007 попробуй установить
setp to_pci.1.out_scale3 0.007
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: AG250CNC
это пишет что нету компонента скалеbotcman писал(а):Вот ошибка
в таком случае раздел шпинделя должен быть такой
Код: Выделить всё
#==============new PWM Generator command SPINDLE new ================
#считываем компонент скале
loadrt scale count=1
#добавдяемкомпонет скале в сервоцикл
addf scale.0 servo-thread
setp scale.0.gain 0.007
setp to_pci.1.out_scale3 1
net spindle-speed-scale motion.spindle-speed-out => scale.0.in
#net spindle-speed-to_pci.1.dcontrol3 scale.0.out => to_pci.1.dcontrol3
#считываеш компонент абс в количестве =1
loadrt abs count=1
#размешщаеш компонет абс в сервоцикле
addf abs.0 servo-thread
#соединяем командой (НэТ) выход скале с входом (АБС)
net spindle-speed-to_pci.1.dcontrol3abc scale.0.out => abs.0.in
#соединяем выход АБС с пином ту писи
net spindle-speed-to_pci.1.dcontrol3 abs.0.out => to_pci.1.dcontrol3
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
Пока жду ответа пытаюсь сам исправить, экспериментировать. С последней версией хала заработало, но не очень корректно. Сейчас не могу попробовать, не у станка. Как доберусь, обязательно отпишусь. Огромное спасибо за помощь.
-
- Мастер
- Сообщения: 556
- Зарегистрирован: 04 мар 2016, 20:22
- Репутация: 1
- Настоящее имя: Андрей
- Контактная информация:
Re: AG250CNC
Подскажите. Сегодня включил станок, оси ездили, перемещения осей были видны. Потом произошел какой-то сбой, перестал реагировать на нажатия мыши, оси не ездят, перемещения стоят на нуле. На нажатие кнопки в правом верхнем углу не реагирует. Шпиндель тоже не крутится. Пробовал перезагрузить комп, пару раз ЦНЦ загружался с ошибкой, ошибку не запоминал, что-то про невозможность вставить РТАИ... Потом вроде загрузился ЦНЦ, но все равно не реагирует ни на что. Что делать-то?