Automatisierung der Ausgabeerstellung aus Altium Designer

Output generation is not a manual step at the end of a project – it is a configurable, automatable process that should run the same way every time.

Das System zur Ausgabegenerierung in Altium Designer basiert auf Output-Job-Dateien (OutJobs). Ein OutJob ist eine konfigurierte Sammlung von Ausgaben – Fertigungsdaten, Bestückungsdaten, Dokumentation, BOMs, Validierungsprüfungen und benutzerdefinierte Berichte – bei der die Einstellungen, das Format und der Zielort jeder Ausgabe einmalig definiert werden. Derselbe OutJob kann für jedes Projekt ausgeführt werden. Wenn sich das Projekt ändert, erzeugt das Ausführen des OutJobs alle Ausgaben entsprechend dem aktuellen Stand neu. Wenn sich Ihre Ausgabeanforderungen ändern, aktualisieren Sie den OutJob einmal.

OutJobs sind nicht nur eine praktische Hilfe für einzelne Ingenieure. Auf Teamebene sind sie der Mechanismus zur Standardisierung dessen, was erzeugt wird, in welchem Format und wohin es geht – und beseitigen damit die Unterschiede, die entstehen, wenn jeder Ingenieur Ausgaben manuell mit eigenen Einstellungen erzeugt.

Die Architektur der Ausgabegenerierung – was OutJobs erzeugen

  • Fabrication outputs: Gerber-Dateien (RS-274X, X2), NC-Bohrdateien, ODB++, IPC-2581, Berichte zum Leiterplattenaufbau.

  • Assembly outputs: Pick-and-Place-Dateien, Bestückungszeichnungen, Testpunktberichte.

  • Documentation outputs: Schaltplandrucke, PCB-Drucke, 3D-Modelle (STEP), Bestückungszeichnungen.

  • BOM outputs: BOM-Berichte in Standard- und benutzerdefinierten Formaten.

  • Validation outputs: DRC-Berichte, ERC-Berichte, Differenzberichte, Footprint-Vergleichsberichte. Diese können so konfiguriert werden, dass sie die Ausgabegenerierung bei Fehlern blockieren.

  • Netlist outputs: Verschiedene Netzlistenformate für nachgelagerte Werkzeuge.

  • Custom outputs: In OutJobs eingebettete Skripte können Ausgaben in jedem Format erzeugen, das Ihr Workflow erfordert.

Automatisierung der Ausgabegenerierung im Release-Prozess

Wenn ein Projekt über den Workspace freigegeben wird, ist die Ausführung von OutJobs in den Release-Prozess integriert. Zuerst werden Validierungsprüfungen ausgeführt – schlägt eine davon fehl, wird der Release gestoppt. Die Ausgaben werden aus dem validierten Designzustand erzeugt und im Workspace als versionierte Release-Artefakte gespeichert. Das bedeutet, dass Release-Ausgaben immer auf eine bestimmte Revision des Designs zurückverfolgt werden können, aus einem verifiziert fehlerfreien Zustand erzeugt werden und an einem Ort gespeichert sind, auf den das gesamte Team zugreifen kann.

Das unterscheidet sich grundlegend von lokal erzeugten und anschließend geteilten Ausgaben: Es gibt keine Unklarheit darüber, zu welcher Designrevision die Ausgaben gehören, kein Risiko, dass Ausgaben mit anderen Einstellungen neu erzeugt werden, und keine Abhängigkeit von dem Rechner oder der Konfiguration eines bestimmten Ingenieurs.

Benutzerdefinierte Ausgabegeneratoren

Für Ausgabeformate, die von Altium Designer nicht nativ unterstützt werden, stellt das SDK eine Output-Generator-API bereit. Eine benutzerdefinierte Output-Generator-Erweiterung wird als vollwertiger Ausgabetyp in das OutJob-System eingebunden – sie erscheint im OutJob-Editor wie jede integrierte Ausgabe, kann mit Einstellungen konfiguriert, Ausgabe-Containern zugewiesen und als Teil eines automatisierten Release-Prozesses ausgeführt werden. Aus Sicht des Benutzers ist ein benutzerdefinierter Output-Generator von einem nativen nicht zu unterscheiden.

Das ist der richtige Ansatz für proprietäre Fertigungsformate, interne Dokumentationsvorlagen, benutzerdefinierte Netzlistenformate für hauseigene Werkzeuge oder jede andere Ausgabeanforderung, die nicht dem entspricht, was Altium standardmäßig bereitstellt.

Häufige Fehlermuster im Ausgabemanagement

  • Manual generation with per-engineer settings – jeder Ingenieur erzeugt Ausgaben auf seinem eigenen Rechner mit eigenen Einstellungen. Die Ergebnisse unterscheiden sich subtil zwischen Ingenieuren und zwischen einzelnen Durchläufen. Wenn bei der Fertigung etwas schiefläuft, ist es schwierig festzustellen, von welcher Designrevision die Ausgaben stammen oder ob die verwendeten Einstellungen korrekt waren.

  • Outputs stored outside the Workspace – lokal oder in gemeinsam genutzten Netzwerkordnern gespeicherte Ausgabedateien lösen sich von den Designs, die sie erzeugt haben. Es wird unklar, welche Designrevision zu welchem Ausgabensatz gehört, insbesondere nachdem Revisionen vorgenommen wurden. Der Workspace-Release-Mechanismus löst dieses Problem, indem er Ausgaben als versionierte Artefakte mit bestimmten Designrevisionen verknüpft.

  • Validation and output generation as separate manual steps – wenn Ingenieure DRC und ERC manuell vor der Ausgabegenerierung ausführen, sind die Prüfungen und die Generierung nicht formal miteinander verknüpft. Ein Design kann eine Stunde lang die Validierung bestehen und in der nächsten Stunde werden Ausgaben erzeugt, nachdem jemand noch eine Änderung vorgenommen hat. Die Integration der Validierung in den OutJob stellt sicher, dass die Validierung gegen denselben Designzustand läuft, aus dem auch die Ausgaben erzeugt werden.

  • OutJob configuration drift between projects – wenn OutJobs zwischen Projekten kopiert und unabhängig voneinander geändert werden, driften die Konfigurationen im Laufe der Zeit auseinander. Eine Änderung der Ausgabeanforderungen erfordert dann die Aktualisierung mehrerer OutJobs. Die Verwaltung von OutJobs als gemeinsame Vorlagen im Workspace und das Übernehmen von Aktualisierungen in Projekte verhindert dieses Auseinanderdriften.

Wann sich die Investition in benutzerdefinierte Output-Generatoren lohnt

Benutzerdefinierte Output-Generatoren sind sinnvoll, wenn Ihre Fertigungspartner oder nachgelagerten Werkzeuge Formate benötigen, die Altium nicht nativ erzeugt, und wenn diese Ausgaben konsistent als Teil eines verwalteten Release-Prozesses erzeugt werden müssen. Wenn sich das Format durch Nachbearbeitung einer nativen Altium-Ausgabe erzeugen lässt – zum Beispiel durch Umwandlung einer BOM-CSV in eine bestimmte Struktur – ist ein Skript im OutJob oft einfacher als eine vollständige SDK-Erweiterung. Erstellen Sie die Erweiterung, wenn das Format Zugriff auf Designobjekte auf einer Ebene erfordert, die das Skriptsystem nicht erreichen kann, oder wenn sich der Ausgabetyp als korrekt konfigurierbare Ausgabe in die OutJob-Benutzeroberfläche integrieren muss.

 

AI-LocalizedAI-localized
Wenn Sie ein Problem feststellen, wählen Sie den Text/das Bild aus und drücken SieStrg + Eingabe, um uns Ihr Feedback zu senden.
Inhalt