En este tutorial veremos como crear un medidor de inductores con arduino nano, un display oled y otros componentes electrónicos. Armaremos el circuito el cual incluye el circuito impreso, analizaremos el código fuente, y finalmente vamos a probar el funcionamiento del mismo, bobinas o inductores de wurth electronics.
Tal vez pueda interesarte proyectos en arduino, pic, robótica, telecomunicaciones, suscribete en http://www.youtube.com/user/carlosvolt?sub_confirmation=1 mucho videos con código fuentes completos y diagramas
En este circuito cuyo componente principal en un arduino nano, para el control del display oled, medir y calcular el valor una bobina o inductor , cuyo valor es desconocido, este es un medidor económico de presición bastante buena, como pudimos ver el video expuesto más arriba.
La bobina o inductor es un componente pasivo hecho de un alambre aislado que por su forma (espiras de alambre arrollados) almacena energía en forma de campo magnético, por un fenómeno llamado autoinducción. El inductor es diferente del condensador / capacitor, que almacena energía en forma de campo eléctrico.
Muchas veces al desarmar una placa, para extraer sus componentes, o repararlas, nos encontramos con inductores que no poseen en la serigrafía del componente una referencia, que nos permita identificarla, es por esto, que este dispositivo, se puede volver un gran aliado a la hora de reparar o extraer este tipo de componentes electrónicos.
Los inductores o bovinas se meden en una unidad llamada Henrio, cuyo símbolo se representa con la letra H, para nuestro medidor vamos a mostrar en el display dos sub múltiplos de esta unidad con con el mH (mili Henrio) y el uH (micro Henrio).
El dispositivo se basa en la medición un circuito oscilador LC (Inductor/Capacitor). Estos dos componentes se conectan en paralelo, y le aplicamos un pulso de tensión durante un determinado tiempo a este circuito LC, el mismo comenzará a oscilar una frecuencia determinada por el valor de estos dos componentes, a esto se le conoce como frecuencia de resonancia.
Vamos a aplicar un pulso de tensión de 5 voltios al circuito LC. Cargamos el circuito LC por un tiempo y a continuación volvemos a 0 voltios. El pulso generará que el circuito resuene creando una señal sinusoidal, que se irá atenuando con el tiempo, debido a la resistencia interna del propio circuito, este oscilará a la frecuencia de resonancia dependiendo de los valores del inductor y capacitor. Vamos a emplear el arduino para obtener la frecuencia y con la siguiente formula aplicada en el código fuente del arduino, nos permitirá saber el valor del inductor cuyo valor desconocemos.
Este medidor tiene un rango de 80 uH a 3oooo uH aproximadamente
Componentes electrónicos
Un resistor de 1 Kohm
Un Diodo 1N4007
Un capacitor de 2,2 uF de poliester
Un zócalo de 14 pines
Un resistor de 150 Ohm
Un resistor de 330 Ohm
Arduino Nano
El Arduino Nano es una placa pequeña, completa y compatible con la placa de pruebas basada en el ATmega328 (Arduino Nano 3.x). Tiene más o menos la misma funcionalidad del Arduino Duemilanove, pero en un paquete diferente. Solo carece de un conector de alimentación de CC y funciona con un cable USB Mini-B en lugar de uno estándar.
Microcontrolador | ATmega328 |
Arquitectura | AVR |
Tensión de funcionamiento | 5 V |
Memoria flash | 32 KB de los cuales 2 KB utiliza el gestor de arranque |
SRAM | 2 KB |
Velocidad de reloj | 16 MHz |
Pines analógicos IN | 8 |
EEPROM | 1 KB |
Corriente CC por pines de E / S | 40 mA (pines de E / S) |
Voltaje de entrada | 7-12 V |
Pines de E / S digitales | 22 (6 de los cuales son PWM) |
Salida PWM | 6 |
El consumo de energía | 19 mA |
Tamaño de PCB | 18 x 45 mm |
Peso | 7 g |
Diagrama de pines
Display oled sh1106
Se trata de un módulo de pantalla OLED monocromática DE 128×64 puntos con interface I2C .Que presenta varias ventajas en comparación con pantallas LCD, y podemos destacar su alto brillo, un muy buen contraste, un ángulo de visión más amplio, y bajo consumo de energía. ES compatible con Arduino Rasberry Pi y microcontroladores PIC entre otros. Trabaja con niveles lógicos de 3.3V a 5V tiene un angulo de visión mayor a los 160 grados. el Tamaño de la pantalla es de 1,3 pulgadas. Se alimenta con un voltaje de 3.3V a 5V Se lo puede usar en aplicaciones como relojes inteligentes, MP3, termómetros, instrumentos, y proyectos varios, etc.
Librería
Características
- Interface: I2C(3.3V / 5V logic level)
- Resolution: 128 x 64
- Angle of view: >160 degree
- Display color: Blue
- Display size: 1.3 inch
- Driver IC: SH1106
- Power supply: DC 3.3V~5V
- Operating temperature: -20~70’C
- Application: smart watch, MP3, thermometer, instruments, DIY projects, etc.
Un diodo led de 5 mm
Un circuito integrado LM339
Detalles del comparador LM339
El LM339N tiene una gran función en aplicaciones para generar señales, modulación de señales, detección de señales, entre otras aplicaciones más y es un bloque analógico esencial en muchos circuitos. Este comparador está diseñado para su uso en detección de nivel, detección de bajo nivel y aplicaciones de memoria, aplicaciones electrónicas industriales y automotrices de consumo.
El LM339N tiene un funcionamiento muy sencillo, por ejemplo, este circuito integra internamente cuatro amplificadores operacionales, dependiendo a la aplicación y al arreglo que quieras aplicar con el LM339N sera la función que tendrás, algunas de las aplicaciones son:
1 -Amplificador de Instrumentación.
2 -Seguidor de voltaje para el acoplo de impedancias.
3 -Comparador.
4 -Convertidor de corriente a voltaje.
5 -Amplificador diferencial.
Características
- Amplio rango de tensiones de alimentación: 2v – 36v, o ±1V – ±18V
- Bajo consumo, solo 800 uA, independiente de la fuente de alimentación
- Rango tensiones de entrada es igual a la tensión de alimentación
- Salida compatible con tecnologías TTL, DTL, ETC, MOS y CMOS
Aplicaciones del comparador LM339
• Multímetros digitales.
• Control de motores.
• Interfaces transductoras.
• Sistemas de adquisición de datos.
• Procesos de control industrial.
• Televisores y Home Theaters.
Pines hembra
Un zócalo para el arduino nano
Un PCB
Descargar archivo gerber gratis —> medidor de bobinas
Circuito
Código Fuente
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
#include "U8glib.h"//Librería para el control del display oled U8GLIB_SH1106_128X64 u8g(U8G_I2C_OPT_NONE);// I2C / TWI // Se habilita esta linea según el display a usar en este caso el driver SH1106 double IPulso, frequency, capacitor, valormH, valoruH, inductance; int muestras = 250; const int pulsoEntrada = 11; const int pulsoSalida = 12; void setup() { Serial.begin(9600); pinMode(pulsoEntrada, INPUT);// Lectura del pulso de entrada pinMode(pulsoSalida, OUTPUT);// Carga de la circuito resonante LC delay(2000); } void loop() { valoruH = lectura(); valormH = valoruH / 1000; //Muestra el valor en mH en el terminal serial Serial.print("Valor: "); Serial.print(valormH); Serial.println(" mH"); //Muestra el valor en uH en el terminal serial Serial.print("Valor: "); Serial.print(valoruH); Serial.println(" uH"); delay(1); //Display u8g.firstPage(); do { draw();//Llama a la función draw } while( u8g.nextPage() ); } //Funcion double lectura() { double sumaInductancia = 0; for (int contador = 0; contador < muestras ; contador++) { digitalWrite(pulsoSalida, HIGH); delay(5);// Tiempo para cargar la bobina. digitalWrite(pulsoSalida, LOW); delayMicroseconds(100);// verificar que mide la resonancia. IPulso = pulseIn(pulsoEntrada, HIGH, 5000);//Transcurrido este tiempo pulsein devuelve un varlor 0 if (IPulso > 0.1) { capacitor = 2.12E-6;// Medir la capacidad del capacitor para mayor presición y cambiar ese valor obtenido frequency = 1.E6 / (2 * IPulso); inductance = 1. / (capacitor * frequency * frequency * 4.*3.14159 * 3.14159); inductance = inductance*1E6; sumaInductancia += inductance; } } return (sumaInductancia / muestras); } //Función para mostrar los datos en el display void draw(void) { //Imprimimos en pantalla el valor de la inductancia en henrios obtenida en unidad en mH y uH u8g.setFont(u8g_font_unifont); u8g.setPrintPos(0, 20); u8g.print("Valor Inductor");// //Muestra el valor mH u8g.setPrintPos(0, 40); u8g.print("mH: ");// u8g.setPrintPos(25, 40); u8g.print(valormH); //Muestra el valor uH u8g.setPrintPos(0, 60); u8g.print("uH: "); u8g.setPrintPos(25, 60); u8g.print(valoruH, 0); } |
PROYECTO RECOMENDADO