[b]
- Johdanto
- Projektin luominen
- Piirikaavion luominen (EESchema)
3.1 Piirikaavion piirtäminen
3.2 Komponenttien lisääminen
3.3 Komponenttien luonti
3.4 Labelit ja väylät
3.5 Kytkennän loppusilaukset
[/b]
1. Johdanto
Edellisessä artikkelissani esittelin ilmaista elektroniikan simulaatio-ohjelmaa nimeltä LTSpice. Tässä artikkelissa tutustutaan niin ikään ilmaiseen (open source) piirilevyn suunnitteluympäristöön nimeltä KICAD. Tarkoituksenani on esitellä ohjelman käyttäminen niin yksiselitteisesti, että juuri elektroniikkaharrastuksen aloittanutkin pysyy kärryillä. Anteeksi siis, jos sinusta tuntuu, että selitän itsestään selvät asiat liian tarkasti.
Itse olen nyt noin viikon käyttänyt kyseistä ohjelmaa ja kokemukset ovat positiiviset. Koska itsekin vasta opettelen tämän ohjelmiston käyttämistä, niin palaute on suotavaa, varsinkin jos palautteen antajalla on hyviä vinkkejä kyseisen ohjelman suhteen. Muokkaan artikkelia sitten sitä mukaa, kun hyviä korjausehdotuksia tulee.
Omasta mielestä tämä kyllä haastaa Eaglen harrastelijapiireissä. Hirveästi en kyllä ole Eaglea käyttänyt, mutta sen pienen kokemuksen pohjalta päädyin tähän päätelmään. Itse päädyin tätä ohjelmaa käyttämään, koska osa projekteistani on kaupallisia. En halua ostaa kalliita lisenssejä suunnitteluohjelmiin (eagle 996 $, proteus 1625 $) ja ilman lisenssiä ohjelman käyttäminen on moraalisesti väärin.
Tämä softa asentuu niin Windowsiin kuin Linuxiinkin ja sen voi ladata täältä. Jokainen vähän tietokonetta käyttänyt osaa ohjelman asentaa, joten siitä ei sen enempää.
2. Projektin luominen
Käynnistä KICAD. Ensimmäinen ikkuna, joka avautuu on ns. project manager -ikkuna, jonka kautta voit navigoida projekteissasi.
Luo uusi projekti valitsemalla file -> new (ctrl + N). Anna projektillesi nimi ja valitse save. Tässä esimerkissä tehdään pieni serial-in-paraller-out (SIPO) -ohjain RGB-ledeille.
Nyt projektimanagerin vasempaan ikkunaan on tullut RGB-driver -projekti. Valitse oikean puoleisesta ikkunasta Eechema, jolla suunnitellaan kytkentäkaavio.
3. Piirikaavion luominen (Eechema)
3.1 Painikkeet ja pikanäppäimet
Ruutuun hyppäävästä infoikkunasta ei tarvitse välittää. Paina vaan OK. Aloitusruutu näyttää tältä:
Käydään läpi ruudun painikkeet:
vasen laita:
Grid - Näyttää tai piilottaa ruudukon.
Units in Inches - Mittayksiköt tuumiksi.
Units in mm - Mittayksiköt millimetreiksi.
Cursor - Vaihtaa kursorin tyyliä.
Show hidden pins - Näyttää komponenttien piilotetut pinnit.
Draw busses… - tällä pakotetaan viivat joko vaakaan tai pystyyn.
Yläpalkki:
New schematic project - Luo uusi piirikaavioprojekti.
Open schematic project - avaa piirikaavioprojekti.
Save schematic project - Tallenna piirikaavioprojekti.
Page settings - Säädä sivun asetukset (revision, author…).
Library editor - Täällä luodaan uusien komponenttien piirrosmerkit.
Library browser - Tutki komponenttikirjastoja.
Navigate schematic… - Navigoi projektissasi. Näppärä tapa vaihtaa työstettävää sivua.
Cut, Copy, Paste, Undo, Redo - Ei tarvitse selittää.
Print… - Tulosta kytkentäkaavio.
Run Cvpcb - Tällä työkalulla liitetään kytkentäkaavion piirrosmerkki fyysiseen koteloon.
Run pcbnew - Käynnistää PCBNew:n eli layout-suunnitelun.
Zoom in, Zoom out, Redraw, Fit, Find - Ei tarvitse selittää.
Generate Netlist - Tällä generoidaan netlist-tiedosto, joka pitää sisällään jokaisen komponenttien välisen kytkennän.
Annonate schematic - Tällä numeroidaan komponenttien referenssinumerot (C1, C2, C3 jne.)
Perform electric… - Tarkista kytkentäsi sähköisten virheiden varalta (esim. GND ja VCC on oikosulussa)
Generate BOM - Luo BOM-tiedosto (bill of material), eli listaa kaikki komponentit tiedostoon.
Back annonate… - Tekee jotain, mistä ei alussa ei varmaan ole mitään hyötyä.
Oikea laita:
Cursor - Poista nykyinen työkalu käytöstä (ESC)
Ascend or… - ???
Place component - Lisää komponentti (A)
Place power - Lisää jännitelinja §
Place wire - Kytke komponentteja johdolla (W)
Place bus - Kytke komponentteja väylän avulla (B)
Place wire to bus entry - Liitos johdosta väylään (Z)
Place bus to bus entry - Liitos väylästä väylään (/)
Place NC flag - Aseta ei-kytketty merkki komponentin pinniin (Q)
Place local label - Nimeä johto (nimetyt pinnit ovat kytketty toisiinsa, vaikka fyysistä johtoa näiden välillä ei olisikaan) (L)
Local tarkoittaa sitä, että nimetyt johdot/pinnit ovat voimassa vaan kyseisellä sivulla.
Place Global label - Sama kuin edellinen, mutta nimeämiset ovat voimassa kaikilla sivuilla (koko hierarkiassa) (CTRL + L)
Place junction - kytke kaksi risteävää johtoa toisiinsa (J)
Place hierarcial label - ???
Create hierarcial sheet - Tällä luodaan lisää sivuja projektiin
Place hierarcial pin - ???
Place hierarcial pin in sheet - ???
Place graphic lines - Piirrä viiva
Place graphic text - Kirjoita tekstiä (kommentteja yms.)
Delete items - Poista komponentteja yms.
Suosittelen opettelemaan nuo pikanäppäimet. Nopeuttaa huomattavasti suunnittelua. Sivulla navigointiin suosittelen hiiren rullalla liikkumista. Eli hiiren rulla toimii zoomina ja aina kun zoomataan, niin zoomauksen keskipiste on hiiren kursorin kohdalla. Tämän jälkeen kursori menee automaattisesti ruudun keskelle. Tämä sama tapa on käytössä proteuksessa ja omasta mielestä erittäinkin toimiva systeemi.
3.1 Piirikaavion piirtäminen
Aloitetaan piirtäminen siitä, että luodaan sivut. Tämä voi kuulostaa vähän hölmöltä, mutta KICADissa sivut ovat ikäänkuin pieniä alikomponentteja, johon piirretään kyseisen sivun kytkentä. Toki tätä ei tarvitse tehdä, jos tietää kytkennän olevan pieni (mahtuu yhdelle sivulle), kuten tämäkin. Kuitenkin tässä esimerkissä luomme kytkennän useammalle sivulle harjoituksen vuoksi. Valitse siis oikeasta reunasta Place hierarcial sheet (S) ja piirrä kaksi neliötä etusivulle eli root-sivulle. Anna sivuille nimet RGB-power ja RGB-sipo.
Nyt etusivullasi pitäisi olla ikkunat molemmille sivuille. Lisäksi ylälaidan Navigate schematic -napin alle on tullut uudet sivut. Voi mennä sivuille tuplaklikkaamalla navigaattorin nappeja tai root-sivun ikkunoita.
Takaisin root-sivulle pääsee kun valitsee hiiren oikean -> Leave sheet. Huomaa, että yläpalkissa näkyy sivun nimi.
Navigoi RGB-power -sivulle. Siirrä hiiren kursori sivun keskiosaan ja paina A (eli lisätään komponentti).
Valitse Select by browser ja valitse regul-kirjastosta 7805 ja paina insert in schematic.
Samalla tavalla lisää regulaattorille kondensaattorit (device-kirjasto -> C), suojadiodi (device -> DIODE), vastus (device -> R), LEDi (device -> LED) ja virtaliitin (conn -> conn_2). Komponenttien kiertäminen tapahtuu R-näppäimellä ja flippaaminen X- ja Y-näppäimellä (riippuu kumman akselin ympäri flippaa). Komponenttien liikuttaminen tapahtuu M-näppäimellä, poistaminen deletellä raahaaminen (eli kytketyt johdot eivät katkea) G-näppäimellä ja kopioiminen C-näppäimellä. Nämä kaikki löytyy myös, kun painaa hiiren oikealla komponentin päälle.
Nyt kytkennän pitäisi näyttää tältä:
Liitetään komponentit toisiinsa johdoilla, eli valitse W. Nyt huomaat ärsyttävyyden, eli johtoa ruvetaan vetämään siitä kohdasta jossa kursori on. ESC:iä painamalla voi kuitenkin lopettaa johdon vetämisen (johto-työkalu on edelleen kuitenkin käytössä).
Lisätään virtalinjat, eli valitse P -> List all.
Valitse sieltä +5V, lisää se kytkentäkaavioon ja sitten valitset GND:n. Kytke virtalinjat. Itseäni vähän ärsyttää se, että valittavissa olevista virtalinjoista ei löydy sitä suomalaisittain tuttua GND-merkkiä (kolme viivaa päällekäin), mutta ehkä sen voi tehdä sinne itse tai sitten en vain osaa etsiä.
Seuraavaksi annetaan komponenteille arvot/nimet. Siirrä hiiren kursori diodin päälle ja paina E.
Kirjoita “value” kohtaan 1N4007 ja valitse OK. Nimeä muutkin komponentit seuraavasti. Voit myös suoraan muuttaa komponentin arvoa/nimeä siirtämällä kursori muutettavan tiedon päälle ja painamalla E (esim. kondensaattorissa siirrä hiiri C:n päälle ja paina E).
Nyt RGB-Power sivu on piirretty valmiiksi. Navigoi takaisin root-sivulle ja edelleen RGB-sipo sivulle (tai suoraan yläpalkin navigate napin alta). Luodaan pari uutta komponenttia. Komponentit ovat BU2090F ja 67-23SDRSYGUBC/TR8.
3.2 Komponentin luominen
Valitse yläpalkista Library editor.
Käydään taas napit läpi:
Yläpalkki:
Save current library to disk - Tallentaa auki olevan työkirjaston
Select working library - Valitse komponenttikirjasto, jossa muokkaat tai johon lisäät komponentteja.
Delete component… - Poista komponentteja kirjastosta
Create new… - Luo uusi komponentti
Load component… - Tuo kirjastosta joku vanha komponentti muokattavaksi.
Create new component… - Luo uusi komponentti jo piirretystä kuvasta.
Update component… - Päivitä komponentti kirjastoon.
Import component - Tuo komponentti jostain??
Export component - Vie komponentti jonnekin??
Save current… - Tallenna komponentti uuteen kirjastoon
Undo, Redo…
Edit component… - Muokkaa komponentin omia tietoja
Loput onkin yläpalkista aika turhia. Tai ainakaan itse en ole löytänyt mitään järkevää käyttöä niille.
Oikea laita:
Cursor - Ota nykyinen työkalu pois käytöstä (ESC)
Add pins… - Lisää pinnejä
Add text… - Lisää tekstiä
Add rectangles… - Piirrä neliö
Add circles… - Piirrä ympyrä
Add arcs… - Piirrä kaarevia viivoja
Add lines… - Piirrä viivoja
Move part anchor… - Siirrä komponentin ‘ankkuria’
Import… - Tuo piiroksia
Export… - Vie piirros
Delete… - Poista juttuja
Aloitetaan uuden komponentin luominen. Valitse yläpalkista Create a new component.
Luodaan ensin SIPO-piiri BU2090F. Annetaan komponentin nimeksi piirin tyyppi. Referenssimerkki voi olla joko U tai IC. Itse valitsen IC tässä esimerkissä. Muihin asetuksiin ei tarvitse tässä välissä koskea.
/////// KOMPONENTIN NIMESSÄ EI SAA OLLA AINAKAAN VÄLILYÖNTIÄ ////////
Kun Ok:ta on painettu, tulee komponentin nimi ja referenssi origoon. Siirrä ne pois jonnekin sivummalle. Komponentin luominen on (itsellä ainakin) helpompi suunnitella origosta käsin.
Aloitetaan lisäämällä BU2090F:n 12 ulostuloa. Valitse oikeasta laidasta add pins ja klikkaa (X=0,500 Y=-1,200) koordinaattiin (Miksi muuten Y-akselin arvo kasvaa, kun liikutaan alaspäin???). Kursorin koordinaatin näkee muuten ikkunan alareunasta. Anna pinnille seuraavat tiedot:
Pin name: Q0
Pin number: 4
Orientation: Left
Length: 0,100
Electrical type: Output
Muut voi jättää oletusarvoihinsa.
Lisää loput ulostulopinnit samalla tavalla Q11:sta asti (pinni numerot menevät 15:sta asti) ja lisää seuraava pinni aina 0,1 tuumaa alaspäin (eli Y-kasvaa 0,1 tuumaa).
Seuraavaksi lisätään Data- ja kello-pinni. Pinnien tiedot ovat seuraavat:
Pin name: DATA
Pin Number: 2
Orientation: Right
Electrical type: Input
Pin Name: CLOCK
Pin Number: 3
Orientation: Right
Electrical type: Input
Laita Data-pinni kohtaan x:-0,2 y:-1,1 ja kello-pinni 0,1 tuumaa alaspäin. Lopuksi lisätään käyttöjännitelinjat. Näiden pinnien tiedot ovat:
Pin name: VCC
Pin Number: 16
Orientation: Right
Electrical type: Power In
Pin name: GND
Pin Number: 1
Orientation: Right
Electrical type: Power output
Laita Vcc-pinni kohtaan x= -0,2 ja Y= -0,5 ja GND-pinni tästä 0,5 tuumaa alaspäin. Lopuksi piirretään piirrosmerkin runko (neliö) siten, että pinnien nimet jäävät neliön sisään (vasen yläkulma: x= -0,1 ja Y= -1,2 Oikea alakulma: x= 0,4 ja y= -0,2). Siirrä piirin tekstit (IC? ja BU2090F) piirin viereen. IC yläpuolelle ja BU2090F alapuolelle. Nyt siirrä hiiren kursori neliön reunan päälle ja paina E (tämä ei välillä toimi. Jos neliön editointi-ikkuna ei aukea, niin zoomaa ensin sisään ja ulos rullalla, niin sitten pitäisi toimia). Valitse fill background täppä ja paina OK
Nyt ensimmäinen oma komponentti on valmis ja sen pitäisi näyttää tältä. Voit vielä siirtää komponentin keskikohdan origoon, jos haluat, mutta tällä ei ole merkitystä. Onhan se kivemman näköinen, kun se on symmetrisesti. Siirtäminen tapahtuu siten, että ‘maalaat’ koko komponentin yli ja siirrät komponentin paikoilleen.
Tallennetaan komponentti uuteen kirjastoon (save current component to new library). Kirjasto kannattaa tallentaa sinne, missä on KiCadin muutkin kirjastot eli …/KiCad/share/library/. Kirjaston nimeksi voit antaa esim. UserComponents tms., mutta tässä esimerkissä annan kirjastolle nimeksi TutorialComponents. Valitse Save.
Seuraava infoikkuna kannattaa lukea tarkkaan. Eli nyt luotu kirjasto ei ole käytettävissä, ennen kuin se on ladattu käyttöön Eescheman puolelta. Mennään siis lataamaan uusi kirjasto käyttöön. Sammuta library editor raksista ja aukaise Eeschema. Navigoi valikkopalkista Preferences -> library. Valitse Add ja etsi uusi kirjasto. Lisää tämä kirjasto ja paina OK. Tallenna projektin asetukset.
Nyt voimme ottaa juuri luodun komponentin käyttöön RGB-sipo sivulla. Valitse A (lisää komponentti). Kirjoita nimeen BU2090F ja valitse OK. Lisää kytkentään jännitelinjat ja 2-napainen liitin. Kytke liitin data- ja kellopinneihin.
3.4 Labelit ja väylät
Seuraavaksi tutustutaan labeleihin, eli niihin johdottomiin kytkentöihin. Kuten aikasemmin mainitsin, local label:n avulla voidaan kytkeä samalla sivulla olevia pinnejä/johtoja toisiinsa. Silloin jos halutaan, esim. haluaisin RGB-power sivulta kytkeä jonkun johdon/pinnin RGB-sipu-sivulle, pitää käyttää global label:ia.
Luodaan tässä välissä tuo RGB-ledi library editorin avulla. Eli siirry komponentti editoriin, valitse työkirjastoksi (select working library) aikaisemmin tekemäsi kirjasto (minulla TutorialComponents) ja paina create new component. Anna komponentille nimeksi RGB-LED ja referenssiksi D. Valitse yläpalkista edit component properties ja ota ruksi pois kohdasta Pin name inside. Luo neljä pinniä seuraavilla tiedoilla:
Pin name: A
Pin number: 1
Orientation: Down
Electrical type: Passive
Pin name: R
Pin number: 2
Orientation: Up
Electrical type: Passive
Pin name: G
Pin number: 3
Orientation: Up
Electrical type: Passive
Pin name: B
Pin number: 4
Orientation: Up
Electrical type: Passive
Piirrä komponentti, tallenna se ja palaa takaisin eeschema:n puolelle. Tämä on oma näkemykseni RGB-ledistä.
Lisää kytkentäkaavioon neljä RGB-lediä vierekkäin. Kytketään ensimmäinen RGB-ledi normaalilla johdolla lähtöihin Q1-Q3. Seuraavaksi vedä lyhyet johdot lähdöistä Q4-Q12 suoraan oikealle (0,2 tuumaa riittää). Nyt valitse local label -työkalu (L) oikeasta palkista ja klikkaa lähdön Q4 johdon päähän. Kirjoita teksti LED2-R ja paina OK. Kirjoita lähdölle Q5 teksti LED2-G ja lähdölle Q6 LED2-B.
Seuraavaksi valitse global label -työkalu (CTRL+ L) ja nimeä kolme seuraavaa lähtöä LED3-R, LED3-G ja LED3-B:ksi. Global labelin ominaisuuksissa valitse orientation = left, Shape = output ja size = 0,05.
Jäljellä on enään kolme lähtöä (Q10-Q12). Näiden pinnien päihin laita wire to bus -liitos. Nimeä kyseiset johdot local label:lla LED4-R, LED4-G ja LED4-B:ksi.
Nyt kytkennän pitäisi näyttää tältä:
Vedä johdot RGB-ledien katodeista suoraan alaspäin (taas noin 0,2 tuumaa). Toisen ledin johtojen päät nimeä local labelilla saman nimisiksi, kuin lähdöt Q4-Q6 on nimetty. Huomaa, että label properties:ssa voit kääntää tekstin myös pystyyn.
Kolmannen ledin katodit nimeät Global labelilla samoin kuten lähdöt Q7-Q9 on nimetty. Säädä ominaisuuksista seuraavasti: Shape = input ja Orientation = Down.
Neljännen ledin jalat nimeät taas local labelilla kuten lähdöt Q10-Q12 ja lisää wire to bus -liitokset. Nyt liitä lähdöt Q10-12 bus-työkalulla lediin neljä. Itse olen tottunut, että väylässä ei ole suoria kulmia. Pelkästään 45 asteen kulmia. Tämä on mahdollista kun täppää vasemmasta laidasta Draw wires and busses… -kohdan pois päältä.
Nyt kytkennän pitäisi näyttää tältä:
Koska BU2090F:än on sisään rakennettu 25 mA:n virtarajoitus, ei ledi tarvitse etuvastuksia. Tästä syystä voimme kytkeä ledien anodit suoraan viiden voltin linjaan.
3.5 Kytkennän loppusilaukset
Kytkentämme on nyt valmis. Enään ei tarvitse kuin laittaa komponenttien referenssinumerot kohdalleen. Tämä on helppo tehdäAnnonate schematic työkalulla. Valitse
kyseinen työkalu yläpalkista. Asetuksia ei tarvitse muuttaa, joten valitse Annonation. Nyt komponenteilla on referenssiarvot. Nyt voimme testata kytkennän electric rule check -työkalun avulla (yläpalkista).Valitsetest ERC. Jos jotain virheitä olisi tullut, niin ne lukisi nyt ERC-ikkunan alaosassa. Itsellä ei tullut virheitä, joten homman pitäisi olla teilläkin OK. Valitse close.
Olet varmaan huomannut, että sivun oikeassa alalaidassa on ruudukko, joissa ruudut on nimetty mm. Title tai Revision. Seuraavaksi asetetaan sinne oikeat tekstit. Palaa Root-sivulle ja valitse yläpalkista page settings. Täällä voit muuttaa sivujen kokoa, versiota yms. Export to other sheets ruksilla saat tiedot siirrettyä ainakin hierarkiassa alemmille sivuille. Eli kun Root-sivulla säädetään versioksi 1.0 ja laitetaan ruksi export to… , niin silloin ainakin molemmille sivuille tulee samat merkinnät.
Tutkaistaan vielä lopuksi, kuinka saadaan ulostettua BOM eli BillOfMaterials eli komponenttilista. Koska BOM tulee tekstitiedostoon, pitää sinun määritellä default tekstieditori. Mene projekti manageriin (se ensimmäinen ikkuna, mikä aukeaa, kun KiCad käynnistetään). Valitse Preferences -> Text editor. Määritä siihen se tekstieditori, mitä haluat käyttää. Nyt voimme mennä luomaan BOMin. Mene takaisin Eeschemaan ja valitse yläpalkista Generate bill of material and/or cross references.
Voit muutella asetuksia ja tutkia, miten BOM-tiedosto muuttuu. Vakioasetuksilla tiedostosta tulee seuraavanlainen:
Tallenna lopuksi työsi.
Toivottavasti tästä on jollekin hyötyä. Tämä osa keskittyi piirikaavion luomiseen. Seuraavassa osassa piirretään layout (eli varsinainen piirilevy) tässä esimerkissä tehdyn kytkentäkaavion pohjalta ja tutustutaan, kuinka tuo kytkentäkaavio siirtyy PCBnew-ohjelmaan. Antakaa palautetta ja kuten aikasemmin sanoin, olen itse käyttänyt tätä ohjelmaa noin viikon, joten omatkin taidot tätä ohjelmaa kohtaan ovat hyvin alkeelliset.
Tomi Leinonen









