Operácie

A/D prevodník: Rozdiel medzi revíziami

Z SensorWiki

(Download)
(Vizualizácia)
Riadok 55: Riadok 55:
 
maticu do Matlabu a tam nakresliť graf, priebeh, čo treba...
 
maticu do Matlabu a tam nakresliť graf, priebeh, čo treba...
  
Iná možnosť je použiť napr. program SerialChart, ktorý kreslí prichádzajúce data
+
Iná možnosť je použiť napr. program SerialPlot, ktorý kreslí prichádzajúce data
 
priamo ako graf.  
 
priamo ako graf.  
  
Download:  [http://code.google.com/p/serialchart/ SerialChart 1.0]
+
Download:  [https://serialplot.ozderya.net/downloads/serialplot-0.11.0-win32.exe SerialPlot 0.11.0]
  
 
<!--
 
<!--
Riadok 69: Riadok 69:
 
Príklad: [[AVR StampPlotExample.c]]
 
Príklad: [[AVR StampPlotExample.c]]
 
Manual: [[Stamp Plot Manual]]
 
Manual: [[Stamp Plot Manual]]
 +
 +
 +
Alebo SerialChart Download:  [http://code.google.com/p/serialchart/ SerialChart 1.0]
 +
 
-->
 
-->
  

Verzia zo dňa a času 17:43, 14. apríl 2021

TODO: prerobit na verziu 2021:


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

AVR ADC.png


Pre nameranú hodnotu N platí vzťah


             U_{in} = \frac{N U_{ref}}{1024}

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 SerialPlot, ktorý kreslí prichádzajúce data priamo ako graf.

Download: SerialPlot 0.11.0


Ú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 potenciometra.
  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 SerialChart a zobrazte časový priebeh nameranej veličiny.


Download

Icon Terminal.png Terminal 1.9b

IconSerialPlotter.png Serial Plot 0.11.0