Informe del Miniwarbot
ASIGNATURA: y Microprocesadores II SIGLA:
SEMESTRE: 6 CARRERA: Ingeniería Biomédica
DOCENTE: Ing. Roberto Verástegui
- Castro Mercier Reyza 12865978LP
APELLIDOS Y
- Choque Calle Rodrigo 10921644LP
NOMBRES: CI:
- Flores Reyes Evans 9165708LP
9151743LP
- Villan Limachi Nicole
FIRMA: INICIAL PATERNO:
FECHA: 18 de noviembre de 2023
C- C- F-V
CUANTITATIVA: CUALITATIVA:
EVALUACIÓN:
1. Objetivo
1.1. Objetivo general:
• Realizar un mini-warbot con las especificaciones técnicas requeridas.
1.2. Objetivos específicos:
• Diseñar el circuito para un mini-warbot con un arma principal.
• Realizar un código para el movimiento y control del arma.
• Diseñar un chasis resistente.
• Respetar las medidas de 30cm*30cm*30cm (ancho, largo y altura) para la competencia de
mini-warbots.
• No exceder 10kg.
2. Marco teórico:
Los mini-warbots, también conocidos como robots de combate en miniatura, constituyen una
categoría emergente en el ámbito de la robótica, destacándose por su tamaño compacto y su
capacidad para participar en enfrentamientos competitivos. Estos diminutos dispositivos son
diseñados con el propósito específico de competir entre sí en un entorno controlado.
En términos de diseño, los mini-warbots suelen incorporar tecnologías avanzadas, como motores
de alta potencia, sistemas de control inteligente y materiales resistentes para resistir impactos y
colisiones durante las peleas. Aunque su tamaño reducido puede presentar desafíos en términos de
espacio para componentes y diseño estructural, estos robots miniatura demuestran la aplicación de
principios de ingeniería eficientes para lograr un rendimiento óptimo en la arena de combate. La
innovación en el diseño y la ingeniería de mini-warbots se centra en maximizar la eficacia táctica
y estratégica dentro de las limitaciones de tamaño y peso.
Las competiciones de mini-warbots no solo fomentan la creatividad y la destreza técnica entre los
participantes, sino que también sirven como plataformas educativas, ofreciendo oportunidades
valiosas para aprender sobre ingeniería, programación y trabajo en equipo. Además, estas
competiciones promueven el desarrollo de habilidades en el ámbito STEM, en nuestro caso se
desarrollara el mini-warbot gracias a todos los conocimientos adquiridos anteriormente dentro y
fuera de la carrera como tal.
3. Lista de materiales, insumos y equipos:
1 Arduino 4 Motores DC y 4 llantas
1 modulo rele
- 1 modulo bluetooth
1 Puente H L298N 3 Baterias recargables CAFINI 18650 DE
4.2V
1 Porta batería de 3 ranuras 1 Switch
1 plano de hierro, arma principal 1 motor con una polea, encargada del
movimiento giratorio del arma principal
1 cargador para las baterías 1 Lamina de madera Trupan
1 Lamina de calamina plana
4. Circuito aplicado:
4.1. Lay out del circuito:
4.2. Circuito armado:
4.3. Código:
#define in1 3//L298n Motor Driver pins.
#define in2 5
#define in3 6
#define in4 11
#define LEDF 9
#define LEDB 8
#define HORN 7
#define LEDP 4
int command;
int Speed = 204; /
int Speedsec;
int buttonState = 0;
int lastButtonState = 0;
int Turnradius = 0;
int brakeTime = 45;
int brkonoff = 1;
void setup() {
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT);
pinMode(in4, OUTPUT);
pinMode(LEDF, OUTPUT);
pinMode(LEDB, OUTPUT);
pinMode(HORN, OUTPUT);
pinMode(LEDP, OUTPUT);
[Link](9600); }
void loop() {
if ([Link]() > 0) {
command = [Link]();
Stop();
switch (command) {
case 'F':
forward();
break;
case 'B':
back();
break;
case 'L':
left();
break;
case 'R':
right();
break;
case 'G':
forwardleft();
break;
case 'I':
forwardright();
break;
case 'H':
backleft();
break;
case 'J':
backright();
break;
case 'W':
frontledon();
break;
case 'w':
frontledoff();
break;
case 'U':
backledon();
break;
case 'u':
backledoff();
break;
case 'V':
hornon();
break;
case 'v':
hornoff();
break;
case 'X':
parkledon();
break;
case 'x':
parkledoff();
break;
case '0':
Speed = 100;
break;
case '1':
Speed = 140;
break;
case '2':
Speed = 153;
break;
case '3':
Speed = 165;
break;
case '4':
Speed = 178;
break;
case '5':
Speed = 191;
break;
case '6':
Speed = 204;
break;
case '7':
Speed = 216;
break;
case '8':
Speed = 229;
break;
case '9':
Speed = 242;
break;
case 'q':
Speed = 255;
break;
}
Speedsec = Turnradius;
if (brkonoff == 1) {
brakeOn();
} else {
brakeOff();
}
}
}
void forward() {
analogWrite(in1, Speed);
analogWrite(in3, Speed);
}
void back() {
analogWrite(in2, Speed);
analogWrite(in4, Speed);
}
void left() {
analogWrite(in3, Speed);
analogWrite(in2, Speed);
}
void right() {
analogWrite(in4, Speed);
analogWrite(in1, Speed);
}
void forwardleft() {
analogWrite(in1, Speedsec);
analogWrite(in3, Speed);
}
void forwardright() {
analogWrite(in1, Speed);
analogWrite(in3, Speedsec);
}
void backright() {
analogWrite(in2, Speed);
analogWrite(in4, Speedsec);
}
void backleft() {
analogWrite(in2, Speedsec);
analogWrite(in4, Speed);
}
void Stop() {
analogWrite(in1, 0);
analogWrite(in2, 0);
analogWrite(in3, 0);
analogWrite(in4, 0);
}
void frontledon() {
digitalWrite(9, HIGH);
}
void frontledoff() {
digitalWrite(9, LOW);
}
void backledon() {)
digitalWrite(8, HIGH);
}
void backledoff() {
digitalWrite(8, LOW);
}
void hornon()
{
digitalWrite(7, HIGH);
}
void hornoff()
{
digitalWrite(7, LOW);
}
void parkledon()
{
digitalWrite(4,HIGH);
}
void parkledoff()
{
digitalWrite(4, LOW);
}
void brakeOn() {
buttonState = command;
if (buttonState != lastButtonState) {
if (buttonState == 'S') {
if (lastButtonState != buttonState) {
digitalWrite(in1, HIGH);
digitalWrite(in2, HIGH);
digitalWrite(in3, HIGH);
digitalWrite(in4, HIGH);
delay(brakeTime);
Stop();
}
}
lastButtonState = buttonState;
}
}
void brakeOff() {
}
5. Desarrollo del warbot:
Primero debemos de comenzar con el diseño del chasis
y como queremos que sea nuestro modelo, para esto se
pensó en un diseño a 4 llantas para que tenga más
fuerza en el momento del movimiento y como arma
principal se pensó en el diseño de un arma giratoria a
manera de cuchilla, entonces como ya tenemos los
puntos más importantes definidos ahora debemos de
comenzar a pensar el cómo va a funcionar nuestro
diseño y como es que lo conectaremos, las llantas y
demás detalles, se decidió usar el microcontrolador de
Arduino UNO por su alta versatilidad y gran
aplicabilidad para varios campos.
Entonces como ya tenemos esto definido comenzamos
con la idea para la comunicación bluetooth y para el
movimiento de las llantas utilizaremos un puente H
para el movimiento de las llantas, para esto debemos
de requerir al menos de 12V, para mover las 4 llantas
un motor por cada llanta, además del motor que hará
girar el arma principal. Estos 12V irán a el puente H y después del puente H 5V irán al Arduino
para su alimentación y ya con el Arduino se programará para el funcionamiento del modulo
bluetooth, la idea pensada para el funcionamiento de nuestros war bot, mas que todo para los giros
izquierda derecha es hacer funcionar
solamente las llantas traseras del siguiente
modo si se quiere doblar a la derecha las
llantas izquierdas irán hacia a delante y las
llantas derechas irán en reversa de este modo
se giraría hacia la derecha ahora para girar
hacia la izquierda se sigue la misma lógica
pero ahora al revés.
Ya para la conexión bluetooth se está
usando una librería de Arduino y una
aplicación en el celular “Bluetooth RC
Controller” gracias a esta aplicación y al
módulo bluetooth de nuestro diseño es que
nos podemos conectar y poder manejar el
WarBot desde nuestro móvil, para la
aplicación solamente debemos asignar que
botones realizaran diferentes tareas,
entonces una vez asignado el movimiento
atrás adelante, izquierda derecha y el funcionamiento del arma gracias a un módulo relé conectado
y controlado también por el Arduino, ya tendríamos todo listo. Entonces comenzamos con el
armado de nuestro diseño, se usará madera trupan en este caso para el chasis del diseño.
Una vez armado comenzaremos con las pruebas de funcionamiento y verificaremos si todo
funciona correctamente, entonces si todo está bien entonces ya solamente queda la parte estética y
el decorado.
6. Firmas:
8. Conclusiones:
En conclusión, se logro realizar de forma exitosa la planeación, diseño, ensamblado y
armado del mini-warbot, este fue creado a partir de código para poder manejar el arma y
desplazarse en cualquier eje, también se incorporo una parte electrónica con un microcontrolador
y motores para que el software pueda accionarse de forma visual, también una parte mecánica la
cual ejecuta poleas para el funcionamiento del arma, con todo esto terminado se llego a la
conclusión de que el mini-warbot cumple nuestras expectativas.
9. Referencias bibliográficas:
• Banzi, M., & Shiloh, M. (2015). Getting Started with Arduino. Maker Media, Inc.
• Monk, S. (2016). Programming Arduino: Getting Started with Sketches. McGraw-Hill
Education.
• Smith, J. (2020). Understanding H-Bridge Circuits. Academic Press.