Skip to content

Latest commit

 

History

History
112 lines (85 loc) · 6.3 KB

File metadata and controls

112 lines (85 loc) · 6.3 KB

Русский | English | Deutsch

Automatisierungsskripte für Altium Designer

Glatter Mikrostreifenleitungsübergang in Altium Designer

Projektübersicht

Dieses Repository enthält eine Sammlung spezialisierter DelphiScript/Pascal-Skripte für Altium Designer, die zur Automatisierung des Layoutdesigns, der Geometrieoptimierung und der Synthese von Hochfrequenz- (HF/Mikrowellen-) Übergängen entwickelt wurden.

Der Schwerpunkt dieser Version liegt auf der automatisierten Zusammenführung diskreter geometrischer Segmente (Fills, Tracks) und der Synthese von impedanzangepassten Mikrostreifenleitungsübergängen (stufenförmige und stufenlose lineare Taper) in monolithische Kupfer-Polygone des Typs Solid Region (IPCB_Region) unter Beibehaltung der Netz- (Nets) und Lageneigenschaften (Layers).


Projektstruktur

├── .gitignore
├── LICENSE
├── README.de.md
├── README.en.md
├── README.md
├── docs/
│   └── images/
│       ├── rf_taper_discrete_slices_selected.png  # Ausgewählte diskrete Segmente im PCBDoc
│       ├── rf_taper_stepped_solid_region.png      # Ergebnis der exakten stufenförmigen Zusammenführung (1:1)
│       ├── rf_taper_smooth_solid_region.png       # Ergebnis des kontinuierlichen linearen Tapers
│       └── rf_taper_pcb_full_view.png             # Gesamtansicht des Leiterplattenlayouts mit Übergang
└── scripts/
    └── rf_transitions/
        ├── merge_slices_to_exact_region.pas       # Zusammenführung in stufenförmige Solid Region
        └── merge_slices_to_smooth_region.pas      # Synthese eines kontinuierlichen linearen Tapers

Skriptarchitektur und Funktionsprinzip

Beim Entwurf von Mikrowellenschaltungen werden stufenförmige und kontinuierliche Impedanzübergänge häufig in Berechnungsprogrammen (Mathcad, MATLAB) oder 3D-EM-Feldsimulatoren (CST Studio Suite, HFSS) berechnet und als Arrays diskreter Streifen in das PCB-CAD importiert. Das manuelle Zusammenfügen und Bearbeiten dieser Elemente in Altium Designer ist zeitaufwendig und anfällig für DRC-Fehler.

Die Skripte im Modul rf_transitions automatisieren diesen Ablauf über das Altium-Designer-Objektmodell (PCBServer).

1. Exakte stufenförmige Zusammenführung (merge_slices_to_exact_region.pas)

Dieses Skript führt die ausgewählten Primitive (eFillObject, eTrackObject) zu einem monolithischen Polygon zusammen, wobei alle Zwischenabmessungen und stufenförmigen Kanten exakt 1:1 erhalten bleiben.

  • Ablauf:
    1. Iteration über alle ausgewählten Primitiven mittels IPCB_BoardIterator und Extraktion der Grenzkordinaten $[X_1, X_2, Y_1, Y_2]$ (unter Berücksichtigung der Leiterbahnbreite bei eTrackObject).
    2. Monotone Sortierung der Segmente entlang der longitudinalen Ausbreitungsachse ($X$-Achse).
    3. Konstruktion einer geschlossenen mathematischen Kontur IPCB_Contour über die Factory PCBServer.PCBContourFactory:
      • Festlegung der linken Kante $(X_{1,0}, Y_{1,0}) \rightarrow (X_{1,0}, Y_{2,0})$.
      • Erzeugung des oberen Stufenprofils mit Einfügen von Eckpunkten bei Breitenänderungen.
      • Festlegung der rechten Kante $(X_{2,N}, Y_{1,N})$.
      • Erzeugung des unteren Stufenprofils in umgekehrter Richtung.
    4. Instanziierung eines IPCB_Region-Objekts (eRegionObject), Zuweisung der Netz- (TargetNet) und Lageneigenschaften (TargetLayer), Löschen der Ausgangselemente und Neuzeichnen der Ansicht.

Stufenförmige monolithische Solid Region

2. Synthese eines kontinuierlichen linearen Tapers (merge_slices_to_smooth_region.pas)

Dieses Skript transformiert eine diskrete Stufenapproximation in einen kontinuierlichen linearen Taper-Transformator, wodurch parasitäre reaktive Diskontinuitäten an orthogonalen Stufenkanten vermieden werden.

  • Ablauf:
    1. Extraktion und Sortierung der Ausgangssegmente entlang der $X$-Achse.
    2. Konstruktion einer geglätteten Kontur ohne orthogonale Absätze: Diagonale Linien verbinden die Eckpunkte benachbarter Segmente direkt.
    3. Beibehaltung orthogonaler Abschlusskanten an Ein- und Ausgang zur planaren Anbindung an Zuleitungen.
    4. Generierung des eRegionObject, Übernahme der Netzdaten und Bereinigung der Ausgangsobjekte.

Glatter linearer Taper als Solid Region


Ausführung in Altium Designer

Installation

  1. Klonen Sie das Repository lokal:
    git clone https://github.com/AiuRat/altium-designer-scripts.git
  2. Öffnen Sie die Zieldatei (*.PcbDoc) in Altium Designer.

Ausführung

  1. Wählen Sie im PCB-Editor die zusammenzuführenden Objekte (Fills oder Tracks) aus:

    Auswahl der Segmente im PCB-Dokument

  2. Öffnen Sie über das Hauptmenü File $\rightarrow$ Run Script... (oder Alt + F11 / DXP-Menü).
  3. Klicken Sie auf Browse... und wählen Sie die gewünschte Skriptdatei (merge_slices_to_exact_region.pas oder merge_slices_to_smooth_region.pas).
  4. Wählen Sie die entsprechende Prozedur:
    • MergeSelectedSlicesToRegion — für die exakte stufenförmige Kontur.
    • MergeSelectedSlicesToSmoothRegion — für den geglätteten linearen Übergang.
  5. Bestätigen Sie mit OK. Das Skript erstellt die zusammenhängende Solid Region und aktualisiert die Ansicht.

Lizenz

Copyright (c) 2026 Airat Yalaletdinov

Diese Quelle beschreibt Open Hardware (offene Hardware) und ist unter der CERN-OHL-P v2 lizenziert. Sie dürfen diese Quelle unter den Bedingungen der CERN-OHL-P v2 (https://cern.ch/cern-ohl) weiterverbreiten, modifizieren und Produkte auf deren Grundlage herstellen.

Diese Quelle wird OHNE JEGLICHE AUSDRÜCKLICHE ODER STILLSCHWEIGENDE GEWÄHRLEISTUNG vertrieben, EINSCHLIESSLICH DER GEWÄHRLEISTUNG DER MARKTGÄNGIGKEIT, ZUFRIEDENSTELLENDEN QUALITÄT ODER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Die geltenden Bedingungen entnehmen Sie bitte der CERN-OHL-P v2.