Altium Designer (Summer09) stellt in der 3-d Ansicht Top- und Bottom-Overlay als Bestückungsdruck dar. Ich verwende einen mechanical Layer zum Bedruck, weil ich damit nur bestimmte Beschriftungen anbringen möchte und keinen kompletten Bestückungsdruck. Gibt es eine Möglichkeit, einen mechanical Layer in der 3-d-Ansicht sichtbar zu machen?
Ohne es genau zu wissen würde ich sagen nein, weil die MechLagen nur 2D Daten haben und keine 3.Dimension. Ich mache es umgekehrt, also meine Frage: Was spricht dagegen die Overlay Lagen für den Beschriftungsdruck zu verwenden und den Mech-Layer für den kompletten Bestückungsdruck ?
Danke für die schnelle Antwort, ich hab es fast befürchtet. Sämtliche Bauteile in meinen Bibliotheken sind so angelegt, dass die Silkscreen-Zeichnungen sie einen ansprechenden Bestückungsplan ergeben (Bauteilzeichnungen, Bezeichner und Werte). Allerdings gehen diese Zeichnungen zum einen rücksichtslos über Pads, so dass man diese nicht drucken könnte/dürfte. Das macht im allgemeinen nichts, da wir grundsätzlich keinen Bestückungsdruck verwenden. Selbst wenn ich meine Libraries alle komplett neu anlegen würde, wäre es mir viel zu umständlich, die Bestückungsdaten in mech.-Layer zu zeichnen. Das gäbe nämlich keine automatische Unterscheidung zwischen Ober- und Unterseite bei der Bestückungsplanerstellung. (Zumindest ist mir eine solche Möglichkeit nicht bekannt, darüber nachgedacht hatte ich schon einmal.) Unsere Baugruppen sind häufig zweiseitig SMD-bestückt. Hier ist jetzt eine Beschriftung gewünscht (Klemmenbelegung). Es wäre schön (aber zum Glück nicht unbedingt nötig), eine 3-d-Ansicht generieren zu können, in der die Beschriftung zu sehen ist.
Das Problem ist bekannt, Altium gibt von sich aus keinerlei Unterstützung für einen 'Assembly Print', aber alles was notwendig ist, ist auch da -> man muß es nur einmal auch tun. Ich habe vor Jahren mal angefangen in meiner PcbLib auf Lage Mech20 den SpezialString .Designator und auf Mech22 den SpezialString .Comment einzufügen. Beide so in der Mitte vom Bauteil, das es ungefähr Mittig ist wenn der richtige Text erscheint z.B. R12 oder MAX232, auch die Textgröße muß man richtig wählen um nicht über den Courtyard zu kommen. Im PCB müssen ganz am Anfang Mech Layer Pairs definiert werden, bei mir M20<>M21 und M22<>M23 damit die Schrift von Bauteilen auch auf den Mechlagen wechseln. (Aber das habe ich in meinem default PCB eingestellt um es nicht jedesmal tun zu müssen). Für den Bestückungsdruck habe ich dann 4 Ausgaben. Top - Bottom , jeweils Beschriftung - Wert. Der Ausdruck ist 'fit on page' daher habe ich auch mit sehr kleiner Schrift (unter 1mm) kein Problem. Seit dem bin ich sehr zufrieden mit dem Output. Durch die PcbLib zu gehen und bei jedem Bauteil zwei Spezialstrings einzufügen kostet zwar Arbeit und Zeit aber lohnt sich. Im Bild sieht man Lage M20 und M22 mal als Spezialstring und mal 'normal', rechts meine definierten Mech Layer Pairs (achte auf M20,M21 und M22,M23) Gruß Taz
Michael S. schrieb: > Das gäbe nämlich keine automatische Unterscheidung zwischen Ober- und > Unterseite bei der Bestückungsplanerstellung. > (Zumindest ist mir eine solche Möglichkeit nicht bekannt, darüber > nachgedacht hatte ich schon einmal.) Das geht schon, das macht man indem man Layer mit Layer-Pairs koppelt. Wir haben hier in der Bibliothek mehrere solcher Paare in den Mechanical-Layern definiert. Etwa M10 M11 als Top_Courtyard Bottom_Courtyard, also Platzierungshilfen für den Abstand der Bauteile zueinander. Ist das für das Board richtig eingestellt wechselt der Layer automatisch mit wenn man das Teil auf die andere Seite der Platine legt. Ohne Paarung bleibt der Mechanical-Layer beim Wechsel wie er ist. In der 3D-Ansicht kann man wohl keine Layer hinzufügen. Aber warum nicht einfach z.B. M3/M4 für den Bestückungsdruck verwenden und beim Erzeugen der Gerber-Daten statt dem Silkscreen ausgeben? Dann teilt man dem Platinen-Hersteller entweder mit, dass die foobar.GM3 der Top-Silkscreen ist oder man benennt das um das der gleich was mit der Endung anfangen kann.
Michael S. schrieb: > Allerdings gehen diese Zeichnungen zum einen rücksichtslos über Pads, so > dass man diese nicht drucken könnte/dürfte. Das sollte man aber in der Lib ändern können wenn das dort fehlerhaft gemacht wurde. In den mitgelieferten Libs habe ich so was bisher nicht gefunden. Bei den selbst angelegten mach ich das gleich so das es für meinen 'Stil' passt. > Selbst wenn ich meine Libraries alle komplett neu anlegen würde, wäre es > mir viel zu umständlich, die Bestückungsdaten in mech.-Layer zu > zeichnen. Das kann man doch auch editieren und die Bezeichner lassen sich doch verschieben, ausblenden und auch auf einen anderen Layer verlegen und/oder kopieren ohne die Bibliothek zu editieren.
Danke Euch sehr für Eure Antworten,... Taz G. schrieb: > Im PCB müssen ganz am Anfang Mech Layer Pairs definiert werden, bei mir > M20<>M21 und M22<>M23 damit die Schrift von Bauteilen auch auf den > Mechlagen wechseln. (Aber das habe ich in meinem default PCB eingestellt > um es nicht jedesmal tun zu müssen). Rudolph schrieb: > Das geht schon, das macht man indem man Layer mit Layer-Pairs koppelt. > Wir haben hier in der Bibliothek mehrere solcher Paare in den > Mechanical-Layern definiert. > Etwa M10 M11 als Top_Courtyard Bottom_Courtyard, also > Platzierungshilfen für den Abstand der Bauteile zueinander. > Ist das für das Board richtig eingestellt wechselt der Layer automatisch > mit wenn man das Teil auf die andere Seite der Platine legt. > Ohne Paarung bleibt der Mechanical-Layer beim Wechsel wie er ist. ...das ist sehr interessant für mich! Von mech. Layerpairs habe ich bisher nichts gewußt. > Aber warum nicht einfach z.B. M3/M4 für den Bestückungsdruck verwenden > und beim Erzeugen der Gerber-Daten statt dem Silkscreen ausgeben? > Dann teilt man dem Platinen-Hersteller entweder mit, dass die foobar.GM3 > der Top-Silkscreen ist oder man benennt das um das der gleich was mit > der Endung anfangen kann. So in der Art mache ich es ja. Ich wollte nur wissen, ob ich das auch in der 3-d-Ansicht zeigen kann. Steffen Warzecha schrieb: > Michael S. schrieb: >> Allerdings gehen diese Zeichnungen zum einen rücksichtslos über Pads, so >> dass man diese nicht drucken könnte/dürfte. > > Das sollte man aber in der Lib ändern können wenn das dort fehlerhaft > gemacht wurde. In den mitgelieferten Libs habe ich so was bisher nicht > gefunden. Bei den selbst angelegten mach ich das gleich so das es für > meinen 'Stil' passt. Du hast mich missverstanden: Die Libs sind mir nicht so geliefert worden sondern ich habe sie so gezeichnet, weil ich aus den Silkscreens meine Bestückungspläne mache. Diese sollen vernünftig aussehen, daher habe ich Bauteilumrisse so gezeichnet, wie sie eben sind. Das geht dann auch über die Pads. Im Allgemeinen gibt es bei uns keinen Bestückungsdruck, deswegen stört das nicht.
Steffen Warzecha schrieb: > Michael S. schrieb: >> Allerdings gehen diese Zeichnungen zum einen rücksichtslos über Pads, so >> dass man diese nicht drucken könnte/dürfte. > > Das sollte man aber in der Lib ändern können wenn das dort fehlerhaft > gemacht wurde. In den mitgelieferten Libs habe ich so was bisher nicht > gefunden. Bei den selbst angelegten mach ich das gleich so das es für > meinen 'Stil' passt. > >> Selbst wenn ich meine Libraries alle komplett neu anlegen würde, wäre es >> mir viel zu umständlich, die Bestückungsdaten in mech.-Layer zu >> zeichnen. > > Das kann man doch auch editieren und die Bezeichner lassen sich doch > verschieben, ausblenden und auch auf einen anderen Layer verlegen > und/oder kopieren ohne die Bibliothek zu editieren. Hi Steffen, das die Schrift über Pads geht lässt sich nicht vermeiden wenn die Bauteile dicht an dicht stehen. Für den Beschriftungsdruck auf der Platine muß man Arbeit investieren (verschieben, Größe ändern, ausblenden usw.) Und für die zweite Sache, die Bezeichner und Werte auf andere Lagen zu kopieren gibt es Scrips, die das sehr komfortabel machen (google mal CopyDesignatorsToMechLayerPair_v3.0). Diese Lösung ist für mich aber nur ein Workaround und keine dauerhafte Lösung.
Michael S. schrieb: > weil ich aus den Silkscreens meine > Bestückungspläne mache Und das ist im Ansatz schon falsch und generiert so immer und immer wieder Probleme.
Taz G. schrieb: > Michael S. schrieb: >> weil ich aus den Silkscreens meine >> Bestückungspläne mache > > Und das ist im Ansatz schon falsch und generiert so immer und immer > wieder Probleme. Da magst Du recht haben. Mein Problem ist, dass ich nicht die Zeit habe, mich zu tief in die Einzelheiten von Altium hineinzubegeben. Mit den Infos von Euch werde ich aber bei der nächsten Gelegenheit einen neuen Ansatz versuchen.
ich nochmal zum Thema Bestückungsplan in mech. Layern drucken: habe Eure guten Ratschläge inzwischen bei einem Projekt versuchsweise in die Tat umgesetzt. Sechs mech. Layer habe ich dazu reserviert für Bauteilumrisse (top und Bottom) sowie für Bauteilname und -Wert (jeweils Top und Bottom). Ausserdem entsprechende mech.-Layerpaare im Board definiert. Funktioniert. Alles kommt dort hin, wo es hin soll. Was ich jetzt noch vermisse (oder gibt's dafür auch einen Weg, den ich nur noch nicht kenne?) ist eine automatische sinnvolle Ausrichtung der Bauteilnamen und -Werte. Damit meine ich: Z.B. immer zentral im Bauteil (ich weiß, das gibt's: 'Central'), ausgerichtet wie das Bauteil (0° oder 90°) und so, dass die Schrift immer von unten oder von rechts zu lesen ist und nie auf dem Kopf steht (sowas kenne ich nicht). Bisher habe ich hier immer Handausrichtung betrieben. PS: damit ist zwar meine Ursprungsfrage nach mech.-Layer in 3-d nicht positiv beantwortet, jedoch kann ich nun, wenn unbedingt nötig, dann doch den Silkscreen dafür verwenden. Damit ist dieses Problem für mich gelöst.
:
Bearbeitet durch User
Ergänzung: ich hatte Bedenken, ob die mechanicals bei Verwendung von Variants Schwierigkeiten machen. Tun sie nicht, alles ist schön! :)
Aktuell Altium Version 15.0.14 gibt's noch keine Funktionen zum Ausrichten oder Anpassen der Schriftgröße an die Bauteilgrenzen ( bzw. Courtyard). Aber es gibt ein Script, Google einfach mal nach "AdjustDesignators2 script". In den neueren Altium Versionen stürtzt das Script mit einer Fehlermeldung ab "blabla LayerObject_V7". Für die neueren Altium Versionen muß man "Board.LayerStack.Layer..." durch "Board.LayerStack_V7.Layer..." ersetzen. (Für diejenigen, die noch nichts mit Scripts gemacht haben) Einer der einfachsten Wege ein Script mal aus zuprobieren ist es die *.PrjScr Datei ins Altium Fenster zu ziehen und vom PcbDoc aus auf DXP RunScript zu gehen. Funktion 'Start' wählen und OK.
Vielen Dank für den Link, sehr interessant. Ich habe mir das Skript heruntergeladen und werde es mir später anschauen, wenn ich Zeit dafür habe.
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.