Kicad ongelmia ja ratkaisuja

Olen nyt viime päivinä opetellut Kicadin käyttöä mm. noiden lukija-artikkeleiden pohjalta, koska Eaglen rajoitukset tulevat vastaan nykyisessä projektissa.

Nyt on sellainen ongelma tai ihmetys, että eikö kicadissa voi jakaa komponenttia useaan kokonaan erilaiseen symboliin kuten eaglessa? Pikaisella googlettelulla löysin vain yhden mailing list threadin, jossa oli yksi FPGA jaettu useaan osaan.

Elikkä sen verran saan aikaan, että kun tekee library editorissa komponenttia, niin sille voi määritellä number of units:n avulla kuinka moneen osaan sen haluaa jakaa. Mutta tuo näyttää olevan enimmäkseen tarkoitettu mm. loogisten porttien tapaukseen, jossa nuo osat ovat identtisiä.

Parin tunnin ihmettelyn jälkeen huomasin tuon editorin palkissa olevan napin “edit pins part per part”, jolla sain vihdoin pinnit muokattua erikseen joka osalle. Mutta kaikki tekstit, ääriviivat ja nimet ovat silti kaikille samat? Onko tuon ohi jotain keinoa? Eli haluaisin jakaa mm. mikrokontrollerit ja FPGA:t osiin, jolloin esim. power pinnejä on paljon vähemmän kuin i/o-pinnejä, jolloin haluaisin komponentin ääriviivat sen mukaan. Ei taida onnistua?

Onnistuu, mutta en muista juuri nyt miten :smiley: Taistelin itsekin tuon kanssa kerran jonkin tovin ja ongelma selvisi. Täytyy ehkä illalla katsoa jos ehdin, että mitenkäs se menikään…

Kokeilehan tätä nappulaa, josko auttaisi:
kicad-vinkki.png

Kappas. Joo se auttoi komponentin ääriviivaan, kiitoksia.
Mutta edelleen tuo nimi ja arvo on jokaisessa “samassa kohtaa”. Ja niiden positio määräytyy tuon koko komponentin field propertieseista, joten tuolle ei taida olla mitään tehtävissä…?

Tuntuu tosiaan tässä Kicadissa olevan moni asia hankalampi löytää ainakin ensimmäistä kertaa, ja käytettävyydessä olisi paikoitellen viilaamista. Tässä mun opettelussa tähän mennessä tämä komponenttien jakaminen osiin kuitenkin ensimmäinen varsinaisesti hankalampi tai puutteellinen juttu verrattuna Eagleen.

Osa jutuista on toteutte eri tavalla. Voipi olla huonomminkin kuin Eaglessa :blush: Niin moni asia on kuitenkin paremmin, että en kyllä harkitsisikaan takaisin vaihtamista :sunglasses:

Edelliseen viestiin lisäyksenä, että saahan nuo nimet ja arvot onneksi skemassa sitten raahattua sopivaan kohtaan.

Mutta nyt uusi ongelma: Miten saan moduuliin eli koteloon lisättyä reikiä esim kohdistustapeille (eli siis ei pad vaan kuparoimaton reikä)? En löytänyt mistään taaskaan nappulaa tai työkalua reikien luonnille…

Oisko levyn reuna kerrokselle piirtäen? Jos isompaa reikää tahdot.

Kokeilkaapa joskus OrCADia. Päähän siinä levisi. Sen jälkeen tuntui helpoimmalta käsin kirjoittaa gEDAlle ja PCB:lle levyjä. Ilman siis suunnittelu ohjelmaa. Pikkuhiljaa nekin kyllä tuli matkaan.

Tein ne nyt lisäämällä pyöreän padin, jossa on yhtä suuri poraus kuin itse padin koko. Purkka tapa ja siihen saattaa toleransseista riippuen kai tulla läpikuparointiakin valmistuksessa…

Seuraava ongelma: Mitenkä nuo power symbolit pitäis tehdä? Olen nyt tehny kaikki komponentit ja moduulit ite ja koonnu ne omaan kirjastoon, mukaanlukien power symbolit. Olen lisäilly power symbolit ihan komponentteina skemaan, mutta se ei nyt oikein toimi tolleen. Komponenttia luodessa oon kyllä ruksinu Power symbol ruudun. Siltikään se ei nyt yhdistä samaan net:iin esim. kaikkia paikkoja joissa on +3.3V symboli. Eli mitä sillä pitäisi olla referenssinä ja arvona, tai missähän tää kusee?

Yritin aiemmin tehdä yhden skeman/leiskan Kicadilla, mutta jostain syystä en saanut tiettyjä nettejä yhdistymään oikein. En tiedä johtuiko tämä siitä, että vaihtelin välillä windows ja linux-kicadin välillä. En jäänyt pitkäksi aikaa debuggailemaan vaan piirsin PADSilla :unamused:

Olisikohan ongelmana voinut ollut globaalien ja paikallisten labeleiden sekamelska? :wink: Hierarkiset sivut ja niiden pinniulos/sisääntulot voivat olla ensimmäisellä kerralla vähän hämäriä…

En ole aikaisemmin käyttänyt mitään piirilevyn suunnitteluohjelmia, eikä minulla ole minkään näköistä koulutusta aiheeseen. Sulautetut järjestelmät kuitenkin kiinnostavat ja haluaisin piirtää omat levyni hieman fiksummin kuin Photoshopilla, mitä olen tähän saakka käyttänyt.

Asensin KiCadin ja pääsinkin hyvin alkuun Tomi Leinosen lukija-artikkeleilla, sekä muutamalla youtube-videolla. Omien piirien luonti kuitenkin hieman tökkii. Kaipaan SN754410 H-siltaa ja lähdin sellaista piirtämään innokkaasti sellaisena kuin se on luonnossa ja törmäsin ongelmiin johtimien kanssa. Eli piirikaaviossa johtimet menisivät ristiin rastiin jos pinnit ovat piiriin nähden totuudenmukaisilla paikoilla.

Millaisia perusperiaatteita piirin piirtämisessä on? Eli mille sivulle kannattaa mitkäkin pinnit sijoittaa?

Miten siis esim. tämä SN754410 kannattaisi piirtää?
sn754410.gif
Tämä ensimmäinen yritykseni ei oikein ollut toimiva :slight_smile:
sn754410_oma.gif

Piuhat menee aina jostain ristiin mutta tuota koteloa voi yrittää piirtää helposti ymmärrettäväksi esm. näin: vcc:t yläpuolelle laatikkoa ja gnd:t alaosaan, siis siten että pinnit osoittaa ylös ja alaspäin. Portit voi olla sitten 1a 2a 3a 4a vasemmalla ja 1y 2y 3y 4y oikealla , ykköset ylös ja neloset alas ja vaakasuunnassaa samalle tasolle , en pinnit sitten miten parhaiten passaa esm. 1a:n päälle niin ovat lähellä vcc:tä tai jopa vcc:n viereen.

Itse piirrän skemasymbolit usein niin kuin ne on piirretty piirin datalehdissäkin. Joskus sellaisina kuin ne fyysisestikin ovat, joskus datalehden mukaan ja joskus oman mielen mukaan. Ei ole väärää tapaa, kunhan siitä selkoa saa :smiley:

Eli olen vasta aloittava opiskelija tarvetta olisi mittailla yleismittarin tapaan tiettyjä kohtia piiristä? Tarjoaako KiCad tuollaista "yleismittari mahdollisuutta lainkaan?

KiCad on piirilevysuunnitteluohjelmisto. Siinä ei ole minkäänlaista simulointia…

Joo. Simulointiin QUCS, spice tai linearin tuote. Spice saattaisi olla näppärin sinänsä, koska pienehköllä vaivalla saisi luotua kicadin exporttaamasta netlististä simulaatioon pohjapakan, josta sitten editoida ja katsoa mitä haluaa. (sivu 67 referenssimanuaali) Noista kaikki syönevät jotenkin spicen netlistaa.

kysyjä vaan ei tainnut ihan tätä toivoa :frowning:

Täytyypä nyt vastailla tähän vanhaan juttuun eli ongelma ei ollut hierarkiset sheetit vaan joku muu; epäilen edelleen swappailua versioiden välillä. No mutta yritän nyt uudelleen ja tällä hetkellä on pari levyä gerbereihin asti tulostettu onnistuneesti (toki varsinainen onnistuminen selviää sitten kun tilaan levyt).

Muttamutta…ps tai pdf -tulostus aiheuttaa harmaita hiuksia. Tämä ei sinänsä ole muuten ongelma, kuin että jos haluaa tehdä hyvää jälkeä, niin dokumentaation pitää olla kunnossa. Olen koittanut kaiken: ps-plot antaa kyllä oikean näköisen dokkarin, mutta kun koitan tulostaa tästä pdf:n tai tulostaa duunissa suoraan winkkarikoneella GV:n kautta, niin skemasta näkyy vain noin 1/4. Jos koitan tulostaa suoraan tiedostoksi pdf:n, niin kaikki teksti ja muut muodot on pahasti “säröytynyt”.

Onkohan kukaan muu törmännyt tähän?

EDIT: homma ratkesi näin: tehdään postscript-file → avataan GV:llä → convert pdf ja nyt näkyy oikein \o/

Samaan hengenvetoon voisi kysyä, että onko Kicadilla mahdollista tehdä automaattinen pituustäsmäys vetojen välillä? Hieman jo googletin ja kaiketi joku Microwave-tool löytyy (beta). LVDS-signaaleja pitäisi piirtää ja parien olisi hyvä olla samanmittaisia.

Mitä liitintä ihmiset käyttävät leiskassa piikkiriman kuvaamiseen?

Itse käytin sellaista, kuin SIL-14, mutta sillä tuli liian pienet reiät piikkirimalle. Vai voiko noita reikien ja padien kokoja muuttaa jotenkin?

Joo ne reiät kannattaa tarkistella. Itse muutin jokaisesta käyttämästäni piikkirima/IDC-liittimestä reiät ja kaulukset sopivammiksi.

  • Avaa PCBnew leiskaeditori
  • Avaa modulieditor
  • Valitse kirjasto ja avaa editoitava komponentti
  • Muuta ensin yhden padin asetukset sopiviksi tuplaklikkaamalla padia → OK
  • Klikkaa oikealle hiiren napilla juuri modattua padia ja valitse “Export new pad settings” (tms., en nyt saa duunissa tarkistettua tuota tarkkaa formaattia Kicadista)
  • Käy läpi loput padit klikkaamalla hiiren oikealla napilla ja valitsemalla “New pad settings”. Padien pitäisi nyt muuttua samanlaisiksi kuin se ensimmäinen manuaalisesti editoitu pad.
  • Tallenna kirjasto ja komponentti joko vanhan päälle tai uudella nimellä