ENCODER
1st Carlos Ortiz
Ingeniería Mecatrónica
Universidad ECCI
Bogotá, Colombia
[Link]@[Link]
I. RESUMEN Su funcionamiento se basa en la detección de cambios en la
posición angular del eje mediante patrones de líneas o señales
El presente trabajo se trabaja el enconder en el cual
eléctricas codificadas, y su uso es amplio en aplicaciones
realizamos ya que este sensor es algo costoso y de manera
industriales, médicas y de control de procesos.
practica como lo evidenciaremos en este trabajo.
Palabras claves—Enconder , Arduino, led, sensor.
II. INTRODUCCIÓN
Un codificador rotativo es un tipo de sensor que convierte el
movimiento mecánico de un eje o dispositivo rotativo en una
señal eléctrica que puede ser procesada por un controlador o
una computadora. Hay dos tipos principales de codificadores Ilustración 1 Enconder rotativo
rotativos: los codificadores incrementales y los codificadores
absolutos. Los codificadores rotativos se utilizan en una amplia IV. METODOLOGÍA
variedad de aplicaciones, como en motores y controladores de En esta práctica de laboratorio realizamos un contador de
servo, robots industriales, maquinaria CNC, sistemas de rotación de motor y con un sistema de sensores pudimos saber
control de posición y muchos otros dispositivos mecánicos. En cuántas vueltas y que tiempo realizaba su conteo
resumen, los codificadores rotativos son componentes
esenciales en la medición y el control precisos del movimiento IV-A. Diseño Electrónico
rotativo.
III. MARCO TEÓRICO En esta practica resaltamos la forma que se uso el motor para
realizar el encoder
Existen dos tipos principales de codificadores rotativos: los
codificadores incrementales y los codificadores absolutos. Los
codificadores incrementales producen una serie de pulsos
eléctricos que se utilizan para contar el número de revoluciones
y la velocidad del eje, mientras que los codificadores absolutos
producen una señal eléctrica única para cada posición angular
del eje. Los codificadores absolutos proporcionan una mayor
precisión y resolución en la medición de la posición, pero son
más costosos que los codificadores incrementales.
Ilustración 2 Enconder método casero
Los codificadores rotativos se utilizan en una amplia variedad
de aplicaciones, desde sistemas de control de posición y IV-B. Diseño de software
movimiento en maquinaria industrial, hasta robots, equipos
médicos, sistemas de control de procesos, entre otros. La #include <LiquidCrystal.h>
información proporcionada por los codificadores rotativos es LiquidCrystal lcd(8,9,10,11,12,13);
esencial para el control preciso del movimiento rotativo en int sensor = 4;
estas aplicaciones, lo que permite un rendimiento óptimo del unsigned long start_time = 0;
sistema y una mayor eficiencia en el uso de la energía. unsigned long end_time = 0;
En resumen, el codificador rotativo es un componente esencial int steps=0;
en la medición y el control precisos del movimiento rotativo. float steps_old=0;
float temp=0; (1)
float rpm=0;
int POT=A0; V. CONCLUSIONES
int VELOCIDAD; Se analiza como pudimos realizar un enconder casero
int MOTOR=3; mediante un sensor óptico y realizando conteos de rotación
int VALOR; para asi poder sacar cuantas vueltas genera este y a que
velocidad puede trabajar.
void setup()
{ El codificador rotativo es un componente clave en la
VALOR=analogRead(POT); medición y el control precisos del movimiento rotativo. Se
VELOCIDAD=VALOR/4;// 0 hasta 1023/4= 0 hasta 255 basa en la detección de cambios en la posición angular del eje
analogWrite(MOTOR,VALOR); o dispositivo rotativo a través de patrones de líneas o señales
eléctricas codificadas, que se leen mediante un sensor y se
convierten en señales eléctricas para su procesamiento por un
[Link](16, 2); controlador o una computadora.
pinMode(sensor,INPUT_PULLUP);
[Link](0,0); Los codificadores rotativos se utilizan en una amplia variedad
[Link]("VUELTAS: "); de aplicaciones, desde sistemas de control de posición y
[Link](0,1); movimiento en maquinaria industrial, hasta robots, equipos
[Link]("RPM: "); médicos, sistemas de control de procesos, entre otros.
} Proporcionan una información esencial para el control preciso
del movimiento rotativo en estas aplicaciones, lo que permite
void loop() un rendimiento óptimo del sistema y una mayor eficiencia en
{ el uso de la energía.
VALOR=analogRead(POT); REFERENCIAS
VELOCIDAD=VALOR/4;// 0 hasta 1023/4= 0 hasta 255 [1] [Link]
analogWrite(MOTOR,VALOR);
start_time=millis();
end_time=start_time+1000;
while(millis()<end_time)
{
if(digitalRead(sensor))
{
steps=steps+1;
while(digitalRead(sensor));
}
[Link](10,0);
[Link](steps);
}
temp=steps-steps_old;
steps_old=steps;
rpm=(temp/20*60); //n° de huecos de la rueda
[Link](6,1);
[Link](rpm);
Código de uso para enconder