PROYECTO ELEVADOR DE TIJERA.
para empezar , comencé a diseñar el engranaje en el autocad junto a su carril de 28 dientes.la cosa no fue tan bien como esperábamos por el tema de poder modificar el engranaje o el carril.
mas tarde encontramos la opción de crearla desde el solid-edge y estos son los resultados.
engranaje
carril
fusión piñón y carril en solid edge.
Después de esto decidimos hacer que la transmisión del motor fuese con unas gomas en el centro , la cosa no salio bien, por que patinaba con el motor y no levantaba la estructura.

foto piezas negras
El pre-ensamble en estos momentos seria el siguiente :
Foto ensamble solid edge.
También decidimos crear una polea con la impresora 3d en filamento flexible, pero no la hacia bien y unos rodillos.
foto rodillos amarillos
foto polea roja flexible
Mas adelante decidimos crear otro engranaje y otro carril y añadir otro motor para que pudiese con mas peso, pero necesitábamos un método de transmisión mas eficiente. decidimos crear dos engranajes para acoplar a los motores.
foto engranajes amarillos
ahora el problema a resolver es como colocar eso motores, y donde .Se opto por utilizar un carril que se regulara y se acoplara y una pieza para ajustar y colocar el motor.

foto acople ,motor amarilla .
aun con esas modificaciones , no hacia el recorrido y se opto por varias cosas:
- retirar de los engranajes negros y de el esqueleto unos bordes que friccionaban mas de la cuenta.

foto tuerca en engranaje
Después de esto empezamos, comenzamos a diseñar el programa de control para el arduino, copiamos uno existente y lo modificamos para que tenga 2 finales de carrera y este es el resultado.
//definicion de pins
const int motorPin1 = 8; // 28BYJ48 In1
const int motorPin2 = 9; // 28BYJ48 In2
const int motorPin3 = 10; // 28BYJ48 In3
const int motorPin4 = 11; // 28BYJ48 In4
const int botonizquierda = 2;
const int botonderecha = 3;
const int finalcarsubir = 4; //pin del final de carrera al subir
const int finalcarbajar = 5; //pin del final de carrera al bajar
bool giroderecha = LOW ;
bool giroizquierda = LOW ;
bool fcsubir = LOW ; //variable para leer el pin
bool fcbajar = LOW ; //variable para leer el pin
//definicion variables
int motorSpeed = 1000; //variable para fijar la velocidad
int stepCounter = 0; // contador para los pasos
int stepsPerRev = 2130; // pasos para una vuelta completa
//tablas con la secuencia de encendido (descomentar la que necesiteis)
//secuencia 1-fase
//const int numSteps = 4;
//const int stepsLookup[4] = { B1000, B0100, B0010, B0001 };
//secuencia 2-fases
//const int numSteps = 4;
//const int stepsLookup[4] = { B1100, B0110, B0011, B1001 };
//secuencia media fase
const int numSteps = 8;
const int stepsLookup[8] = { B1000, B1100, B0100, B0110, B0010, B0011, B0001, B1001 };
void setup()
{
//declarar pines como salida
pinMode(motorPin1, OUTPUT);
pinMode(motorPin2, OUTPUT);
pinMode(motorPin3, OUTPUT);
pinMode(motorPin4, OUTPUT);
pinMode(botonderecha, INPUT);
pinMode(botonizquierda, INPUT);
pinMode(finalcarsubir, INPUT);
pinMode(finalcarbajar, INPUT);
}
void loop()
{
giroderecha = digitalRead(botonderecha);
giroizquierda = digitalRead(botonizquierda);
fcsubir = digitalRead(finalcarsubir); //variable para leer el pin
fcbajar = digitalRead(finalcarbajar); //variable para leer el pin
if (giroizquierda==HIGH&&giroderecha==LOW)
{
if (fcbajar==LOW)
{
anticlockwise();
delayMicroseconds(motorSpeed);
}
}
if (giroizquierda==LOW&&giroderecha==HIGH)
{
if (fcsubir==LOW)
{
clockwise();
delayMicroseconds(motorSpeed);
}
}
}
void clockwise()
{
stepCounter++;
if (stepCounter >= numSteps) stepCounter = 0;
setOutput(stepCounter);
}
void anticlockwise()
{
stepCounter--;
if (stepCounter < 0) stepCounter = numSteps - 1;
setOutput(stepCounter);
}
void setOutput(int step)
{
digitalWrite(motorPin1, bitRead(stepsLookup[step], 0));
digitalWrite(motorPin2, bitRead(stepsLookup[step], 1));
digitalWrite(motorPin3, bitRead(stepsLookup[step], 2));
digitalWrite(motorPin4, bitRead(stepsLookup[step], 3));
}
tras diseñar el programa nos queda colocar la placa de arduino y pasar el diseño de los pulsadores y todos los pines a una placa soldada. Ademas le añadiremos dos salidas (las salidas de los pulsadores) para meter en un automata y poder accionarlo desde este.

foto colocación de arduino

foto placa soldada
También tenemos que colocar la placa en un lugar , tras unas medidas el diseño queda tal que asi.
Tras una medida erronea, se retira un cacho de la parte de detrás y se pega con puntas calientes.
base para colocar la placa
Colocamos los finales de carrera y ajustamos con bridas, también colocamos los driver de los motores con medias bridas.

foto final de carrera y driver de motor.
Después de todo esto , nos queda hacer la pieza que va encima, ocurrió un problema en la impresión y se opto por "fundirle" lo que se rompió y mejorar su rigidez con puntas calientes, ademas se hizo unos agujeros y se paso un alambre para que siempre este a la misma altura.

foto parte blanca base elevador .
el ensamblaje final seria el siguiente.
foto elevador completo.



Comentarios
Publicar un comentario