Conversión de analógico a digital (lectura analógica en serie) - Conceptos básicos de Arduino

Conversión de analógico a digital (lectura analógica en serie) - Conceptos básicos de Arduino

En estos conceptos básicos de Arduino, tratamos de comprender el procedimiento de implementación del código en el que una señal analógica externa se alimenta a la entrada analógica de Arduino y se traduce o convierte en una lectura digital proporcional correspondiente. Aquí empleamos una resistencia variable en forma de bote como fuente de señal analógica.

Serie de lectura analógica

En este ejemplo, aprendemos el método de leer una entrada analógica desde un dispositivo externo como un potenciómetro, que es un dispositivo electromecánico diseñado para implementar una resistencia variable en un circuito mediante operación manual.

Se puede usar un Arduino para medir la magnitud del voltaje que sale de un potenciómetro para leer e identificar su resistencia correspondientemente variable. Esto se puede hacer alimentando el voltaje en el puerto de entrada analógica Arduino como un valor analógico.



Aquí veremos cómo se aplica lo anterior después de establecer una comunicación en serie entre el Arduino y la computadora vinculada.

Hardware requerido

Placa Arduino

Potenciómetro de 10 kilohmios

Operación del circuito

Como se muestra en el diagrama anterior, conecte los tres cables que salen de la olla a sus puertos Arduino.

El cable de uno de los cables externos de la olla se asigna con el suelo o la línea negativa del tablero.

El otro cable del extremo exterior libre se conecta con los + 5V de la placa.

Lo que queda es el cable central de la olla, que termina en la entrada analógica de la placa Arduino.

Cuando se gira el eje de la olla, la resistencia a través del cable central y el terminal exterior cambia de mayor a menor y viceversa, según el lado al que se acerque el brazo deslizante.

Por ejemplo, cuando el brazo deslizante se gira hacia el cable + 5V, el cable central se acerca a 5V y tiende a adquirir el valor total cuando toca el cable asignado de 5V. De manera similar, cuando el eje del deslizador se mueve hacia el cable del potenciómetro de tierra, el cable central tiende a alcanzar un potencial cero.

La entrada analógica arduino lee el voltaje de suministro que varía linealmente arriba sobre el cable central de la olla para interpretarlo en una resistencia correspondiente de la olla.

El Arduino incluye un circuito convertidor de analógico a digital interno que interpreta de manera efectiva el movimiento del potenciómetro anterior y lo convierte en números entre 0 y 1023.

Una posición particular sobre el eje de la olla da como resultado que el Arduino traduzca un número proporcional entre 0 y 1023, y para los valores finales de 5V y cero voltios, las interpretaciones son obviamente 0 y 1023.

En el programa mencionado, la función de configuración solo debe activarse para iniciar las comunicaciones en serie, con una velocidad de 9600 bits de datos por segundo, a través de su placa Arduino y la computadora.

El comando esperado tiene la forma:

Serial.begin (9600)

Posteriormente, en el bucle principal de su código, aplicamos una variable para fijar el valor de resistencia (que sería como se discutió entre 0 y 1023, solo adecuado para un tipo de datos int) recibido de los cables del potenciómetro:

int sensorValue = analogRead (A0)

Para concluir, imprima esta información en su ventana serial como un valor decimal (DEC). Puede usar el comando Serial.println () para implementar esto en la última línea de código:

Serial.println (sensorValue, DEC)

Después de esto, siempre que se inicie Serial Monitor en el dominio de desarrollo de Arduino (esto se hace haciendo clic en el botón que está inmediatamente a la derecha del botón 'Cargar' en el encabezado del programa).

veríamos una cadena consistente de dígitos desde 0-1023, correspondiente a la posición de rotación variable del eje de la olla.

Si detenemos la rotación del eje de la olla en algún instante, el número instantáneo correspondiente se mostrará en la pantalla del Arduino, esto volvería a cambiar proporcionalmente a medida que vayamos cambiando la posición del eje de la olla.

El código

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

Este código de ejemplo es de dominio público.
*/

// la rutina de configuración se ejecuta una vez cuando presiona restablecer:
configuración vacía () {
// inicializar la comunicación en serie a 9600 bits por segundo:
Serial.begin (9600)
}

// la rutina del ciclo se repite una y otra vez para siempre:
bucle vacío () {
// lee la entrada en el pin analógico 0:
int sensorValue = analogRead (A0)
// imprime el valor que leíste:
Serial.println (sensorValue)
delay (1) // retraso entre lecturas para estabilidad
}




Previous: Monitoreo del estado de un interruptor (serie de lectura digital) - Conceptos básicos de Arduino Siguiente artículo: Circuito regulador de voltaje ajustable de 1,25 V a 120 V