Piirilevyn suunnittelu KiCad-ohjelmistolla - osa 2

Tämä on suoraa jatkoa artikkelin ensimmäiselle osalle, jossa luotiin RGB-Driverin kytkentäkaavio. Aiemman artikkelin pääset lukemaan tästä.

[b]
4. Layoutin suunnittelu
4.1 Komponentin footprintin, decalin tai fyysisen kotelon luominen
4.2 Netlistin generointi ja piirosmerkin ja kotelon yhdistäminen
4.3 Layoutin suunnittelu
5. Piirilevyn Exporttaaminen
5.1 Tulostaminen
5.2 Gerberien luominen
5.3 3D-kuvan exporttaaminen

  1. Layoutin suunnittelu[/b]

Layoutilla tarkoitetaan sitä, miten komponentit sijoitellaan piirilevylle. Yleensä puhutaan ‘leiskasta’.

4.1 Komponentin kotelon (tässä ohjelmassa puhutaan moduleista) luominen

Käynnistä project managerin puolelta PCBnew.

Project manager PCBnew.PNG

Silmille hyppäävästä infoikkunasta ei tarvitse välittää.

Valitse yläpalkista Open module editor. Tämä editori toimii samalla tavalla, kuin Eescheman puolella eli valitse yläpalkista New Module. RGB-ledi on koteloitu PLCC-4 koteloon, joten annetaan referenssiksi PLCC-4. Siirrä tekstit taas sivuun origosta.

Tämän ledin datalehdeltä löytyy komponentin fyysiset mitat. Seuraavat kuvat on otettu suoraan sieltä. Tarvitsemme niitä, kun alamme tekemään koteloa. Koska datalehdellä komponentin mitat ovat milleissä, niin meidänkin kannattaa muuttaa vasemmasta reunasta yksiköiksi millit.

RGB-outline.PNG

RGB-pads.PNG

Luodaan ensin oikean kokoinen pädi komponentille. Valitse yläpalkista Pad properties.

RGB-outline.PNG

Tee seuraavat asetukset:
Pad type: SMD
Pad shape: Rect
Pad size X: 1,80mm
Pad size Y: 0,75mm

Muita asetuksia ei tarvitse muuttaa. Valitse OK.
Säädä ruudukon (Grid) resoluutio 0,05 mm:ksi.

Set Grid.PNG

Lasketaan datalehden pädien sijoittelukuvasta pädien keskipisteiden koordinaatit. Sain seuraavat arvot:

Set Grid.PNG

Itse pidän tuota 0,05 mm:n tarkkuutta riittävänä, joten en sijoittele pädejä y-akselin suunnassa 0,025 mm:n tarkkuudella, vaan asetan pädin Y-akselin suunnassa 0,75 mm:iin. Valitse oikeasta laidasta Add pads -työkalu ja lätki pädit oikeille paikoilleen. Jos pädi menee vähän väärään paikkaan, niin M-pikanäppäimellä voit siirtää pädin kohdalleen. Kannattaa zoomata mahdollisimman lähelle, jotta pädin liikuttaminen on tarkkaa. Nyt komponentin pitäisi näyttää tältä:

RGB-pads.PNG

Seuraavaksi piirretään silkkikerros komponentille. Silkkikerrokselle voidaan piirtää komponentin ulkomitat, jolloin komponentteja sijoiteltaessa emme vahingossakaan laita komponentteja päälekkäin. Kuvasta nähdään, että komponentin koko on ilmoitettu 0,1 mm tarkkuudella, joten voimme vaihtaa ruudukon resoluution siihen.

Valitse oikeasta reunasta Add graphic line/polygon -työkalu ja piirrä ledin ulkomitat.

RGB-pads.PNG

Periaatteessa silkkikerros ei saisi mennä pädien päälle, joten korjataan tilanne. Poista juuri piirretyt pystyviivat ja lisää niiden tilalle lyhyemmät viivat. Voit myös piirtää keskelle pienen ympyrän kuvastamaan lediä. Lisäksi merkkaa oikeaan alanurkkaan pieni merkki katodiksi.

Nimetään seuraavaksi pinnit oikein. Käy Eescheman puolella katsomassa, millä numerolla anodi ja katodit on merkitty.
Anodi = 1
R-katodi = 2
G-katodi = 3
B-katodi = 4

Muutetaan kotelon pinnien numerot nyt siten, vasen alakulma on 1, oikea alakulma on 2, oikea yläkulma on 3 ja vasen yläkulma on 4 (pädin numeron voi vaihtaa siirtämällä kursorin pädin päälle ja painamalla E). Nyt RGB-ledin kotelo on valmis ja sen pitäisi näyttää tältä:

RGB-footprint ready.PNG

Valitse yläpalkista Create new library and save current module. Luo uusi kirjasto omille moduleille ja tallenna se …/KiCad/share/modules/. Itse käytän nimenä TutorialModules. Valitse save. Infoikkuna kertoo, että moduuli on tallennettu uuteen kirjastoon.

Kuten Eeschemankin puolella, uusi kirjasto ei tule automaattisesti käyttöön. Mene siis PCBnew:n puolelle ja valitse ylävalikoista preferences -> library. Valitse Add ja lisää TutorialModules -kirjasto ja paina OK. Tallenna tiedot projekti-tiedostoon. Nyt palaa takaisin Module editoriin ja valitse yläpalkista Select working library. Nyt uusi kirjasto pitäisi näkyä listassa. Valitse se ja tämän jälkeen tallennat modulin vielä uudestaan valitsemalla Save module in working library. Anna nimeksi PLCC-4.

RGB-footprint ready.PNG

Nyt voimme sulkea editorin.

4.2 Netlistin generointi ja piirosmerkin ja kotelon yhdistäminen

Mene Eescheman puolelle ja valitse yläpalkista Generate Netlist.

Set Grid.PNG

Eeschemalla voi varmaan luoda netlist-tiedoston muillekin piirilevysoftille. Meitä kiinnostaa kuitenkin tämä PCBnew, joten välilehdeltä PCBnew valitse Netlist. Tallenna netlist oletusnimellään.

Seuraavaksi kohdennetaan oikea piirrosmerkki oikeaan koteloon. Valitse Eescheman yläpalkista Run Cvpcb. Virheilmoitus ilmestyy, jossa kuitenkin sanotaan lopuksi, että “This is normal if you are opening new netlist file.”, eli ei hätää.

Nyt etsitään oikeat kotelot komponenteille. Kondensaattorit haluan 1206 pintaliitoskotelossa. 1206 on siis kotelon koko tuuman tuhannesosina eli millsseinä (0,012" x 0,006" -> n. 3 mm x 1,5 mm). Tämä kotelo löytyy nimellä SM1206.
RGB-Ledeille laitetaan oma PLCC-4 -kotelo.
Diodin 1N4007 kotelon DO-41.
Ledin koteloksi laitetaan LED-5MM.
BU8090F -piiri on koteloitu SO-16 koteloon. Nyt huomaamme, että SO16 koteloita on useita eri tyyppejä. Valitse yläpalkista PDF:n kuvake (tämä aukaisee footprints.pdf -tiedoston, joka sisältää eri koteloiden kuvat). Sivun 11 yläreunassa on nuo SO16 kotelot. Kokeillaan ensin SO16E-koteloa. Palaa Cvpcb-ikkunaan ja valitse SO16E aktiiviseksi ja valitse yläpalkista View selected footprint.

View selected footprint.PNG

Lataa BU2090F:n datalehti tästä ja tutki komponentin fyysisia mittoja (datalehden sivu 12).

Read netlist.PNG

Etäisyys pädien päästä päähän on 6,2 mm. Nyt mittaa SO16E-kotelon pädien etäisyys.

Project manager PCBnew.PNG

Kun kursorin siirtää pädin yläreunaan, ollaan origosta siirrytty 3,1 mm ylöspäin. Ja koska origo on komponentin keskellä, niin alempien pädien alareuna on myös 3,1 mm origosta, joten pädien kärkien etäisyys on 6,2 mm. Eli SO16E-kotelo on oikea kotelo.

Liittimien koteloiksi valitaan normaali 0,1 tuuman piikkirimaliitin. Se löytyy nimellä PIN_ARRAY_2X1.
Vastukselle laitetaan koteloksi SM1206.
Regulaattori laitetaan TO220-koteloon.

Nyt valitse yläpalkista Save netlist and footprint files.

4.3 Layoutin suunnittelu

Nyt on kaikki tarvittava tehty Eescheman puolella ja pääsemme vihdoin lätkimään komponentit piirilevylle. Siirry PCBnew:n puolelle ja valitse yläpalkista Read netlist. Valitse Browse netlist files ja valitse RGB-driver.net. Valitse Read Current netlist.

Read netlist.PNG

Messages-ikkunaan tulee viestejä “Module [U1]: pad [GND] not found”, eli regulaattorin GND-pinniä ei löydy TO220-kotelosta (TO220-kotelon pädi ovat nimetty numeroilla 1, 2 ja 3). Tästä virheestä päästään eroon luomalla uusi kotelo, jonka pädit nimetään VI, VO ja GND. Valitse Close ja siirry module editoriin.

Valitse yläpalkista Load module from lib. Kirjoita Name-kenttään TO220 ja valitse OK. Muokkaa pädien nimet seuraaviksi:

TO220 modified.PNG

Valitse oma kirjasto (TutorialModules) työkirjastoksi ja tallenna komponentti sinne. Anna nimeksi TO220-REGULATOR. Nyt käy muuttamassa Cvpdb:ssä U1:n kotelo TO220-REGULATOR -koteloksi. Palaa PCBnew ikkunaan.

Valitse yläpalkista Read netlist. Valitse päivitetty netlist-tiedosto ja lue se. Message-ikkunaan tulee nyt seuraava virheilmoitus:

Read netlist.PNG

Tämä ilmoitus kertoo, että piirilevyllä oleva U1:n moduli on TO220 vaikka netlist-tiedostossa se on TO220-REGULATOR. Tämä virhe saadaan poistettua poistamalla U1-komponentti piirilevyltä. Sulje Read netlist -ikkuna. Siirrä kursori U1-modulin päälle ja paina deleteä.

RGB-footprint ready.PNG

Nyt lue netlist uudestaan.

Project manager PCBnew.PNG

Tämän jälkeen päästään sijoittelemaan komponentteja piirilevylle.

Komponentit ovat netlistin lukemisen jälkeen yhdessä kasassa piirilevyalueen vasemmassa ylänurkassa. Kannattaa siirtää koko kasa keskelle suunnitteluluetta. Mitään yhden napin ratkaisua komponenttikasan levittämiseen en löytänyt. Toivottavasti tämä korjataan tulevissa versioissa.

Komponenttien siirtämisen ja asettelun pikanäppäimet:
M (Move) - Eli komponenttin siirtäminen
R (Rotate) - Komponentin pyörittäminen
F (Flip) - Komponentin kääntäminen top-layerilta bottom-layerille tai toisin päin.

Näillä kolmella näppäimellä saa komponentit lätkittyä paikoilleen. Itse sijoittelin ne seuraavasti:

View selected footprint.PNG

Piirilevyn reunojen piirtäminen tapahtuu vasemman laidan Add graphic line or polygon -työkalulla. Reunat pitää piirtää Edge-layerille, joka valitaan yläpalkista.

TO220 modified.PNG

Piirrä neliö, joka kiertää kaikkia komponentteja. Nyt voit mennä ihailemaan tuotostasi 3D-kuvana valitsemalla valikkoriviltä View -> 3D Display.

Ennen kuin päästään vetämään vedot komponenttien välille, on meidän säädettävä suunnittelusäännöt (design rules). Valitse yläpalkista Design Rules -> Design rules.

Design rules nimien merkitykset:
Clearance - Tällä määritetään minimi eristysväli. Jos tilaat piirilevyt vaikka iTeadStudiolta, niin minimi clearance on 0,006 tuumaa. Suosittelen kuitenkin jättämään tämän 0,01 tuumaan (0,254 milliä)
Track Width - Viivan leveys, eli kuinka leveällä kuparijohteella komponentit kytketään toisiinsa.
Via Dia - Vian eli läpiviennin halkaisia.
Via Drill - Vian eli läpiviennin reijän halkaisia.
uVia Dia - Mikrovian eli … halkaisia
uVia Dia Drill - Mikrovian eli … reijän halkaisia.

Välilehdellä Net Classes Editor tee seuraavat asiat.

Valitse Add ja anna uudelle luokalle nimeksi vaikka 0,5mm. Tämän jälkeen muuta luokan arvot, kuten kuvassa. Sitten valitse Membership-laatikon vasemman puolen puolen pudotusvalikkoon 0,5mm. Sitten valitse oikean puolen laatikosta kaikki ja siirrä ne vasemman puolen laatikkoon. Valitse OK.

Nyt vedä komponenttien väliset vedot Add tracks and vias -työkalulla. Design rules -asetukset näkyvät seuraavalla tavalla piirilevyä suunniteltaessa.

RGB-outline.PNG

  1. Tämä viiva kertoo vedon eristevälin
  2. Tämä ympyrä on läpiviennin eristevälin koko
  3. Läpivienti

Vihreä viiva on takapuolen (bottom layer) kupari ja punainen yläpuolen (top layer). Toki nämä värit voidaan muuttaa oikean laidan visibles -palkista. Jos palkki ei näy, niin valitse vasemmasta laidasta Show/hide the layers manager toolbar. Tuolta voi myös piilottaa komponenttien tekstit, jos ne häiritsee.

V-kirjaimella saat vaihdettua nopeasti puolta, jolle haluat vetää vetoja. Lisäksi V:llä saadaan tehtyä läpivienti. Vedä kaikki vedot valmiiksi. Tekstiä saat Add text on copper layers or graphic text -työkalulla oikeasta palkista. Itse kirjoitin levyn nimen, päiväyksen ja tekijän top-layerille. Lisäksi, jos on tilaa, niin liittimen pinnit kannattaa nimetä. Helpottaa tulevaisuuden käyttöä huomattavasti. Oma versioni melkein valmiista piirilevystä näyttää tältä:

Koska piirilevy alkaa olemaan valmis, niin voimme tehdä ns. viimeisen silauksen, eli kuparitäytön. Kuparitäyttöä kannattaa käyttää varsinkin, jos syövytät itse levyjä. Kaikkea kupariahan ei tarvitse piirilevyltä poistaa vaan ainoastaan johtimet pitää eristää toisistaan. Lisäksi täyttökuparia käytetään moniin muihin tarkoituksiin, mutta niistä ei tässä artikkelissa enempää. Valitse oikeasta reunasta Add filled zones -työkalu. Klikkaa työkalulla piirilevyn vasempaan yläkulmaan. Tässä määritellään täytön ominaisuudet. Kannattaa tutkia, miten eri asetukset vaikuttavat täyttöön. Itse valitsin seuraavat asetukset:

Valitse OK. Piirrä neliö piirilevyn reunoja myöten. Täyttö tulee näkymään vasta, kun käyt ns. päivittämässä näkymän. Siirrä kursori piirilevyn reunaan ja paina hiiren oikealla. Mene Zones -> Fill zone. Nyt täyttö aktivoituu piirilevylle. Aina, jos teet jotain muutoksia, sinun pitää tällä tavalla päivittää täyttö.

Lisätään samanlainen täyttö bottom-layerille. Nyt et voi aloittaa uuden täytön piirtämistä nurkasta, koska silloin ohjelma luulee, että haluat siirtää aiemman täytön kulmaa. Siirrä siis kursori kulmapisteestä ohi ja aloita uuden täytön piirtäminen siitä. Ainoa asetus, jota pitää muuttaa on Layer, jonka vaihdat Back -asentoon. Piirrä neliö ja tee uudelleentäyttö. Piirilevymme on valmis

View selected footprint.PNG

5. Piirilevyn Exporttaaminen
5.1 Tulostaminen

Kun levy on valmis, valitse yläpalkista File -> Print (CTRL + P). Määrittele ensin, mitkä kerrokset haluat tulostaa ja kuinka piirilevy skaalataan (jos syövytät levyn, niin skaalaus pitää olla 1:1). Options-laatikon asetukset liittyvät paperin kehykseen. Mirror peilaa piirilevyn vaaka-akselin suhteen. Padien poraukseen suosittelen vahvasti Small mark -vaihtoehtoa (poraaminen on helpompaa pienen merkin ansioista). Väreiksi valitse mustavalkonen ja lopuksi tulosta jokainen kerros omalle sivulleen.

5.2 Gerberien luonti

Valitse File -> Plot. Valitse Plot format -> Gerber. Määritä polku, johon tiedostot tallennetaan. Valitse kerrokset, joista haluat gerber-tiedoston ja määritä asetukset kohdilleen. Lisäksi sinun pitää luoda poraustiedosto, jonka saa tehtyä Generate Drill File -napin alta. Määritä Drill-tiedoston asetukset ja valitse OK. Gerber-tiedostot voit tarkistaa KiCadin sisäänrakennetulla GerbView -työkalulla. Löydät sen project manager -ikkunasta (ns. pääikkuna, josta käynnistetään eri ohjelmat).

5.3 3D-kuvan exporttaaminen

Valitse File -> Export -> VRML. Tämä työkalu luo tiedoston piirilevyn 3D-mallista, jonka voi viedä 3D-mallinnusohjelmaan (jos haluat vaikka suunnitella kotelon tälle piirilevylle). Määritä asetukset ja valitse OK. Ainakin FreeCAD lukee tiedoston hienosti.

TO220 modified.PNG

Tässä oli taas iso paketti piirilevyn suunnittelusta KiCad -ohjelmalla. Toivottavasti joku löytää tästä apua varsinki, jos haluaa päästä eroon kaupallisista ohjelmistoista. Itse olen tyytyväinen tämän ohjelmiston laatuun ja toimivuuteen. Vielä on itselläkin jotkut asiat hakusessa, mutta ne korjaantuu ajan kanssa. Heti kun alkaa oikeat näppäimet löytymään lihasmuistin kautta, niin suunnittelu nopeutuu huomattavasti.

Tomi Leinonen
Read netlist OK.PNG
PCB ready.PNG
PCB ready without zones.PNG
PCB ready 3d.PNG
PCB in FreeCad.PNG
Pad-dimensions.PNG



New Module Name.PNG
Netlist mismatch.PNG
Measuring footprint.PNG

Layout 3D.PNG
Layout 1.PNG
Laout draw edges.PNG
Generate netlist.PNG
Footprint outline.PNG
Design rules in pcb.PNG
Delete U1 Module.PNG
BU2090F case.PNG

tämä onnistuu aktivoimalla mode footprint… nappula(3:s oikealta) ja hiiren kakkosnapin glob move and place valikosta sopivalla valinnalla.
kicad2.jpg

Onko tuo nyt sitten tuhannesosia vai sadasosia? Mielestäni 0,012" on 0,3048 mm.

1206 (3216 metric): 3.2 × 1.6 mm (0.13 × 0.063 in) kertoo lontoonkielinen wikipedia. 0805 kokoa tulee joskus juoteltua käsipelillä, niin olen kyllä taipuvainen uskomaan tätä pedian antamaa “suurempaa kokoarviota” :slight_smile: