Begin hier
Kom je van KiCad
Wat agentee overneemt van KiCad en wat het anders doet: de bibliotheken waaruit het importeert, het importeren van een hele printplaat, en hoe de concepten overeenkomen.
agentee is geen KiCad-vervanger met een ander bestandsformaat. Het is een ontwerptool voor agents die de bibliotheken van KiCad leent en de printplaten van KiCad leest. Als je KiCad kent, gaan de meeste concepten over; wat verandert, is dat de bestanden de interface zijn, en dat een persoon bewerkt via een agent en een viewer in plaats van via een editor.
De bibliotheken
agentee heeft geen eigen onderdelenbibliotheek. agentee search en agentee import lezen de KiCad-symbool- en footprintbibliotheken van:
/usr/share/kicaden/usr/local/share/kicadop Linux,/Applications/KiCad/KiCad.app/Contents/SharedSupportop macOS,KICAD9_SYMBOL_DIRenKICAD9_FOOTPRINT_DIRoveral anders, inclusief Windows.KICAD8_*enKICAD_*werken ook.
agentee search symbol lm358
agentee import symbol Amplifier_Operational:LM358 --with-footprint
agentee import footprint Package_TO_SOT_SMD:SOT-89-3Een import schrijft een .sym.toml of .fp.toml naar symbols/ of footprints/. Vanaf dan is het project eigenaar: er is geen link terug naar de bibliotheek, dus een onderdeel verandert nooit onder je vandaan als KiCad wordt bijgewerkt. Een .kicad_sym- of .kicad_mod-pad werkt in plaats van Library:Name voor onderdelen buiten de standaardbibliotheken.
3D-modellen komen van KICAD9_3DMODEL_DIR en dergelijke, 3dmodels/ in het project, of een cache die agentee models vult uit de kicad-packages3D-repository.
Hoe de concepten overeenkomen
| KiCad | agentee |
|---|---|
.kicad_pro printplaatinstellingen: lagen, regels, netklassen | *.board.toml: fab-preset, stackup-preset, [rules], [[netclasses]], [[vias]] |
| symboolbibliotheek-item | *.sym.toml, één per symbool |
| footprint | *.fp.toml, met pad-rijen in plaats van één item per pad |
| schema met draden | *.sch.toml: onderdelen en nets als lijsten van pinnen; draden optioneel |
| hiërarchische sheets | sheets = [...] in een top-schema, nets verbonden op naam |
.kicad_pcb | *.pcb.toml: plaatsingen, sporen, vias, kopervlakken, zeefdruk |
| DRC | agentee check, met elke regel opgesomd door agentee drc NAME --list |
| vullen van kopervlakken | automatisch bij laden, gecached; agentee fill slaat het op in het bestand |
| Gerbers en boorbestanden plotten | agentee fab |
footprint-velden mpn, lcsc | dezelfde velden op het schema-onderdeel, gelezen door de BOM en agentee parts |
Dingen die anders gedragen:
- Netklasse-breedtes zijn minimumwaarden. In KiCad is de breedte van een klasse de standaard voor nieuwe sporen; in agentee is een spoor dat smaller is dan zijn klasse een fout, tenzij het een korte neck-down is naar een pad.
- Impedantie en stroom zitten op de klasse. Geef een klasse
impedance = "50ohm"ofcurrent = "2A"en de controle lost de dikte op voor elke laag van de stackup. - Stackups zijn die van de fabrikant. Kies
JLC04161H-7628of een PCBWay-build uitagentee stackupsin plaats van diktes in te typen. - Y groeit naar beneden in elk bestand, zoals in de footprint-editor van KiCad, en rotatie is tegen de klok in op het scherm.
- Onbekende sleutels zijn fouten. Een typefout in een sleutel wordt gemeld, niet genegeerd.
- Elke printplaat draagt een versie-watermerk in de zeefdruk: de agentee-versie en de commit die het fab-pakket heeft gebouwd.
Een hele printplaat importeren
agentee import board path/to/NAME.kicad_pcb --dir NAME
cd NAME
agentee check
agentee render pcb:NAME -o NAME.pngDe import schrijft:
| bestand | van |
|---|---|
NAME.board.toml | de Edge.Cuts-omtrek en de uitsparingen, de stackup met dikte, permittiviteit en verliesfactor, de afwerking en de kleur van het soldeermasker, de ontwerpregels en netklassen uit NAME.kicad_pro |
NAME.pcb.toml | footprint-plaatsingen, sporen (bogen als korte segmenten), vias en kopervlakken met hun vulling opgeslagen, en de zeefdruk- en fab-tekst en lijnen, met ${TITLE} en de tekstvariabelen van het project ingevuld |
NAME.sch.toml | elk onderdeel met zijn waarde, en elk net als een lijst van pinnen, getekend met netlabels |
footprints/ | elke footprint zoals die op de printplaat zit, onderkant-voetprints teruggekeerd naar de bovenkant |
symbols/ | één box-symbool per footprint, met een pin per padnummer |
Het schema is een netlist, niet je tekening: het schema van KiCad wordt niet gelezen, dus pinnamen, de symboolgrafiek en de sheetstructuur worden niet overgenomen. Dat is genoeg om de printplaat te checken, te renderen, te simuleren en te laten fabriceren, en om een agent het layout te laten wijzigen.
Vias behouden hun type. Een KiCad-micro-via wordt een microvia, blind een blind of buried via op basis van de span, en elk onderscheidend boor, pad, span, vulling en backdrill wordt een printplaat-via-type. Coördinaten verschuiven zodat de omtrek begint op 0, 0.
Uitgelaten en gemeld: teardrops, keepout-gebieden, en lussen in Edge.Cuts buiten de omtrek. Een klasse waarvan de sporen smaller lopen dan de breedte neemt de smalste, omdat agentee de breedte als minimum beschouwt. Afstanden worden gecontroleerd met de tolerantie van 0,5 um van KiCad.
Op de eigen video- en complex_hierarchy-demos van KiCad komt elk pad van het geïmporteerde layout op de plek waar de IPC-D-356-export van KiCad het plaatst: 2089 en 165 pads. Het HackRF Pro-voorbeeld is een volledige printplaat die op deze manier is geïmporteerd.
Terugkeren
Er is geen export naar KiCad-bestanden. Wat agentee verlaat, is het fab-pakket (Gerbers met X2-attributen, Excellon-boorbestanden, BOM, plaatsing en een IPC-D-356-netlist) en een STEP van de gemonteerde printplaat, die elke fabrikant en elke MCAD-tool leest.