Operácie

MMP Cvičenie 8: Rozdiel medzi revíziami

Zo stránky SensorWiki

Balogh (diskusia | príspevky)
Bez shrnutí editace
Balogh (diskusia | príspevky)
Bez shrnutí editace
Riadok 3: Riadok 3:
Literatúra:
Literatúra:


* [http://www.atmel.com/dyn/resources/prod_documents/DOC2559.PDF]
* [http://www.atmel.com/dyn/resources/prod_documents/DOC2559.PDF AVR120: Characterization and Calibration of the ADC on an AVR]
* [http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=56429 Newbie's Guide to AVR A/D Converter]
* [http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=56429 Newbie's Guide to AVR A/D Converter]



Verzia z 22:54, 19. november 2010

A/D prevodník

Literatúra:


Rekapitulácia

Máte k dispozícii vývojovú dosku MiniMEXLE (popis,schéma zapojenia) a s procesorom ATmega88 (datasheet) a prípadne aj testovací program mexletest2.hex.

V tejto úlohe sa predpokladá znalosť funkcie A/D prevodníka z prednášky (datasheet, str. 87 -- 115). Procesor je nakonfigurovaný na prácu s externým kryštálovým oscilátorom 18,432 MHz (fuses). Demonštračný program je tuto: mexletest2.hex


A/D prevodník

Pre nameranú hodnotu N platí vzťah

Vstupy A/D prevodníka na MiniMEXLE doske sú zapojené takto:

Kanál       MUX3:0    signál
--------------------------------------------------------------
ADC 0 - 3             nepoužívame
ADC 4        0100     konektor X2, pravý kanál, Termistor NTC
ADC 5        0101     konektor X2, ľavý kanál, dióda LED2
ADC 6 - 7             nepoužívame
Vref         1110     vnútorná referencia 1,1 V
GND          1111     vnútorná zem 0 V


Ako zdroj referenčného napätia použijeme priamo napájacie napätie 5V oddelené tlmivkou a filtrované paralelným kondenzátorom 100n. Zodpovedajúce bity REFS1, REFS0 v registri ADMUX sú teda 01.

Zdroj hodinového signálu pre A/D prevodník musí byť v rozsahu 50 až 200 kHz, preto volíme preddeličku 128.

Príklad najjednoduchšieho SW ovládaného A/D prevodu je uvedená v tomto príklade - pozri AVR A/D example.c

Vizualizácia

Vizualizáciu dát môžeme robiť rozlične. Jeden z možných spôsobov je vypisovať po sériovej linke v pravidelných intervaloch holé data a tie potom uložiť ako maticu do Matlabu a tam nakresliť graf, priebeh, čo treba...

Iná možnosť je použiť napr. program StampPlot, ktorý kreslí prichádzajúce data priamo ako graf, s výnimkou reťazcov, ktoré začínajú znakom '!', tie považuje za konfiguračné príkazy.

Download: StampPlotLite1.7

Príklad: AVR StampPlotExample.c Manual: Stamp Plot Manual


NTC termistor

Na doske je použitý typ NTC od firmy Vishay (Catalog-Number: 2381 640 63472) R25 = 4700 Ohm ± 5 % ; B25/85 = 3977 K ± 0,75 %


Pripojenie termistora na doske MiniMEXLE.



Úlohy

  1. Nahrajte si knižnice pre prácu so sériovou linkou, preštudujte využitie knižnice <stdio.h> a demonštrujte.
  2. Doplňte program o jednoduchý A/D prevod a zobrazte hodnotu z termistora na doske MiniMEXLE.
  3. Overte prevod A-D prevodníka meraním vnútornej referencie 1,1 V
  4. Upravte program pre A-D prevod tak, aby v pracoval autonómne s periódou vzorkovania 100ms.
  5. Oboznámte sa s programom StampPlot a zobrazte časový priebeh teploty z termistora.
  6. Vyhodnotením prechodového deja identifikujte veľkosť kondenzátora vo výstupnom filtri.


Download

Terminal 1.9b

StampPlot Lite 1.7



Návrat na zoznam cvičení...