Está en la página 1de 15

Proyecto

Final
Electrónica Industrial

Nombre: Castillo Aguilar Melanie Daniela


Carrera: Ingeniería Mecatrónica
Fecha: 23/12/2020
Proceso Industrial
Objetivos

Objetivo General

Realizar un proceso industrial de seleccionador de objetos por su color

Objetivo especifico

 Hacer uso de una banda transportadora para mover los objetos


 Emplear un brazo robótico semejante a los que existen en la industria
 Realizar la selección usando el sensor TCS3200

Marco Teórico

o Cinta Transportadora

Las cintas transportadoras tienen la función fundamental de trasladar de manera eficiente todo tipo de
materiales o mercancías dentro de una planta de producción.

o ¿Cómo funcionan?

Las cintas transportadoras también se denominan transportadoras de banda, su funcionamiento consiste


en el movimiento de un soporte físico continuo, la banda o cinta, montado sobre unas plataformas de
dimensiones variables y que pueden contar con distintos tipos de accesorios. La velocidad y capacidad de
carga dependen tanto de las características del material a desplazar como del tipo de cinta transportadora.

Aunque su principio básico de funcionamiento pueda parecer simple (el movimiento de una banda debido
al giro de los tambores o poleas que a su vez son accionados por un motor); el sistema de una cinta
transportadora utilizada en la industria es bastante más complejo

o Componentes básicos
 La cinta o banda. - Usualmente se suele usar la tela engomada, principalmente derivados del
caucho. Se puede variar el número de capas y las calidades de revestimiento, también varían en
anchura y grosor según a la capacidad de carga.
 Transmisión: tambores y motor. - Los tambores son los rodillos que con su giro provocan el
avance de la cinta, el movimiento se genera en el tambor motriz al que irá conectado el motor.
El tambor de reenvío provoca el retorno de la banda. También se puede situar por debajo de la
cinta los tambores de desvío que se encargan de llevar la cinta al tambor de tensión.
 La estructura. - La estructura es normalmente metálica. Este chasis puede incorporar guías de
deslizamiento, así como carriles laterales o guías de plástico. Sobre la estructura se acoplan y
montan todos los elementos principales, esta estructura debe ser resistente, proporcionar
fiabilidad y durabilidad.
o ¿Qué es un Brazo Robótico?

En esencia la definición corta de un brazo robótico son “robots articulados” pues un brazo mecánico es
construido y elaborado con estructuras de carácter flexible y conformadas por articulaciones adaptables
que permiten ejecutar un amplio rango de movimientos y funciones simulando a un brazo humano.
Tienen como principal característica el cumplir la funciones de agilizar actividades, tareas y funciones que
requieren una actividad de repetividad y precisión con entornos humanos seguros; durante los procesos de
automatización de líneas de producción y manipulación de máquinas en diferentes industrias: Mecánica,
Minería, Automovilística, Farmacéutica, Alimenticia etc.

Los materiales con los que son fabricados los brazos mecánicos para el sector industrial principalmente
son: aluminio, fibra de carbono, acero y titanio.

o ¿Cómo funciona un brazo robótico?

El funcionamiento generalmente de los brazos robóticos es mediante la ejecución de un conjunto de


lenguajes de programación que establecen las principales funciones, además de la incorporación de
sensores que consolidan los objetivos de automatización para poder ejecutar las referencias por: fuerzas,
aceleración, temperatura, ubicación etc., durante la realización de sus actividades.

o Partes para el funcionamiento de un brazo robótico

Las partes o componentes que conforman un brazo robótico según sus principales actividades de
funcionamiento son:

 Controlador: Se constituye por un microordenador con unidad central encargado de calcular los
procesos, movimientos y comandos a ejecutar.
 Actuadores: Corresponde a los motores encargados de generar fuerza para los movimientos.
 Manipulador: Parte mecánica que cumple la función de realizar los movimientos de los brazos
mecánicos.
 Articulaciones y Muñeca: Sub partes de los manipuladores, y permiten generar los movimientos
lineales y angulares.
 Muñeca: Es una parte de los robots industriales encargada de realizar los movimientos de
elevación, desviación y giro, según el tipo de funciones.
 Mano robótica o Gripper: Es la extensión final de la muñeca y cumple la función de la tarea de
movimiento mecánico final, según sea el componente que corresponde a una pinza o alguna
herramienta que cumpla las funciones de las condiciones de trabajo.
Materiales

Servomotor Arduino Sensor TCS3200 Motor DC

Fuente 5V 10A Fuente voltaje Protoboard Madera


regulable

Programa

#include <Servo.h>

Servo servo1;

Servo myservo; // griper se abre con 120 y cierra con 80

Servo myservo1;

Servo myservo2;

Servo myservo3;

Servo myservo4;

Servo myservo5;

Servo myservo6;

int pos_myservo = 90;

int pos_myservo1 = 90; // Definimos las posiciones iniciales del robot

int pos_myservo2 = 90;

int pos_myservo3 = 110;

int pos_myservo4 = 110;

int pos_myservo5 = 90;


int pos_myservo6 = 100;

const int s0 = 1;

const int s1 = 2;

const int s2 = 3;

const int s3 = 4;

const int out = 5;

int rojo = 0;

int verde = 0;

int azul = 0;

int tiempo=50;

int i;

void setup(){

servo1.attach(6);

Serial.begin(9600);

pinMode(s0,OUTPUT);

pinMode(s1,OUTPUT);

pinMode(s2,OUTPUT);

pinMode(s3,OUTPUT);

pinMode(out,INPUT);

digitalWrite(s0,HIGH);

digitalWrite(s1,HIGH);

// Definicion del servo de la base

myservo.attach(7,500,2500);

myservo.write(pos_myservo);

delay(200);

myservo1.attach(8,500,2500); // izquierda attaches the servo on pin 9 to the servo object

myservo1.write(pos_myservo1); //Lo giramos a su posicion inicial

delay(200);
myservo2.attach(9,500,2500);

myservo2.write(pos_myservo2);

delay(200);

myservo3.attach(10,500,2500);

myservo3.write(pos_myservo3);

delay(200);

myservo4.attach(11,500,2500);

myservo4.write(pos_myservo4);

delay(200);

myservo5.attach(13,500,2500);

myservo5.write(pos_myservo5);

delay(200);

myservo6.attach(12,500,2500);

myservo6.write(pos_myservo6);

delay(1000);

void loop(){

color();

Serial.print(" ");

Serial.print(rojo, DEC);

Serial.print(" ");

Serial.print(verde, DEC);

Serial.print(" ");
Serial.print(azul, DEC);

if (rojo < azul && verde > azul && rojo < 35)

Serial.println(" Rojo");

servo1.write(0);

delay(6000);

for(i=90;i<=160;i++){

myservo.write(i);

delay(tiempo);

for(i=90;i<=140;i++){

myservo5.write(i);

delay(tiempo);

for(i=110;i>=60;i--){

myservo4.write(i);

delay(tiempo);

for(i=90;i<=100;i++){

myservo1.write(i);

myservo2.write(180-i);

delay(tiempo);

for(i=110;i<=160;i++){

myservo3.write(i);

delay(tiempo);

}
for(i=100;i>=50;i--){

myservo6.write(i);

delay(tiempo);

for(i=60;i<=150;i++){

myservo4.write(i);

delay(tiempo);

for(i=160;i>=70;i--){

myservo.write(i);

delay(tiempo);

for(i=150;i>=130;i--){

myservo4.write(i);

delay(tiempo);

for(i=50;i<=100;i++){

myservo6.write(i);

delay(tiempo);

for(i=130;i<=150;i++){

myservo4.write(i);

delay(tiempo);

myservo.write(pos_myservo);

myservo1.write(pos_myservo1);

myservo2.write(pos_myservo2);

myservo3.write(pos_myservo3);

myservo4.write(pos_myservo4);
myservo5.write(pos_myservo5);

myservo6.write(pos_myservo6);

else if (azul < rojo && azul < verde && verde < rojo)

Serial.println(" Azul");

servo1.write(90);

delay(6000);

for(i=90;i<=160;i++){

myservo.write(i);

delay(tiempo);

for(i=90;i<=140;i++){

myservo5.write(i);

delay(tiempo);

for(i=110;i>=60;i--){

myservo4.write(i);

delay(tiempo);

for(i=90;i<=100;i++){

myservo1.write(i);

myservo2.write(180-i);

delay(tiempo);

for(i=110;i<=160;i++){

myservo3.write(i);
delay(tiempo);

for(i=100;i>=50;i--){

myservo6.write(i);

delay(tiempo);

for(i=60;i<=150;i++){

myservo4.write(i);

delay(tiempo);

for(i=160;i>=70;i--){

myservo.write(i);

delay(tiempo);

for(i=150;i>=130;i--){

myservo4.write(i);

delay(tiempo);

for(i=50;i<=100;i++){

myservo6.write(i);

delay(tiempo);

for(i=130;i<=150;i++){

myservo4.write(i);

delay(tiempo);

myservo.write(pos_myservo);

myservo1.write(pos_myservo1);

myservo2.write(pos_myservo2);
myservo3.write(pos_myservo3);

myservo4.write(pos_myservo4);

myservo5.write(pos_myservo5);

myservo6.write(pos_myservo6);

else if (rojo > verde && azul > verde )

Serial.println(" Verde");

servo1.write(180);

delay(6000);

for(i=90;i<=160;i++){

myservo.write(i);

delay(tiempo);

for(i=90;i<=140;i++){

myservo5.write(i);

delay(tiempo);

for(i=110;i>=60;i--){

myservo4.write(i);

delay(tiempo);

for(i=90;i<=100;i++){

myservo1.write(i);

myservo2.write(180-i);

delay(tiempo);

}
for(i=110;i<=160;i++){

myservo3.write(i);

delay(tiempo);

for(i=100;i>=50;i--){

myservo6.write(i);

delay(tiempo);

for(i=60;i<=150;i++){

myservo4.write(i);

delay(tiempo);

for(i=160;i>=70;i--){

myservo.write(i);

delay(tiempo);

for(i=150;i>=130;i--){

myservo4.write(i);

delay(tiempo);

for(i=50;i<=100;i++){

myservo6.write(i);

delay(tiempo);

for(i=130;i<=150;i++){

myservo4.write(i);

delay(tiempo);

myservo.write(pos_myservo);
myservo1.write(pos_myservo1);

myservo2.write(pos_myservo2);

myservo3.write(pos_myservo3);

myservo4.write(pos_myservo4);

myservo5.write(pos_myservo5);

myservo6.write(pos_myservo6);

else{

Serial.println(" ");

delay(900);

void color()

digitalWrite(s2, LOW);

digitalWrite(s3, LOW);

rojo = pulseIn(out, digitalRead(out) == HIGH ? LOW : HIGH);

digitalWrite(s3, HIGH);

azul = pulseIn(out, digitalRead(out) == HIGH ? LOW : HIGH);

digitalWrite(s2, HIGH);

verde = pulseIn(out, digitalRead(out) == HIGH ? LOW : HIGH);

Planos
Diseño
Fuentes de alimentación:

Video

https://drive.google.com/file/d/1o5wuSe36IgCxpKdgugSHHrBiKLA2WLhZ/view?usp=sharing

Conclusionesº

Se logró el objetivo del proyecto, se hizo uso de un brazo robótico, con una cinta transportadora, hacemos
uso de un sensor de color que nos ayudara en la selección de los objetos.

También podría gustarte