← Tilbage til oversigt

Opret eget bibliotek i KiCAD

Vi opretter et eget KiCAD-bibliotek, placerer det i et GitHub-repository og kobler det til KiCAD, så biblioteket kan versionsstyres, sikkerhedskopieres og bruges på flere computere. Som første eksempel opretter vi et bibliotek til undervisningskomponenter, som senere kan indeholde egne SPICE-modeller.

1. Eget KiCAD bibliotek

Denne side beskriver hvordan man kan oprette sit eget KiCAD-bibliotek. Det er kun projektleder, eller kursusholder der har behov for dette, så start IKKE her.

Her laves et bibliotek som kan versionsstyres med git og f.eks. github repository.

Et eget KiCAD-bibliotek gør det muligt at samle komponenter, som er tilpasset kursus. I stedet for at kursusdeltagere selv skal finde og konfigurere SPICE-modeller, f.eks. til forskelligt farvede LED'er, kan de istedet vælge færdige komponenter som LED_Red, LED_Green osv.

Grundidé: Git-repository'et er den autoritative placering af biblioteket. KiCAD bruger biblioteket direkte fra denne mappe i stedet for en separat kopi i KiCAD's installationsmapper.

2. Opret GitHub-repository

Opret et nyt repository på GitHub, fx med navnet kicadlib. Repository'et skal være bibliotekets centrale lager, så ændringer kan versionsstyres og hentes igen på andre computere.

Clone derefter repository'et til en lokal arbejdsmappe. En passende placering er fx:

C:\Users\ditbrugernavn\source\repos\kicadlib\
Vigtigt: .git-mappen skal ligge direkte i kicadlib. Du skal altså ikke oprette en ekstra kicadlib-mappe inde i repository'et.
GitHub repository til KiCAD-bibliotek
Repository'et på GitHub er den centrale versionerede kopi.
Lokal mappe med klonet Git repository
Det klonede repository ligger lokalt under source\repos.

3. Opret en enkel biblioteksstruktur

Start enkelt. Jeg anbefaler at holde symboler og SPICE-modeller adskilt, selv om de senere skal bruges sammen.

kicadlib/
├── .git/
├── README.md
├── .gitignore
├── symbols/
│   └── CommonSimMissing.kicad_sym
└── spice/
    └── led_mje.lib
Mappe/fil Formål
symbols/ KiCAD-symboler, som kan placeres på schematic.
spice/ SPICE-modeller til simulering.
README.md Dokumentation og installationsvejledning.
.gitignore Filer, som ikke skal versionsstyres.

4. Opret et eget symbolbibliotek

Fra KiCADs hovedvindue, åbn Symbol Editor i KiCAD.

Symbol Editor i KiCAD
Symboleditor i KiCAD.

Opret et nyt bibliotek og gem det ned i ovennævnte mappe som:

symbols\CommonSimMissing.kicad_sym
Symbol Editor: Opret nyt bibliotek
Opret nyt bibliotek i Symboleditoren i KiCAD.

Biblioteket skal indeholde de symboler, brugerne skal kunne vælge. Vi starter med ét symbol og udvider senere til flere LED-varianter.

Bemærk: Dette er et symbol library. Det er ikke det samme som en samling af SPICE-modeller. Symbolbiblioteket beskriver bl.a. symbolgrafik, pins og komponentegenskaber; SPICE-modellen beskriver komponentens elektriske opførsel.
Symbol Editor - fil dialog ved oprettelse af nyt bibliotek
Symbol Editor - fil dialog ved oprettelse af nyt bibliotek.

5. Tilføj biblioteket til KiCAD

Faktisk sker tilføjelsen af biblioteket automatisk, med mindre man har fjernet et flueben fra ovenstående dialog. Hvis du har problemer, så brug nedenstående til at tjekke om du har rette bibliotek.

Åbn schematic-editoren og vælg Preferences → Manage Symbol Libraries.... Biblioteket kan tilføjes som et projekt-specifikt bibliotek eller som et globalt bibliotek, her vælger vi globalt (eller det skete automatisk ovenfor).

Manage Symbol Libraries i KiCAD
Fra Schematic editor: Åben Administrer Symbolbibliotek.
Tjek at det nye bibliotek er med her.
Tjek at det nye bibliotek er med her.

6. Kopier eksisterende symbol

Åben Symboleditor. Find eksisterende symbol, f.eks. LED. Søg på LED. Find Device/LED. Dobbeltklik for at åbne. Der står nu at det er et skrivebeskyttet bibliotek/symbol.

Åben eksisterende symbol Device/LED
Åben eksisterende symbol Device/LED.

Vælg, Fil -> Gem som, giv det navnet LED_Red og vælg CommonSimMissing, vores nyligt oprettede bibliotek.

Navngivning: Brug engelske og entydige navne som LED_Red, LED_Yellow, LED_Green, LED_Blue og LED_White. Selve netnavne som Input, Output og Sense er en anden type navngivning.
Opret LED_Red symbol
Gem som: LED_YELLOW (skulle være LED_RED, men pyt).

7. Brug den indbyggede diode-model med egne IS og N-værdier

En del simulerings-modeller kan bygges ved direkte at anvende indbyggede modeller fra spice. Det gør sig typisk gældende hvis man ikke har brug for at tilføje parasit-komponenter eller andet ekstra, men kan nøjes med de grundlæggende parametre.

For simple LED_modeller kan vi netop gøre dette og kun justere de elektriske parametre IS og N på modellen. 1. Åben symbol-editoren, 2. søg komponenten frem i biblioteksvinduet, 3. venstreklik på de ønskede symbol, 4. højreklik og vælg Symbolegenskaber, 5. Rediger Simuleringsmodel, 6. Vælg DC sektionen, og 7. Rediger parametrene is og n.

Indstilling af diode-model med IS og N i KiCAD
Indstillingsstedet for den indbyggede D-model, hvor IS og N justeres direkte i symbolet.

8. Portnumre: PCB vs SPICE

Det er her vigtigt at være opmærksom på en vigtig detalje: PCB og simulering er ikke enige om pin-sorteringen for dioder, og KiCAD er opstået som pcb-værktøj - først senere er simulering tilføjet. I PCB-værktøjet bruges typisk 1 = katode (k) og 2 = anode (a), mens den traditionelle SPICE-notation for en diode normalt er skrevet som

Dxxx <a-knudepunkt> <k-knudepunkt>

Det betyder, at den samme diode kan have forskellig pin-ordning i symbol og simulering, hvis vi ikke er bevidste om det.

Dioder og dermed også LED symboler og simuleringer har dette problem. For at få ovenstående til at vende korrekt i simuleringer skal deres Sim.Pins og pin-assignments være korrekte. Her vises hvordan det korrekt er sat op for en standard D-model i KiCAD's SPICE-library:

Standard diode i KiCAD med pin 1 katode og pin 2 anode i PCB
PCB-konvention: pin 1 = katode, pin 2 = anode.
Pin-assignment for standard diode i KiCAD
Pin-tilknytningen skal afstemmes med simuleringens anode/katode-konvention.
Kodevisning for standard diode i KiCAD simulering
Under Code kan man ikke se hvordan det skal vende, men gå til Inspicere -> Simulation, Netlist, her vises fortolkningen og du kan se om det vender korrekt. Husk dog: at højreklikke og opdatere model i schematic hvis der er sket ændringer.

9. Opret SPICE-modeller

Hvis du skal lave mere komplicerede simuleringsmodeller, som ikke kan nøjes med de indbyggede modeller, bliver du nødt til at oprette dine egne SPICE-modeller. I KiCAD er custom spice-modeller typisk gemt i separate .lib-filer, som derefter kan tilknyttes de relevante symboler.

Hvis du vil prøve et færdigt bibliotek med de relevante symboler, kan du downloade det her:

Download kicad_mjelib.zip

LED_Red (symbol, tegning)
   └──── i CommonSimMissing.kicad_sym

LED_RED (SPICE-model, elektrisk model)
   └──── i spice\led_mje.lib

Opret .lib fil, f.eks. spice\led_mje.lib i en teksteditor. En SPICE-diode beskrives med en .model-linje, der bruger diodemodellen D med parametrene IS (mætningsstrøm) og N (ideality factor). Disse to parametre bestemmer sammen med kredsløbets strøm, hvilken fremadspænding modellen giver i simuleringen. Et enkelt sæt modeller for fem LED-farver kan se sådan ud:

* led_mje.lib forenklede modeller for forskellige LED'er
.model LED_Red   D (IS=1e-18 N=1.8)
.model LED_Yellow D (IS=1e-19 N=1.9)
.model LED_Green D (IS=1e-20 N=2.0)
.model LED_Blue  D (IS=1e-22 N=3.2)
.model LED_White D (IS=1e-22 N=3.2)

Vi får dermed fem modeller, fx:

Model Farve Omtrentlig fremadspænding ved moderat strøm
LED_Red Rød ca. 1,8–2,0 V
LED_Yellow Gul ca. 2,0–2,2 V
LED_Green Grøn ca. 2,0–2,3 V
LED_Blue Blå ca. 2,8–3,2 V
LED_White Hvid ca. 2,8–3,2 V
Bemærk: Værdierne ovenfor skal betragtes som eksempler på modeller for de forskellige farver, ikke som en påstand om, at alle LED'er i den pågældende farve har samme fremadspænding. Brug fabrikantens model hvis du vil have større præcision.

10. Hold stier portable

Symbol og SPICE-model knyttes sammen med en filsti. For at stien virker på alle computere, bruges en miljøvariabel i stedet for en hardcodet, brugerspecifik sti.

Opret variablen KICAD_MJELIB under Preferences → Configure Paths..., og lad den pege på den kicadlib-mappe, der opstår, når brugeren udpakker kicad_mjelib.zip:

Configure Paths dialog i KiCAD
Preferences → Configure Paths...
Ny miljøvariabel KICAD_MJELIB oprettet i Configure Paths
Opret miljøvariablen KICAD_MJELIB, som peger på kicadlib-mappen.
KICAD_MJELIB = C:\Users\ditbrugernavn\...\kicadlib

Stier til symbolbibliotek og SPICE-model angives derefter som:

${KICAD_MJELIB}/symbols/CommonSimMissing.kicad_sym
${KICAD_MJELIB}/spice/led_mje.lib

11. Tilknyt symboler til SPICE-modeller

Nu hvor ${KICAD_MJELIB} peger på kicadlib-mappen, kan symbolet LED_Red knyttes til modellen LED_Red i led_mje.lib uden at hardcode en brugerspecifik sti.

Åbn Symboleditoren, vælg symbolet, og højreklik for at åbne Symbolegenskaber.

Højreklik på symbol og vælg Symbolegenskaber
Højreklik på symbolet og vælg Symbolegenskaber.

I Symbolegenskaber vælges Rediger simuleringsmodel....

Rediger simuleringsmodel i Symbolegenskaber
Vælg Rediger simuleringsmodel i Symbolegenskaber.

Vælg diodetypen, angiv stien til ${KICAD_MJELIB}/spice/led_mje.lib og vælg modelnavnet LED_Red i filen. Gentag for de øvrige farver, så hvert symbol peger på sin egen linje i filen.

Test: Byg et lille kredsløb med en VDC-kilde, en modstand og fx LED_Red, og kør en DC-driftspunktssimulering (se vejledningen om DC-simulering). Hvis spændingen over LED'en ligger tæt på tabellens værdi, er modellen korrekt tilknyttet.