Design
Bauteile: importieren oder zeichnen
KiCad-Symbole und Footprints suchen und importieren, was der Fertiger ablehnt, korrigieren und ein Bauteil aus seinem Datenblatt bauen, wenn es in KiCad nicht vorhanden ist.
Jedes Bauteil auf einer Platine besteht aus zwei Dateien: einem Symbol für den Schaltplan und einem Footprint für das Layout, verbunden über die Pinnummer. Importiere sie aus KiCad, wo immer KiCad das Bauteil hat, und zeichne sie aus dem Datenblatt, wenn es das nicht tut.
Suche
agentee search symbol lm358
agentee search footprint soic 3.9x4.9Jedes Wort muss in Library:Name vorkommen, füge also Wörter hinzu, um eine Suche einzugrenzen: soic 3.9x4.9 findet die schmalen SOIC-8-Gehäuse und überspringt die breiten.
Import
agentee import symbol Amplifier_Operational:LM358 --with-footprint
agentee import symbol Device:R --footprint Resistor_SMD:R_0402_1005Metric
agentee import footprint Package_TO_SOT_SMD:SOT-89-3--with-footprint bringt den Standard-Footprint des Symbols mit; --footprint wählt einen anderen und verknüpft ihn. Symbole landen in symbols/, Footprints in footprints/. --force überschreibt eine Datei, die du bereits hast. Ein Pfad zu einer .kicad_sym-Datei (mit :Name) oder einer .kicad_mod-Datei funktioniert anstelle von Library:Name für Lieferantenbibliotheken.
Führe die Prüfung direkt danach aus. Der übliche Befund betrifft den Bestückungsdruck:
warning: ./footprints/R_0603_1608Metric.fp.toml: R_0603_1608Metric silk: silk lines under the fab minimum width 0.15mm: 2, thinnest 0.12mmKiCad zeichnet den Bestückungsdruck mit 0,12 mm und JLCPCB druckt 0,15 mm. Erweitere die width der Bestückungsdruck-Grafiken des Footprints. Der andere häufige Fall ist der Abstand zwischen Courtyard und Pad gegenüber einem groben Fertiger; behebe ihn im Footprint, wo er hingehört, nicht mit einer Regelüberschreibung.
Generische Bauteile werden geteilt
Ein R-Symbol dient für jeden Widerstand und ein C-Symbol für jeden Kondensator. Der Wert und der Footprint stehen am Bauteil im Schaltplan:
agentee edit sch NAME add R1 R 10k --footprint R_0402_1005Metric
agentee edit sch NAME add C1 C 100n --footprint C_0402_1005MetricWenn ein Schaltplan ein Symbol benennt, das das Projekt nicht hat, aber einen Footprint angibt, den ein Symbol bereits verwendet, übernimmt add dieses Symbol, sodass ein Agent, der für einen Kondensator --footprint C_0402_1005Metric schreibt, das richtige erhält.
Ein Symbol zeichnen
agentee new symbol STM32F103C8Für ein Boxsymbol liste die Pins pro Seite auf und lass agentee sie auf dem Raster platzieren und den Körper dimensionieren. Dies ist das Beispiel aus der Referenz, gekürzt:
name = "STM32F103C8"
reference = "U"
[[bodies]]
left = [
{ number = "7", name = "NRST", type = "input" },
{ gap = 1 },
{ number = "10", name = "PA0", type = "bidirectional" },
]
right = [ { number = "30", name = "PA9", type = "bidirectional" } ]
top = [ { number = "1", name = "VBAT", type = "power_in" } ]
bottom = [ { number = "8", name = "VSS", type = "power_in" } ]{ gap = N } lässt N leere Slots. Pins können auch manuell mit [[pins]] (number, name, type, at, side) platziert werden, und beides kann gemischt werden. Halte die Anschlusspunkte auf dem 1,27-mm-Raster; Pins außerhalb des Rasters werden markiert. Mehrfach-Symbole weisen Pins und Grafiken eine unit zu.
Pin-Typen sind wichtig: Die Prüfung verwendet sie für die Netzprüfungen, und open_collector-Ausgänge und input-Pins nehmen an der Signalpegelprüfung teil.
Logikpegel
Für Logik- und MCU-Bauteile kopiere die Schwellwerte aus dem Datenblatt in eine [levels]-Tabelle. Die Prüfung berechnet dann die Spannung, die jeder Eingang über seine Schienen, Widerstände und Schalter sieht, und meldet einen Eingang, der zwischen VIL und VIH liegen, schweben oder seine Grenzen überschreiten kann:
[levels]
supply = "VDD"
vih = "70%"
vil = "30%"
min = "-0.3V"
max = "100%+0.3V"
leakage = "1uA"Die eigene levels-Tabelle eines Pins überschreibt die des Symbols, etwa für einen Reset-Pin mit internem Pull-up. Die Schaltplan-Anleitung zeigt die andere Hälfte, die rails-Tabelle.
Ein Footprint zeichnen
agentee new footprint SOIC-8_3.9x4.9mm_P1.27mmSchreibe Pads als Zeilen, nicht als einzelne Einträge. Der SOIC-8 aus der Referenz:
[[pads]]
number = "1"
kind = "smd"
shape = "roundrect"
at = [-2.475, -1.905]
size = [1.95, 0.6]
count = 4
pitch = [0, 1.27]
[[pads]]
number = "5"
kind = "smd"
shape = "roundrect"
at = [2.475, 1.905]
size = [1.95, 0.6]
count = 4
pitch = [0, -1.27]Die zweite Zeilen zählt von 5 bis 8 rückwärts auf der anderen Seite. Zeilen zählen die Endziffern hoch, sodass BGA-Bälle auf dieselbe Weise funktionieren (A1, A2, ...), und number_step = 2 zählt in Zweierschritten.
Zeichne den Courtyard auf F.CrtYd und die Körperkontur auf F.Fab: Die Prüfung benötigt einen Courtyard, der die Pads umschließt, der Platzhalter hält Courtyards voneinander fern, und die Kanten- und Montage-Regeln messen vom Körper aus. Setze height, damit die 3D-Ansicht und die Regel für hohe Bauteile eine Höhe ohne Modell haben.
Nützliche Footprint-Schlüssel:
edge = truebei einem Pad, dessen Kupfer bis zum Plattenrand reichen soll (Edge-Launch-Steckverbinder, Kastellierungen).overhang = truebei einem Steckverbinder, der über den Rand hinausragen soll.mask_web = false, wenn der Fertiger die Lötstoppmaske über alle Pads eines Feinpitch-Bauteils als ein Fenster öffnet.zone_connect = "solid"oder"relief"bei einem Pad, überschreibt die eigene Einstellung der Kupferfläche.modelbenennt eine STEP- oder VRML-Datei, einen KiCad-Pfad oder einehttps://-URL, die an einen Commit gepinnt ist.
Jeder Pin braucht ein Pad
Pad-Netze stammen aus dem Schaltplan nach Nummer: Pin 3 des Symbols ist Pad 3 des Footprints. Die Prüfung meldet jeden Pin ohne Pad. Ein Symbol-Pin mit dem Namen EP oder der Nummer 17 für ein Exposed Pad braucht diese Pad-Nummer auch im Footprint.
Bestellnummern
Gib jedem Bauteil im Schaltplan die Felder mfr und mpn, und für die JLCPCB-Bestückung ein lcsc-Feld:
agentee edit sch NAME set U1 --field mfr=Qorvo
agentee edit sch NAME set U1 --field mpn=SPF5189ZJedes set fügt zur fields-Tabelle des Bauteils hinzu und behält das Vorhandene. In der Datei liest es fields = { mfr = "Qorvo", mpn = "SPF5189Z" }.
Die Stückliste gruppiert nach ihnen, und agentee parts sucht Lagerbestand, Preis und günstigere Äquivalente nach mpn. Siehe Fertigungsdaten, Stückliste und Preise.