Professional Documents
Culture Documents
CÓDIGO DE LA
CARRERA NOMBRE DE LA ASIGNATURA
ASIGNATURA
Ingeniería en Electrónica e
1113 Instrumentación y Sensores
Instrumentación
DURACIÓ
PRÁCTIC LABORATORIO
Circuitos Eléctricos N
A N° DE:
(HORAS)
3 TEMA: Encoder 2
1 OBJETIVOS
1.1 Analizar el funcionamiento de un circuito encoder para medir adecuadamente las RPM de un
motor.
1.2 Acondicionar la señal del encoder para poder mostrarla en una pantalla LCD.
1.3 Encontrar un algoritmo simple y eficiente para el sistema.
2 INSTRUCCIONES
A. EQUIPO Y MATERIALES NECESARIOS
Motor DC
Potenciómetro
Pantalla LCD
Módulo de Encoder
Arduino
Rueda
Cables
Fundamento Teórico
Motor DC
El motor de corriente continua (denominado también motor de corriente directa, motor CC o motor DC)
es una máquina que convierte la energía eléctrica en mecánica, provocando un movimiento rotatorio,
gracias a la acción que se genera del campo magnético.
El principal inconveniente de estas máquinas es el mantenimiento, muy caro y laborioso, debido
principalmente al desgaste que sufren las escobillas al entrar en contacto con las delgas.
Algunas aplicaciones especiales de estos motores son los motores lineales, cuando ejercen tracción
sobre un riel, o bien los motores de imanes permanentes. Los motores de corriente continua (CC)
también se utilizan en la construcción de servomotores y motores paso a paso. Además existen motores
de DC sin escobillas llamados brushless utilizados en el aeromodelismo por su bajo torque y su gran
velocidad.
Es posible controlar la velocidad y el par de estos motores utilizando técnicas de control de motores
CD.
Usaremos la variación de voltaje mediante un motor especial, para no requerir el uso de un PWM.
Pantalla LCD
Una pantalla de cristal líquido o LCD (sigla del inglés Liquid Crystal Display) es una pantalla delgada
y plana formada por un número de píxeles en color o monocromos colocados delante de una fuente de
luz o reflectora. A menudo se utiliza en dispositivos electrónicos de pilas, ya que utiliza cantidades muy
pequeñas de energía eléctrica.
Cada píxel de un LCD típicamente consiste en una capa de moléculas alineadas entre
dos electrodos transparentes, y dos filtros de polarización, los ejes de transmisión de cada uno que están
(en la mayoría de los casos) perpendiculares entre sí. Sin cristal líquido entre el filtro polarizante, la luz
que pasa por el primer filtro sería bloqueada por el segundo (cruzando) polarizador.
Arduino
Arduino (Estados Unidos) (Genuino a nivel internacional hasta octubre 2016), es una compañía
de hardware libre y una comunidad tecnológica que diseña y manufactura placas computadora de
desarrollo de hardware y software, compuesta respectivamente por circuitos impresos que integran
un microcontrolador y un entorno de desarrollo (IDE), en donde se programa cada placa.
El hardware consiste en una placa de circuito impreso con un microcontrolador, usualmente Atmel
AVR, puertos digitales y analógicos de entrada/salida,4 , los cuales pueden conectarse a placas de
expansión (shields), que amplían las características de funcionamiento de la placa Arduino. Asimismo,
posee un puerto de conexión USB desde donde se puede alimentar la placa y establecer comunicación
con el computador.
Fig. 3 Arduino
Módulo Encoder
Este dispositivo es muy útil ya que nos servirá para poder filtrar algo de ruido del motor, además de
adecuar de cierta manera la señal al arduino, haciéndonos más fácil la transmisión de datos.
Programación Utilizada:
#include <LiquidCrystal.h>
int encoder_pin = 2; //Pin 2, donde se conecta el encoder
unsigned int rpm = 0; // Revoluciones por minuto calculadas.
float velocity = 0; //Velocidad en [Km/h]
volatile byte pulses = 0; // Número de pulsos leidos por el Arduino en un segundo
unsigned long timeold = 0; // Tiempo
unsigned int pulsesperturn = 20; // Número de muescas que tiene el disco del encoder.
const int wheel_diameter = 64; // Diámetro de la rueda pequeña[mm]
static volatile unsigned long debounce = 0; // Tiempo del rebote.
int tx;
//// Configuración del Arduino /////////////////////////////////////////////////////////
LiquidCrystal lcd(7, 8, 9, 10, 11 , 12);
void setup(){
lcd.begin(16, 2);
lcd.print("RPM= ");
lcd.setCursor(0,1);
Serial.begin(9600); // Configuración del puerto serie
pinMode(encoder_pin, INPUT); // Configuración del pin nº2
attachInterrupt(0, counter, RISING); // Configuración de la interrupción 0, donde esta conectado.
pulses = 0;
rpm = 0;
timeold = 0;
Serial.print("Seconds ");
Serial.print("RPM ");
Serial.print("Pulses ");
Serial.println("Velocity[Km/h]");}
Diagrama de conexiones:
4 RESULTADOS OBTENIDOS
5 CONCLUSIONES
Se logró encontrar un algoritmo adecuado para medir con gran precisión las RPM del motor.
La rueda del motor es fundamental y su correcta elaboración es determinante.
Se logró mostrar los datos en la pantalla LCD sin ningún problema.
6 RECOMENDACIONES
Construír la rueda adecuadamente para tener la mayor precisión posible.
Utilizar un módulo de Encoder para facilitar el procedimiento.
Colocar un condensador de cerámico 104 en paralelo al motor para evitar el ruido.
Evaluado por:
Elaborado por:
Alcoser Efrain Ing. Jose Bucheli
Aldana Jair Docente de la asignatura