Hallo Zusammen, seit kurzem kann Horzion EDA (siehe Beitrag "Horizon EDA [War: Neues, halbfertiges Elektronik-CAD-Programm]") auch Pick & place export. Allerdings konnte ich nicht abschließend klären, was für Pick&Place-Dateien die übliche 0°-Orientierung für Bauteile ist, die auf der Unterseite platziert sind. Werden die Bauteile dabei an der X- oder Y-Achse gespiegelt um die 0°-Orientierung zu erhalten? KiCad jedenfalls scheint an der X-Achse zu spiegeln. Lukas
Das macht nur kikad so. Alle Anderen machen das nicht.
Bestückt ein Placer von unten oder wird nur das Board gedreht?
Hallo Lukas, ich habe mal bei einem Bestücker nachgeschaut. https://www.7pcb.com/blog/procedure-creating-centroid-file.php Location ... Rotation Rotation is the direction of rotation of a PCB component's placement orientation referenced from a top point of view. The rotation is a 0 to 360 degree value from the origin. Both the top and reserve side components use a top point of view as their reference point Das passt zu den Angaben der vorherigen Antworten.
Hallo Lukas, leider liest sich das hier gerade umgekehrt zu dem vorherigen Link. https://www.eeworldonline.com/what-is-a-centroid-file/ Rotation Rotation goes counterclockwise for all parts on top and clockwise for parts on the bottom. In both cases, this is from the perspective of looking at the top of the board. For bottom side parts, it is looking through the board, still from the perspective of looking at the top of the board.
Helmut S. schrieb: > Rotation goes counterclockwise for all parts on top and clockwise for > parts on the bottom. In both cases, this is from the perspective of > looking at the top of the board. For bottom side parts, it is looking > through the board, still from the perspective of looking at the top of > the board. Okay, so weit so gut, damit wäre aber nur geklärt, dass sich bei positivem Drehwinkel von oben betrachtet Bauteile auf beidem Seiten gegen Uhrzeigersinn drehen. Wie ich daraus schließen soll ob nun Q2 oder Q3 aus meinem Ursprungsbeitrag richtig rum ist, mag mir nicht unmittelbar einleuchten.
Hallo Lukas, ich habe mal die EAGLE 9.5.2 Demoversion installiert und das Ganze mal ausprobiert. Im Projekt demo2 habe ich eine BAV199 hinzugefügt und dann im Layout platziert. Danach habe mit dem CAM-Prozessor einen Pick and Place Datei erzeugt. 1,2,3 zeigt in beiden Fällen die Orientierung auf dem Board, wenn man von der Oberseite draufschaut. 1 3 2 D2 46.99 15.24 270.00 BAV199 SOT23 Wenn man im Layout die Eigenschaften anschaut, dann steht auch dort 270°. Mit "mirror" nach unten platziert. 1 3 2 D2 46.99 15.24 270.00 BAV199 SOT23 EAGLE speigelt also um die y-Achse nach unten. (Pin-3 der BAV199 zeigt weiterhin nach rechts, wenn man von unten draufschauen würde.) Wenn man im Layout die Eigenschaften anschaut, dann steht auch dort 270° und zusätzlich ist "mirror" angehakt. Erkenntnis: EAGLE schaut von der jeweilgen Bestückungsseite auf das Board um den Winkel zu bestimmen. Das Bauteil wird bei "mirror" von oben gesehen um die Y-Achse gespiegelt.
:
Bearbeitet durch User
Hallo Lukas, Target 3001! V20 macht es wie EAGLE. Siehe vorherige Antwort von mir. Ich schaue mir das jetzt mal bei horizon an.
Helmut S. schrieb: > Hallo Lukas, > > Target 3001! V20 macht es wie EAGLE. Siehe vorherige Antwort von mir. > > Ich schaue mir das jetzt mal bei horizon an. Hallo Lukas, Target 3001! macht den Winkel bei den Bauteilen auf der Unterseite doch nicht genau gleich wie EAGLE. Unterseite ---------- EAGLE klappt das Board um die Y-Achse und schaut dann auf die Bauteile. TARGET klappt das Board um die X-Achse und schaut dann auf die Bauteile. KiCad klappt gar nicht um sondern schaut immer von der Topside auf das Board. Mir scheint die Methode von KiCad ist doch recht sinnvoll. Kann das mal jemand in Altium und anderen Programmen anschauen?
Hallo Helmut, ich will keinesfalls deine Arbeit schmälern, aber mirror bedeutet gespiegelt auf X Achse. Da du das Bauteil um -90grad gedreht hast ist dir vorgekommen dass es über Y gespiegelt wird wobei es in Wahrheit X ist und nur durch die zusätzliche Rotation zu y geworden ist. MFG Chris
Helmut S. schrieb: > EAGLE schaut von der jeweilgen Bestückungsseite auf das Board um den > Winkel zu bestimmen. Das Bauteil wird bei "mirror" von oben gesehen um > die Y-Achse gespiegelt. Dann macht eagle das entweder komisch oder falsch. Alle weiteren Recherchen deuteten ja darauf hin, das der Winkel immer von oben durch's Board hindurch betrachtet wird. Dabei, ob ein Bauteil nun durch Spiegeln an der X- oder Y- Achse auf die Unterseite wandert scheint es ja nicht wirklich Einigkeit zu geben. Dann werde ich den Export wohl so umbauen, dass der Winkel wie angezeigt, also mit Spiegeln an der Y-Achse exportiert wird.
Lukas K. schrieb: > Dann werde ich den Export wohl so umbauen, dass der Winkel wie > angezeigt, also mit Spiegeln an der Y-Achse exportiert wird. Hallo Lukas, Teste doch mal alle vier Fälle in EAGLE und vergleiche. Ich glaube mich zu erinnern, dass zusätzlich die 0-Position beim SOT-23 in EAGLE anders ist. Mir scheint, dass es weitere Dinge gibt die man gar nicht jedem richtig machen kann. Hier noch etwas über die Orientierung (0°) auf top side. https://ohm.bu.edu/~pbohn/__Engineering_Reference/pcb_layout/pcbmatrix/Component%20Zero%20Orientations%20for%20CAD%20Libraries.pdf Hier noch eine Diskussion dazu. https://www.element14.com/community/thread/62529/l/footprint-origin-for-pick-and-place?displayFullThread=true
:
Bearbeitet durch User
Helmut S. schrieb: > Teste doch mal alle vier Fälle in EAGLE und vergleiche. Ich hab' dazu nochmal mein Eagle 6.6 aus der Mottenkiste geholt und versucht dessen Verhalten nachzuvollziehen. Die 0-Ausrichtung von dem SOT-23 entspricht nicht den IPC-Empfehlungen (Pin 1 ist oben links). Für das weitere vorgehen allerdings ist das nicht weiter von Belang. Auf der Oberseite ist alles normal, Rotation ist ist gegen Uhrzeigersinn. Wenn ich ein Bauteil spiegel, dann wird dies an der Y-Achse gespiegelt und der Drehsinn ist nun gegen der Uhrzeigersinn. Meines Erachtens nach ist dies so nicht korrekt. Bestückerbuden werden wahrscheinlich schon alles mögliche und unmögliche gesehen haben und hoffentlich gegen den Bestückungsplan vergleichen wenn es da Unstimmigkeiten geben sollte...
Pick&Place-Files in den Prozess einzuphasen ist beim Bestücker eh ein hochgradig manueller Prozess, weil es eben keinen Standard gibt, oder wie im Falle der 0°-Orientierung mehrere Standards. Also im Zweifel immer mit dem Bestücker besprechen, wenn man den Prozess optimieren will.
:
Bearbeitet durch User
Lukas K. schrieb: > Auf der Oberseite ist alles normal, Rotation ist ist gegen > Uhrzeigersinn. Wenn ich ein Bauteil spiegel, dann wird dies an der > Y-Achse gespiegelt und der Drehsinn ist nun gegen der Uhrzeigersinn. > Meines Erachtens nach ist dies so nicht korrekt. Die Ansicht auf der Glotze ist "durch das Board". Die Drehung und auch die Winkel sind aber in der Ansicht in der es physikalisch "in der Hand" geht. Daher sind oben und unten die Teile identisch gedreht: Ein Teil das oben "Pin 1 links = 0°" ist, ist unten auch "Pin 1 links = 0°", nur auf der Glotze eben durch eine Glasplatine gesehen, daher seitenvertauscht und anderer Drehsinn. Die Daten sind von beiden Seiten so, als ob die Platine nur eine Seite "Top" hätte, das ist in meinen Augen vollkommen sinnvoll. Stell dir vor, du müsstest beim Import drauf achten, welche Seite du importierst, weil sich Drehsinn und Null/90° unterscheiden. Lukas K. schrieb: > Bestückerbuden werden wahrscheinlich schon alles mögliche und unmögliche > gesehen haben und hoffentlich gegen den Bestückungsplan vergleichen wenn > es da Unstimmigkeiten geben sollte... Der von beiden Seiten ausgedruckte (oder als PDF vorhandene) Bestückungsplan zählt, denn sogar zwischen verschiedenen Bestückungsmaschinensoftwareständen gibt's da Probleme. Alles schon gesehen: 0 oben, 0 rechts, 0 links, linksrum oder rechtsrum gedreht, jeder macht da was eigenes, sowhl CAD als auch CAM.
Jens M. schrieb
> Die Daten sind von beiden Seiten so, als ob die Platine nur eine Seite
"Top" hätte, das ist in meinen Augen vollkommen sinnvoll. Stell dir vor,
du müsstest beim Import drauf achten, welche Seite du importierst, weil
sich Drehsinn und Null/90° unterscheiden.
Vom Prinzip her gefällt mir diese Denkweise.
Ich habe leider keinen Kontakt mehr zu einem Bestücker. Vielleicht
könnte ja mal jemand der einen guten Kontakt zu einem Bestücker hat den
mal fragen was er erwartet bzw. wie er mit den offenbar
unterschiedlichen Bestückungsfiles der CAD-Tools umgeht.
Meiner Meinung nach ist es vollkommen egal in welche Richtung gedreht oder gespiegelt wird - Hauptsache immer gleich. Ich kann nur für Altium sprechen aber in den Pick and Place Daten steht in der ersten Zeile "Altium Designer" damit sollte jeder Bestücker wissen wie die Daten zu interpretieren sind. Ich denke das gilt auch für jedes andere CAD Programm. Richtig blöd wenn man da die Finger reinsteckt und die Daten ändert. Dann sieht der Bestücker "Altium" drückt auf sein Altium Knöpfchen und alles geht in die Hose.
:
Bearbeitet durch User
Chris schrieb: > Das macht nur kikad so. Alle Anderen machen das nicht. Unser Tool (Pulsonix) macht das auch so. Bestückungsansichten haben ja in der Regel eine "von unten" Ansicht. Von daher würde ich sagen ist es vielleicht intuitiver, wenn ein ein Bottom-Bauteil in der "von unten" Ansicht gleich orientiert ist, wie ein Top-Bauteil mit dem selben Rotationswinkel in der "von oben" Ansicht. Am Ende ist es wahrscheinlich komplett egal, weil der Bestücker eh alle möglichen Varianten vor die Nase bekommt und es daher immer ein hochgradig manueller Prozess ist. Man sollte dem Bestücker aber zumindest den gefallen tun alles einheitlich zu machen :) Wichtiger sind halt hochwertige Bestückungsansichten, auf denen die Soll-Orientierungen sonnenklar ersichtlich sind.
Hallo Helmut. Helmut S. schrieb: > EAGLE klappt das Board um die Y-Achse und schaut dann auf die Bauteile. > TARGET klappt das Board um die X-Achse und schaut dann auf die Bauteile. > KiCad klappt gar nicht um sondern schaut immer von der Topside auf das > Board. > > Mir scheint die Methode von KiCad ist doch recht sinnvoll. KiCad nennt das auch nicht "mirror" oder "spiegeln" sondern "flip" oder "wenden". Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.l02.de
Helmut S. schrieb: > Ich habe leider keinen Kontakt mehr zu einem Bestücker. Vielleicht > könnte ja mal jemand der einen guten Kontakt zu einem Bestücker hat den > mal fragen was er erwartet bzw. wie er mit den offenbar > unterschiedlichen Bestückungsfiles der CAD-Tools umgeht. Hier, anwesend, wach. Genau was ich gesagt habe: die Daten sind ganz toll, aber ein Ausdruck mit Diodenrichtungen ist was zählt, denn jedes CAD macht was eigenes. Da packt man dann "Dieses Bauteil drehen" (was reell alle identischen Teile dreht, also z.B. alle BC847, nicht nur T1) oder "Diese Bauform drehen" (in diesem Fall dann alle SOT23) an und zack drehen sich alle gepolten Teile um den Offset, denn das CAD gegenüber unserer Maschine hat. Wir sehen wie gesagt 0° oben rechtsdrehend (also 90° dann rechts), 0° rechts rechtsdrehend, 0° link rechtsdrehend und ein Kunde hat 0° oben linksdrehend. Zudem macht jeder Designer die Teile frei Schnauze, Pins oben und unten oder rechts/links, Pin 1 links oben, links unten, think you what out. Als EMS muss man fressen was man bekommt, daher wird das nach Import nach Papier oder sogar Muster angepasst. J.W. schrieb: > Wichtiger sind halt hochwertige Bestückungsansichten, auf denen die > Soll-Orientierungen sonnenklar ersichtlich sind. So much this. Und speziell Leute die Altium benutzen, fallen bei uns negativ auf. Ist wohl zu kompliziert: Kicad, Eagle und sogar Target klappt meist problemlos, wenn der Designer es auf die Reihe bekommt Gerber und XY zu erzeugen. Altium dagegen hat andauernd fehlende Polaritäten, 4 Ecken anstelle eines Rechtecks (und ohne Pin1 Marke), frei fliegende Pin1-Marken die nicht am Bauteil hängen (und dann bei Rev2 irgendwo auf dem Board rumliegen). Und die Leute sind früher Eaglekunden gewesen... Die sollten also wissen wie es geht.
Jens M. schrieb: > Helmut S. schrieb: >> Ich habe leider keinen Kontakt mehr zu einem Bestücker. Vielleicht >> könnte ja mal jemand der einen guten Kontakt zu einem Bestücker hat den >> mal fragen was er erwartet bzw. wie er mit den offenbar >> unterschiedlichen Bestückungsfiles der CAD-Tools umgeht. > > Hier, anwesend, wach. > Genau was ich gesagt habe: die Daten sind ganz toll, aber ein Ausdruck > mit Diodenrichtungen ist was zählt, denn jedes CAD macht was eigenes. > Da packt man dann "Dieses Bauteil drehen" (was reell alle identischen > Teile dreht, also z.B. alle BC847, nicht nur T1) oder "Diese Bauform > drehen" (in diesem Fall dann alle SOT23) an und zack drehen sich alle > gepolten Teile um den Offset, denn das CAD gegenüber unserer Maschine > hat. > Hallo Jens, vielen Dank für die ernüchternde Erklärung. Es scheint ja wirklich so schlimm zu sein wie einige hier schon angedeutet oder behauptet haben. Da wundert es mich jetzt nicht mehr, dass man da auf keinen gemeinsamen Nenner kommt, wenn man die outputs der CAD-tools vergleicht. Was würdest du Lukas, dem Entwickler des horizon PCB-Layout-Programms, raten wie er es amchen soll? Soll er sich an ein bestimmtets CAD-Programm halten und dazuschreiben gemacht wie beim Programm xyz? https://github.com/horizon-eda/horizon
Meines erachtens macht es keiner 100% richtig, jeder hat irgendeinen Bock, und wenn es inkonsistent erstellte ICs sind. Von daher ist es wichtig, das er es nicht ändert. Wenn er sich entschieden hat, das 0 unten und 90 dann links ist, dann muss er dabei bleiben, so krempelig das auch ist. Ansonsten wird's noch schlimmer, weil man dann "Daten vor Version 2.0.50.1" und "Daten ab 2.0.50.2" unterscheiden muss. Helmut S. schrieb: > Da wundert es mich jetzt nicht mehr, dass man da auf keinen gemeinsamen > Nenner kommt, wenn man die outputs der CAD-tools vergleicht. Weil es keine Norm gibt soweit ich weiß, nur Empfehlungen. Und selbst da gibt es Ermessensspielraum, und auch einfach Softwarequirks: ASM hat in der Maschinensoftware die eigenartige Eigenschaft, das sich beim Einlesen von Bottom-Daten manche Teile umdrehen, wenn man die Bestückliste zum Board macht. Wenn man in die Bestückliste schaut, sind die Teile falschrum, auf dem Board dann richtig. Da muss man beim Erstellen der Daten saumäßig aufpassen.
Auf jedem falls Protel format, denn damit kann man automatisch die richtige Rotation rausbekommen. "Designator","Pattern","Mid X","Mid Y","Ref X","Ref Y","Pad X","Pad Y","Layer","Rotation" "" "VR2","POT3MM","143.661mil","1312.008mil","185mil","1375mil","185mil","1 375mil","T","180.000" Altrium hat Pattern in Footprint abgeändert und ein Comment feld dazu gehängt. Mid ist average aus allen Pins, Ref ist der Nullpunkt des Designers und pin ist die Position von Pin1. Da nun die Position von pin1 bekannt ist, kann man nun automatisch die Drehung des Bauteil korrigieren lassen unabhängig von dem verwendeten pin1 Bauteilstandard. Bei Bauteilen mit zwei Pins hinfällig, aber wenn mehr als zwei Pins da sind stimmt es. Ansonsten muss man jedes Bauteil einzeln verifiziert werden.
Chris schrieb: > Bei Bauteilen mit zwei Pins hinfällig, aber wenn mehr als zwei Pins da > sind stimmt es. Auch da sollte das klappen, denn Mid und Ref sind dann gleich, Pin aber auf Pin 1. Wobei bei Dioden & Elkos ja dann noch die Frage bleibt ob man Polung oder Bauteilmarkierung benutzt. Wir haben auch Kunden, die konsequent "Minus" markieren. Geht bei Elkos und Dioden gut, bei Tantalen jedoch qualmts. Andere markieren "Plus", gern auch mit nem "+". Ist das jetzt ein Passer??? Und wieder andere machen "Bauteilmarkierung". Dumm nur wenn es optional Elko & Tantal gibt... Welcher Strich zählt? Und: ASM/Siplace kann weder Mid noch Pin auswerten. Da verwirren die Daten nur zusätzlich. Noch ein Punkt: Was ist mit Bauteilen, die nicht bestückt werden sollen? - Nicht in den XY-Daten listen? Maschinenbediender wundert sich, das das Board anders aussieht als auf dem Maschinensystem... - Normal im XY listen, in der Stüli weglassen? Stimmt die Stüli oder ist das eine alte/neue Revision? - Im XY mit Dummywert stehen lassen, in der Stüli listen als NB? Bestückdaten sind selbst inhouse entwickelt kaum ohne manuelle Arbeit zu verwursten, fremder Kram ist immer Papier, telefonieren und viel Fummelei.
Hallo Jens. Jens M. schrieb: > - Im XY mit Dummywert stehen lassen, in der Stüli listen als NB? Dummywert auch auf NB setzten? Falls Dein System das zulässt. Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.l02.de
Sinnvoll wäre "Bestückungsplan & XY auf 'Option, siehe Stüli'" zu setzen, ja. Geht einigen Designern aber nicht ein...
Ok, danke für eure Antworten, da kam ja echt noch was bei rum :) Im EEVBlog-Forum hat das mal jemand für Altium durchexerziert: https://www.eevblog.com/forum/eda/pickplace-files-component-rotation-on-the-bottom-side/msg2936734/#msg2936734 Altium macht es auch so wie KiCad. Lukas K. schrieb: > Dann werde ich den Export wohl so umbauen, dass der Winkel wie > angezeigt, also mit Spiegeln an der Y-Achse exportiert wird. Ok, dann eben nicht, wenn es schon zwei andere Programme so machen. Dann passt zwar der im Board-Editor angezeigte Winkel bei Bauteilen auf der Unterseite nicht zum Winkel in der Pick&place-Datei, ist aber meines Erachtens nach verschmerzbar. Das schöne daran, ein Layout-Tool zu schreiben ist, dass man so auch Dinge hinterfragt und dazu Lernt, die man sonst nie so im Detail angesehen hätte.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.