Страница 1 из 2

Швейная машинка и EMC2

Добавлено: 07 окт 2011, 22:05
gendos
Собрал я себе из швейной машинки что то типа этого:


Теперь нужно или покупать родной контроллер с пультом(что дорого),или попытаться привязать все к EMC2.
Двигатели по х,у шаговики.
Привод швейной головки асинхронник 350 вт 220 вольт через частотник.
G код - сверление отверстий по координатам х,у.
Какие могут быть варианты настройки EMC2,что бы после каждого оборота маховика машинки происходило перемешениепо х,у до следующей точки.Скорость вращения маховика машинки до 700-1000 об/мин

Re: Швейная машинка и EMC2

Добавлено: 07 окт 2011, 22:10
Nick
Хммм... давай формализуем.

Есть два шаговика для перемещений в XY.
Есть устройство сверления, по команде на пин-хх производится сверловка отверстия.
Есть два датчика начало сверления и конец сверления.

Нужно сделать управление от emc2 для сверления отверстий, по заданию типа
G0 X... Y...
(сверловка)

Так?

Re: Швейная машинка и EMC2

Добавлено: 07 окт 2011, 22:15
gendos
Да .Только вместо иголки стоит пробойчик и каждый оборот пробивает новую дырку по координатам х,у с большой скоростью
до 1000 отверстий в минуту расстояние между отверстиями не более 12 мм

Re: Швейная машинка и EMC2

Добавлено: 07 окт 2011, 22:21
gendos
Чем меньше растояние тем выше скорость. на мах растоянии скорость может значительно снижаться

Re: Швейная машинка и EMC2

Добавлено: 07 окт 2011, 22:24
gendos
Режим сверловки используется в программе для написания G-кода

Re: Швейная машинка и EMC2

Добавлено: 07 окт 2011, 22:38
Nick
Т.е. остановить вращение быстр мы не можем. И должны за один стежок успеть сместиться до следующей дырки?
Шаговики успеют?

Чего хотим от EMC2, на появление сигнала на датчике s2 как можно быстрее едем к следующей дырке?
или еще хотим управлять скоростью пробойника? (сразу скажу, что рассчитывать эту скорость скорее всего не сможем, но управлять вполне.)

Re: Швейная машинка и EMC2

Добавлено: 07 окт 2011, 22:59
gendos
Останавливать вращение не надо ,после появления сигнала на датчике -переезд .
Шаговики успевают,механика на тросиках.
Вобщем все это работает от своего контроллера(вышивальная машинка),но он дорого стоит и там нет позиционирования в 0.
упровлять скоростью не надо важно чтоб EMC успела координаты выдовать

Re: Швейная машинка и EMC2

Добавлено: 08 окт 2011, 09:11
gendos
Назначение датчиков точно не знаю,возможно s1 дает команду на перемещение х,у а s2 управляет скоростью вращения.
Скорость вращения может устроить и 500 об/мин.
конструктивно датчики смещены на 90 градусов

Re: Швейная машинка и EMC2

Добавлено: 08 окт 2011, 09:56
gendos
Если появляется группа точек удаленных более чем 12 мм то остановка врашения - переезд
потом продолжение вращения

Re: Швейная машинка и EMC2

Добавлено: 09 окт 2011, 15:01
Nick
Короче, все просто, делаем два пина типа Digital Input на датчики. Потом в Gкоде перед перемещением пишем M66.
M66 Input Control
Должно быть что-то типа M66 P1 L1 (или L3). Тогда EMC2 перед началом движения будет ждать включение соответствующего датчика.

The L- word specifies the wait type:
0
WAIT_MODE_IMMEDIATE - no waiting, returns immediately. The current value of the input is stored in parameter #5399
1
WAIT_MODE_RISE - waits for the selected input to perform a rise event.
2
WAIT_MODE_FALL - waits for the selected input to perform a fall event.
3
WAIT_MODE_HIGH - waits for the selected input to go to the HIGH state.
4
WAIT_MODE_LOW - waits for the selected input to go to the LOW state.

Re: Швейная машинка и EMC2

Добавлено: 09 окт 2011, 15:37
gendos
Из всего понял только \делаем два пина типа Digital Input на датчики\
Ну ничего буду разбираться.
Пока хотел определиться как писать G-код,сколько координат (нужна ли Z),как вписывать М66 автоматически(точек может быть несколько тысячь) . Изночально задание точек делаю в кореле в ручную соединяю их все по порядку полилинией(непрерывной) или планирую попробывать в Tupe3 там есть функция сверления отверстей в центре окружностей,но тогда не будет ручной сортировки

Re: Швейная машинка и EMC2

Добавлено: 09 окт 2011, 16:06
Nick
Ну все будет выглядеть примерно так:
Включаем "шпиндель" и потом пишем коды
M66 P1 L1 (ждем появления 1 на s1)
G0 X...Y... (едем в следующую точку)
Если расстояние больше 12мм нужно выключать шпиндель и включать заново.
Если нужно можно написать простейший скрипт, который по списку координат XY, будет выдавать нужный Gкод, можно даже простенькую сортировку сделать.

Re: Швейная машинка и EMC2

Добавлено: 09 окт 2011, 16:21
gendos
Понял ,на неделе буду пробовать.
Потом отпишусь

Re: Швейная машинка и EMC2

Добавлено: 10 окт 2011, 18:02
gendos
Вставил в HAL
The L- word specifies the wait type:
0
WAIT_MODE_IMMEDIATE - no waiting, returns immediately. The current value of the input is stored in parameter #5399
1
WAIT_MODE_RISE - waits for the selected input to perform a rise event.
2
WAIT_MODE_FALL - waits for the selected input to perform a fall event.
3
WAIT_MODE_HIGH - waits for the selected input to go to the HIGH state.
4
WAIT_MODE_LOW - waits for the selected input to go to the LOW state.
Запустил EMC2
выдал ошибку
Kernel message information:
[ 902.762709] I-pipe: Domain RTAI registered.
[ 902.762721] RTAI[hal]: <3.8.1> mounted over IPIPE-NOTHREADS 2.6-03.
[ 902.762724] RTAI[hal]: compiled with gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5) .
[ 902.762767] RTAI[hal]: mounted (IPIPE-NOTHREADS, IMMEDIATE (INTERNAL IRQs DISPATCHED), ISOL_CPUS_MASK: 0).
[ 902.762770] PIPELINE layers:
[ 902.762773] fd1f5e20 9ac15d93 RTAI 200
[ 902.762777] c085cb20 0 Linux 100
[ 902.786606] RTAI[malloc]: global heap size = 2097152 bytes, <BSD>.
[ 902.786925] RTAI[sched]: IMMEDIATE, MP, USER/KERNEL SPACE: <with RTAI OWN KTASKs>, kstacks pool size = 524288 bytes.
[ 902.786934] RTAI[sched]: hard timer type/freq = APIC/12499928(Hz); default timing: periodic; linear timed lists.
[ 902.786939] RTAI[sched]: Linux timer freq = 250 (Hz), TimeBase freq = 1600022000 hz.
[ 902.786943] RTAI[sched]: timer setup = 999 ns, resched latency = 2943 ns.
[ 902.787037] RTAI[usi]: enabled.
[ 902.856646] RTAI[math]: loaded.
[ 902.928148] config string '0x378 out '
[ 903.503024] RTAI[math]: unloaded.
[ 903.526134] SCHED releases registered named ALIEN RTGLBH
[ 903.556930] RTAI[malloc]: unloaded.
[ 903.656093] RTAI[sched]: unloaded (forced hard/soft/hard transitions: traps 0, syscalls 0).
[ 903.659421] I-pipe: Domain RTAI unregistered.
[ 903.659470] RTAI[hal]: unmounted.

Re: Швейная машинка и EMC2

Добавлено: 10 окт 2011, 23:31
Nick
Не не не.
В хал нужно добавить только информацию о пине. Его можно настроить даже при помощи stepconf (на странице настройки пинов лтп, там он вроде называется цифровой пин ввода).
А M66 P1 L1 нужно будет вставлять в Gкод (все остальное дано для справки - это описание параметра L).

Re: Швейная машинка и EMC2

Добавлено: 11 окт 2011, 18:49
gendos
Создал с помощью stepconf
net din-00 <= parport.0.pin-10-in
net din-01 <= parport.0.pin-11-in
net din-02 <= parport.0.pin-12-in
но этого не достаточно .наверно нужно еще как то привязать параметр P1 к пинам(например к 10)
как не зняю.

Re: Швейная машинка и EMC2

Добавлено: 11 окт 2011, 19:06
gendos
При запуске g-кода
M3
M66 P1 L1
G0 X10 Y10
G0 X20 Y20

пишет(пины пробывал замыкать) и ничего не происходит

Нулевое ожидание с типом ожидания не равным немедленному возврату
-----

Re: Швейная машинка и EMC2

Добавлено: 13 окт 2011, 20:29
gendos
Добавил параметр Q5

M66 P1 L1 Q5
Уже ошипку не пишет, начинает движение через 5 сек,
но не могу пока проверить срабатывание датчика на цифровом входе.
может можно для пробы эмулировать сигнал датчика?

Re: Швейная машинка и EMC2

Добавлено: 13 окт 2011, 21:26
gendos
Замкнул для пробы проводком 1 цифровой вход . Все заработало ,только в таком виде G кода
g0 x10y10
m66 p1 l1 q25
g0 x20 y20
m66 p1 l1 q25
x50 y50
m66 p1 l1 q25
x100 y100
m66 p1 l1 q25
x150 y150
То есть после каждой координаты нужно вставлять m66 p1 L1 q25
Теперь если у меня будет 1000 точек , в ручную вставлять не получится.
Какие есть варианты написания G кода?

Re: Швейная машинка и EMC2

Добавлено: 13 окт 2011, 21:39
gendos
Точки для перфорации беру из файла