Salta al contenuto

Archivi

  • Gennaio 2022
  • Dicembre 2021
  • Novembre 2021
  • Ottobre 2021
  • Settembre 2021

Categorie

  • Nessuna categoria
Trend RepositoryArticles and guides
Articles

John Errington’s Experiments with an Arduino

Il Novembre 28, 2021 da admin

Misurazione precisa della tensione con la scheda Arduino.

La gamma di microcontrollori Arduino fornisce ingressi analogici che possono essere utilizzati per misurare la tensione. Possiamo usarli per costruire un voltmetro.
La funzione analogRead() legge la tensione e la converte in un numero tra 0 e 1023.

Il tutorial Arduino (1) http://arduino.cc/en/Tutorial/ReadAnalogVoltageha questo esempio:

Questo è SBAGLIATO! Per un risultato migliore usa (sensorValue + 0,5) * 5,0 / 1024,0 – vedi spiegazione qui

Questo ci porta a credere che una lettura di 0 corrisponde a un ingresso di 0,000V; e 1023 corrisponde a una tensione di ingresso di 5,000 volt. Questo non è del tutto vero. Guardiamo la scheda tecnica e vediamo cosa ci dice.

Il chip ATMEGA usato su Arduino ha ingressi analogici che possono essere usati per misurare accuratamente la tensione

Il microcontrollore Arduino è dotato di un convertitore analogico-digitale (ADC) di tipo ad approssimazione successiva che ha le seguenti specifiche. I riferimenti indicati tra parentesi così (2: 26.1) si riferiscono a sezioni della scheda tecnica AtMega 2560.
(2: 26.1): ATMega328 e 32U4 hanno valori simili.

Queste specifiche ci dicono che Arduino è in grado di misurare le tensioni con una precisione
di ± 2 LSB – quindi l’errore massimo è di 2 bit (4 decimali) su 10 bit (1024 decimali)
Quindi la precisione peggiore del convertitore è 4 / 1024 o 1 parte su 256 cioè 0,25%.

Tuttavia il limite della precisione della misurazione dipende dal riferimento di tensione utilizzato.

L’Arduino ha i propri riferimenti di tensione – ma non sono molto precisi

Il chip – a seconda del tipo – è dotato di ALCUNE delle seguenti tensioni di riferimento (6)
DEFAULT: il riferimento analogico predefinito di 5 volt (sulle schede Arduino da 5V) o 3.3 volt (sulle schede Arduino da 3,3V)
INTERNAL: un riferimento incorporato, pari a 1,1 volt su ATmega168 o ATmega328 e 2,56 volt sulle schede ATmega8 e 32U4.
Questo è prodotto internamente amplificando il riferimento di 1,1V. 2.56V è solo un valore “tipico”.
EXTERNAL: la tensione applicata al pin AREF (solo da 0 a 5V). (MicroPro 32U4, NodeMCU e ESP32 non hanno un pin per un riferimento esterno – vedi sotto per maggiori informazioni.)

La precisione del riferimento rispetto al quale viene misurata la tensione – usando uno qualsiasi dei riferimenti di cui sopra – è al massimo solo 5.25 – 5.0/5.0 * 100 = 5% – molto peggio dello 0.25% che fornisce l’ADC. Chiaramente se vogliamo misurare le tensioni con la precisione fornita da Arduino i riferimenti on-chip non sono abbastanza buoni. Il diagramma qui sotto mostra questi errori rispetto ad un riferimento di 4.096V descritto qui sotto.

Lascia un commento Annulla risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Archivi

  • Gennaio 2022
  • Dicembre 2021
  • Novembre 2021
  • Ottobre 2021
  • Settembre 2021

Meta

  • Accedi
  • Feed dei contenuti
  • Feed dei commenti
  • WordPress.org
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語

Copyright Trend Repository 2022 | Tema da ThemeinProgress | Offerto orgogliosamente da WordPress