- Componentes requeridos:
- Diagrama de circuito:
- Arduino Uno:
- LCD 16x2:
- Concepto de código de color de resistencia:
- Calcular la resistencia usando el medidor de ohmios Arduino:
- Explicación del código:
Nos resulta difícil leer los códigos de color en las resistencias para encontrar su resistencia. Para superar la dificultad de encontrar el valor de resistencia, vamos a construir un medidor de ohmios simple usando Arduino. El principio básico detrás de este proyecto es una red de divisores de voltaje. El valor de la resistencia desconocida se muestra en la pantalla LCD de 16 * 2. Este proyecto también sirve como interfaz de pantalla LCD 16 * 2 con Arduino.
Componentes requeridos:
- Arduino Uno
- Pantalla LCD 16 * 2
- Potenciómetro (1 kilo Ohmio)
- Resistencias
- Tablero de circuitos
- Cables de puente
Diagrama de circuito:
Arduino Uno:
Arduino Uno es una placa de microcontrolador de código abierto basada en el microcontrolador ATmega328p. Tiene 14 pines digitales (de los cuales 6 pines se pueden usar como salidas PWM), 6 entradas analógicas, reguladores de voltaje integrados, etc. Arduino Uno tiene 32KB de memoria flash, 2KB de SRAM y 1KB de EEPROM. Opera a la frecuencia de reloj de 16MHz. Arduino Uno admite comunicación Serial, I2C, SPI para comunicarse con otros dispositivos. La siguiente tabla muestra la especificación técnica de Arduino Uno.
Microcontrolador | ATmega328p |
Tensión de funcionamiento | 5V |
Voltaje de entrada | 7-12 V (recomendado) |
Pines de E / S digitales | 14 |
Pines analógicos | 6 |
Memoria flash | 32 KB |
SRAM | 2 KB |
EEPROM | 1 KB |
Velocidad de reloj |
16 MHz |
LCD 16x2:
16 * 2 LCD es una pantalla ampliamente utilizada para aplicaciones integradas. Aquí está la breve explicación sobre los pines y el funcionamiento de la pantalla LCD de 16 * 2. Hay dos registros muy importantes dentro de la pantalla LCD. Son registro de datos y registro de comando. El registro de comando se usa para enviar comandos como pantalla clara, cursor en casa, etc., el registro de datos se usa para enviar datos que se mostrarán en la pantalla LCD de 16 * 2. La siguiente tabla muestra la descripción de los pines de la pantalla LCD de 16 * 2.
Alfiler |
Símbolo |
E / S |
Descripción |
1 |
Vss |
- |
Suelo |
2 |
Vdd |
- |
Fuente de alimentación de + 5V |
3 |
Vee |
- |
Fuente de alimentación para controlar el contraste |
4 |
RS |
yo |
RS = 0 para registro de comando, RS = 1 para registro de datos |
5 |
RW |
yo |
R / W = 0 para escritura, R / W = 1 para lectura |
6 |
mi |
E / S |
Habilitar |
7 |
D0 |
E / S |
Bus de datos de 8 bits (LSB) |
8 |
D1 |
E / S |
Bus de datos de 8 bits |
9 |
D2 |
E / S |
Bus de datos de 8 bits |
10 |
D3 |
E / S |
Bus de datos de 8 bits |
11 |
D4 |
E / S |
Bus de datos de 8 bits |
12 |
D5 |
E / S |
Bus de datos de 8 bits |
13 |
D6 |
E / S |
Bus de datos de 8 bits |
14 |
D7 |
E / S |
Bus de datos de 8 bits (MSB) |
15 |
UN |
- |
+ 5V para retroiluminación |
dieciséis |
K |
- |
Suelo |
Concepto de código de color de resistencia:
Para identificar el valor de la resistencia podemos usar la siguiente fórmula.
R = {(AB * 10 c) Ω ± T%}
Dónde
A = Valor del color en la primera banda.
B = Valor del color en la segunda banda.
C = Valor del color en la tercera banda.
T = Valor del color en la cuarta banda.
La siguiente tabla muestra el código de color de las resistencias.
Color |
Valor numérico del color |
Factor de multiplicación (10 c) |
Valor de tolerancia (T) |
Negro |
0 |
10 0 |
- |
marrón |
1 |
10 1 |
± 1% |
rojo |
2 |
10 2 |
± 2% |
naranja |
3 |
10 3 |
- |
Amarillo |
4 |
10 4 |
- |
Verde |
5 |
10 5 |
- |
Azul |
6 |
10 6 |
- |
Violeta |
7 |
10 7 |
- |
gris |
8 |
10 8 |
- |
Blanco |
9 |
10 9 |
- |
Oro |
- |
10 -1 |
± 5% |
Plata |
- |
10 -2 |
± 10% |
Sin banda |
- |
- |
± 20% |
Por ejemplo, si los códigos de color son Marrón - Verde - Rojo - Plata, el valor de resistencia se calcula como, Marrón = 1 Verde = 5 Rojo = 2 Plateado = ± 10%
De las primeras tres bandas, R = AB * 10 c
R = 15 * 10 +2 R = 1500 Ω
La cuarta banda indica tolerancia de ± 10%
10% de 1500 = 150 Para + 10 por ciento, el valor es 1500 + 150 = 1650Ω Para - 10 por ciento, el valor es 1500-150 = 1350Ω
Por lo tanto, el valor de resistencia real puede estar entre 1350 Ω y 1650 Ω.
Para hacerlo más conveniente, aquí está la Calculadora de códigos de colores de resistencia, donde solo necesita ingresar el color de los anillos en la resistencia y obtendrá el valor de resistencia.
Calcular la resistencia usando el medidor de ohmios Arduino:
El funcionamiento de este medidor de resistencia es muy simple y se puede explicar usando una red de divisores de voltaje simple que se muestra a continuación.
De la red divisoria de voltaje de las resistencias R1 y R2, Vout = Vin * R2 / (R1 + R2)
De la ecuación anterior, podemos deducir el valor de R2 como
R2 = Vout * R1 / (Vin - Vout)
Donde R1 = resistencia conocida
R2 = Resistencia desconocida
Vin = voltaje producido en el pin 5V de Arduino
Vout = voltaje en R2 con respecto a tierra.
Nota: el valor de resistencia conocida (R1) elegido es 3.3KΩ, pero los usuarios deben reemplazarlo con el valor de resistencia de la resistencia que hayan elegido.
Entonces, si obtenemos el valor del voltaje a través de la resistencia desconocida (Vout), podemos calcular fácilmente la resistencia desconocida R2. Aquí hemos leído el valor de voltaje Vout usando el pin analógico A0 (ver el diagrama del circuito) y convertido esos valores digitales (0-1023) en voltaje como se explica en el Código a continuación.
Si el valor de la resistencia conocida es mucho mayor o menor que la resistencia desconocida, el error será mayor. Por lo tanto, se recomienda mantener el valor de resistencia conocido más cerca de la resistencia desconocida.
Explicación del código:
El programa completo de Arduino y el video de demostración para este proyecto se dan al final de este proyecto. El código se divide en pequeños fragmentos significativos y se explica a continuación.
En esta parte del código, vamos a definir los pines en los que la pantalla LCD 16 * 2 está conectada a Arduino. El pin RS de 16 * 2 lcd está conectado al pin digital 2 de arduino. Habilitar pin de 16 * 2 lcd está conectado al pin digital 3 de Arduino. Los pines de datos (D4-D7) de 16 * 2 lcd están conectados a los pines digitales 4,5,6,7 de Arduino.
LiquidCrystal lcd (2,3,4,5,6,7); // rs, e, d4, d5, d6, d7
En esta parte del código, estamos definiendo algunas variables que se utilizan en el programa. Vin es el voltaje proporcionado por el pin de 5V de arduino. Vout es el voltaje en la resistencia R2 con respecto a tierra.
R1 es el valor de resistencia conocida. R2 es el valor de la resistencia desconocida.
int Vin = 5; // voltaje en el pin de 5V del arduino float Vout = 0; // voltaje en el pin A0 de arduino float R1 = 3300; // valor de la resistencia conocida float R2 = 0; // valor de resistencia desconocida
En esta parte del código, vamos a inicializar la pantalla lcd de 16 * 2. Los comandos se dan a una pantalla lcd de 16 * 2 para diferentes configuraciones, como pantalla clara, visualización en el cursor parpadeando, etc.
lcd.begin (16,2);
En esta parte del código, el voltaje analógico en la resistencia R2 (pin A0) se convierte a valor digital (0 a 1023) y se almacena en una variable.
a2d_data = analogRead (A0);
En esta parte del código, el valor digital (0 a 1023) se convierte en voltaje para cálculos adicionales.
buffer = a2d_data * Vin; Vout = (búfer) /1024.0;
El ADC de Arduino Uno tiene una resolución de 10 bits (por lo que los valores enteros de 0-2 ^ 10 = 1024 valores). Esto significa que mapeará voltajes de entrada entre 0 y 5 voltios en valores enteros entre 0 y 1023. Entonces, si multiplicamos el valor de entrada anlogValue a (5/1024), obtenemos el valor digital del voltaje de entrada. Aprenda aquí cómo usar la entrada ADC en Arduino.
En esta parte del código, el valor real de la resistencia desconocida se calcula utilizando el procedimiento explicado anteriormente.
búfer = Vout / (Vin-Vout); R2 = tampón R1 *;
En esta parte del código, el valor de la resistencia desconocida está impreso en una pantalla lcd de 16 * 2.
lcd.setCursor (4,0); lcd.print ("ohmímetro"); lcd.setCursor (0,1); lcd.print ("R (ohmios) ="); impresión lcd (R2);
Esto es, podemos calcular fácilmente la resistencia de una resistencia desconocida usando Arduino. Verifique también:
- Medidor de frecuencia Arduino
- Medidor de capacitancia Arduino