Forum: Platinen Software um aus einem Pick and Place File CNC Daten zu generieren


von C. H. (hedie)


Angehängte Dateien:

Lesenswert?

Hallo zusammen...

In einer ruhigen Stunde, habe ich mal ein bisschen mit Delphi gespielt.

Dabei herausgekommen ist ein Programm, welches aus Altiumdesigner 
exportierte Pick and Place Files in G-Code für die CNC Umwandelt.

Es gibt dabei die Möglichkeit mehrere Feeder anzugeben.

Wobei das Programm erst noch am Anfang steht.

Aber ich wollte mal hören, was ihr dazu meint.

Mann könnte sich damit ja eine Bestückungsmaschine basteln :)
Der Code wurde übrigens auf meiner CNC getestet.

Jedoch ohne irgendwelche Feeder oder echten Bauteilen.

Aber die Bewegungen sind korrekt. :)

Anbei das Programm und ein Demo CSV (Pick and Place file..)

Gruss

: Verschoben durch Moderator
von C. H. (hedie)


Angehängte Dateien:

Lesenswert?

Bitte entschuldigt, ich habe die Screenshoots vergessen :)

von Kampfbastler (Gast)


Lesenswert?

Hallo,
ich spiele auch schon länger mit dem Gedanken aus einer CNC Maschine 
einen Bestückungsautomaten zu basteln. Um keine Feeder bauen zu müssen 
könne man auch spezielle Trays bauen, in welche die gegurteten SMD BE 
als ca. 40cm lange Streifen in nach oben offene Nuten eingeschoben 
werden. Die Abstände auf dem Gurt sind fix und wenn man viele BE von 
einem Wert hat kann man auch mehrere Streifen nebeneinander einschieben.

Anregungen für den Selbstbau von Feedern gibt es auch unter:
http://buildyourcnc.com/PickandPlaceMachineTheredFrog.aspx

von C. H. (hedie)


Lesenswert?

Kampfbastler schrieb:
> Hallo,
> ich spiele auch schon länger mit dem Gedanken aus einer CNC Maschine
> einen Bestückungsautomaten zu basteln. Um keine Feeder bauen zu müssen
> könne man auch spezielle Trays bauen, in welche die gegurteten SMD BE
> als ca. 40cm lange Streifen in nach oben offene Nuten eingeschoben
> werden. Die Abstände auf dem Gurt sind fix und wenn man viele BE von
> einem Wert hat kann man auch mehrere Streifen nebeneinander einschieben.
>
> Anregungen für den Selbstbau von Feedern gibt es auch unter:
> http://buildyourcnc.com/PickandPlaceMachineTheredFrog.aspx

Danke für deine Antwort.

Meine Software, mach mommentan genau die selben Bewegungen in G-Code wie 
auf dem Video sichtbar.

Soll heissen, dass die Düse nach dem Setzen bzw. vor dem neuen ansaugen 
den Grurt um eins weiterschiebt.

Ich habe jedoch die Möglichkeiten einer Ausrichtungstasche vorgesehen.

Diese Taschen (Ausfräsungen) sollen aus z.B. Aluminium sein und eine 
genau definierte Abmessung besitzen.

Diese Taschen, sollen dazu dienen, die Angesaugten Bauteile absolut zu 
zentrieren.

Dazu muss man die Länge und Breite der einzelnen, auszurichtenden, 
Bauteile definieren.

Danach fährt die Düse mit dem Bauteil in die Tasche und fährt darin 
jeweils 50% an die obere Kante und 50% an die Rechte, so dass das 
Bauteil absolut Zentriert sein müsste.

Was mich persönlich auch noch reizen würde, wäre eine Feeder 
Eigenentwicklung. Eventuell auch als Forumsprojekt.



Eventuell wäre es auch möglich eine gesamte Bestückungsmaschine als 
Forumsprojekt anzustreben.

Ich dachte da an ein Kleingerät.

Die Idee dazu kam auf, als ich vor der Aufgabe stand, meine Prints mit 
jeweils 105 0805 LED's und 105 0805 Widerständen zu bestücken.

Und das mal 25 :)

von Thomas K. (thomas_k545)


Lesenswert?

Hallo

Wie gehts deiner Software,  bzw deiner Maschine?

von Claudio (Gast)


Lesenswert?

Thomas K. schrieb:
> Hallo
>
> Wie gehts deiner Software,  bzw deiner Maschine?

Hallo Thomas

Schön das du fragst.
Die Software wurde nur noch ein bisschen weiterentickelt.
Die damalige Maschinenkonstruktion vom CAD komplett überarbeitet.

Leider ging das Projekt dann mangels Zeit und auch Geld wieder unter.
Doch seit einigen Monaten läfut wieder ein wenig was.

Ich konnte mit einigen Kollegen zusammen einen Verein gründen welcher 
nun dieses Projekt und andere weiterverfolgt.

Die Konstruktion im CAD ist grundsätzlich fertig und vollendet.
Was Fehlt sind intelligente Feeder oder ein simples Feeder system.

von Georg (Gast)


Lesenswert?

Claudio schrieb:
> Schön das du fragst.

Wow, nach 3 Jahren Antwort in einer Stunde, beeindruckend.

Was die Software angeht, weniger. Ich würde erst Software schreiben, 
wenn eine Maschine dafür existiert, nicht umgekehrt. Ist aber nur meine 
persönliche Auffassung, trotzdem viel Erfolg.

Georg

von Claudio (Gast)


Lesenswert?

Georg schrieb:
> Claudio schrieb:
>> Schön das du fragst.
>
> Wow, nach 3 Jahren Antwort in einer Stunde, beeindruckend.
>
> Was die Software angeht, weniger. Ich würde erst Software schreiben,
> wenn eine Maschine dafür existiert, nicht umgekehrt. Ist aber nur meine
> persönliche Auffassung, trotzdem viel Erfolg.
>
> Georg

Die Idee damals war eben dass man eine bestehende CNC Maschine zur 
bestückung verwendet.

Diese war ja bereits vorhanden.
Deshalb wurde zuerst Software geschrieben um die bewegungen der Maschine 
einmal testen zu können.

von Georg (Gast)


Lesenswert?

Claudio schrieb:
> Deshalb wurde zuerst Software geschrieben um die bewegungen der Maschine
> einmal testen zu können.

Um das zu begründen, was ich geschrieben habe: ich fange bei einem 
Projekt immer mit der schwierigsten Teilaufgabe an, denn wenn die gelöst 
ist, weiss ich dass ich das ganze erfolgreich abschliessen kann. Fängt 
man mit den einfachen Sachen an, kann es sein, dass man eine Menge 
Arbeit reingesteckt hat und dann nicht weiterkommt, weil man es 
persönlich nicht hinkriegt oder auch weil es garnicht lösbar ist.

Soweit ich das verstanden habe, ist bei euch das Problem gelöst, dass 
die Mechanik an die richtige Position fährt, aber mangels Feeder gibt es 
keinen Bestückungskopf, der das Bauteil dann auch aufsetzt, und keine 
Feederauswahl und und und... Das ist aber die wesentliche Aufgabe bei 
dem Projekt.

Ist nur meine persönliche Strategie, man kann natürlich auch eine 
Autokonstruktion damit beginnen, schicke Radkappen zu designen. No Risk 
no Fun.

Georg

von Nemesis (Gast)


Lesenswert?

Wer so was ernsthaft basteln will, kann sich hier austoben.
https://www.vbesmens.de/de/bestueckungsautomat.html
Halbgare und nicht mal ansatzweise dokumentierte Projekte
sind ja ganz nett, aber wenn die Leidenschaft daran verloren
geht und das geht ja vielen so, kann man es vergessen.

von Thomas K. (thomas_k545)


Lesenswert?

Danke für die Antwort Claudio

Ich versuch gerade den Umgekehrten Weg.
Ich habe einen Bestückautomat, eine Philips CSM 60, und möchte einen 
Bestückungskopf zur Z-Achse umbauen, um sie auch als Fräse verwenden zu 
können.

Wobei ich mechanisch nicht so das Problem sehe, eher Softwaremäßig, da 
ich sie mit G-Code betreiben möchte.

von Thomas H. (Firma: SuE) (tomy)


Lesenswert?

Hallo hedie,
bin gerade darüber gestolpert...
Obiges Programm steigt mit Demo.CSV
und Fehlermeldung: "29.845" ist kein gültiges Format
aus. Gibt es eine aktuellere Version?
Ich nutzte Win8.1 64bit.
Vielen Dank.

von Walter (Gast)


Lesenswert?

Sinnvoller wäre Sourcecode, damit man keine eventuell virenverseuchte 
EXE herunterladen muss

von ;) (Gast)


Lesenswert?

Thomas K. schrieb:
> Ich habe einen Bestückautomat, eine Philips CSM 60, und möchte einen
> Bestückungskopf zur Z-Achse umbauen, um sie auch als Fräse verwenden zu
> können.

Hat die Mühle Zahnriemen oder Kugelumlaufspindeln?
Bei Zahnriemen wird das eher nichts, aber vielleicht kann
man die Riemen rausschmeißen und Spindeln einbauen.
Die Führungsschienen könnten das vielleicht packen.
Allerdings sollte man beachten, dass ein Bestückungsmaschine
von der Linearführung auf Geschwindigkeit und geringe Kräfte
ausgelegt wurde und zum Fräsen auf hohe Kräft und relativ
geringere Geschwindigkeit gepimpt sein sollte. Es macht
nicht immer Sinn da das CNC-Konzept umzubauen, weil das
dann wahrscheinlich zu Problemen führt.

von C. H. (hedie)


Lesenswert?

Thomas H. schrieb:
> Hallo hedie,
> bin gerade darüber gestolpert...
> Obiges Programm steigt mit Demo.CSV
> und Fehlermeldung: "29.845" ist kein gültiges Format
> aus. Gibt es eine aktuellere Version?
> Ich nutzte Win8.1 64bit.
> Vielen Dank.

Hallo Thomas

Schön, dass nach so langer Zeit nochmals jemand mein Programm gefunden 
hat.
Das waren ja schon ganze 8 Jahre! Wie schnell die Zeit vergeht.

Ich schaue mal, ob ich die Sourcen noch finde.

von ;) (Gast)


Lesenswert?

C. H. schrieb:
> Ich schaue mal, ob ich die Sourcen noch finde.

Wie wäre es, es als Open Source Projekt in Github einzustellen?

von C. H. (hedie)


Lesenswert?

;) schrieb:
> C. H. schrieb:
>> Ich schaue mal, ob ich die Sourcen noch finde.
>
> Wie wäre es, es als Open Source Projekt in Github einzustellen?

Grundsätzlich wäre dies kein Problem.
Habe jedoch den Code bisher noch nicht gefunden.
Werde in alten Backups nachschauen müssen...

Der Code wurde jedoch in Delphi geschrieben
und setzt keinerlei Design-Patterns ein.
Auch wurden keine Konzepte der objektorientierten Sprache genutzt,
da ich zum damaligen Zeitpunkt schlicht das entsprechende KnowHow nicht 
besessen habe :)

Aber wenn ich den Code gefunden habe, werde ich diesen veröffentlichen.

von ;) (Gast)


Lesenswert?

C. H. schrieb:
> Der Code wurde jedoch in Delphi geschrieben
> und setzt keinerlei Design-Patterns ein.

Wenn der Code gut dokumentiert ist, kann man den
vielleicht mit Lazarus nutzen.
Oder man schreibt den Code auf C++, C#, Python oder
wer weiß was, um.

von KK (Gast)


Lesenswert?

OpenPNP macht doch genau das? G-Code aus einer Bestückungsdatei 
generieren (jedenfalls gibt es ein G-Code Backend).

Naja warum einfach wenn's auch umständlich geht.

von Thomas H. (Firma: SuE) (tomy)


Lesenswert?

KK schrieb:
> (jedenfalls gibt es ein G-Code Backend)

Bitte etwas genauer...wie komme ich zum exportierten G-Code?

von Thomas H. (Firma: SuE) (tomy)


Lesenswert?

Ich möchte das Thema nochmals nach oben bringen,
weil eine Frage noch nicht beantwortet wurde.
In diesem Zusammenhang möchte ich dieses Video empfehlen:

https://www.youtube.com/watch?v=EGn0nHDiokc

Alles ohne Schnick und Schnack...nur mit G-Code z.B. mit bCnC.
Wir müssen ja nur noch wenige Bauteile auf unseren China-PCBs
selbst bestücken...lassen. ;)
z.B. auf ganz alltäglichen 3D-Druckern.

von MaWin (Gast)


Lesenswert?

Thomas H. schrieb:
> Wir müssen ja nur noch wenige Bauteile auf unseren China-PCBs selbst
> bestücken...lassen. ;) z.B. auf ganz alltäglichen 3D-Druckern.

Schön, aber ohne Feeder und ohne Kamera vermutlich witzlos.

Interessanter wäre es, den üblichen SainSmart1810 oder ähnlichen nicht 
nur die Platine erst isolationsfräsen und dann bohren zu lassen, sondern 
auch aus einem zweiten Kopf danach Lötpaste per schrittmotorbetriebener 
Dispenserspritze aufbringen zu lassen, oder Epoxykleber wenn die SMD 
durch die Lötwelle gehen sollen.

von Thomas H. (Firma: SuE) (tomy)


Lesenswert?

Das obige Beispiel zeigt doch, das es eben nicht witzlos ist,
die restlichen 20% SMDs, die noch fehlen,
oft größere ICs so ausrichten und aufzukleben.
Was fehlt ist eine Vakuumkontroll-Schleife,
was der Jung mit seinen Tasten macht.

Das wichtigste dabei, ist die statische Aufladung überall zu 
unterbinden.

Entwirft man eine Leiterplatte mit,
- SMD-Trays für Streifenzuführung, geerdet
- SMD-Ausrichtungsfenster metallisiert, geerdet
- Ausrichtungsfenster für bestückende PCBs
- mit anfahrbaren Passermarken
...lässt sich das alles mit höchster Genauigkeit herstellen,
und auf jeden 3D-Drucker auflegen.

von soso... (Gast)


Lesenswert?

In der Zeit die Du brauchst um Beine Bestückungsmaschine einzurichten 
und die Daten aufzubereiten, hast Du schon eine ganze Menge PCBs 
bestückt.

Ich habe eine TVM802B und bestücke trotzdem noch so einiges per Hand.
Geht einfach schneller für Einzelstücke und alles was man für die Dinge 
braucht, die hier im Allgemeinen als so völlig unmöglich in 
Handbestückung angesehen werden ist Erfahrung.
Und die muss man sich erarbeiten

Es ist eine naive Wunschvorstellung das man mal eben einen 3D Drucker 
oder eine CNC zum Bestücker umbaut.
Wo sind denn alle diese Projekte, wenn das so easy ist?
Und jetzt führ bloß nicht diese Müllkisten an, bei denen ich 
Gurtabschnitte auf den Tisch klebe und für 10min Handbestückung 1Std in 
Maschineneinrichtung und Versorgung stecke. (z.B. Liteplacer)
Was immer nicht dabei steht, ist wie lange die der Maschine beibringen 
müssen wie schräg der Streifen aufgeklebt ist und wo der nächste 
beginnt.

Nehm 4K€ in die Hand und hol Dir ne TVM802.
Oder was olles Gebrauchtes, das ein wenig Liebe braucht.
Ohne Vison ist bei 0805 meist Schluss.
TQFT, QFN, BGA?
HAHAHAHA!
Per Hand bekomme ich das hin.

Selbst wenn Du die Mechanik fertig hättest, würde schon OpenPNP Deine 
Nerven aufs äußerste belasten.
Wie viele 100 Stunden kannst Du denn in den 105ten DIY Bestüker 
investieren, der genauso in der Tonne landen wird wie alle anderem vor 
ihm?
Am Ende steckt in einer schlecht funktionierenden Maschine das 100 fache 
an Arbeit die jemals in die damit bestückten PCBs geflossen wären.

Eines dieser Projekte, die mit viel Tamtam die öffentlichkeit gesucht 
haben, nur um dann sang und klanglos zu verschwinden:
https://www.heise.de/make/meldung/Bestueckungsautomat-fuer-Kleinserien-2253204.html

Fireplacer ist auch tot.
Hört doch auf mit diesem Gespinne von dem mal eben gebauten Bestücker.

Der XZ Kram an einem SMD Placer ist das einfachste an der Maschine.
Die Probleme gehen dann erst los.

von Thomas H. (Firma: SuE) (tomy)


Lesenswert?

Nochmal, damit auch Du das verstehst ca. 80% der Standard-Bestückung 
R+C+L+T+D-SMDs kommen immer mit der Leiterplatte aus China !
Kaum jemand braucht da noch neTVM... oder ähnliche.

Mit Pastenschablone geht dann nix mehr.
Die restlichen 20% werden entweder mit Hand gelötet oder so:

https://www.youtube.com/watch?v=xT2mdz0W9FY

...ob nun geklebt oder gepastet ist egal.
Und das kann wirklich jeder 3D-Drucker wie man oben sieht.
Was wir brauchen ist ein funktionierender PnP-2-G-Code-Konverter von 
hedie ;)
...sowie ein Gerber-Pasten-2-G-Code-Konverter!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.