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

SMD-TAXI - Установщик SMD-компонентов

Добавлено: 03 май 2013, 16:51
mart2525
Собранный аппарат с нуля. Устанавливает SMD диоды на плату. Управляется Mach3. Координаты приходится прописывать в ручную. Тип питателей и остальное пришлось придумывать самому. Сейчас собираю одно-головочный с множественными питателями, для сборки драйверов.
https://www.youtube.com/watch?v=RzvxjFvWADw

Re: Самодельный установщик SMD

Добавлено: 03 май 2013, 18:31
aftaev
Прикольно :good:
А что он там собирает?

Re: Самодельный установщик SMD

Добавлено: 03 май 2013, 18:53
mart2525
Устанавливает Led диоды на плату :D

Re: Самодельный установщик SMD

Добавлено: 03 май 2013, 19:09
aftaev
mart2525 писал(а):Устанавливает Led диоды на плату
То что светодиоды ставит эт понятно, а что дальше будет из этих плат?

Re: Самодельный установщик SMD

Добавлено: 04 май 2013, 12:41
mart2525
Интересно, что же делают из светодиодных линеек? :D

Re: Самодельный установщик SMD

Добавлено: 05 май 2013, 21:10
Nick
Круто :good:!
Прикольный механизм подачи для магазинов! Бодро оси ездят!

А как диоды фиксируются, у тебя вакуумный насос стоит, или что-то другое?
mart2525 писал(а):Координаты приходится прописывать в ручную.
Через цикл со смещениями для всей линейки, или вообще все с нуля вручную???

Что в станке нравится?
Что не очень?
Чтобы в следующий раз сделал по другому?

Re: Самодельный установщик SMD

Добавлено: 07 май 2013, 14:30
mart2525
Привет. Питатели пришлось придумывать самому. Дешево и надежно. Стоит вакуумный насос, подобие аквариумного. вход его попадает в 3-х литровую банку, в качестве сглаживания пульсаций и накопления разряжения, далее к присоскам через пневмо-клапана. :)
Что значит цикл смещения линейки???
Еще бы увеличил скорость подъема и опускания головок. И установил бы точные датчики Home. А так самодельные - от старой мышки.
В данный момент собираю еще скоростнее аппарат на готовой базе, от лазерной резки. Головка установлена с четырьмя присосками. Рабочее поле - 760х1200 мм. Ориентировочная скорость установки - 4000-4500 комп в час Питатели работают по такому же принципу. Видео будет позже. Аппарат почти готов.

Re: Самодельный установщик SMD

Добавлено: 07 май 2013, 15:00
michael-yurov
mart2525 писал(а):Видео будет позже. Аппарат почти готов.
Вот так будет?
https://www.youtube.com/watch?v=tiQLS34A7LU

Re: Самодельный установщик SMD

Добавлено: 07 май 2013, 15:27
Nick
mart2525 писал(а):Что значит цикл смещения линейки???
Ну можно координаты для каждого диода напрямую писать, а можно через цикл сделать

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

#2 = 10
O100 REPEAT [10]
    G0 Y[#2] 
    #1=10
    O101 REPEAT [10]
        G0 X[#1]
        #1 = #1 + 20
       (Поставить  диод)
    O101 ENDREPEAT [10]
    G0 Y0 
    (берем диоды)
    #2 = #2 + 50
O100 ENDREPEAT [10]
michael-yurov писал(а):Вот так будет?
Штоб так у всех было! :cheesy:

Re: Самодельный установщик SMD

Добавлено: 07 май 2013, 15:39
mart2525
Это макрос? А можно по пунктам, и возможность изучить это? Это в Маче пишется? Очень пригодится. С меня интересные видео... Ну когда аппарат едет питателям и забирает диоды, Это у меня прописано в макросе.

Re: Самодельный установщик SMD

Добавлено: 07 май 2013, 17:00
nkp
mart2525 писал(а):Это макрос?
Можно и так назвать - но наверное макрос,как набор неких команд, можно вызвать по наименованию.В данном случае такой возможности нет.
mart2525 писал(а):Это в Маче пишется?
В емс так точно , в мач - не знаю (другие подскажут)...
mart2525 писал(а):А можно по пунктам, и возможность изучить это?
можно и по пунктам (только немного подправить)
это так называемые О-коды(буква "О" - не ноль ;) )
далее номер о-кода - "100"
далее , весь код,который мы пропишем между repeat и endrepeat - будет повторяться указанное количество раз,
в примере - 10 раз
O100 REPEAT [10]
сюда код - который хотим повторять...
O100 ENDREPEAT

-----------------
#2 = 10 - определяем параметры (присваиваем значения переменным)
то есть - код:
#2 = 10
G0 Y[#2]

равнозначен:
#2 = 10
G0 Y10

призводя действия - не забываем ставить скобки (квадратные):
#2 = [#2+1]
вот пример - можно загрузить в емс и посмотреть - как это работает:

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

#2 = 1
G91 
O100 REPEAT [10]
    G0 Y[#2] 
    #1=1
    O101 REPEAT [2]
        G0 X[#1]
        #1 = [#1+2]
    O101 ENDREPEAT
    G0 Y0 
    #2 = [#2+1]
O100 ENDREPEAT 
M2

Re: Самодельный установщик SMD

Добавлено: 07 май 2013, 19:00
mart2525
Спасибо NKP. Но от EMC я еще далек. Пока освоил мачь. Пол года как этим всем занимаюсь. Это получается - Подпрограмма в той же программе? Просто при необходимости ее можно вызвать командой? Я не программист если что... ;)

Re: Самодельный установщик SMD

Добавлено: 07 май 2013, 20:45
PKM
mart2525, а почему берет по одному, ведь можно было все сразу?

Re: Самодельный установщик SMD

Добавлено: 07 май 2013, 21:51
mart2525
Если честно. Есть такая функция. Но не стал заморачиваться. Подгонять каждый питатель и тд. Времени было в обрез.

Re: Самодельный установщик SMD

Добавлено: 08 май 2013, 09:57
Nick
mart2525 писал(а): Это получается - Подпрограмма в той же программе? Просто при необходимости ее можно вызвать командой? Я не программист если что...
Да и да :). Все пишется в тексте Gкода.

Можно написать:

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

O#<pick> SUB 
    (сюда пишем Gкод функции, можно использовать параметры #1-#30, их можно передавать при вызове, например:)
    G0 Z#3
    G0 X#1 Y#2
    G0 Z#4
    (здесь надо включить насос)
    G0 Z#3
O#<pick> ENDSUB 

(И потом в любом месте вызываем эту команду)
O#<pick> CALL [10] [20] [10] [-1]
O#<pick> CALL [40] [30] [10] [-1]

ЗЫ попробуй LinuxCNC - тебе понравится :).

Re: Самодельный установщик SMD

Добавлено: 08 май 2013, 19:45
mart2525
Ок. Попробую. Слышал про нее многое... Не хуже мача?

Re: Самодельный установщик SMD

Добавлено: 08 май 2013, 20:12
nkp
mart2525 писал(а):Не хуже мача?
если коротко сказать - не хуже ;)
местами - лучше! :)
и таких мест много...))))

Re: Самодельный установщик SMD

Добавлено: 09 май 2013, 09:44
mart2525
Nick писал(а):
mart2525 писал(а): Это получается - Подпрограмма в той же программе? Просто при необходимости ее можно вызвать командой? Я не программист если что...
Можно написать:

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

O#<pick> SUB 
    (сюда пишем Gкод функции, можно использовать параметры #1-#30, их можно передавать при вызове, например:)
    G0 Z#3
    G0 X#1 Y#2
    G0 Z#4
    (здесь надо включить насос)
    G0 Z#3
O#<pick> ENDSUB 

(И потом в любом месте вызываем эту команду)
O#<pick> CALL [10] [20] [10] [-1]
O#<pick> CALL [40] [30] [10] [-1]
Привет. Вопрос - Где про это программирование можно почитать, желательно с примерами?
Что означает - #, <pick>, И CALL [10] [20] [10] А именно цифры в скобках. Это очень облегчит ;) мне задачу
Насос у меня включается не программно, а аппаратно. Как только присоска коснулась элемента, а двигатель продолжает еще давить, срабатывает микрик. Микриковыключатель - отключает дальнейшее движение эл. двигателя и включается пневмо клапан. При установке диода, происходит то же самое, только пневмоклапан теперь выключается (снимается разряжение). Командой М8 и М9 у меня включается как раз опускание и подъем электродвигателей, которые тянет и опускает головку. А выбор головки, а именно какую опустить и сразу поднять, осуществляет другой шаговый двигатель. Его вал привязан к контактной группе переключателей, которые коммутируют головки.

Re: Самодельный установщик SMD

Добавлено: 09 май 2013, 10:16
nkp
mart2525 писал(а):Что означает - #,....
здесь у Ника опечатка - после буквы "O" знак "#" ставить не нужно...
вот так примерно должно быть:

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

O<pick> SUB 
    G0 Z#3
    G0 X#1 Y#2
    G0 Z#4
    G0 Z#3
O<pick> ENDSUB 

O<pick> CALL [10] [20] [10] [-1]
O<pick> CALL [40] [30] [10] [-1]
знак этот ("#") обозначает параметр
наименование его может быть числовое - #31
или буквенное - #<name>
------------------
O<pick> SUB
тело подпрограммы
O<pick> ENDSUB

это "обрамление" подпрограмм:
O - это английское "О" (большая или маленькая - без разницы)
<pick> - это имя подпрограммы (мы его сами даем)
, опять же :
наименование его может быть числовое - O131
или буквенное - O<name>
-------------
тело подпрограммы - это наш Ж-код подпрограммы
============
прописав подпрограмму в программе один раз - мы затем можем вызвать ее в любом месте ...
и вызывается она как раз строкой:
O<pick> CALL
-------------------
а числа в квадратных скобках после "call" - это значения параметров по порядку
O<pick> CALL [10] [20] [10] [-1] - то есть в нашем примере #1 = 10, #2 = 20, #3 = 10 , #4 = -1
то есть - при каждом новом вызове эти значения можно менять..
=============
почитать про это можно в документации на емс (полная)
конкретно о подпрограммах

Re: Самодельный установщик SMD

Добавлено: 09 май 2013, 11:07
mart2525
Спасибо. Теперь все более менее ясно. А было так, - скажи девушке поменяй прокладку в машине (автомобиле), а она не так поймет. И поменяет что то другое... :hehehe:
Вот моя программка, которая в Маче:

(PITTTTTTTTTT) - Условное обозначение для себя (команды подъехать к питателям и забрать элементы)
(01**********) - Условное обозначение первый элемент
Y50.75 X123.25 Z200 - координат первого элемента, Z200 - дополнительный шаговый двигатель (положение - работы первой головки при командах М8 и М9)
G01 F10000 - скорость сдвига ленты в питателях
Y15.8 - сдвиг питателей
Y50.75 - возврат питателей (ленты с диодами выдвинулись на один диод - 4мм)
G00 - быстрый ход - Свободное перемещение
M8
M9 - М8,М9 - забрать первый элемент
(02**********) - условное обозначение команд для второго элемента
X124.325 Y50.9 Z230 - Положение второй головки над вторым элементом, Z230 - положение переключателя - работы второй головки при командах М8 и М9
M8
M9 - забрать второй элемент. ..... и тд
(03**********)
X123.375 Y51.225 Z260
M8
M9
(04**********)
X122.7 Y51.3 Z290
M8
M9
(05**********)
X122.025 Y51.775 Z320
M8
M9
(VD1*********1) - Подъезд к плате и установка первых 5 элементов из 15 в ряду.
X99.925 Y118.525 Z50 A-90 - координата первого элемента на плату, Z-положение переключателя для установки первого элемента, А-90 - диоды повернуты на -90 град.
M8
M9 - М8,М9 - команда установки первого диода
X90.5 Z80 - координата второго элемента на плату, Z - положение переключателя для второго элемента (диода)
M8
M9 - команда установки диода..... и тд...
X79.925 Z110
M8
M9
X69.5 Z140
M8
M9
X59.55 Z170
M8
M9

Поэтому, хотелось сделать под программки, что бы не писать все это. Потому, что при редактировании приходится все переделывать....