Страница 4 из 10
Раскладочный станок - установщик компонентов smd
Добавлено: 22 мар 2012, 08:36
2cme
Здравствуйте.
Раскладочный станок - установщик компонентов smd на основе LinuxCNC?
Софта вообще нигде не нашел. Атак хочется чтоб "мечта идиота" сбылась: зарядил магазины, нажал кнопку, и счастье "лентяя-автоматизатора-рационизатора" (;
_________________________________________________________________________
ТЗ
(для просмотра содержимого нажмите на ссылку)...в процессе...
1. Формат файла с данными о расположении элементов на плате (1206, 0805)
- pick_and_place_tab.csv
- "tab" в качестве разделителя полей, результат экспорта из diptrace (исправил, были заполнены не все записи поля Value)
- (1.15 КБ) 1625 скачиваний
- pick_and_place_s.csv
- "|" в качестве разделителя полей, результат экспорта из diptrace (исправил, были заполнены не все записи поля Value)
- (1.15 КБ) 1800 скачиваний
Код: Выделить всё
RefDes|Type |X (mm)|Y (mm)|Side|Rotate|Value
C1 |CAP_0805 |25,95 |21,8 |Top |90 |10n
R1 |RES_1206 |4,95 |22 |Top |90 |1k
2. Архитектура Figaro-pcb-pick-and-place(сообщение #59)
3. Конструкция станка, подобное.
4. ИМХО: возможный вариант логики работы программы (образно; сообщение #91):- загружается файл PnP;
- на основе данных из PnP формируется список фидеров с указанием параметров типоразмера и номинала для компонентов R, C, ...(из файла PnP подтягивается или оператор задает);
- Компоненты "разбрасываются" по фидерам, из списка фидеров полученного на предыдущем шаге;
- Уточняются типы фидеров для списка из предыдущего шага; уточняются доп. параметры фидера (расположение, ...);
- Комплектуется станок фидерами, платой, захватом;
- Генерится вспомогательный и основной g-code.
_________________________________________________________________________
_________________________________________________________________________
Результат на данное время:
1) WhiteLinePNP by Bender (
сообщение #19).
2)Рабочее название
Figaro-pcb-pick-and-place (сообщения
#49-56)
Nick:
проект figaro на launchpad.net, теперь код хостится там(сообщение
#83).
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 26 мар 2012, 19:04
2cme
Относительно фидеров, получается общее у них:
- тип детали (типоразмер, номинал элемента);
- угол положения детали (или в магазине, или относительно заранее определенной оси);
- высота детали (от sandman, сообщение #66);
- координата захвата компонента из "магазина" (или заранее жестко определена, за счет конструкционных особенностей, и не выходит за допустимые погрешности; или нужна калибровка);
- тип получения следующего элемента (делается самим фидером; делается захватом).
Все перечислил?
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 26 мар 2012, 19:39
dpss
Возможно я не совсем точно выразил мысль. Это скорее пример, как стоит оформлять свои проекты. По поводу ленточных фидеров. Сейчас модно делать отдельные независимые фидеры интелектуальными. При установке катушки с деталями в фидер сканируется штрихкод с катушки и штрихкод с фидера и это соответствие пишется во флешку фидера или в базу данных. Каждый фидер имеет свой уникальный номер. Любой заправленный фидер можно ставить в любую машину, программа сама разберется. Минус такого подхода - возможно не оптимальная траектория перемещения монтажной головки. Плюс - хорошая защита от ошибок и пересортицы.
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 26 мар 2012, 19:57
sandman
В принципе да, я тут подумал, если всё равно без видеокамер положения детали делать, то можно просто определить координаты захвата детали, дать припуск поперёк 12мм -+ от центра детали и так далее. И фидер сделать как площадку на которую клеить на двустороннюю клейкую ленту обрезки лент с деталями.
На первый взгляд примитивно, но в домашних условиях полный автоматический фидер сделать очень сложно...
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 26 мар 2012, 20:15
2cme
Общее между разными типами фидеров я перечислил выше (дополняйте/уточняйте), на основе этого можно сделать файл описания фидеров, не будет дополнений/уточнений привиду формат, ок?
Относительно фидера предлагаю пока остановится на
такой конструкции.
Пожалуйста давайте будет последовательны, сначала каркас (рыбу, так называется?) работающий а потом его наращивать, совершенствать, решать вопросы точности, наделение свойствами устойчивати и стабильности работы.
По архитектуре есть вопросы/предложения?
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 26 мар 2012, 20:22
dpss
Голова от JUKI 7 Констукция достаточно простая для повторения.
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 26 мар 2012, 20:24
sandman
То есть основные детали будут на базе 8мм ленты, 1206 -PLCC2- SOT23 ?
2cme, там ещё не хватает высоты детали.
dpss, если в подвале иметь полностью укомплектованную токарку, то почему бы и нет

Re: Раскладочный станок - установщик компонентов smd
Добавлено: 26 мар 2012, 20:28
2cme
Чтобы на время закрыть тему конструкции станка и сосредоточится на ПО,
вот или
вот отличное решение для повторения в "домашних" условиях, на днях нашел.
Как вам, монстры PnP?

Re: Раскладочный станок - установщик компонентов smd
Добавлено: 26 мар 2012, 20:36
2cme
sandman писал(а):2cme, там ещё не хватает высоты детали.
Я предполагаю что лишнее, координаты захвата достаточно x y z.
Но если настаиваете добавляю, ок.
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 26 мар 2012, 20:49
dpss
sandman писал(а):То есть основные детали будут на базе 8мм ленты, 1206 -PLCC2- SOT23 ?
2cme, там ещё не хватает высоты детали.
dpss, если в подвале иметь полностью укомплектованную токарку, то почему бы и нет

И токарка есть, и новый HAAS VF и еще много чего.
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 26 мар 2012, 22:33
2cme
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 28 мар 2012, 06:59
wldev
Нужны файлы раскладки.
Нужно только разделитель "_ " .А, то непонятно если 131,25,25 это x=131.25 или y=25.25
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 28 мар 2012, 07:41
2cme
Bender писал(а):Нужны файлы раскладки.
Нужно только разделитель "_ " .А, то непонятно если 131,25,25 это x=131.25 или y=25.25
Сообщение #32 (файл pick_and_place_s.csv, в качестве разделителя "|", нельзя применять "_"(впринцыпе можно, но алгоритм будет сложнее) т.к. уже применяется в CAP_0805, RES_1206).
Так же решаема, если в "Язык и региональные стандарты" в качестве разделителя целой и доробной части задать ".".
Вообще можно хорошо сделать чтобы при импорте в программе спрашивалось какой символ применить в качестве разделителя полей, или же в настройках программы создать данную опцию (чтобы не задавать его каждый раз при импорте).
Для файл smd_Vorderseite.pos (сообщение #49) применяется сивол " "(пробел(ы)).
Могу расписать алгоритм анализа файлов, Bender делать?
Хотя при применении регулярных выражений (не знаю в qt есть регулярные выражения) получения из файла данных решается несколькими строчками кода.
Bender (и все кому безусловно интерестна данная тема) пожалуйста просматривайте переодически первое сообщение я его переодически обновляю.
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 28 мар 2012, 09:12
Nick
Самый лучший разделитель - tab (\t), он не только разделяет, но еще и выравнивает столбцы. Также можно в качестве разделителя использовать любой символ пробела или таб.
Проще всего такую строку парсить следующей строкой:
на питоне array = s.split() и в array будут все значения

. Также можно использовать регулярные выражения. В ручную парсить не в коем случае не советую

!
Во многих языках есть и split и regexp, отличается только синтаксис.
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 28 мар 2012, 09:25
2cme
Вот файл с tab в качестве разделителя.
Nick получается?
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 28 мар 2012, 11:10
Nick
По тихоньку продвигается.....
Я создал проект на launchpad.net, теперь код хостится там.
https://code.launchpad.net/~xepecine/figaro/trunk
Сейчас пытаюсь написать работу фидеров. Я думаю через 1-2 для появится что-то рабочее... А может уже сегодня вечером...
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 28 мар 2012, 11:17
2cme
отличная новость!
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 29 мар 2012, 14:06
wldev
2cme писал(а):Для файл smd_Vorderseite.pos (сообщение #49) применяется сивол " "(пробел(ы)).
Пробелы будут лучше всего!
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 29 мар 2012, 14:40
2cme
Bender писал(а):2cme писал(а):Для файл smd_Vorderseite.pos (сообщение #49) применяется сивол " "(пробел(ы)).
Пробелы будут лучше всего!
Не сочтите за рекламу, книга: Дж.Фридл - Регулярные выражения, 3-е 2008.
Регулярные выражения очень гибкий инструмент для работы с текстом. Применительно к данной задачи, достаточно задать формат строки (содержащейся в импортируемом файле).
Bender есть успехи?
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 29 мар 2012, 15:26
wldev
2cme писал(а):Bender есть успехи?
В прошлое воскресенье кое-что написал (1/3). Думаю в эти выходные ещё (1/3).
У меня есть вопросы:
1.Положение по X и Y понятно.... Подъём как ? Ось Z? или Z пустить на поворот элемента?...
2.Захват какой командой?
3.Отпускание какой командой?
Re: Раскладочный станок - установщик компонентов smd
Добавлено: 29 мар 2012, 15:39
Nick
Bender писал(а):2.Захват какой командой?
3.Отпускание какой командой?
ИМХО Надо каждому компоненту совой Gкод задавать..
Z - подъем, поворот - А.