Hi, ich bin gerade dabei meine erste mit Kicad erstellte Platine inklusive SMT Bestückung bei jlcpcb.com fertigen zu lassen. In der Bestückungs-Vorschau bei jlcpcb werden alle ICs um 90° gegen den Uhrzeigersinn rotiert dargestellt. Die 0805 C und R sind korrekt rotiert, d.h. es hängt wohl von der Gehäuseform ab und ist kein generelles Problem. In pcbnew sieht alles gut aus, siehe Bilder. Konkret geht es um folgende Bauteile - U1 74ALVC164245DGG mit Package_SO:TSSOP-48_6.1x12.5mm_P0.5mm - U9 SN74LVC07APWR Package_SO:TSSOP-14-1EP_4.4x5mm_P0.65mm Im Hersteller-Datenblatt von https://datasheet.lcsc.com/szlcsc/2001050533_Nexperia-74ALVC164245DGG_C477988.pdf: wird das Gehäuse auch mit "SOT362-1" bezeichnet. In der MyProject-top-pos.csv Bestückungsliste sieht das dann so aus: Designator,Val,Package,Mid X,Mid Y,Rotation,Layer "U1","74ALVC164245DGG","TSSOP-48_6.1x12.5mm_P0.5mm",68.503800,-102.28600 0,0.000000,top Die Ausrichtung ist also 0°. Die Headerzeile der Datei habe ich nach Vorgabezeile von jlcpcb angepasst von "Ref,Val,Package,PosX,PosY,Rot,Side" nach "Designator,Val,Package,Mid X,Mid Y,Rotation,Layer". Die Spalte "Rotation" wird auch tatsächlich verwendet, eben nur mit dem falschen Wert (+90°). Wem kann ich jetzt trauen: ist die Vorschau von jlcpcb korrekt, d.h. stimmt sie mit dem überein was tatsächlich bestückt wird? Falls ja, wie kann ich Kicad davon überzeugen die Rotation richtig zu exportieren? Michael
:
Bearbeitet durch User
Hat noch nie jemand Platinen bei jlcpcb bestücken lassen und kann seine Erfahrungen teilen? In Kapitel 9 von http://ohm.bu.edu/~pbohn/__Engineering_Reference/pcb_layout/pcbmatrix/Component%20Zero%20Orientations%20for%20CAD%20Libraries.pdf wird dieselbe Ausrichtung angegeben wie sie von Kicad verwendet wird. Michael
- die JLCPCB-Preview zeigt öfters schonmal Schmuh an, ‚rotiert‘ hatte ich allerdings noch nicht - teste deinen Gcode einfach mal mit einem Gcode-Viewer, nicht mit pcbnew
Ich hatte auch bereits rotiert angezeigte Bauteile. Der Support meinte, dass klappt schon. Schlussendlich war auch alles richtig bestückt. Im Zweifel würde ich die mal anschreiben.
Ich rotiere nachträglich per Hand so dass es preview passt.
Da jedes EDA-Programm und jede Maschine "Nord" und "positive Drehung" anders bewertet, ist das normal. Und: je nachdem ob sich der Teilerersteller im EDA an die "Norm" hält, ist das auch noch anders. IC-Format wie Bildschirm? Was bei QFP? Pin 1 ist immer links oben? Und zweiseitige BE? Na gut, Beinchen sind immer links/rechts (oder ist oben unten doch besser?) Oder so wie die Teile im Gurt liegen ist Null? Was ist bei Teilen die es in verschiedenen Gurtbreiten und damit Ausrichtungen gibt? Achleckmichdoch Verstehste? Öffne einfach die XY-Datei und ändere die Rotation bis es in der Vorschau passt. Solltest du mit einem Menschenbetrieb arbeiten (also ein ernsthafter Bestücker) gibt denen einen Bestückungsplan in PDF, in dem die Richtung gut zu sehen ist, fertig. Deine Daten stimmen eh nie.
Jens M. schrieb: > Öffne einfach die XY-Datei und ändere die Rotation bis es in der > Vorschau passt. Danke, das werde ich machen. Das war genau die Frage, ob ich der Vorschau trauen kann. > Deine Daten stimmen eh nie. Natürlich stimmen meine Daten, ich habe gerade eben zum 100sten mal den letzten Fehler rausgemacht ;-) Es wäre schon ein Wunder, wenn alles auf Anhieb korrekt ist, aber zumindest die offensichtlichen Fehler sollten vorher raus. Michael
Michael D. schrieb: > Das war genau die Frage, ob ich der > Vorschau trauen kann. Bei der Bestückung ja, bei Gerber nicht unbedingt. Wobei der Mensch an der Maschine in deinem Fall schon sehr blönd sein müsste um das durchgehen zu lassen. Aber ob 1 nun oben oder unten ist weiß er nicht. Wenn die Frage gar nicht erst aufkommt, ist das geklärt.
beim Suchen hab ich noch diesen Thread gefunden: https://forum.kicad.info/t/jlcpcb-bom-and-pick-and-place/19016 Und folgenden Blog: https://dubiouscreations.com/2019/10/21/using-kicad-with-jlcpcb-assembly-service/ Dort ist das Repository https://github.com/matthewlai/JLCKicadTools verlinkt wo man ein Script findet, welches die Rotation für bekannte Komponenten automatisch anpasst. In den issues finden sich noch weitere Infos: https://github.com/matthewlai/JLCKicadTools/issues/28#issuecomment-649177142 Und ein Artikel von JLCPCB dazu: https://support.jlcpcb.com/article/99-does-the-red-dot-means-pin-1-in-the-placement-previewer Ich werde es mal ausprobieren. Michael
:
Bearbeitet durch User
Hi, Mittlerweile sind die bestellten Platinen gekommen, alle Bauelemente wurden korrekt bestückt. Mein Script zum Rotieren der ICs hat alle ICs so rotiert, dass die Bestückungs-Vorschau passt, dazu musste ich in meinem Fall alle ICs um -90° drehen, das kann aber bei anderen ICs anders sein. Ob meine Daten jetzt gepasst haben oder ob JLCPCB manuell eingegriffen hat, weiß ich nicht. Michael
Michael D. schrieb: > Ob meine Daten jetzt gepasst haben oder ob JLCPCB manuell eingegriffen > hat, weiß ich nicht. Dann kannst du ein Reproduktionsproblem bekommen, aber es ist kein "muss". Bist halt dann von anderen abhängig. Michael D. schrieb: > 68.503800,-102.28600 Bisschen auffällig finde ich den negativen Wert in den Koordinaten. Wie ist das zu erklären?
;) schrieb: > Michael D. schrieb: >> 68.503800,-102.28600 > > Bisschen auffällig finde ich den negativen Wert in den Koordinaten. > Wie ist das zu erklären? Das liegt daran, dass ich mit dem Koordinatensystem von KiCad auf dem Kriegsfuß stehe und nie verstehe wo der Ursprung liegt. Es steht noch auf meiner ToDo Liste mich damit zu befassen. Das zweite Problem ist, dass ich eine Farbsehschwäche habe und die schwachen roten Linien des Rasters und die Ränder des Arbeitsblatts von KiKad nicht erkennen kann. Bei World of Tanks gibt es einen ColorBlind mode, den hab ich bei KiCad noch nicht gefunden. Davon abgesehen halte ich es für kontraintuitiv, dass die y-Achse nach oben hin abnimmt. Ich würde mir ein "rechtshändiges kartesisches Koordinatensystem" (https://de.wikipedia.org/wiki/Kartesisches_Koordinatensystem) wünschen und den Ursprung so verschiebbar wie ich es gerne hätte. Michael
:
Bearbeitet durch User
Hallo Michael. Michael D. schrieb: >> Bisschen auffällig finde ich den negativen Wert in den Koordinaten. >> Wie ist das zu erklären? > > Das liegt daran, dass ich mit dem Koordinatensystem von KiCad auf dem > Kriegsfuß stehe und nie verstehe wo der Ursprung liegt. Es steht noch > auf meiner ToDo Liste mich damit zu befassen. Der Ursprung des Hauptkoordinatensystems liegt defaultmäßig links oben knapp ausserhalb des Zeichnungsrahmens. Den Ursprung des Hilfskoordinatensystems setzt Du mit der Leertaste immer da, wo Du meinst, dass es gerade sinnvoll ist. Die Koordinaten zählen positiv von links nach rechts, aber positiv von oben nach unten. Damit orientiert es sich an den bei Canvassystemen in Programmiersprachen weit verbreiteten und üblichen Verhältnissen, und nicht am den "klassischen" kartesischen Schulmatematik Koordinatensystemen. > > Das zweite Problem ist, dass ich eine Farbsehschwäche habe und die > schwachen roten Linien des Rasters und die Ränder des Arbeitsblatts von > KiKad nicht erkennen kann. Bei World of Tanks gibt es einen ColorBlind > mode, den hab ich bei KiCad noch nicht gefunden. Einen "ColorBlind" Modus gibt es in dem Sinne auch nicht, aber in PCBnew kannst Du im Lagenmanager vor den Lagen auf das Farbfeld klicken (links Doppelklick oder Mittelklick). Es poppt ein Fenster auf, in dem Du eine X-Beliebige Farbe wählen kannst. Wenn Du im Fenstermanager oben den Reiter "Elemente" wählst, kannst Du auch die Farbe von "Arbeitsblatt" (der Zeichnungsrahmen) und "Raster" wählen. Siehe Anhang "PCBnew_FarbaenderungZeichnungsrahmen.jpg" > Davon abgesehen halte ich es für kontraintuitiv, dass die y-Achse nach > oben hin abnimmt. Ich würde mir ein "rechtshändiges kartesisches > Koordinatensystem" > (https://de.wikipedia.org/wiki/Kartesisches_Koordinatensystem) wünschen Das geht z.Z. noch nicht, ausser Du schreibst Dir ein Plugin. > und den Ursprung so verschiebbar wie ich es gerne hätte. Du hast zwei mögliche Hilfskoordinatensysteme zusätzlich zum Hauptkoordinatensystem. 1) Das "schnelle" um schnell mal was auszumessen oder eine Position fest zu legen. Das wird Dir am unteren Rand von PCBnew auch angezeigt, und Du kannst es mit der Leertaste am aktuellen Cursorpunkt zu Null setzten. Dieses Hilfskoordinatensystem ist ungemein praktisch, und ich kann immer nur raten, es zu benutzten. Wie auch das parametrische Plazieren. Siehe dazu "PCBnew_HauptUndHilfskoordinatensystem.jpg" 2) Ein extra Plotthilfskoordinatensystem nur für das Plotten. Dessen Ursprung setzt Du mit dem untersten Button aus der rechten Buttonleiste in PCBnew. Wenn Du dann Gerber oder Bohrdaten plottest, kannst Du dort "Verwende Hilfsachsen als Ursprungsort". Das ist aber nur im Notfall nötig. Wenn Du das Bedürfnis hast, das machen zu müssen, überlege dreimal ob das wirklich nötig ist. In 99,99% aller Fälle ist es nicht nötig, und Du stiftest nur Chaos. Siehe dazu im Anhang "PCBnew_Plotkoordinatensystem_Setzen.jpg" Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.l02.de
:
Bearbeitet durch User
Hallo Bernd, Bernd W. schrieb: > Der Ursprung des Hauptkoordinatensystems liegt defaultmäßig links oben > knapp ausserhalb des Zeichnungsrahmens. Ich hatte mein Board mal so hingeschoben, dass die linke untere Ecke auf 0,0 lag. Daher sind alle y-Werte negativ. So hat wenigstens der Betrag gestimmt. > Die Koordinaten zählen positiv von links nach rechts, aber positiv von > oben nach unten. Damit orientiert es sich an den bei Canvassystemen in > Programmiersprachen weit verbreiteten und üblichen Verhältnissen Es orientiert sich an dem was der Programmierer kennt, aber nicht an der Domain Welt des Anwenders ;-) Wenn man zwischen Gehäuse in CAD und PCBNew hin und her wechselt, ist das unterschiedliche Koordinatensystem ohne gemeinsamem Bezugspunkt verwirrend. Ich habe meine Platinen jetzt komplett bemaßt. Mit einem einheitlichen Koordinatensystem hätte es mir gereicht die Maße aus der Status Bar bzw. dem Property Dialog abzulesen. > Einen "ColorBlind" Modus gibt es in dem Sinne auch nicht, aber in PCBnew > kannst Du im Lagenmanager vor den Lagen auf das Farbfeld klicken Das hatte ich im Tools und in View Menu gesucht. Auf die Idee, dass ich dort in der Leiste clicken kann, bin ich nicht gekommen, ich habe immer nur die Checkboxen zum Ein-/Ausschalten wahrgenommen. Vielen Dank für die Aufklärung! Michael
Hallo Michael. Michael D. schrieb: >> Der Ursprung des Hauptkoordinatensystems liegt defaultmäßig links oben >> knapp ausserhalb des Zeichnungsrahmens. > > Ich hatte mein Board mal so hingeschoben, dass die linke untere Ecke auf > 0,0 lag. Daher sind alle y-Werte negativ. So hat wenigstens der Betrag > gestimmt. Wenn Du im (default) Zeichnungsrahmen bleibst, sollten alle Koordinaten per default positiv sein. > Ich habe meine Platinen jetzt komplett bemaßt. Mit einem einheitlichen > Koordinatensystem hätte es mir gereicht die Maße aus der Status Bar bzw. > dem Property Dialog abzulesen. Komisch. Den Status Bar kennst Du.... Zum Abstände bestimmen siehe hier: Beitrag "Re: KiCad: Abstände präzis ermitteln" Wenn Du eine neuere Testing Version hast, könnte das natürlich anders sein. Mieine KiCad-Version: Application: Pcbnew Version: 5.1.6+dfsg1-1~bpo10+1, release build Libraries: wxWidgets 3.0.4 libcurl/7.64.0 OpenSSL/1.1.1d zlib/1.2.11 libidn2/2.0.5 libpsl/0.20.2 (+libidn2/2.0.5) libssh2/1.8.0 nghttp2/1.36.0 librtmp/2.3 Platform: Linux 4.19.0-13-686-pae i686, 32 bit, Little endian, wxGTK Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.l02.de
:
Bearbeitet durch User
Bezüglich der Drehung der ICs. Hatte auch so einen Fall, da meinte ich alles richtig gemacht zu haben, ich hab sogar die Ausrichtung der ICs im Tape herausgefunden und eigentlich hatte ich alles richtig. Trotzdem zeigte der Preview es falsch an. Trotzdem so bestellt: Mail, ob es gedreht werden soll. Ja, bitte, Pin 1 soll da sein wo das Marking am Silkscreen ist. Kamen korrekt an. Die nächsten Bestellungen habe ich dann so manipuliert, dass der Preview gepasst hat. Da kamen dann keine Rückfrgen mehr und alles kam korrekt an. Wichtig ist ein guter Silkscreen, da schaut ja immer nochmal einer drüber und prüft die Rotation.
Die Lage der Teile im Tape hat nichts mit der Ausrichtung auf dem PCB oder dem für die Bestückung anzugebenden Winkel zu tun. Sie wird rein danach entschieden, welches Band wirtschaftlicher ist. Meist wird ein kurzes breites Band bevorzugt, weil man damit weniger Rollen wechseln muss, was weniger Handarbeit bedeutet, aber es gibt Teile, die es alternativ auf einem schmalen langen Tape gibt, manche Transistoren kann man sogar in allen 4 möglichen Richtungen kaufen, damit die Maschine schneller bestücken kann, weil sie nicht drehen muss. Oder weil mit schmalem Tape mehr Feeder auf die Maschine passen. Daher wird der Aufnahmewinkel beim Rüsten eingestellt, und zwar so das er zur programmierten Bauteillage für die Bauteilvermessung passt. Erst danach erfolgt die Drehung in die Bestücklage, und die Angabe ist immer absolut, wird von der Maschine aber in eine relative umgerechnet, weil die Erkennungsposition und die 0°-Position nicht zwangsläufig identisch sind.
Jens M. schrieb: > Die Lage der Teile im Tape hat nichts mit der Ausrichtung auf dem PCB > oder dem für die Bestückung anzugebenden Winkel zu tun. Ich verstehe nur nicht, warum man sich nicht auf eine normierte Angabe der Drehung auf den PCBs einigt. Der Bestücker muss dann nur noch wissen, wie das Tape von der normierten Drehung für diesen Bauteiltyp (bzw. Footprint Typ) abweicht, d.h. das Tape bräuchte diese Kennung. Die Verantwortung würde dann vom Kunden zum Fertiger übergehen. Vielleicht hat das ja was mit Tradition zu tun. Michael
Im Grunde ist es egal wie man seine Bauteile rotiert. Man sollte aber wenigstens ein einheitliches Vorgehen verwenden. Denn jeder Bestücker wird die Pick&Place-Daten nochmal manuell bearbeiten. Es gibt nämlich schlicht nicht den einen Standard. Selbst von IPC gibt es zwei Varianten zur 0°-Lage eines Bauteils. Und zur Rotation von Bauteilen auf der Unterseite ist mir gar kein Standard bekannt. Das hängt nur davon ab wie das CAD-Tool das handhabt. Ich würde nicht die eigenen Daten so hin drehen, damit irgendeine Preview passt. Die eigenen Daten sollten halt plausibel und eindeutig sein. Beim nachträglichen Bearbeiten besteht immer die Gefahr, dass die Daten widersprüchlich oder unplausibel werden. Und dann ist die Verwirrung beim Bestücker erst recht groß und das Potential für Fehler nimmt zu.
Ich nehm auch die JLCKicadTools um die ICs so zu drehen, dass die Preview stimmt. Hatte da auch nie nachfragen und es hat immer gestimmt. Ist aber irgendwie umständlich, da verschiedene ICs verschiedene rotationen brauchen und man dann immer hin und herklicken muss. Der Standard müsste nicht "Mittelpunkt+Rotation" sondern "Mittelpunkt + Punkt von Pin1" sein. Das wäre dann absolut klar, wie man das zu verstehen hat.
KiCad richtet die Drehungen IPC-7351-konform ein, während bei JLCPCB 0° der Winkel ist, in dem die Teile vom Band kommen. Wenn man ICs um -90° und Transistoren um 180° dreht, passt es in der Regel für JLCPCB.
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.