7i33TA настройка шпинделя

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

7i33TA настройка шпинделя

Сообщение roach »

Подключаю шпиндель схема
от 7i33 +-10В -> частотник Веспер e2 8300 -> асинхронный двигатель -> Енкодер на валу -> 7i33
В тесте pncconf все крутится. Подаем 5В на частотнике 5В. Данные с енкодера считываются
В EMC2 же непонятная картина, там PID никак не получается настроить,

Помогите кто настраивал.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение Nick »

А что конкретно не получается?
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение roach »

как реализовать переключение коробки скоростей?
хотелось бы так - оператор на панели emc2 выбирает скорость выставленную на станке, и соотв-но меняется шкала скорости шпинделя
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение freeform »

roach писал(а):В EMC2 же непонятная картина, там PID никак не получается настроить,

Помогите кто настраивал.
Я настраивал. А зачем ПИД для шпинделя? Частотник сам прекрасно справляется с поддержанием оборотов.
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение roach »

freeform писал(а):
roach писал(а):В EMC2 же непонятная картина, там PID никак не получается настроить,

Помогите кто настраивал.
Я настраивал. А зачем ПИД для шпинделя? Частотник сам прекрасно справляется с поддержанием оборотов.
пожалуйста, поделись конфигами шпинделя в емц, мне даже оттолкнуться не от чего(

вот мои (сгенерированы автоматически в pncconf):

ини:

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

#********************
# Spindle 
#********************
[SPINDLE_9]
MAX_VELOCITY = 16.667
MAX_ACCELERATION = 20.0
P = 1.0
I = 0.0
D = 0.000
FF0 = 0.0
FF1 = 0.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 1.15
ENCODER_SCALE = -1000.0
OUTPUT_SCALE = -10.0
OUTPUT_OFFSET = 0.0
MAX_OUTPUT = 10.0
датчик на вале 1000чник

хал:

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

#***********************************************************************************
#                                                                   SPINDLE S
#***********************************************************************************

setp   pid.s.Pgain     [SPINDLE_9]P
setp   pid.s.Igain     [SPINDLE_9]I
setp   pid.s.Dgain     [SPINDLE_9]D
setp   pid.s.bias      [SPINDLE_9]BIAS
setp   pid.s.FF0       [SPINDLE_9]FF0
setp   pid.s.FF1       [SPINDLE_9]FF1
setp   pid.s.FF2       [SPINDLE_9]FF2
setp   pid.s.deadband  [SPINDLE_9]DEADBAND
setp   pid.s.maxoutput [SPINDLE_9]MAX_OUTPUT

net spindle-index-enable  <=>  pid.s.index-enable
net spindle-enable       => pid.s.enable
net spindle-output       => pid.s.output
net spindle-vel-cmd     => pid.s.command
net spindle-vel-fb      => pid.s.feedback


# ---PWM Generator signals/setup---

setp   hm2_5i20.0.pwmgen.02.output-type 1
setp   hm2_5i20.0.pwmgen.02.scale  [SPINDLE_9]OUTPUT_SCALE


net spindle-output      => hm2_5i20.0.pwmgen.02.value
net spindle-enable      => hm2_5i20.0.pwmgen.02.enable

# ---Encoder feedback signals/setup---

setp    hm2_5i20.0.encoder.02.counter-mode 0
setp    hm2_5i20.0.encoder.02.filter 1
setp    hm2_5i20.0.encoder.02.index-invert 0
setp    hm2_5i20.0.encoder.02.index-mask 0
setp    hm2_5i20.0.encoder.02.index-mask-invert 0
setp    hm2_5i20.0.encoder.02.scale  [SPINDLE_9]ENCODER_SCALE

net spindle-revs              <=  hm2_5i20.0.encoder.02.position
net spindle-vel-fb            <=  hm2_5i20.0.encoder.02.velocity
net spindle-index-enable     <=>  hm2_5i20.0.encoder.02.index-enable

# ---setup spindle control signals---

net spindle-vel-cmd-rps    <=  motion.spindle-speed-out-rps
net spindle-vel-cmd        <=  motion.spindle-speed-out
net spindle-enable         <=  motion.spindle-on
net spindle-cw             <=  motion.spindle-forward
net spindle-ccw            <=  motion.spindle-reverse
net spindle-brake          <=  motion.spindle-brake
net spindle-revs           =>  motion.spindle-revs
net spindle-at-speed       =>  motion.spindle-at-speed
net spindle-vel-fb         =>  motion.spindle-speed-in
net spindle-index-enable  <=>  motion.spindle-index-enable

# ---Setup spindle at speed signals---

sets spindle-at-speed true
freeform
Кандидат
Сообщения: 83
Зарегистрирован: 30 июн 2011, 00:02
Репутация: 7
Откуда: Москва
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение freeform »

roach писал(а):пожалуйста, поделись конфигами шпинделя в емц, мне даже оттолкнуться не от чего(
Вечером, со станка списать надо. Переключение скоростей я тоже сделал.
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение roach »

freeform писал(а):
roach писал(а):пожалуйста, поделись конфигами шпинделя в емц, мне даже оттолкнуться не от чего(
Вечером, со станка списать надо. Переключение скоростей я тоже сделал.
заранее спасибо ! буду ждать.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение Nick »

roach писал(а):хотелось бы так - оператор на панели emc2 выбирает скорость выставленную на станке, и соотв-но меняется шкала скорости шпинделя
Ну это в принципе не сложно. Если есть входы по скоростям, то просто делаем так:
можно например так:
создаем n компонентов mux2, по количеству скоростей.
На вход каждого подаем
mux2.n.in0 - mux2.n-1.out предыдущего
mux2.n.in1 - значение скорости для данной передачи.
В итоге на последнем mux2 будем иметь значение скорости для включенной передачи.

Сколько у тебя передач? Как они включаются (какие пины)? Как они контролируются (какие пины состояния есть)?

Есть еще компонент gearchange, но он какой-то мутный :).
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение roach »

Nick писал(а):Сколько у тебя передач? Как они включаются (какие пины)? Как они контролируются (какие пины состояния есть)?
3 передачи, переключаются рычагом. Решили что для работы хватит двух.
Можно поставить датчики и завести с них сингналы в емс. Но думаю хватит кнопок на панели для указания передачи, переключил рычаг - нажал кнопку указав какая скорость стоит, наверное так
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение Nick »

Ну тогда можно делать как я сказал. Потом выход с последнего mux2 заводишь на encoder.scale у шпинделя. У тебя энкодер стоит до коробки передач?

Кстати, я вот думаю, не случится ли переполнение на счетчике энкодера? После длительной работы?
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение roach »

Nick писал(а):Ну тогда можно делать как я сказал. Потом выход с последнего mux2 заводишь на encoder.scale у шпинделя. У тебя энкодер стоит до коробки передач?

Кстати, я вот думаю, не случится ли переполнение на счетчике энкодера? После длительной работы?
да, до коробки
не знаю) токарили сейчас минут 10 все нормально. следующий раз посмотрю что там на счетчике происходит
Последний раз редактировалось roach 17 янв 2012, 16:51, всего редактировалось 1 раз.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение Nick »

Ну тогда делай в точности как я сказал :).
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение roach »

Nick писал(а):Ну тогда можно делать как я сказал. Потом выход с последнего mux2 заводишь на encoder.scale у шпинделя. У тебя энкодер стоит до коробки передач?
encoder.02.scale? я думал pwmgen.02.scale.. хмм pwmgen на всех скоростях одна должна быть? чтото совсем запутался), сейчас играю с этими двумя параметрами, пид отключил, картина стала прорисовываться.

завтра испробую.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение Nick »

Я как думаю:
Сам движок крутится с одной и той же скоростью. Но инструмент (заготовка) - с разной. Если ты хочешь в Gкоде указывать в параметре S скорость вращения болванки, тогда нужно изменять encoder.scale, тогда pid будет регулировать конечные обороты болванки. Если хочешь указывать вращение двигателя шпинделя, тогда ... тогда ... тогда не надо вообще ничего менять, но оборотов детали нигде не будет....

Но все равно, лучше, чтобы pid знал, что скорость изменяется - от этого зависят параметры управления = зависят значения параметров PID.
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение roach »

Nick писал(а):Я как думаю:
Сам движок крутится с одной и той же скоростью. Но инструмент (заготовка) - с разной. Если ты хочешь в Gкоде указывать в параметре S скорость вращения болванки, тогда нужно изменять encoder.scale, тогда pid будет регулировать конечные обороты болванки. Если хочешь указывать вращение двигателя шпинделя, тогда ... тогда ... тогда не надо вообще ничего менять, но оборотов детали нигде не будет....

Но все равно, лучше, чтобы pid знал, что скорость изменяется - от этого зависят параметры управления = зависят значения параметров PID.
еще больше запутал))) я пид в емс для шпинделя отключил, с ним беда вообще
завтра все попробую, freeform обещал своими конфигами поделиться - посмотрим как у него

з.ы. не хватает теории мне((
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение Nick »

А чего ты хочешь добиться от управления шпинделем?
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение roach »

Nick писал(а):А чего ты хочешь добиться от управления шпинделем?
чтобы частотник поддреживал заданную в емц скорость или емц поддерживала скорость шпинделя, короче чтобы скорость шпинделя соответствовала заданной, наверное так, а что еще хотеть от управления шпинделем?
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение Nick »

Ну скорость это просто. Тупо выход ШИМ через умножитель.
А энкодер тебе тогда зачем?
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение roach »

Nick писал(а):Ну скорость это просто. Тупо выход ШИМ через умножитель.
А энкодер тебе тогда зачем?
а чем он помешать может?
а как резьбу нарезать без нулевой метки?
...или я ошибаюсь в чем-то?
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: 7i33TA настройка шпинделя

Сообщение Nick »

Вот... в emc2 есть хитрая система контроля положения в зависимости от оборотов шпинделя. Надо в этом направлении копать.
По-позже ссылок накидаю...
Ответить

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