Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Integrada
LABORATORIO N° 16
Integrantes:
Sección: A
2023
ÍNDICE DE CONTENIDOS
1. Fundamento Teórico............................................................................................................ 4
ESP-32............................................................................................................................... 4
Arduino IDE........................................................................................................................ 5
Robots cartesianos.............................................................................................................6
2. Desarrollo.............................................................................................................................7
Figura 1. Gripper sujetando la ficha............................................................................. 9
Figura 2. Gripper soltando la ficha en la rampa......................................................... 10
3. Conclusiones...................................................................................................................... 11
ÍNDICE DE FIGURAS
ESP-32
ESP32 es un microcontrolador de bajo costo y bajo consumo de energía que combina Wi-Fi
y Bluetooth de doble modo. Fue desarrollado por Espressif Systems y es una evolución del
El ESP32 cuenta con un procesador de doble núcleo, lo que le permite manejar tareas más
complejas y ejecutar múltiples hilos de manera eficiente. Además, tiene una amplia gama
de interfaces y periféricos, como UART, SPI, I2C, PWM, ADC, entre otros, lo que lo hace
Una de las características más destacadas del ESP32 es su capacidad para conectarse a
redes Wi-Fi y Bluetooth. Esto permite la comunicación inalámbrica con otros dispositivos y
sistemas y dispositivos.
conectividad inalámbrica y un control de bajo nivel. Además, hay una comunidad activa de
utilizado para programar y cargar código en las placas Arduino. Fue creado
Arduino IDE proporciona una interfaz gráfica sencilla y fácil de usar que permite a los
usuarios escribir, compilar y cargar código en las placas Arduino de manera rápida y
sencilla, incluso sin tener conocimientos profundos de programación. Es compatible con los
acceso a los pines y periféricos de la placa Arduino, como sensores, actuadores, pantallas,
Además de escribir y compilar el código, Arduino IDE también permite cargar el programa
código, compilarlo y cargarlo en la placa de manera rápida para ver los resultados en
tiempo real.
Arduino IDE también ofrece herramientas de depuración básicas y un monitor serial que
permite visualizar los mensajes y datos enviados o recibidos a través del puerto serial de la
placa Arduino.
Robots cartesianos
Los robots cartesianos, también conocidos como robots de coordenadas rectangulares, son
por tener tres ejes lineales ortogonales (X, Y, Z) que se mueven en dirección horizontal,
A diferencia de otros tipos de robots industriales, como los robots SCARA o los robots
precisa y repetitiva en una configuración rectangular, siguiendo una trayectoria definida por
Debido a su estructura rígida y diseño simple, son capaces de manejar cargas pesadas y
Además, los robots cartesianos suelen ser programados utilizando software específico que
y el control del robot, ya que los operadores pueden especificar las posiciones exactas a las
a través de la interfaz IO industrial pueda controlar los movimientos tanto del eje X, eje Z y
del gripper. Este microcontrolador funciona con las salidas del PLC S7-300, 1Y1, 1Y2, 2Y1
y 3Y1, por lo que el PLC se encarga del control del módulo y el ESP32 exclusivamente del
movimiento de los motores, teniendo en cuenta los finales de carrera para evitar colisiones.
void setup() {
pinMode(IN0,INPUT); // 1Y1
pinMode(IN1,INPUT); // 1Y2
pinMode(IN2,INPUT); // 2Y1
pinMode(IN3,INPUT); // 3Y1
pinMode(IN4,INPUT); // FINAL DE CARRERA DERECHA
pinMode(IN5,INPUT); // FINAL DE CARRERA IZQUIERDA
pinMode(ADC4,INPUT); // FINAL DE CARRERA ARRIBA
pinMode(ADC5,INPUT); // FINAL DE CARRERA ABAJO
pinMode(OUT0,OUTPUT); // MOTOR DERECHA
pinMode(OUT1,OUTPUT); // MOTOR IZQUIERDA
pinMode(OUT2,OUTPUT); // MOTOR ABAJO
pinMode(OUT3,OUTPUT); // MOTOR ARRIBA
servo.attach(OUT4); // GRIPPER
//pinMode(OUT5,OUTPUT); // PIN PARA DISPLAY
void loop() {
int FCR = digitalRead(IN4); // EJE X FINAL DE CARRERA RIGHT
int FCL = digitalRead(IN5); // EJE X FINAL DE CARRERA LEFT
int FCU = analogRead(ADC4); // EJE Z FINAL DE CARRERA UP
int FCD = analogRead(ADC5); // EJE Z FINAL DE CARRERA DOWN
int XR = digitalRead(IN0); // 1Y1
int XL = digitalRead(IN1); // 1Y1
int ZD = digitalRead(IN2); // 2Y1
int SG = digitalRead(IN3); // 3Y1
int ADCLIM = 300; //UMBRAL DE APROX 3V PARA ENTRADAS ANALOGICAS
}
// 3Y1 OFF - GRIPER ABIERTO
if(SG==0){
servo.write(10);
// 3Y1 ON - GRIPPER CERRADO
}else{
servo.write(80);
}
}
- Utilizando los acoples y diseños adecuados, los motores eléctricos pueden emular