Básico 02 - Lectura Analógica Serial (Analog Read Serial)


Lectura Analógica Serial

Este ejemplo le muestra cómo leer la entrada analógica del mundo físico usando un potenciómetro. Un potenciómetro es un dispositivo mecánico simple que proporciona una cantidad variable de resistencia cuando su eje es girado. Al pasar la tensión a través de un potenciómetro y en una entrada analógica en su placa, es posible medir la cantidad de resistencia producida por un potenciómetro (o pot para abreviar) como un valor analógico. En este ejemplo monitorizará el estado de su potenciómetro después de establecer la comunicación serial entre su Arduino o Genuino y su computadora que ejecuta el software Arduino (IDE).

Hardware Requirido

  • Arduino o Genuino Board
  • 10k ohm Potenciometro - Un potenciometro es un dispositivo conformado por 2 resistencias en serie, las cuales poseen valores que pueden ser modificados por el usuario.


Esquema

Conecte los tres cables del potenciómetro a su placa. El primero va de uno de los pines exteriores del potenciómetro a tierra. El segundo pasa desde el otro extremo externo del potenciómetro a 5 voltios. El tercero va desde el pasador central del potenciómetro al pasador analógico A0.

Imagen Fritzing


Al girar el eje del potenciómetro, cambia la cantidad de resistencia a cada lado del limpiaparabrisas, que se conecta al pasador central del potenciómetro. Esto cambia el voltaje en el pasador central. Cuando la resistencia entre el centro y el lado conectado a 5 voltios es cercana a cero (y la resistencia en el otro lado es cercana a 10k ohmios), la tensión en el pin central se acerca a 5 voltios. Cuando las resistencias se invierten, la tensión en el pin central se acerca a 0 voltios, o tierra. Este voltaje es el voltaje analógico que usted está leyendo como entrada.

Las placas Arduino y Genuino tienen un circuito interno llamado convertidor analógico a digital o ADC que lee este voltaje cambiante y lo convierte en un número entre 0 y 1023. Cuando el eje está girado todo el camino en una dirección, hay 0 Voltios que van al pin y el valor de entrada es 0. Cuando el eje está girado todo el camino en la dirección opuesta, hay 5 voltios que van al pin y el valor de entrada es 1023. En medio, el analógicoRead () devuelve un número Entre 0 y 1023 que es proporcional a la cantidad de tensión que se aplica al pasador.

Circuito

Clic en la imagen

Descripción del código

In the sketch below, the only thing that you do in the setup function is to begin serial communications, at 9600 bits of data per second, between your board and your computer with the command:

Serial.begin(9600);

A continuación, en el bucle principal de su código, debe establecer una variable para almacenar el valor de resistencia (que estará entre 0 y 1023, perfecto para un   int datatype  ) procedente de su potenciómetro:

int sensorValue = analogRead(A0);

Por último, debe imprimir esta información en la ventana del monitor serie. Puede hacerlo con el comando  Serial.println()    en la última línea de código:

Serial.println(sensorValue)

Ahora, al abrir su Monitor Serial en el Software Arduino (IDE) (haciendo clic en el icono que se parece a una lente, a la derecha, en la barra superior verde o usando el atajo de teclado Ctrl + Mayús + M), debería ver Un flujo constante de números que van desde 0-1023, correlacionando con la posición de la olla. Al girar el potenciómetro, estos números responderán casi al instante. 

Montaje de la sesión





Código - Acceder

/*
  Serie de lectura analógica
   Lee una entrada analógica en el pin 0, imprime el resultado en el monitor en serie.
   Conecte el pasador central de un potenciómetro al pasador A0, y los pasadores exteriores a + 5V y tierra.

  Este código de ejemplo está en el dominio público.
 */

// La rutina de configuración se ejecuta una vez al presionar restablecer:
void setup() {
  // Inicializar la comunicación serial a 9600 bits por segundo:
  Serial.begin(9600);
}

// La rutina de bucle se ejecuta una y otra vez para siempre:
void loop() {
  // Lee la entrada en el pin analógico 0:
  int sensorValue = analogRead(A0);
  // Imprima el valor que lee:
  Serial.println(sensorValue);
  delay(1);        // Pausa entre lecturas de estabilidad
}

________________________
Fuente: ASXArduino, ASXKids

Comentarios