шаговик использовать как шпиндель.Ворон226 писал(а):Какой командой в G-кодах можно заставить вращаться шаговик в нужном направлении с нужной скоростью. А потом его остановить другой командой. Сам пока не нашел ответа на этот вопрос...
Использование "шпинделя" для управления допоборудованием
-
aftaev
- Зачётный участник

- Сообщения: 34042
- Зарегистрирован: 04 апр 2010, 19:22
- Репутация: 6194
- Откуда: Казахстан.
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
- Ворон226
- Мастер
- Сообщения: 1923
- Зарегистрирован: 01 окт 2012, 18:14
- Репутация: 181
- Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Понял, что буду завтра уже читать описание ЕМС2... Спасибо!
Хочешь быть счастливым? Будь им!
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Варианта два, хотя наверное все таки один но, с вариантами 
Основной момент - грузим компонент stepgen в режиме управления скоростью, т.е.:
loadrt stepgen step_type=type0[,type1...] [ctrl_type=type0[,type1...]] [user_step_type=#,#...]
т.е. для трехосевого + шпиндель что-то вроде:
loadrt stepgen step_type=0,0,0,0 ctrl_type=p,p,p,v
Потом настраиваем все его параметры как обычно.
И заводим на пин stepgen.N.velocity-cmd задание по скорости.
Теперь варианты. Это задание можно передавать различными способами, например как управление шпинделем:
motion.spindle-speed-out - Буква S в Gкоде.
или пин
motion.analog-out-00 - управление через http://linuxcnc.org/docs/html/gcode/m-c ... log-Output
или брать из любого другого аналогового пина.
Основной момент - грузим компонент stepgen в режиме управления скоростью, т.е.:
loadrt stepgen step_type=type0[,type1...] [ctrl_type=type0[,type1...]] [user_step_type=#,#...]
т.е. для трехосевого + шпиндель что-то вроде:
loadrt stepgen step_type=0,0,0,0 ctrl_type=p,p,p,v
Потом настраиваем все его параметры как обычно.
И заводим на пин stepgen.N.velocity-cmd задание по скорости.
Теперь варианты. Это задание можно передавать различными способами, например как управление шпинделем:
motion.spindle-speed-out - Буква S в Gкоде.
или пин
motion.analog-out-00 - управление через http://linuxcnc.org/docs/html/gcode/m-c ... log-Output
или брать из любого другого аналогового пина.
- Ворон226
- Мастер
- Сообщения: 1923
- Зарегистрирован: 01 окт 2012, 18:14
- Репутация: 181
- Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Да уж... С конфигурацией и ini-файлом разобрался... Теперь могу более точно задать вопрос:
шаговый двигатель, вращающий насос, поставил не на "шпиндель", а в качестве четвертой поворотной оси.
ВОПРОС:
Можно ли дать команду вращаться шаговику, установленному как четвертая поворотная ось? Команда на вращение до команды остановиться. Пока никак не придумаю...
шаговый двигатель, вращающий насос, поставил не на "шпиндель", а в качестве четвертой поворотной оси.
ВОПРОС:
Можно ли дать команду вращаться шаговику, установленному как четвертая поворотная ось? Команда на вращение до команды остановиться. Пока никак не придумаю...
Хочешь быть счастливым? Будь им!
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
наверно не самый оптимальный вариант...Ворон226 писал(а): не на "шпиндель", а в качестве четвертой поворотной оси.
неудобно управлять насосом
имхо без проблем как шпиндель ,а если по каким то причинам как шпиндель
не проходит - тогда отдельным компонентом (как выше описано) без головоломок "как управлять?"
- Ворон226
- Мастер
- Сообщения: 1923
- Зарегистрирован: 01 окт 2012, 18:14
- Репутация: 181
- Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Я ещё забыл написать, что мне обязательно нужно вращать в ДВЕ стороны. Насколько я понимаю, шпиндель вращается только в одну сторону?
И потом, "шпиндель" позволяет управлять шаговиком?
И потом, "шпиндель" позволяет управлять шаговиком?
Хочешь быть счастливым? Будь им!
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
шпиндель может вращаться в обе стороны (если можно так выразится)Ворон226 писал(а):шпиндель вращается только в одну сторону?И потом, "шпиндель" позволяет управлять шаговиком?
нам в принципе нужны команды управления из программы (ж-кодами) правильно?
чем этот вариант плох?
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5183
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Можно. Это довольно просто. Только наверно правильнее будет использовать не ось, которая вращает деталь, а ось, которая вращает инструмент (многоосевых станках). Т.е. это должна быть не ось A, B или C, а ось U, V или W. Например пусть это будет ось V и нам нужно нарисовать полоску геля из точки 0,0 в точку 100,100. Код будет примерно такой:Ворон226 писал(а):Можно ли дать команду вращаться шаговику, установленному как четвертая поворотная ось? Команда на вращение до команды остановиться. Пока никак не придумаю...
Код: Выделить всё
;Начало проги, обнуляем координаты и насос
G92 X0 Y0
G92 V0
; выдавливаем с небольшой скоростью начальные 1 грамм (условно), чтоб выступила капля.
G1 V1 F100
; рисуем с рабочей скоростью линию гелем, на всю линию расходуется скажем 53 грамма геля
G1 X100 Y100 V54 F300
; "всасываем" каплю
G1 V53 F100
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
- Ворон226
- Мастер
- Сообщения: 1923
- Зарегистрирован: 01 окт 2012, 18:14
- Репутация: 181
- Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Спасибо!
Сначала попробую осью для поворота инструментов (это уже освоил).
А уж потом и полезу в .hal (тут я пока не успел разобраться)...
(а перистальтика качает
позже выложу описание и фотки)
Сначала попробую осью для поворота инструментов (это уже освоил).
А уж потом и полезу в .hal (тут я пока не успел разобраться)...
(а перистальтика качает
Хочешь быть счастливым? Будь им!
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Ага, вот для чего тебе нужна была подача на оборот!
Лучше всего это будет сделать через большие ускорения осей
Но можно и так, берем текущую скорость перемещения. Для этого берем значение вот этого пина:
motion.current-vel OUT FLOAT
Current cartesian velocity
И умножаем на то задание, которое подаем на мотор насоса. (для этого используем компонент mult2)
http://linuxcnc.org/docs/html/man/man9/mult2.9.html
Как созреешь лезть в hal, вывешивай свои конфиги будем помогать
Лучше всего это будет сделать через большие ускорения осей
Но можно и так, берем текущую скорость перемещения. Для этого берем значение вот этого пина:
motion.current-vel OUT FLOAT
Current cartesian velocity
И умножаем на то задание, которое подаем на мотор насоса. (для этого используем компонент mult2)
http://linuxcnc.org/docs/html/man/man9/mult2.9.html
Как созреешь лезть в hal, вывешивай свои конфиги будем помогать
- Ворон226
- Мастер
- Сообщения: 1923
- Зарегистрирован: 01 окт 2012, 18:14
- Репутация: 181
- Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Разобрался с ini-файлом. Поиграл сегодня с ним.
Стало ясно, что моя задача разбивается на две:
1. научиться управлять насосом, исполненным на базе шагового двигателя (управлять скоростью вращения и направлением) через G-коды.
2. разобраться с проблемой (похоже эта проблема уже решена на станках лазерной и плазменной резки, 3Д-принтерах и т.п.) стабильной линейной скорости движения по криволинейной поверхности.
Первая задача решается через управление шаговиком как шпинделем (стандартные G-коды управления шпинделем позволяют его включать, задавть скорость и направление, выключать отдельными командами). Тут не обойтись без изучения структуры hal-файла и принципов его написания. Но вот подробного и понятного объяснения я так и не нашел. А язык программистов совсем не похож на язык электронщиков
Хоть бы где был разобран "стандартный" hal-файл: мол, вот строка, она означает то-то и то-то... А читать огромный список команд-операторов... Уже сделал две попытки. Структуру hal-файла понял, но вот структуру отдельных строк... Только догадываюсь.
Вторая задача, думаю, решается так:
задаётся режим максимально быстрого перемещения по контуру с заданными погрешностями (G64) и прописывается в ini-файле небольшая максимальная линейная скорость по осям (чтобы эта максимальная скорость была заведомо ниже, чем скорость, необходимая для отработки траектории в заданных допусках). В этом случае линейная скорость перемещения будет равна максимально заданной и постоянной. Не знаю - прав ли я? И нет ли стандартной команды или настройки, которая бы задавала скорость перемещения (суммарную скорость перемещения)? Но уверен, что эта задача спецами давно решена - осталось только её найти
Если моя логика верна - могу ли я выложить настроечные файлы и рассчитывать на помощь в ПОНИМАНИИ процессов, происходящих "внутри" CNC?
(по перистальтическому насосу ведём работы - результаты обязательно выложу в отдельной теме)
Стало ясно, что моя задача разбивается на две:
1. научиться управлять насосом, исполненным на базе шагового двигателя (управлять скоростью вращения и направлением) через G-коды.
2. разобраться с проблемой (похоже эта проблема уже решена на станках лазерной и плазменной резки, 3Д-принтерах и т.п.) стабильной линейной скорости движения по криволинейной поверхности.
Первая задача решается через управление шаговиком как шпинделем (стандартные G-коды управления шпинделем позволяют его включать, задавть скорость и направление, выключать отдельными командами). Тут не обойтись без изучения структуры hal-файла и принципов его написания. Но вот подробного и понятного объяснения я так и не нашел. А язык программистов совсем не похож на язык электронщиков
Вторая задача, думаю, решается так:
задаётся режим максимально быстрого перемещения по контуру с заданными погрешностями (G64) и прописывается в ini-файле небольшая максимальная линейная скорость по осям (чтобы эта максимальная скорость была заведомо ниже, чем скорость, необходимая для отработки траектории в заданных допусках). В этом случае линейная скорость перемещения будет равна максимально заданной и постоянной. Не знаю - прав ли я? И нет ли стандартной команды или настройки, которая бы задавала скорость перемещения (суммарную скорость перемещения)? Но уверен, что эта задача спецами давно решена - осталось только её найти
Если моя логика верна - могу ли я выложить настроечные файлы и рассчитывать на помощь в ПОНИМАНИИ процессов, происходящих "внутри" CNC?
(по перистальтическому насосу ведём работы - результаты обязательно выложу в отдельной теме)
Хочешь быть счастливым? Будь им!
- Ворон226
- Мастер
- Сообщения: 1923
- Зарегистрирован: 01 окт 2012, 18:14
- Репутация: 181
- Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Есть проблема: КАК считать длину кривой, чтобы заложить НУЖНОЕ количество геля? Если с прямой это сделать можно, то с кривыми... Похоже без управления не количеством (оборотом, например), а скоростью подачи геля и стабильной линейной скоростью подачи - не обойтись...UAVpilot писал(а):... Только наверно правильнее будет использовать не ось, которая вращает деталь, а ось, которая вращает инструмент (многоосевых станках). Т.е. это должна быть не ось A, B или C, а ось U, V или W. Например пусть это будет ось V и нам нужно нарисовать полоску геля из точки 0,0 в точку 100,100. Код будет примерно такой:Вот как-то так.Код: Выделить всё
;Начало проги, обнуляем координаты и насос G92 X0 Y0 G92 V0 ; выдавливаем с небольшой скоростью начальные 1 грамм (условно), чтоб выступила капля. G1 V1 F100 ; рисуем с рабочей скоростью линию гелем, на всю линию расходуется скажем 53 грамма геля G1 X100 Y100 V54 F300 ; "всасываем" каплю G1 V53 F100
Хочешь быть счастливым? Будь им!
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Надо считать длины не для кривых, а только для дуг и прямых, а это в принципе просто.
По хал файлу: там основных три функции, перевожу на язык электронщиков:
1. loadrt или loadusr - загрузить компонент - поставить компонент на макетку
2. net <сигнал> <пины> - привязать пины к сигналу - спаять проводки пинов между собой и повесить ярлык с названием. (к синшналу можно присоединить только один Out пин и несколько In)
3. addf <имя> <поток> - привязать функцию к потоку - добавить вывод синхронизации к таймеру.
4. setp - устанавливаем значение параметру
В принципе из основных все.
Давай свой файл - сделаем все с комментариями.
По хал файлу: там основных три функции, перевожу на язык электронщиков:
1. loadrt или loadusr - загрузить компонент - поставить компонент на макетку
2. net <сигнал> <пины> - привязать пины к сигналу - спаять проводки пинов между собой и повесить ярлык с названием. (к синшналу можно присоединить только один Out пин и несколько In)
3. addf <имя> <поток> - привязать функцию к потоку - добавить вывод синхронизации к таймеру.
4. setp - устанавливаем значение параметру
В принципе из основных все.
Давай свой файл - сделаем все с комментариями.
- Ворон226
- Мастер
- Сообщения: 1923
- Зарегистрирован: 01 окт 2012, 18:14
- Репутация: 181
- Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
вот мои файлы.
Спасибо!
Спасибо!
Хочешь быть счастливым? Будь им!
- Алексс
- Почётный участник

- Сообщения: 2210
- Зарегистрирован: 20 июл 2012, 15:49
- Репутация: 266
- Заслуга: IQ32
- Настоящее имя: Алексей
- Откуда: Прага
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
может проще сделать как в промышленных системах - давить воздухом ?
пример:
https://www.youtube.com/watch?v=jSZbkR9vNzI
пример:
https://www.youtube.com/watch?v=jSZbkR9vNzI
Каждая собака, бегущая на поводке впереди хозяина, думает, что ведет его за собой.
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Как я и говорил меняем эту строку:
на
Меняем команду для шаговика четвертой оси и убираем обратную связь, это убираем
это добавляем:
Ну и в ini можно убрать 4-ю ось. т.е.
вместо
И вот это тоже убираем:
вроде все...
Может поттребоваться подстроить
О кстати, из ini можно не стирать последнее, или в этих строчках нужно будет прописать числа вместо [AXIS_3]SCALE
Код: Выделить всё
loadrt stepgen step_type=0,0,0,0Код: Выделить всё
loadrt stepgen step_type=0,0,0,0 ctrl_type=p,p,p,vКод: Выделить всё
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 avel-cmd <= motion.spindle-speed-out-rps
net avel-cmd => stepgen.3.velocity-cmd
вместо
Код: Выделить всё
AXES = 4
COORDINATES = X Y Z AКод: Выделить всё
AXES = 3
COORDINATES = X Y ZКод: Выделить всё
[AXIS_3]
TYPE = ANGULAR
HOME = 0.0
MAX_VELOCITY = 0.5
MAX_ACCELERATION = 5.0
STEPGEN_MAXACCEL = 5.5
SCALE = 800.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -9999.0
MAX_LIMIT = 9999.0
HOME_OFFSET = 0.0Может поттребоваться подстроить
Код: Выделить всё
setp stepgen.3.position-scale [AXIS_3]SCALE
setp stepgen.3.maxaccel [AXIS_3]STEPGEN_MAXACCEL-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Код: Выделить всё
# loadrt - (от "loads a real time") - загружаем компонент реального времени.
# loadrt trivkins - загружаем компонент кинематики ,в нашем случае - "triv" - тривиальную (есть ряд других)
# http://www.linuxcnc.org/docs/2.5/html/man/man9/trivkins.9.html
loadrt trivkins
# загружаем Motion Controller - контроллер движения.Он выполняет расчет таектории.Тут применена ссылка ([EMCMOT]EMCMOT) на строку EMCMOT
# в разделе [EMCMOT] ini-файла.Там у нас строка EMCMOT = motmod.То есть мы в hal-файле могли бы прописать loadrt motmod
# base_period_nsec - период программного генератора шагов.Один из основополагающих параметров ЕМС.
# Его значение - ссылка на ini-файл(BASE_PERIOD = 100000) ,то есть указан период в наносекундах
# servo_period_nsec - более медленные поток для других задач (SERVO_PERIOD = 1000000)
# num_joints=[TRAJ]AXES - ссылка на количество осей (AXES = 4)
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
# загружаем компоненты паралельного порта.cfg="0x1020 out " - адрес порта в системе
loadrt probe_parport
loadrt hal_parport cfg="0x1020 out "
setp parport.0.reset-time 5000
# заружаем программные генераторы шагов.Определяем тип каждого генератора(http://www.cnc-club.ru/forum/viewtopic.php?f=15&t=150&start=40#p2354)
loadrt stepgen step_type=0,0,0,0
# addf (add function) добавить функцию .Далее: имя_компонента.N-номер _компонента.имя_функции и в какой поток добавить
# например: parport.0.read base-thread компонент "parport" ,номер "0" , функция "read", поток "base-thread"(то есть обнвляться раз в 100000нс)
# компоненты и их функции :http://www.cnc-club.ru/forum/viewtopic.php?f=15&t=150&start=40#p2263
# http://www.linuxcnc.org/docs/devel/html/man/man9/
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" соеденяет сигнал (а если его нет - то создает его)
# с пином (или несколькими пинами).<=,=>, < = > - используют для удобства,система их игнорирует.
# соеденять можно только входные пины с выходными (иначе - ошибка!) где - какой пин - смотеть в документации
# пример: "net estop-out <= iocontrol.0.user-enable-out" - "net" - создаем(потому что его еще не было) сигнал и
# даем ему имя "estop-out",и соеденяем его с пином "iocontrol.0.user-enable-out"
# теперь мы можем этот сигнал соеденять с другим пином (входом) или даже со многими пинами:"net estop-out => iocontrol.0.emc-enable-in"
net spindle-cmd <= motion.spindle-speed-out
net dout-00 <= motion.digital-out-00
net dout-01 <= motion.digital-out-01
net dout-02 <= motion.digital-out-02
net estop-out => parport.0.pin-01-out
net xstep => parport.0.pin-02-out
setp parport.0.pin-02-out-reset 1
net zstep => parport.0.pin-03-out
setp parport.0.pin-03-out-reset 1
net ystep => parport.0.pin-04-out
setp parport.0.pin-04-out-reset 1
net astep => parport.0.pin-05-out
setp parport.0.pin-05-out-reset 1
net dout-00 => parport.0.pin-06-out
setp parport.0.pin-07-out-invert 1
net xdir => parport.0.pin-07-out
net zdir => parport.0.pin-08-out
net ydir => parport.0.pin-09-out
net adir => parport.0.pin-14-out
net dout-01 => parport.0.pin-16-out
net dout-02 => parport.0.pin-17-out
net home-x <= parport.0.pin-10-in
net home-z <= parport.0.pin-11-in
net home-y <= parport.0.pin-12-in
net all-limit <= parport.0.pin-15-in-not
setp stepgen.0.position-scale [AXIS_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 0
setp stepgen.0.dirhold 55000
setp stepgen.0.dirsetup 55000
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
net all-limit => axis.0.neg-lim-sw-in
net all-limit => axis.0.pos-lim-sw-in
setp stepgen.1.position-scale [AXIS_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 0
setp stepgen.1.dirhold 55000
setp stepgen.1.dirsetup 55000
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
net all-limit => axis.1.neg-lim-sw-in
net all-limit => axis.1.pos-lim-sw-in
setp stepgen.2.position-scale [AXIS_2]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 0
setp stepgen.2.dirhold 55000
setp stepgen.2.dirsetup 55000
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 home-z => axis.2.home-sw-in
net all-limit => axis.2.neg-lim-sw-in
net all-limit => axis.2.pos-lim-sw-in
setp stepgen.3.position-scale [AXIS_3]SCALE
setp stepgen.3.steplen 1
setp stepgen.3.stepspace 0
setp stepgen.3.dirhold 55000
setp stepgen.3.dirsetup 55000
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 all-limit => axis.3.neg-lim-sw-in
net all-limit => axis.3.pos-lim-sw-in
net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in
# loadusr - загрузить компоненты пользовательского пространства (работают не в режиме реального времени)
# http://www.cnc-club.ru/forum/viewtopic.php?f=15&t=150&p=1916#p2003
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- Ворон226
- Мастер
- Сообщения: 1923
- Зарегистрирован: 01 окт 2012, 18:14
- Репутация: 181
- Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Большущее спасибо! Ща покумекаю и напишу уже осмысленный ответ и очередные вопросы 
Хочешь быть счастливым? Будь им!
- Ворон226
- Мастер
- Сообщения: 1923
- Зарегистрирован: 01 окт 2012, 18:14
- Репутация: 181
- Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Может... Но хочется испытать перистальтику. Когда ещё придётся? Возможно уже завтра будет принято решение. Завтра и видео попробую сделать или фотки, хотя бы...Алексс писал(а):может проще сделать как в промышленных системах - давить воздухом ?
Хочешь быть счастливым? Будь им!
- Ворон226
- Мастер
- Сообщения: 1923
- Зарегистрирован: 01 окт 2012, 18:14
- Репутация: 181
- Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
- Контактная информация:
Re: Использование "шпинделя" для управления допоборудованием
Я правильно понял КАК изменить файлы?
И как же теперь и где прописывать настройки шаговика-насоса?
И как же теперь и где прописывать настройки шаговика-насоса?
Хочешь быть счастливым? Будь им!
