Подключение различных компонентов к плате Mesa 7I77

Работа с платами MESA, подключение, конфигурация.

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение mikehv » 17 июн 2019, 20:26

Mehobr писал(а):Рывки (удары) как были так и осталис

Так ничего не изменилось потому что
Аватара пользователя
mikehv
Мастер
 
Сообщения: 1266
Зарегистрирован: 14 авг 2013, 10:10
Откуда: Иваново
Репутация: 856
Медальки:

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение UAVpilot » 17 июн 2019, 20:33

Mehobr писал(а):Рывки (удары) как были так и остались!

Покажи параметры осей (из .ini)?
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
UAVpilot
Мастер
 
Сообщения: 18658
Зарегистрирован: 17 апр 2012, 14:58
Откуда: Москва
Репутация: 4563
Медальки:
Настоящее имя: Сергей

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение mikehv » 17 июн 2019, 20:43

UAVpilot писал(а):
Mehobr писал(а):Рывки (удары) как были так и остались!

Покажи параметры осей (из .ini)?

Кстати да. PID наверное не настраивал.
Аватара пользователя
mikehv
Мастер
 
Сообщения: 1266
Зарегистрирован: 14 авг 2013, 10:10
Откуда: Иваново
Репутация: 856
Медальки:

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение Mehobr » 17 июн 2019, 20:45

mikehv писал(а):поставить axis.0.jog-scale 0.0001

Удары ушли. Какой параметр нужно откорректировать чтобы одно деление маховика соответствовало 0,01мм, сейчас 0,008.
Mehobr
Опытный
 
Сообщения: 139
Зарегистрирован: 15 июн 2015, 00:20
Репутация: 16
Настоящее имя: Евгений

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение Mehobr » 17 июн 2019, 20:47

mikehv писал(а):Кстати да. PID наверное не настраивал.

Нет, PID еще не настраивал так как двигатели еще на станке не стоят.
Mehobr
Опытный
 
Сообщения: 139
Зарегистрирован: 15 июн 2015, 00:20
Репутация: 16
Настоящее имя: Евгений

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение Mehobr » 17 июн 2019, 20:48

Я так понимаю что пока не поставлю двигатели на станок и не настрою PID, смысла в настройке махавиков нет.
Mehobr
Опытный
 
Сообщения: 139
Зарегистрирован: 15 июн 2015, 00:20
Репутация: 16
Настоящее имя: Евгений

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение Mehobr » 17 июн 2019, 20:50

[/code][/code]
UAVpilot писал(а):Покажи параметры осей (из .ini)?

Код: Выделить всёРазвернуть
#********************
# Axis X
#********************
[AXIS_0]
TYPE = LINEAR
HOME = 0.0
FERROR = 10.0
MIN_FERROR = 1.0
MAX_VELOCITY = 25.0
MAX_ACCELERATION = 750.0
P = 50.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 1.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 0.0
ENCODER_SCALE = 10000.0
OUTPUT_SCALE = -10.0
OUTPUT_MIN_LIMIT = -10.0
OUTPUT_MAX_LIMIT = 10.0
MIN_LIMIT = -0.01
MAX_LIMIT = 200.0
HOME_OFFSET = 0.0

#********************
# Axis Z
#********************
[AXIS_2]
TYPE = LINEAR
HOME = 0.0
FERROR = 10.0
MIN_FERROR = 1.0
MAX_VELOCITY = 25.0
MAX_ACCELERATION = 750.0
P = 50.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 1.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 0.0
ENCODER_SCALE = 10000.0
OUTPUT_SCALE = 10.0
OUTPUT_MIN_LIMIT = -10.0
OUTPUT_MAX_LIMIT = 10.0
MIN_LIMIT = -0.01
MAX_LIMIT = 200.0
HOME_OFFSET = 0.0
Mehobr
Опытный
 
Сообщения: 139
Зарегистрирован: 15 июн 2015, 00:20
Репутация: 16
Настоящее имя: Евгений

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение mikehv » 17 июн 2019, 20:57

Mehobr писал(а):Я так понимаю что пока не поставлю двигатели на станок и не настрою PID, смысла в настройке махавиков нет.

Правильно понимаешь :)
Аватара пользователя
mikehv
Мастер
 
Сообщения: 1266
Зарегистрирован: 14 авг 2013, 10:10
Откуда: Иваново
Репутация: 856
Медальки:

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение Mehobr » 17 июн 2019, 21:18

mikehv писал(а):Правильно понимаешь

Хорошо, хоть что-то понимаю :oops:

Тогда, уже по джойстику подскажите, пожалуйста.
В INI прописал команды для различных кнопок все работают за исключением джойстика и кнопки "Циклический старт программы" с этими кнопками ни как не могу побороться. Хочу чтобы при переключении джойстика например в положение Х+, ось двигалась со скоростю для перемещений указанной в AXIS. При нажатии на центральную кнопку джойстика - ось двигалась на макс. скорости.
Код: Выделить всёРазвернуть
# Ручное управление
net manual-mode     <=  hm2_5i25.0.7i77.0.0.input-18
net manual-mode     =>  halui.mode.manual
# MDI управление
net manual-mdi     <=  hm2_5i25.0.7i77.0.0.input-19
net manual-mdi     =>  halui.mode.mdi
# Старт программы
net program.run <=  hm2_5i25.0.7i77.0.0.input-20
net program.run => halui.program.run
# Стоп програмы
net program.stop <=  hm2_5i25.0.7i77.0.0.input-21
net program.stop => halui.program.stop
# Включение СОЖ
net flood.on <=  hm2_5i25.0.7i77.0.0.input-23
net flood.on => halui.flood.on

# --- CYCLE-START ---
net cycle-start     <=  hm2_5i25.0.7i77.0.0.input-22

# --- SPINDLE-MANUAL-CW ---
net spindle-manual-cw     <=  hm2_5i25.0.7i77.0.0.input-24

# --- SPINDLE-MANUAL-CCW ---
net spindle-manual-ccw     <=  hm2_5i25.0.7i77.0.0.input-25

# --- JOG-X-POS ---
net jog-x-pos     <=  hm2_5i25.0.7i77.0.0.input-26

# --- JOG-X-NEG ---
net jog-x-neg     <=  hm2_5i25.0.7i77.0.0.input-27

# --- JOG-Z-POS ---
net jog-z-pos     <=  hm2_5i25.0.7i77.0.0.input-28

# --- JOG-Z-NEG ---
net jog-z-neg     <=  hm2_5i25.0.7i77.0.0.input-29

# --- JOG-SELECTED-POS ---
net jog-selected-pos     <=  hm2_5i25.0.7i77.0.0.input-30
Mehobr
Опытный
 
Сообщения: 139
Зарегистрирован: 15 июн 2015, 00:20
Репутация: 16
Настоящее имя: Евгений

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение Mehobr » 17 июн 2019, 21:21

Схема подключений аппаратных (горячих) кнопок.
Вложения
Подключение различных компонентов к плате Mesa 7I77 15607957108813115860243257219221.jpg
Mehobr
Опытный
 
Сообщения: 139
Зарегистрирован: 15 июн 2015, 00:20
Репутация: 16
Настоящее имя: Евгений

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение UAVpilot » 17 июн 2019, 23:30

Mehobr писал(а):Нет, PID еще не настраивал так как двигатели еще на станке не стоят.

Слишком большие коэф. для ненастроенного ПИД. Начинать лучше с P=1, остальные по нулям.
Ускорение тоже стоит приличное, вероятно это и есть причина "ударов" - ПИД+привод каждый "клик" маховика пытаются отрабатывать с макс. скоростью и макс. ускорением... При уменьшении jog-scale эти скачки становятся мельче и привод не успевает разогнаться, поэтому удары мелкие и менее заметные.
Пока не стоит обращать на них внимание, вернёшься к ним, когда моторы будут на станке таскать реальные оси - тогда настроишь ПИД и опытным путём определишь реальные ускорения/скорости, дальше видно будет...

Mehobr писал(а):В INI прописал команды для различных кнопок все работают за исключением джойстика и кнопки "Циклический старт программы" с этими кнопками ни как не могу побороться.

Наверно всё таки в HAL. :)
Кнопка подключена к сигналу cycle-start и всё, другой конец "провода" болтается в воздухе...
HAL - это не совсем конфиг, это словесное описание электросхемы. Компоненты HAL, платы Mesa - это типа компонентов электросхемы, как реле, частотники и т.п., пины - это их присоединительные клеммы. Сигналы (net) - это соединительные провода, промаркированные (имена сигналов). С помощью этого языка и "собирается" электросхема станка. Для наглядности порекомендую свои темы:
viewtopic.php?f=146&t=3369&start=20#p77580 и дальше - показываю саму схему узла и даю её же в терминах HAL. Я подобным образом документирую сделанное для заказчиков.
viewtopic.php?f=15&t=5751 - ещё ода "иллюстрация" к сказанному.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
UAVpilot
Мастер
 
Сообщения: 18658
Зарегистрирован: 17 апр 2012, 14:58
Откуда: Москва
Репутация: 4563
Медальки:
Настоящее имя: Сергей

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение aftaev » 17 июн 2019, 23:48

UAVpilot писал(а):Компоненты HAL, платы Mesa - это типа компонентов электросхемы, как реле, частотники и т.п., пины - это их присоединительные клеммы. Сигналы (net) - это соединительные провода, промаркированные (имена сигналов). С помощью этого языка и "собирается" электросхема станка.

UAVpilot, для начинающих вот такое объяснение и нужно. Вот это сигналы, вот это провода, этот сигнал соединяется с этим и тд...
А далее пример: net manual-mdi <= hm2_5i25.0.7i77.0.0.input-19 Это сигнал с платы Меса №19 (инвертирован) идет в manual-mdi . А manual-mdi - это ....
А еще HAL расписать досконально для примера. Здесь мы объявили переменную, здесь объявили пин и тд...
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
 
Сообщения: 30550
Зарегистрирован: 04 апр 2010, 19:22
Откуда: Казахстан. Шымкент
Репутация: 5425
Медальки:

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение UAVpilot » 18 июн 2019, 00:13

aftaev писал(а):UAVpilot, для начинающих вот такое объяснение и нужно.

Так я не первый раз так объясняю. Видимо кому объясняю внимают, а остальные просто "пролистывают" тему и в "сложные" подробности не вникают. :)
Хотя объяснение всё таки не простое - домохозяйка не поймёт, нужно как минимум электротехнику знать... ;)

aftaev писал(а):А еще HAL расписать досконально для примера. Здесь мы объявили переменную, здесь объявили пин и тд...

Это уже давно сделано в документации и даже переведено здесь :silent: , я тоже предложил практически готовый инструмент - VisualHAL, но видимо никому не интересно, а может описание очень сложное, но я по другому не умею...
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
UAVpilot
Мастер
 
Сообщения: 18658
Зарегистрирован: 17 апр 2012, 14:58
Откуда: Москва
Репутация: 4563
Медальки:
Настоящее имя: Сергей

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение Mehobr » 18 июн 2019, 00:51

UAVpilot писал(а):Наверно всё таки в HAL

Да, конечно HAL, извеняюсь.
Mehobr
Опытный
 
Сообщения: 139
Зарегистрирован: 15 июн 2015, 00:20
Репутация: 16
Настоящее имя: Евгений

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение Mehobr » 24 сен 2019, 09:26

Продолжаю, подключать, компоненты к плате 7I77, настал черед энкодера для шпинделя.
Установил энкодер типа "E6B2CWZ6C OMRON" 1000PR с редукцией 1:2. Подключил по следующей схеме:
Подключение различных компонентов к плате Mesa 7I77 Подключение энкодеров к 7I77.jpg

дальше выполнил настройки pconf. Результата пока нет, не показывает обороты шпинделя в дополнительном окне для шпинделя Axis.
Где еще посмотреть работает ли энкодер?
Правильно ли я его подключил и настроил?
Код: Выделить всёРазвернуть
# Generated by PNCconf at Mon Sep 23 22:40:42 2019
# Все изменения в этом файле будут перезаписаны
# overwritten when you run PNCconf again

loadrt trivkins
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt hostmot2
loadrt hm2_pci config=" num_encoders=6 num_pwmgens=0 num_stepgens=0 sserial_port_0=000xxx"
setp    hm2_5i25.0.watchdog.timeout_ns 5000000
loadrt pid names=pid.x,pid.z,pid.s
loadrt abs names=abs.spindle
loadrt lowpass names=lowpass.spindle
loadrt scale names=scale.spindle

addf hm2_5i25.0.read          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.s.do-pid-calcs       servo-thread
addf scale.spindle            servo-thread
addf abs.spindle              servo-thread
addf lowpass.spindle          servo-thread
addf hm2_5i25.0.write         servo-thread

# external output signals


# --- SPINDLE-CW ---
net spindle-cw hm2_5i25.0.7i77.0.0.output-01

# --- SPINDLE-CCW ---
net spindle-ccw hm2_5i25.0.7i77.0.0.output-02

# external input signals


# --- ESTOP-EXT ---
net estop-ext     <=  hm2_5i25.0.7i77.0.0.input-00

# --- CYCLE-START ---
net cycle-start     <=  hm2_5i25.0.7i77.0.0.input-22

# --- JOG-X-POS ---
net jog-x-pos     <=  hm2_5i25.0.7i77.0.0.input-26

# --- JOG-X-NEG ---
net jog-x-neg     <=  hm2_5i25.0.7i77.0.0.input-27

# --- JOG-Z-POS ---
net jog-z-pos     <=  hm2_5i25.0.7i77.0.0.input-28

# --- JOG-Z-NEG ---
net jog-z-neg     <=  hm2_5i25.0.7i77.0.0.input-29

# --- JOG-SELECTED-POS ---
net jog-selected-pos     <=  hm2_5i25.0.7i77.0.0.input-30

#*******************
#  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
setp   pid.x.error-previous-target true

net x-index-enable  <=> pid.x.index-enable
net x-enable        =>  pid.x.enable
net x-pos-cmd       =>  pid.x.command
net x-vel-cmd       =>  pid.x.command-deriv
net x-pos-fb        =>  pid.x.feedback
net x-output        =>  pid.x.output

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

setp   hm2_5i25.0.7i77.0.1.analogout0-scalemax  [AXIS_0]OUTPUT_SCALE
setp   hm2_5i25.0.7i77.0.1.analogout0-minlim    [AXIS_0]OUTPUT_MIN_LIMIT
setp   hm2_5i25.0.7i77.0.1.analogout0-maxlim    [AXIS_0]OUTPUT_MAX_LIMIT

net x-output                             => hm2_5i25.0.7i77.0.1.analogout0
net x-pos-cmd    axis.0.motor-pos-cmd
net x-enable     axis.0.amp-enable-out
# enable _all_ sserial pwmgens
net x-enable   hm2_5i25.0.7i77.0.1.analogena

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

setp    hm2_5i25.0.encoder.00.counter-mode 0
setp    hm2_5i25.0.encoder.00.filter 1
setp    hm2_5i25.0.encoder.00.index-invert 0
setp    hm2_5i25.0.encoder.00.index-mask 0
setp    hm2_5i25.0.encoder.00.index-mask-invert 0
setp    hm2_5i25.0.encoder.00.scale  [AXIS_0]ENCODER_SCALE

net x-pos-fb               <=  hm2_5i25.0.encoder.00.position
net x-vel-fb               <=  hm2_5i25.0.encoder.00.velocity
net x-pos-fb               =>  axis.0.motor-pos-fb
net x-index-enable    axis.0.index-enable  <=>  hm2_5i25.0.encoder.00.index-enable
net x-pos-rawcounts        <=  hm2_5i25.0.encoder.00.rawcounts

# ---setup home / limit switch signals---

net x-home-sw     =>  axis.0.home-sw-in
net x-neg-limit     =>  axis.0.neg-lim-sw-in
net x-pos-limit     =>  axis.0.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
setp   pid.z.error-previous-target true

net z-index-enable  <=> pid.z.index-enable
net z-enable        =>  pid.z.enable
net z-pos-cmd       =>  pid.z.command
net z-vel-cmd       =>  pid.z.command-deriv
net z-pos-fb        =>  pid.z.feedback
net z-output        =>  pid.z.output

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

setp   hm2_5i25.0.7i77.0.1.analogout1-scalemax  [AXIS_2]OUTPUT_SCALE
setp   hm2_5i25.0.7i77.0.1.analogout1-minlim    [AXIS_2]OUTPUT_MIN_LIMIT
setp   hm2_5i25.0.7i77.0.1.analogout1-maxlim    [AXIS_2]OUTPUT_MAX_LIMIT

net z-output                             => hm2_5i25.0.7i77.0.1.analogout1
net z-pos-cmd    axis.2.motor-pos-cmd
net z-enable     axis.2.amp-enable-out

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

setp    hm2_5i25.0.encoder.01.counter-mode 0
setp    hm2_5i25.0.encoder.01.filter 1
setp    hm2_5i25.0.encoder.01.index-invert 0
setp    hm2_5i25.0.encoder.01.index-mask 0
setp    hm2_5i25.0.encoder.01.index-mask-invert 0
setp    hm2_5i25.0.encoder.01.scale  [AXIS_2]ENCODER_SCALE

net z-pos-fb               <=  hm2_5i25.0.encoder.01.position
net z-vel-fb               <=  hm2_5i25.0.encoder.01.velocity
net z-pos-fb               =>  axis.2.motor-pos-fb
net z-index-enable    axis.2.index-enable  <=>  hm2_5i25.0.encoder.01.index-enable
net z-pos-rawcounts        <=  hm2_5i25.0.encoder.01.rawcounts

# ---setup home / limit switch signals---

net z-home-sw     =>  axis.2.home-sw-in
net z-neg-limit     =>  axis.2.neg-lim-sw-in
net z-pos-limit     =>  axis.2.pos-lim-sw-in

#*******************
#  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
setp   pid.s.error-previous-target true

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

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

setp   hm2_5i25.0.7i77.0.1.analogout5-scalemax  [SPINDLE_9]OUTPUT_SCALE
setp   hm2_5i25.0.7i77.0.1.analogout5-minlim    [SPINDLE_9]OUTPUT_MIN_LIMIT
setp   hm2_5i25.0.7i77.0.1.analogout5-maxlim    [SPINDLE_9]OUTPUT_MAX_LIMIT

net spindle-output      => hm2_5i25.0.7i77.0.1.analogout5
net spindle-enable      => hm2_5i25.0.7i77.0.1.spinena

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

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

net spindle-revs             <=   hm2_5i25.0.encoder.05.position
net spindle-vel-fb-rps       <=   hm2_5i25.0.encoder.05.velocity
net spindle-index-enable     <=>  hm2_5i25.0.encoder.05.index-enable

# ---setup spindle control signals---

net spindle-vel-cmd-rps        <=  motion.spindle-speed-out-rps
net spindle-vel-cmd-rps-abs    <=  motion.spindle-speed-out-rps-abs
net spindle-vel-cmd-rpm        <=  motion.spindle-speed-out
net spindle-vel-cmd-rpm-abs    <=  motion.spindle-speed-out-abs
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-rps         =>  motion.spindle-speed-in
net spindle-index-enable      <=>  motion.spindle-index-enable

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

sets spindle-at-speed true

#  Use ACTUAL spindle velocity from spindle encoder
#  spindle-velocity bounces around so we filter it with lowpass
#  spindle-velocity is signed so we use absolute component to remove sign
#  ACTUAL velocity is in RPS not RPM so we scale it.

setp     scale.spindle.gain 60
setp     lowpass.spindle.gain 1.000000
net spindle-vel-fb-rps        =>     scale.spindle.in
net spindle-fb-rpm               scale.spindle.out       =>   abs.spindle.in
net spindle-fb-rpm-abs           abs.spindle.out         =>   lowpass.spindle.in
net spindle-fb-rpm-abs-filtered  lowpass.spindle.out 

#******************************
# connect miscellaneous signals
#******************************

#  ---HALUI signals---

net joint-select-a        halui.joint.0.select
net x-is-homed            halui.joint.0.is-homed
net jog-x-pos             halui.jog.0.plus
net jog-x-neg             halui.jog.0.minus
net jog-x-analog          halui.jog.0.analog
net joint-select-c        halui.joint.2.select
net z-is-homed            halui.joint.2.is-homed
net jog-z-pos             halui.jog.2.plus
net jog-z-neg             halui.jog.2.minus
net jog-z-analog          halui.jog.2.analog
net jog-selected-pos      halui.jog.selected.plus
net jog-selected-neg      halui.jog.selected.minus
net spindle-manual-cw     halui.spindle.forward
net spindle-manual-ccw    halui.spindle.reverse
net spindle-manual-stop   halui.spindle.stop
net machine-is-on         halui.machine.is-on
net jog-speed             halui.jog-speed
net MDI-mode              halui.mode.is-mdi

#  ---coolant signals---

net coolant-mist      <=  iocontrol.0.coolant-mist
net coolant-flood     <=  iocontrol.0.coolant-flood

#  ---probe signal---

net probe-in     =>  motion.probe-input

# ---jogwheel signals to mesa encoder - x axis MPG---

net x-jog-count          <=  hm2_5i25.0.encoder.03.count

# ---jogwheel signals to mesa encoder - z axis MPG---

net z-jog-count          <=  hm2_5i25.0.encoder.04.count

#  ---motion control signals---

net in-position               <=  motion.in-position
net machine-is-enabled        <=  motion.motion-enabled

#  ---digital in / out signals---

#  ---estop signals---

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

#  ---manual tool change signals---

loadusr -W hal_manualtoolchange
net tool-change-request     iocontrol.0.tool-change       =>  hal_manualtoolchange.change
net tool-change-confirmed   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



Код: Выделить всёРазвернуть
# Generated by PNCconf at Mon Sep 23 22:40:42 2019
# Все изменения в этом файле будут перезаписаны
# overwritten when you run PNCconf again

[EMC]
MACHINE = ТВ4
DEBUG = 0

[DISPLAY]
DISPLAY = axis
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 2.000000
MAX_SPINDLE_OVERRIDE = 1.000000
MIN_SPINDLE_OVERRIDE = 0.500000
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/tv4/linuxcnc/nc_files
PYVCP = pyvcp-panel.xml
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm
LATHE = 1
POSITION_FEEDBACK = ACTUAL
DEFAULT_LINEAR_VELOCITY = 6.000000
MAX_LINEAR_VELOCITY = 25.000000
MIN_LINEAR_VELOCITY = 0.500000
DEFAULT_ANGULAR_VELOCITY = 12.000000
MAX_ANGULAR_VELOCITY = 180.000000
MIN_ANGULAR_VELOCITY = 1.666667
EDITOR = gedit
GEOMETRY = xyz

[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
SERVO_PERIOD = 1000000

[HOSTMOT2]
# **** This is for info only ****
# DRIVER0=hm2_pci
# BOARD0=5i25

[HAL]
HALUI = halui
HALFILE = ТВ4.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui_call_list.hal
SHUTDOWN = shutdown.hal

[HALUI]

[TRAJ]
AXES = 3
COORDINATES = X Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 5.00
MAX_LINEAR_VELOCITY = 50.00
NO_FORCE_HOMING = 1

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

#********************
# Axis X
#********************
[AXIS_0]
TYPE = LINEAR
HOME = 0.0
FERROR = 10.0
MIN_FERROR = 1.0
MAX_VELOCITY = 50.0
MAX_ACCELERATION = 200.0
P = 17.0
I = 0.0
D = 0.0
FF0 = 0.0
FF1 = 0.0575
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 0.0
ENCODER_SCALE = 2000.0
OUTPUT_SCALE = -10.0
OUTPUT_MIN_LIMIT = -10.0
OUTPUT_MAX_LIMIT = 10.0
MIN_LIMIT = -100.0
MAX_LIMIT = 100.0
HOME_OFFSET = 0.0

#********************
# Axis Z
#********************
[AXIS_2]
TYPE = LINEAR
HOME = 0.0
FERROR = 10.0
MIN_FERROR = 1.0
MAX_VELOCITY = 50.0
MAX_ACCELERATION = 200.0
P = 30.0
I = 0.2
D = 0.0
FF0 = 0.0
FF1 = 0.08
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 0.0
ENCODER_SCALE = 4000.0
OUTPUT_SCALE = -10.0
OUTPUT_MIN_LIMIT = -10.0
OUTPUT_MAX_LIMIT = 10.0
MIN_LIMIT = -300.0
MAX_LIMIT = 300.0
HOME_OFFSET = 0.0

#********************
# Spindle
#********************
[SPINDLE_9]
P = 3.0
I = 0.0
D = 0.0
FF0 = 1.0
FF1 = 0.0
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 2000.0
ENCODER_SCALE = 2000.0
OUTPUT_SCALE = 2000
OUTPUT_MIN_LIMIT = -2000
OUTPUT_MAX_LIMIT = 2000

Mehobr
Опытный
 
Сообщения: 139
Зарегистрирован: 15 июн 2015, 00:20
Репутация: 16
Настоящее имя: Евгений

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение mikehv » 24 сен 2019, 10:43

А зачем редукция 1:2? Резьбу не получится резать.
Импульсы можно посмотреть в halscope.
На 7I77 перемычки у энкодерного входа стоят для открытого коллектора или дифф пары?
Аватара пользователя
mikehv
Мастер
 
Сообщения: 1266
Зарегистрирован: 14 авг 2013, 10:10
Откуда: Иваново
Репутация: 856
Медальки:

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение Mehobr » 24 сен 2019, 11:06

mikehv писал(а):А зачем редукция 1:2?

Удобнее ставить было, взял зубчатые шкивы, большой шкив установил на шпиндель, малый шкив на энкодер.
mikehv писал(а):Резьбу не получится резать.

Разве нельзя количество импульсов энкодера допустим 1000PR умножить на 2 в соответствии с редукцией?

mikehv писал(а):На 7I77 перемычки у энкодерного входа стоят для открытого коллектора или дифф пары?

А это где посмотреть стоят ли перемычки или нет? :thinking:
Mehobr
Опытный
 
Сообщения: 139
Зарегистрирован: 15 июн 2015, 00:20
Репутация: 16
Настоящее имя: Евгений

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение mikehv » 24 сен 2019, 11:32

Mehobr писал(а):Разве нельзя количество импульсов энкодера допустим 1000PR умножить на 2 в соответствии с редукцией?

Нет. Заход резьбы по Z метке. Соответственно одна метка на один оборот.
Mehobr писал(а):А это где посмотреть стоят ли перемычки или нет?

Слева от каждого энкодерного входа есть три перемычки. Все три надо переставить в левое положение. По умолчанию они справа (дифф вход).
У вас подключение открытый коллектор.
Вложения
Подключение различных компонентов к плате Mesa 7I77 Безымянный.png
Аватара пользователя
mikehv
Мастер
 
Сообщения: 1266
Зарегистрирован: 14 авг 2013, 10:10
Откуда: Иваново
Репутация: 856
Медальки:

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение Mehobr » 24 сен 2019, 12:02

mikehv писал(а):Нет. Заход резьбы по Z метке. Соответственно одна метка на один оборот.

Это, плохо, не знал что так делать нельзя. Придется брать полый энкодер или вообще снять асинхронный двигатель с частотником и копить деньги на серву.
Если ставить сервомотор с энкодером, то тут то можно через редукцию поставить или нет?
Mehobr
Опытный
 
Сообщения: 139
Зарегистрирован: 15 июн 2015, 00:20
Репутация: 16
Настоящее имя: Евгений

Re: Подключение различных компонентов к плате Mesa 7I77

Сообщение mikehv » 24 сен 2019, 12:55

Mehobr писал(а):Если ставить сервомотор с энкодером, то тут то можно через редукцию поставить или нет?

Нет. Одна метка Z на один оборот шпинделя. Просто одинаковые шкивы надо поставить и всё. Зачем все эти сложности?
Аватара пользователя
mikehv
Мастер
 
Сообщения: 1266
Зарегистрирован: 14 авг 2013, 10:10
Откуда: Иваново
Репутация: 856
Медальки:

Пред.След.

Вернуться в MESA

Кто сейчас на конференции

Зарегистрированные пользователи: aleha, anton_cnc_, Bing [Bot], CybSys, dadhikravan, evgeni70, evgenymcp, exploed, Евжений, Gestap, Google [Bot], jb_arch, Kachik, knifemaker, mikehv, MSN [Bot], NickoM, roct, Romich, ScrewDriver, solo, UAVpilot, WWW116, Yandex [bot], Владимир СПЗ, ДмитрийП

Reputation System ©'