Die gesamte Serie lesen
Dieser Artikel ist Teil einer ausführlichen Anleitung dazu, wie wir mit Quilters physikgestützter Layout-Automatisierung einen Computer auf Basis des NXP i.MX 8M Mini nachgebaut haben.
Der Arduino Uno ist eine Open-Source-Mikrocontrollerplatine, die Elektronikbegeisterte und Profis häufig für Prototypenprojekte verwenden. In vielerlei Hinsicht ist er das „Hello World“-Programm der Elektrotechnik: Oft ist er das erste Projekt, das Menschen beim Einstieg in dieses Gebiet bauen.
Damit ist der Entwurf eines Arduino Uno der perfekte Ausgangspunkt für Quilter! Lesen Sie weiter und erfahren Sie, wie Quilters generatives Design ein vollständiges Arduino-Uno-Layout von Grund auf kompiliert hat – ohne menschliches Eingreifen!

Die Eingaben vorbereiten
Wir betrachten Quilter als Compiler für Leiterplatten. Ihr Schaltplan ist der zu kompilierende „Code“: Er definiert die Logik, die die Leiterplatte ausführen soll. Das Layout ist dann ein Anweisungssatz für einen Hersteller, um ein physisches Gerät zu erstellen, das diese Logik ausführt – ähnlich wie C in Maschinencode kompiliert wird.
Der Arduino Uno ist ein bestehender Open-Source-Entwurf. Wir können daher einfach die Schaltpläne verwenden, die auf seiner Website verfügbar sind.

Zusätzlich zu den logischen Vorgaben des Schaltplans müssen wir dem Compiler einige physische Randbedingungen vorgeben: die gewünschte Leiterplattenkontur und die Positionen der Steckverbinder. So bleibt unser Uno-Entwurf mit den bestehenden Shields und Gehäusen für den ursprünglichen Uno kompatibel.
Dafür erstellen wir einfach eine Leiterplattendatei mit definierter Kontur und platzieren die Steckverbinder an den gewünschten Stellen.

Wenn Sie sich diese Eingabedatei genauer ansehen möchten, können Sie sie hier herunterladen.
Quilter ausführen
Ab jetzt wird es einfach! Ziehen Sie die Eingabedatei per Drag-and-drop auf Quilters Online-Dashboard und sehen Sie zu, was passiert! In etwa einer Stunde prüft Quilter Tausende Entwurfskandidaten und präsentiert den besten.

Wenn Sie sich diesen Entwurf genauer ansehen möchten, können Sie ihn hier herunterladen. Beachten Sie, dass dies der neueste Entwurf mit Stand 2023/03/09 ist und er nicht dem abgebildeten Entwurf entspricht.
Und was ist mit den Designregeln?
Bleiben wir bei der Compiler-Analogie: Wir können den Leiterplattenentwurf als Maschinencode betrachten und den Hersteller als „Prozessor“, der diesen Maschinencode ausführt.
So wie wir Code für verschiedene Prozessoren kompilieren können, kann Quilter PCB-Layouts gezielt für die jeweiligen Fähigkeiten unterschiedlicher Hersteller kompilieren!
Derzeit berücksichtigt Quilter die Fähigkeiten von drei bestimmten Herstellern: JLCPCB, PCBWay und OSHPark. Es präsentiert den Kandidaten mit den flexibelsten Fertigungsmöglichkeiten. Die oben gezeigte Platine kann bei jedem dieser Hersteller gefertigt werden!
Quilter legt die Designregeln automatisch in der Ausgabedatei fest, sodass Nutzer unabhängig eine DRC ausführen und sicherstellen können, dass keine Fehler entstanden sind.
Bauen wir sie!
Software macht ohne Hardware keinen Spaß! Sobald wir also einen fertigbaren Entwurf hatten, der ohne menschliches Eingreifen alle DRCs bestand, schickten wir die Gerber-Dateien sofort zur Fertigung. Dies ist die erste vollständig autonom von Quilter kompilierte Platine. Wir waren entsprechend gespannt, wie sie sich schlagen würde!




Hinweis: Dieser Entwurf wurde am 2022/09/14 mit einer älteren Compilerversion abgeschlossen, die nur PCBWay unterstützte. Die Designdateien dieser konkreten Platine finden Sie hier.
Testen wir sie!
Eine „Hello World“-Platine ist nichts ohne ein „Hello World“-Skript! Führen wir eines auf unserem Quiltuino Uno aus.

Unser Quiltuino Uno startet, verbindet sich mit dem Computer und führt ein einfaches Programm aus! Dabei werden jedoch nur wenige seiner Ein-/Ausgabefunktionen beansprucht. Um diese zu testen, kombinierten wir den Uno mit einem Touchscreen-Shield.
























