Mikrokontrolleriprojektit (Atmel AVR)

Satunnaisia kyhäelmiä.


AVR-kello

2014-05-03 18:33:53

ATmega328P-prosessorin ympärille rakennettu kello, jonka näyttönä on 7-segmenttinäyttö, joka on otettu hyötykäyttöön vanhasta hajonneesta digiboksista. Projektille on teetetty piirilevy joka on tilattu kiinanmaalta, pienellä levylle ei paljon hintaa kertynyt. Piirilevyn suunnittelussa on käytetty ilmaista KiCad-ohjelmaa. Se osoittautui melko helppokäyttöiseksi, sillä minkäänlaista käyttökokemusta en aiemmin ohjelmasta omannut, mutta niin vain pienellä harjoittelulla sen avulla levyt syntyi ja gerber-tiedostot lähti valmistajalle. Pieniä suunniteluvirheitä tuli muutama, kuten virransyötön suotokondensaattorit loistavat poissaolollaan, maatasojen läpärit unohtui sekä osasijoittelu on paikoin vähän ahdas. Mutta näistä otetaan ehkä opiksi ja seuraavalla kerralla tulee sitten priimaa kertaheitolla (ja varmasti).

Huonolaatuinen kuva kellosta
Valitettavan huonolaatuinen kuva kellosta.
Koottu levy
Osasijoittelussa on vähän parantelun varaa, prosessorin ohjelmointiliittimen joutui juottamaan tyylikkäästi vinoon jotta sitä pystyy käyttämään. Lisäksi kiteelle tuli otettua liian pieni silkkikuva, kannattaisi mitata oikeasti eikä luottaa varmaan arvioon.
Piirilevy
Piirilevy on teetetty iteadstudiolla, halpaa on jos vain jaksaa odotella. Itselläni taisi kestää pitkälle toista kuukautta että levyt oli tilauksesta kourassa. Levyjen laadussa ei ole mitään valittamista.
Piirilevy
Kytkentäkaavio KiCad-ohjelmalla piirettynä. Kun kytkis on valmis komponenteille osoitetaan oikeat kotelot ja sitten pääseekin leiskan suunnitteluun.
Piirilevy
Osasijoittelu ja vetojen piirtäminen. Maatasojen yhdistäminen läpäreillä pääsi unohtumaan, mutta toimintaan se ei onneksi vaikuta.
Piirilevy
Ohjelmalla pystyy pyörittelemään 3d-kuvaa valmiista levystä. Tosin kaikkia komponentteja, kuten 7-segmenttinäyttöä, en ole tähän metsästänyt.
Kommentoi (0)

Ei kommentteja aiheeseen "AVR-kello"


Lämpötila langattomasti Raspberry Pi:lle

2013-11-25 15:07:38

Kahden Atmelin mikroprosessorin avulla saadaan lämpötila tietokantaan ja sitä kautta www-sivuille. Mikroprosessoreissa on kiinni 2,4 GHz:n taajuudella toimivat modulit, joilla saadaan langattomasti lämpötilatieto siirrettyä. Kommunikointi raspin ja Atmelin prosessorin välillä on hoidettu sarjaliikenteellä. Pythonilla tehty skriptinpätkä lähettää ensin pulssin yhdellä GPIO-pinnillä joka on yhdistetty mikroprosessorin keskeytyspinniin ja siirtyy odottamaan data sarjaporttipinneihin (GPIO14 ja 15). Prossun saatua signaalin lähetetään sarjaväylään lämpötilalukema.

Lohkokaavio
Lohkokaavio järjestelmästä.
Vastaanottoyksikkö kytkettynä raspiin
Vastaanottoyksikkö kytkettynä raspiin. Mikroprosessorikytkentä on koottu reikälevylle ja käyttöjännitteet otetaan raspin GPIO-liittimiltä. +5 volttia Atmelin prossulle ja +3.3 volttia rf-modulille.
Lämpötilan lähetysyksikkö
Lähetysyksikön piirilevynä toimii toiseen projektiin teetetty piirilevy.
Lämpötilan lähetysyksikkö
Lähetysyksikkö saa virtansa kahdelta sormiparistolta.
Lämpötilakuvaaja
Kuvaaja piiretään php:n grafiikkakirjaston avulla www-sivulle (sivu ei ainakaan vielä julkinen).

Lämpötilatieto lähetetään n. 5 minuutin välein vastaanottimelle. Muun ajan lähettimen mikroprosessori ja rf-piiri on sleep-modessa, jolloin virrankulutus on minimaalista (tällä hetkellä n. 1 milliampeeri, tavoitteena saada prosessori vieläkin "syvempään uneen" jolloin päästäisiin mikroampeeritasolle). Lähetyshetkellä virrankulutus n. 12 milliampeeria.

Kommentoi (0)

Ei kommentteja aiheeseen "Lämpötila langattomasti Raspberry Pi:lle"


Lämpömittari

2013-11-14 16:31:18

Atmelin mikroprosessorin ja ks0108-piiriä käyttävän 128x64 pikselin näyttömodulin ympärille rakennettu lämpömittari. Lämpötila-anturina on ds1820.

Kytkentäkaavio
Kytkentäkaavio on aika simppeli, mikroprosessorin lähtöihin kiinni näyttö ja anturit. Prosessorin kellona käytetään sisäistä oskillaattoria.
Koekytkentälevy toiminnan testaus
Koekytkentälevyllä johtohässäkkää.
Näyttö pimeässä
Näytön taustavalaistus päällä.
Suunnittelupöytä
Mainiolla ja ilmaisella KiCad-piirilevysuunnitteluohjelmalla vetojen hahmottelua.
Kasausta reikälevylle
Reikälevylle kasattu lopullista kytkentää. Hyppylankoja kertyi levylle jonkin verran, mutta kytkentä loppujen lopuksi on aika yksinkertainen.
Lopputuote
Valmis kokonaisuus ja toiminnassa. Oikealla näkyy IR-anturi, joka aktivoi näytön taustavalon kun sen edessä heilauttaa esim. kättä.

Viimeisessä kuvassa näkyvän "läheisyysanturin" olen onnistunut sittemmin jo hajottamaan, joten nykyisin näytön taustavalo syttyy ihan tylsästi napista painamalla. Lisäksi kytkennässä on kiinni Bluetooth-moduli, jonka avulla lämpömittariin saa yhteyden tietokoneella tai muulla laitteella joka tukee Bluetooth serial port profilea (SPP).

Päivitys 15.11.2014: Näköjään tästä väkerryksestä on vuosi kulunut, ja edelleen sama mittari on toiminnassa. Taustavalon ohjaus hoidetaan ultraäänianturilla (HC-SR04), jota pollataan kerran sekunnissa. Jos jotain on etäisyysraja-arvon sisäpuolella, syttyy näytön taustavalo.

Lämpömittari ilman taustavaloa
Oikealla näkyy ultraäänianturi, joka hoitaa taustavalon ohjauksen.
Lämpömittari taustavalo päällä
Taustavalo päällä. Vasemmalla näkyy Bluetooth-moduli, joka juttelee sarjaväylän kautta prossun kanssa.
Etäyhteys Bluetoothilla lämpömittariin
Tietokoneelta otettu etähteys lämpömittariin.
Kommentoi (0)

Ei kommentteja aiheeseen "Lämpömittari"

- Sivun ylös -