MMP Cvičenie 8: Rozdiel medzi revíziami
Zo stránky SensorWiki
Bez shrnutí editace  | 
				|||
| (7 medziľahlých úprav od rovnakého používateľa nie je zobrazených.) | |||
| Riadok 3: | Riadok 3: | ||
Literatúra:  | Literatúra:  | ||
* [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]  | ||
| Riadok 8: | Riadok 9: | ||
=== Rekapitulácia ===  | === Rekapitulácia ===  | ||
Máte k dispozícii vývojovú dosku '''  | Máte k dispozícii vývojovú dosku '''Acrob''' s procesorom ATmega328 ([http://ap.urpi.fei.stuba.sk/mmp/ATmega328.pdf datasheet]).  | ||
V tejto úlohe sa predpokladá znalosť funkcie A/D prevodníka z prednášky (datasheet, str.   | V tejto úlohe sa predpokladá znalosť funkcie A/D prevodníka z prednášky (datasheet, str. 251 -- 267). Procesor je nakonfigurovaný na prácu s externým kryštálovým oscilátorom 16,00 MHz.  | ||
Procesor je nakonfigurovaný na prácu s externým kryštálovým oscilátorom   | |||
=== A/D prevodník ===  | === A/D prevodník ===  | ||
Pozri aj obrázok [[Obrázok:AVR_ADC.png|300px]]  | |||
Pre nameranú hodnotu N platí vzťah  | Pre nameranú hodnotu N platí vzťah  | ||
| Riadok 23: | Riadok 25: | ||
</math>  | </math>  | ||
Vstupy A/D prevodníka na   | Vstupy A/D prevodníka na Acrob doske sú zapojené takto (pozri aj obrázok [[:Media:Connectors.png]]):  | ||
  Kanál       MUX3:0    signál  |   Kanál       MUX3:0    signál  | ||
  --------------------------------------------------------------  |   --------------------------------------------------------------  | ||
  ADC 0 - 3               |   ADC 0 - 3             vľavo vedľa prepojovacieho poľa  | ||
  ADC 4   |   ADC 4 - 5             konektor X2, hore  | ||
  ADC   |   ADC 8        1000     interný snímač teploty  | ||
  Vref         1110     vnútorná referencia 1,1 V  |   Vref         1110     vnútorná referencia 1,1 V  | ||
  GND          1111     vnútorná zem 0 V  |   GND          1111     vnútorná zem 0 V  | ||
| Riadok 37: | Riadok 38: | ||
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.    | 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  | Zdroj hodinového signálu pre A/D prevodník musí byť v rozsahu 50 až 200 kHz!   | ||
Príklad najjednoduchšieho SW ovládaného A/D prevodu je uvedená v tomto príklade - pozri [[AVR A/D example.c]]  | Príklad najjednoduchšieho SW ovládaného A/D prevodu je uvedená v tomto príklade - pozri [[AVR A/D example.c]]  | ||
| Riadok 55: | Riadok 56: | ||
Príklad: [[AVR StampPlotExample.c]]  | Príklad: [[AVR StampPlotExample.c]]  | ||
Manual: [[Stamp Plot Manual]]  | Manual: [[Stamp Plot Manual]]  | ||
| Riadok 76: | Riadok 61: | ||
=== Úlohy ===  | === Úlohy ===  | ||
# Nahrajte si knižnice pre prácu so sériovou linkou, preštudujte využitie knižnice <stdio.h> a demonštrujte.  | # Nahrajte si knižnice pre prácu so sériovou linkou, preštudujte využitie knižnice <stdio.h> a demonštrujte.  | ||
# Doplňte program o jednoduchý A/D prevod a zobrazte hodnotu z   | # Doplňte program o jednoduchý A/D prevod a zobrazte hodnotu z potenciometra.  | ||
# Overte prevod A-D prevodníka meraním vnútornej referencie 1,1 V  | # Overte prevod A-D prevodníka meraním vnútornej referencie 1,1 V  | ||
# Upravte program pre A-D prevod tak, aby v pracoval autonómne s periódou vzorkovania 100ms.    | # Upravte program pre A-D prevod tak, aby v pracoval autonómne s periódou vzorkovania 100ms.    | ||
# Oboznámte sa s programom StampPlot a zobrazte časový priebeh   | # Oboznámte sa s programom StampPlot a zobrazte časový priebeh nameranej veličiny.  | ||
=== Download ===  | |||
[[Obrázok:Icon_Terminal.png]] [http://braypp.googlepages.com/Terminal20080315.zip Terminal 1.9b]  | [[Obrázok:Icon_Terminal.png]] [http://braypp.googlepages.com/Terminal20080315.zip Terminal 1.9b]  | ||
[[Obrázok:Icon_StampPlotLite.png]] [http://www.  | [[Obrázok:Icon_StampPlotLite.png]] [http://www.parallax.com/Portals/0/Downloads/sw/spl.zip StampPlot Lite 1.7]  | ||
Aktuálna revízia z 09:02, 26. november 2010
A/D prevodník
Literatúra:
Rekapitulácia
Máte k dispozícii vývojovú dosku Acrob s procesorom ATmega328 (datasheet).
V tejto úlohe sa predpokladá znalosť funkcie A/D prevodníka z prednášky (datasheet, str. 251 -- 267). Procesor je nakonfigurovaný na prácu s externým kryštálovým oscilátorom 16,00 MHz.
A/D prevodník
Pre nameranú hodnotu N platí vzťah
Vstupy A/D prevodníka na Acrob doske sú zapojené takto (pozri aj obrázok Media:Connectors.png):
Kanál MUX3:0 signál -------------------------------------------------------------- ADC 0 - 3 vľavo vedľa prepojovacieho poľa ADC 4 - 5 konektor X2, hore ADC 8 1000 interný snímač teploty 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!
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
Úlohy
- Nahrajte si knižnice pre prácu so sériovou linkou, preštudujte využitie knižnice <stdio.h> a demonštrujte.
 - Doplňte program o jednoduchý A/D prevod a zobrazte hodnotu z potenciometra.
 - Overte prevod A-D prevodníka meraním vnútornej referencie 1,1 V
 - Upravte program pre A-D prevod tak, aby v pracoval autonómne s periódou vzorkovania 100ms.
 - Oboznámte sa s programom StampPlot a zobrazte časový priebeh nameranej veličiny.
 
Download