Forum: Platinen Eagle ULP Positionsdaten


von Michael B. (Gast)


Lesenswert?

Hallo Zusammen,

ich erstelle momentan eine ULP zur Ausgabe der Bestückungspositionen. 
Dann tue ich mich viel leichter mit meinem Bestücker...

Momentan sieht mein Code so aus:

 B.elements(E) {
        printf("%s," , E.name); // Bauteilname
        printf("%s," , E.value);
        printf("%s," , E.package.name);
        printf("%s;\n" , E.package.library);
      }

Was ich jetzt unbedingt brauche ist die Bestückungsposition. Leider
finde ich aber nirgends einen Hinweis wie die Bezeichnung hierfür ist 
:-\

E.????

Kann mir hier bitte jemand mal auf die Sprünge helfen.

Vielen Dank,
Michael

von Michael H. (michael_h45)


Lesenswert?

Kennst du denn ftp://ftp.cadsoft.de/eagle/userfiles/doc/ulp5120_de.pdf 
schon?
E.x und E.y ist das, was du suchst.
Den Winkel überlass ich jetzt dir =)

von Michael B. (Gast)


Lesenswert?

@ Michael H.

vielen Dank für Deinen Tipp. Das PDF ist Gold wert. Bei meiner Recherche 
bzgl. ulp bin da nicht drüber gestolpert. Unter Eagle Help konnte ich 
den passenden Ausdruck auch nicht finden.

Hier jetzt für alle:

B.elements(E) {
        printf("%s," , E.name);
        printf("%s," , E.value);
        printf("%s," , E.package.name);
        printf("%f,\n" , u2mm(E.x));
        }
     }

VG,
Michael

von Michael B. (Gast)


Lesenswert?

Nachtrag:

printf("%.2f \t\t," , E.angle);

von Reinhard Kern (Gast)


Lesenswert?

Michael B. schrieb:
> printf("%.2f \t\t," , E.angle);

Die Angabe der X/Y-Position ist problematisch genug - worauf beziehen? 
Bei symmetrischen Bauteilen könnte man sich noch auf die Mitte 
verständigen, aber unregelmässige Bauteile wie Schalter oder Relais 
haben keine Mitte. Und beim Winkel ist eh alles zu spät, das sieht jeder 
Bestücker und jede Maschine anders. Es sei denn, man stellt sich nur auf 
eine einzige Fertigung ein und redesignt alle Bauteile entsprechend mit 
dem gewünschten Nullpunkt und der gewünschten Orientierung. Oder man 
fügt in die Library entsprechende Metadaten ein wie etwa 
Siplace_X_Offset usw.

Gruss Reinhard

von Michael B. (Gast)


Lesenswert?

Hallo Reinhard,

Du hast vollkommen recht, jeder Bestücker benötigt andere Daten. 
Weihnachten 2011 habe ich mir endlich meinen Traum von einem eigenen 
Bestücker erfüllt, seitdem optimiere ich alles auf meine 
Fertigungs-Linie :)...

Allerdings viel zu optimieren gibt es gar nicht. Ich verwende die 
x/y-Daten direkt aus Eagle. Anschließend zwei Fiducials dem Automaten 
manuell teachen und explizit von diesen zwei Fiducials die CAD-Daten dem 
Automaten eingeben. Hieraus errechnet sich der Automat relativ alle 
anderen Positionen. Ich habe wirklich gestaunt wie präzise das 
funktioniert, obwohl der Automat älteren Baujahres ist.

Aber ehrlich gesagt ist auch eine einfache Rechnung ;)

VG,
Michael

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.