WWW Luisllamas Es Entradas Analogicas en Arduino
WWW Luisllamas Es Entradas Analogicas en Arduino
WWW Luisllamas Es Entradas Analogicas en Arduino
TUTORIALES ARDUINO
Search
ENTRADAS SIGUENOS EN
ANALGICAS EN
ARDUINO
TWITTER G+ LINKEDIN RSS
SIGUE LEYENDO EN
MT O DO S PARA CO NVERT IR
T EXT O A NMERO EN
ARDUINO
L IBRERA ARDUINO
L INKEDL IST
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
aplicacin la mayora de lo que vimos en esta entrada. Sin
embargo en ciertos aspectos son radicalmente
distintos, por lo que para entender correctamente su uso
y funcionalidad es necesario veamos un mnimo de teora.
OTRAS
QU ES UNA ENTRADA CATEGORIAS
ANALGICA? DISEO
Una seal analgica es una magnitud que puede
tomar cualquier valor dentro de un intervalo Vcc y
+ Vcc. Por ejemplo, una seal analgica de tensin entre
0V y 5V podra valer 2,72V, o cualquier otro valor con
cualquier nmero de decimales. Por contra, recordemos
que una seal digital de tensin terica nicamente poda
registrar dos valores (en el ejemplo, 0V o 5V). INFORMTICA
Por norma general en los autmatas las entradas
analgicas son ms escasas, ms lentas y ms caras
que las entradas digitales. En el caso de Arduino uno
disponemos de un nmero variable de entradas
analgicas, que en el caso de Arduino Uno y Mini Pro son
6, y en el Arduino Mega son 16. Este es un nmero ms
que respetable de entradas analgicas, que rivaliza o
INGENIERIA
supera a autmatas tradicionales de coste muy superior.
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
Como vimos al explicar las entradas digitales, una
entrada digital supone un proceso de transformacin de
una seal en un valor digital, atribuyendo un valor HIGH a
las medidas que superen un valor umbral, y LOW a lo que
quedan por debajo. Por el contrario, una entrada PROGRAMACION
analgica proporciona una medicin codificada en
forma de un valor digital con un nmero N de bits.
PRECISIN DE LA MEDICIN
Para entender la precisin de una entrada analgica es
FREEWARE
necesario entender cmo funciona un conversor analgico
digital (ADC), que es su componente fundamental. Un ADC
es un dispositivo que convierte una medicin
analgica en una medicin digital codificada con un CALCULADORAS
nmero N de bits.
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
Existen muchas formas de construir un ADC, pero lo
MIS LIBRERIAS
importante es entender que en realidad no medimos el
valor analgico con todos sus decimales, sino que lo
clasificamos dentro de 2^N niveles, que definen 2^N-1 ARDUINO
intervalos. El ancho de este intervalo medido en mV es
la precisin de la seal. Cuanto mayor sea el nmero de
bits, mayor ser el nmero de intervalos, menor ser el
ancho del intervalo, y por tanto mejor la precisin de la
medicin.
PRECISIN RELATIVA
Hasta ahora hemos supuesto un autmata alimentado
entre 0V y 5V, que mide una seal analgica de tensin
entre 0V a 5V. En este caso, con un ADC de 10 bit tenemos
una precisin de 4,88mV, lo que supone una precisin
relativa respecto a la seal de entrada de 0,1%
(1/1024).
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
Sin embargo, supongamos que medimos una seal
que vara entre 0V y 1V. En este caso, con el mismo ADC
de 10 bit tendramos la misma precisin absoluta de
4,88mV, pero una menor precisin relativa respecto a la
seal, que caera hasta 0,5%.
CONEXIN DE ENTRADAS
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
CONEXIN DE ENTRADAS
ANALGICAS EN ARDUINO
Supongamos que dispongamos un sensor analgico
que proporciona una seal analgica entre 0V a 5V. El
esquema de conexin es similar al que empleamos para
realizar la lectura digital.
CDIGO EN ARDUINO
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
El cdigo para realizar la lectura es realmente sencillo,
y similar al que vimos para las entradas digitales.
Simplemente realizamos la lectura mediante AnalogRead()
y almacenamos el valor devuelto.
1 const int sensorPin = A0; // seleccionar la entrada para el sensor
2 int sensorValue; // variable que almacena el valor raw (0 a 1023)
3
4 void setup()
5 {
6 Serial.begin(9600);
7 }
8
9 void loop()
10 {
11 sensorValue = analogRead(sensorPin); // realizar la lectura
12
13 //mandar mensaje a puerto serie en funcin del valor leido
14 if (sensorValue > 512)
15 {
16 Serial.println("Mayor que 2,5V");
17 }
18 else
19 {
20 Serial.println("Menor que 2,5V");
21 }
22 delay(1000);
23 }
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
1 const int sensorPin = A0; // seleccionar la entrada para el sensor
2 int sensorValue; // variable que almacena el valor raw (0 a 1023)
3 float value; // variable que almacena el voltaje (0.0 a 5.0)
4
5 void setup()
6 {
7 Serial.begin(9600);
8 }
9
10 void loop()
11 {
12 sensorValue = analogRead(sensorPin); // realizar la lectura
13 value = fmap(sensorValue, 0, 1023, 0.0, 5.0); // cambiar escala a 0.0 - 5.0
14
15 Serial.println(value); // mostrar el valor por serial
16 delay(1000);
17 }
18
19 // cambio de escala entre floats
20 float fmap(float x, float in_min, float in_max, float
21 {
22 return (x - in_min) * (out_max - out_min) / (in_max
23 }
FRECUENCIA DE MUESTREO
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
Con el cdigo empleado la frecuencia de muestreo
es aproximadamente 9600 Hz, es decir, unos 100 micro
segundos para la medicin. En comparacin, la funcin
digitalRead tiene una frecuencia de 15000Hz, unos 66
micro segundos por medicin, levemente ms rpido.
LECTURA DE VALORES
MAYORES DE 5V
En caso de necesitar leer una entrada de nivel de
tensin superior, por ejemplo de 12V, debemos realizar
una adaptacin de tensin. La forma mejor de realizar la
adaptacin es emplear un simple divisor de tensin.
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
Con esta configuracin el pin digital de Arduino
recibir una tensin que vara entre 0 a 3,84V por lo que,
como hemos explicado, estaramos perdiendo precisin
relativa. Una opcin sera ajustar las resistencias para que
los lmites estn lo ms cercanos posible a 0 y 5V, o usar
otro divisor de tensin para alimentar el pin Aref.
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
TAGS:
AN ALO G ICAS AR D UIN O AR D UIN O B ASICO EN TR AD AS I/ O
PREVIO US PO ST NEXT PO ST
CUMPLIMOS CMO
TRES AOS! DESCARGAR
DESDE
YOUTUBE
RELATED POSTS
MTODOS PARA LIBRERA ARDUINO
CONVERTIR TEXTO A LINKEDLIST
NMERO EN ARDUINO
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
Lo sentimos, el navegador que ests usando no est soportado actualmente. Disqus soporta de manera activa los
siguientes navegadores:
Firefox
Chrome
Internet Explorer 11+
Safari
hola
sr. Luis pagina muy buena.
tengo la necesidad de saber que voltaje estoy trabajando para crear un watimetro. y tengo una tensin continua que
varia , y su valor mximo ser de 200 voltios ,
seria correcto trabajar con un divisor de tensin 100K y 2k2
puedo encontrarme con algn problema?
doy por supuesto que la precisin solo la ser de 1024 bits..
Hola Sr.Luis desde que hice mi fuente de alimentacin gracias a tu pagina te suelo visitar y tengo muchas dudas con
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
LICENCIA ENTRADAS POLTICA DE
Excepto notacin expresa, los RECIENTES COOKIES
contenidos de este sitio se
Mtodos para convertir Este web utiliza cookies
ofrecen bajo licencia Creative
texto a nmero en Arduino propias y de terceros para
Commons License BY-NC-SA.
Librera Arduino LinkedList ofrecerle una mejor
Implementar una Linked experiencia y servicio. Al
List en Arduino navegar o utilizar nuestros
servicios el usuario acepta el
Ms informacin Librera Arduino List
uso de las mismas. El usuario
Implementar un array de
tiene la opcin de impedir la
tamao dinmico en
generacin de cookies y la
Arduino
eliminacin de las mismas
mediante la seleccin de la
correspondiente opcin en su
navegador.
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com