Anda di halaman 1dari 27

10-7-2014

ROBOT BOMBERO
Robtica y mecatrnica

Profesor:
Auxiliares:

Javier Ruiz Del Solar


Isao Parra
Rodrigo Muoz
Rodrigo Galilea
Rodrigo Asenjo
Sebastin Chamas

Integrantes:

Nicols Encina
Jos Vallejos
Gonzalo Parada

ndice
Introduccin.2
1. Antecedentes Generales...3
1.1 Placa Arduino...3
1.2 Puente H...4
1.3 Motor Servo..5
1.4 BUS I2C.6
1.5 Sensor TPA..6
2. Diseo y construccin...8
2.1 Ideas Generales..8
2.2 Diseo...8
2.3 Proceso de Construccin.11
2.4 Placa circuito integrado ...15
3. Programacin...18
3.1 Movimiento.18
3.2 Servo...18
3.3 Deteccin.......19
3.4 Funcionamiento General..21
4. Resultados....22
5. Conclusiones....25
6. Bibliografa.26

Introduccin
Sin duda alguna hoy en da y desde ya hace algunas dcadas que la
electrnica constituye una parte fundamental en nuestras vidas, la tecnologa de
hoy en da est dominada por los aparatos elctricos. Es probablemente esta
contingencia lo que nos llev a cada uno de nosotros a tomar este taller.
Como grupo decidimos construir un robot bombero, donde el objetivo principal
era buscar y apagar una llama de cierto tamao. En particular, optamos por no
usar agua para extinguir el fuego, puesto que queramos salir un poco de lo
comn adems de que consideramos que usando un material antiflamas el
desarrollo del proyecto podra resultar menos complicado.
En el siguiente informe presentamos todo lo necesario para comprender
y poder reconstruir nuestro robot, desde los dispositivos y aparatos electrnicos
que usamos y construimos, los planos y sus medidas correspondientes y para el
caso de la programacin en particular se encuentra la lgica que decidimos
seguir ms que cdigos explcitos, sin embargo, todo este material extra estar
disponible en un disco compacto. Adems de todo lo anterior, creemos nosotros
que es muy importante mencionar y comentar los errores y problemas que se
nos fueron presentando durante el desarrollo del proyecto, y esperamos que
sean de utilidad para que si el posible lector se encamina en un proyecto similar,
no cometa los mismos errores.

1. Antecedentes Generales
1.1 PLACA ARDUINO
Arduino es una plataforma de hardware libre, basada en una placa con
un micro controlador y un entorno de desarrollo, diseada para facilitar el uso de
la electrnica en proyectos multidisciplinares. Para este proyecto usamos
Arduino UNO, esta plataforma es la encargada de controlar todos los
componentes del robot, como el puente H, el sensor trmico y un motor servo.
Para la comunicacin dispone de una serie de pines, algunos de carcter
anlogo y otro de carcter digital, donde en esta ltima clasificacin se distinguen
tambin pines especiales para seales del tipo PWM. (Como ser el caso del
cable de seal para el motor Servo y tambin los cables para controlar los
motores DC con el puente H).
Arduino posee su propio entorno de desarrollo para desarrollar y cargar
programas a la plataforma.

Figura 2. Arduino UNO

Figura 1. Pines del Arduino UNO

1.2 PUENTE H
El puente H es un dispositivo, que permite a un motor DC cambiar el sentido
de su rotacin. Este dispositivo electrnico est formado por 4 interruptores (S1,
S2, S3, S4), para cambiar el sentido de los motores lo que se hace es cerrar/abrir
los interruptores S1 y S4 o S2 y S3.
Los interruptores S1 y S2 no pueden estar abiertos/cerrados al mismo tiempo,
porque si no se produce cortocircuito.

Tabla 1. Combinacin de interruptores


con respectivo resultado

Figura 3. Diagrama puente H

El cambio en el sentido de la corriente invierte la polaridad del motor


invirtiendo as su giro, grficamente:

Figura 4. Diagrama explicativo del cambio de la polaridad que es capaz de


hacer un puente H

1.3 MOTOR SERVO


Los Servos son una clase de motores que tiene la particularidad de
ubicarse en cierta posicin y mantenerse estables en dicha posicin. El
servomotor que usamos es uno modelo HS-311. La conexin al Arduino es
simple, se puede alimentar con el Vin y el GND del Arduino siempre que este
sea entre 4.8 y 6 Volts, y el cable de seal se conecta a alguno de los pines
digitales PWM.

Figura 5. Dimensiones e imagen


de motor servo HiTec HS-311

1.4 BUS I2C

El bus I2C, es un estndar que facilita la comunicacin entre


microcontroladores, memorias y otros dispositivos, solo requiere de dos lneas
de seal y un comn o masa. Fue diseado por Philips y permite el intercambio
de informacin entre muchos dispositivos a una velocidad aceptable, de unos
100 Kbits.
La principal caracterstica de IC es que utiliza dos lneas para transmitir
la informacin: una para los datos y otra para la seal de reloj. Tambin es
necesaria una tercera lnea, pero esta slo es la referencia (masa). Como suelen
comunicarse circuitos en una misma placa que comparten una misma masa esta
tercera lnea no suele ser necesaria.
Las lneas se llaman:
SDA: datos
SCL: reloj
GND: tierra
Los dispositivos conectados al bus IC tienen una direccin nica para
cada uno. Tambin pueden ser maestros o esclavos. El dispositivo maestro inicia
la transferencia de datos y adems genera la seal de reloj, pero no es necesario
que el maestro sea siempre el mismo dispositivo, esta caracterstica se la pueden
ir pasando los dispositivos que tengan esa capacidad. Esta caracterstica hace
que al bus IC se le denomine bus multimaestro.
La conexin de dispositivos mediante bus I2C se explica en el siguiente digrama:

Figura 6. Diagrama de conexin de dispositivos mediante protocolo I2C, notar que


para nuestro caso solo existirn 2 dispositivos conectados.

1.5 SENSOR TRMICO TPA 81


Como bien indica el nombre, el TPA81 corresponde a un sensor trmico
capaz de detectar y comunicar temperaturas (En grados centgrados) de un
objeto en particular, no necesariamente en movimiento. El sensor consiste en 8
pixeles (termopilas) colocados linealmente, Cada pixel tiene un campo de visin
de 5.1 por 6, completando as un campo total de 40.96 por 6.

De los 9 pixeles, el primer pixel mide la


temperatura ambiente mientras que los otros 8
miden la temperatura del campo en general, en
un rango de 4C hasta 100C (cada pixel puede
comunicar una temperatura igual o distinta
dependiendo de la distancia del objeto en
cuestin).
El sensor se comunica a travs del bus
I2C de 5 pines, de los cuales slo 4 deben
usarse para el registro de los datos, en donde los
pines SCL y SDA son las seales de datos y reloj
respectivamente, el pin +5V corresponde a la
tensin de alimentacin +5Vcc.
Tambin existe la posibilidad de conectar
el servo en los 3 primeros pines.

Figura 8. Dimensiones del sensor TPA81

Figura 7. Sensor TPA y sus


respectivas entradas

2. Diseo y Construccin
2.1 IDEAS GENERALES:
Dado que se trata de un robot bombero, se pens en primera instancia en
la idea de apagar el fuego con agua, pero esto requera mucho tiempo entre el
lapso de una prueba y otra, esto puesto que haba que limpiar antes de realizar
otra prueba. Se busc otro mtodo y se decidi el uso de un pao anti-flamas,
pero dada su rareza y alto costo se us un pao de cuero ms econmico, el
cual puede ser expuesto por casi un minuto a fuego sin ninguna alteracin.
En primera instancia se pens en un carro de 4 ruedas, pero dada la
dificultad de su implementacin se decidi usar 2 ruedas ubicadas en el medio
del carro, esto para que, al momento de realizar un giro en 360, este sea en
torno a su eje y no se produjera un desplazamiento hacia adelante/atrs, el cual
podra influir constantemente en la ubicacin del robot.
El pao de cuero se ubic a una altura de 22 cm con respecto al suelo y
16.5 cm con respecto al robot, para as no perjudicar el campo de visin del
sensor y as, obtener datos ms precisos. El pao se fij mediante una argolla e
hilo de pescar, el cual se mantiene siempre tenso hasta el momento en el cual
se debe apagar el fuego. Este hilo, ubicado paralelo al brazo, est dispuesto en
pasadores.
Para minimizar el tamao del robot se ubicaron los componentes de
manera tal, que la distancia entre ellos fuera mnima, no as sin afectar el
funcionamiento de ellos ni interceptando cables.
Para la cada del pao se ubic un servo en frente del ARDUINO, est
conectado mediante hilo de pescar a un pasador. Este ltimo unido a una golilla
la cual est sujeta a un hilo de pescar fijo al pao, cosa de que, al momento de
soltar la golilla, producto de la gravedad, el pao caiga.
Como punto de apoyo se propone fijar una rueda loca en la parte trasera
del carro, para minimizar el roce con el suelo al momento del giro (se podra
poner otro tipo de punto fijo pero eventualmente slo molestara).
Uno de los problemas de este mtodo es que, al caer el pao sobre el
fuego, la llama podra escapar y llegar al sensor, lo que en el largo plazo
implicara un deterioro de este ltimo.

2.2 DISEO:
Uno de los objetivos fue el minimizar el tamao del Robot, reduciendo as
su peso y mejorando su maniobrabilidad. Se ide el uso de un pao de cuero
para el apagado del fuego, el cual se situ en la parte superior del robot para que
as, no afecte en la visin del sensor.
El brazo tiene un largo de 23 cm y 26 cm en su tramo ms largo, cuyo
largo fue estimado a partir de la distancia a la cual deba ubicarse el fuego, para
que as, el pao tuviera un alto rango de xito en el apagado del fuego. En su
largo, el brazo cuenta con 4 perforaciones, las que permiten la existencia de
pasadores, los cuales permiten el desplazamiento del hilo de pescar unido al
pao.

El sensor se ubic inmediatamente debajo del brazo, con el fin de que al


momento de lanzar el pao, este caiga justo en el centro. Para evitar el contacto
con la lmina, se confeccion una capa de madera en la cual se introdujo a
presin para evitar as su movimiento (el cual influira dramticamente en la
estimacin de las distancias).
Las dos ruedas se situaron en el centro de la lmina, esto con la idea de
realizar un giro en 360 sin desplazarse en ninguna direccin, es importante, el
hecho de que ambas ruedas deben ser de goma, dado que el robot utiliza un
algoritmo que cambia el sentido constantemente de cada motor, y con esto el
sentido de movimiento de cada rueda, entonces, si la rueda no realizara una
fuerza opuesta el movimiento deslizara, implicando en un centrado deficiente y
un error perceptible al ojo.
Con respecto a la batera, esta se ubica en la parte trasera del robot, para
as contrarrestar el peso (y el torque) ejercido por el pao y los otros
componentes del robot, y as mantener el movimiento del robot constante y sin
parpadeos (es decir, que no se incline al detenerse). Adems de la batera se
agreg
un
peso
en
plomo
de
aproximadamente medio kilo, dado que la
batera no logr contrarrestar el peso total en
la parte delantera del carro.
Para aislar los componentes de la
placa de aluminio, y as evitar un posible
cortocircuito, se fijaron estos a una placa de
madera modelada de tal manera de fijar cada
componente a presin, sin recurrir a
apernados ni pegamentos que podran daar
cada componente en caso de que se
requiera retirarlos.
Finalmente, en la parte trasera del
carro, se encuentra una rueda loca, cuya
base se tuvo que fijar (hace el rol de una
tercera rueda sin traccin) porque influa
significativamente en las direcciones
adoptadas por el robot bombero al
Figura 9. Vista superior diseo
momento de dirigirse hacia el fuego

Medidas:
1. Alto total: 23 cm
2. Ancho total: 38 cm
3. Ancho base (parte del sensor) = 19cm
4. Ancho base (parte de la rueda) = 20 cm
5. Ruedas: 7,65
6. Altura al carro= 4cm
7. Dimetro cuero= 26cm

Figura 10. Vista


frontal diseo

Figura 11. Vista superior


diseo

10

2.3 PROCESO DE CONSTRUCCIN


A continuacin se presenta una tabla con los materiales y componentes
necesarios:
Materiales

Materiales

Componentes

Cables AWG 24/ diversos


Alambre de acero
colores

Batera 12 V 3 A.H

Cable parlante AWG 19

Placa de prototipado

Arduino UNO

2 Ruedas (Radio 3.7cm)

Termo retrctil

Sensor infrarrojo TPA81

Placa de aluminio 30x30 cm

Hilo de pescar

2 motores DC 12 volt

Switch de 2 pasos

Condensador de 500 Micro-Faraday

Puente H

Regulador de corriente 7805

2 Resistencias

Servo HS-311

Pao de cuero 20x20cm

Cuadro de madera 20 x 20 cm

Pinhead

Crim

Slim C

Pernos M3 C

Rueda libre

JACK

Separadores

Condensador 0,01 Micro-Faraday

Tabla 2. Materiales y dispositivos necesarios

11

En el taller mecnico
se realiz el corte de la placa
y el posterior doblez de esta.
Junto con la perforacin para
la integracin de los dems
componentes
lo
cual
consisti en la primera parte
del armado.
En
una
segunda
instancia de construccin se
hicieron los cortes respectivos de
Figura 12. Doblez de la placa de aluminio,
la madera para realizar la
base del robot.
aislacin de los componentes.
Ya en una tercera instancia se comenz la fijacin de todas las partes del
robot, finalizando as el proceso en 3 talleres, lo que correspondera a 6 horas
tiles.
La mayora de las uniones se hicieron va soldadura (entre componentes
mecnicos y electrnicos), como por ejemplo los cables de parlante unidos a los
motores DC. Para la confeccin de los cables se usaron los pinhead, crim y el
mismo cable AWG24.
La fijacin de las placas se compuso principalmente con la intervencin
de pasadores, los cuales, evitaban el contacto fsico con algn material en
particular, estos pasadores se fijaron a las partes de madera y estas, finalmente
unidas con silicona a la lmina de aluminio.
Problemas: Uno de los problemas en la construccin del robot, fueron
ciertos contratiempos en el taller mecnico, cuya mquina dobladora no
funcionaba. Junto con eso, el cierre de este por una semana dificult el avance
de no solo el nuestro, si no varios grupos. El posponer ciertas etapas del proyecto
para semanas futuras, retrasando as el avance en la construccin.
Ya ms avanzado el proyecto, uno de los contratiempos en el proyecto
fue el roce ejercido por los pasadores con el hilo que sujeta el pao, lo que
implicaba que el pao no caa sobre el fuego y comenzaba a calentarse ms de
lo debido. Junto con este problema, al pasar cerca del fuego sin apagarlo, el hilo
de pescar se quemaba fcilmente al pasar sobre el aura de calor que emanaba
la llama.

12

Seguido a esto se realiza el ensamblado de todas las piezas para lograr


un resultado como este:

Figura 13. Construccin final del robot

13

Las imgenes reales del robot:

Figura 14. Imgenes del robot


completamente construido

14

2.4 PLACA CIRCUITO INTEGRADO


Materiales:
1 placa de prototipado
1 regulador de voltaje 7805
1 condensador 500uF
1 condensador 0.01uF
Cables AWG 24
Pinheads
1 resistencia
1 resistencia

Figura 15. Diseo y esquema de la placa


circuito integrado

15

En esta placa se observa que se encuentran los elementos para poder


realizar la comunicacin I2C con el sensor trmico TPA, y un regulador de voltaje
para alimentar los dispositivos desde la placa y no directamente por el puerto 5V
del Arduino.

Figura 16. Ejemplo conexin de regulador de


voltaje
La placa recibe 12V desde el pin Vin y luego a travs de un cable (1R)
dirige la corriente al regulador de voltaje para que este energice una pista y de
ah poder sacar la alimentacin para el puente H, TPA y servo. A las pistas
vecinas del regulador de voltaje se conectan los dos condensadores (8CC y
9CC)
para implementar la conexin como en el diagrama anterior.
En cuanto al sensor TPA sacamos un cable(3A) desde la pista donde se
encuentra el pin A4 y lo conectamos en una pista donde podamos enviar un cable
a la entrada SDA del TPA y conectar la resistencia(5RR), anlogamente de la
pista donde se encuentra el pin A5 sacamos un cable(4NA) y la llevamos a la
pista donde se encuentra la resistencia(6RR) y de ah conectamos el TPA a
travs del SCL.

Figura 17. Ejemplo conexin TPA

16

Por ultimo desde el pin 6 PWM conectamos el cable(10NA) a la pista vecina a la de


alimentacin.

Figura 18. Placa montada al Arduino

Figura 19. Vista trasera de la placa de


prototipado

17

3. Programacin
3.1 MOVIMIENTO
El movimiento se basa en el uso de las funciones:

void GiroDer(int v)
void GiroIzq(int v)
void avance(int v)
void retroceso(int v)
void giro90grados()

Que reciben como parmetro el voltaje para poner en el PWM y por lo tanto
la rapidez del carro en cada funcin. A continuacin se presenta como est
programada la funcin GiroDer():
void GiroDer(byte v){
digitalWrite(MotorIzq1,1);
// Estas dos lneas fijan la polaridad del
MotorIzq para un
digitalWrite(MotorIzq2,0);
// sentido, denotemoslo sentido1
digitalWrite(MotorDer1,1); // Estas dos lneas fijan el sentido del MotorIzq
digitalWrite(MotorDer2,0); // tambin en el sentido1
analogWrite(MotorIzqPWM,v);
analogWrite(MotorDerPWM,v);
Como ambos motores giren en el mismo sentido, pero como los motores
estn instalados en sentidos opuestos el movimiento que adopta el robot
corresponde a un giro hacia la derecha. Las otras funciones de movimiento se
implementan de manera anloga, donde solo se cambia de manera oportuna el
sentido de cada motor.

3.2 SERVO
Durante la programacin, el motor servo nos trajo algunos problemas que
significaron un gran gasto de tiempo. El problema fue que al incluir la librera
Servo, esta usaba algunos pines extra, (En Arduino 0016 y anteriores, la librera
Servo utiliza la funcionalidad incorporada en el hardware, y solo funciona en las
patillas 9 y 10 (y no funciona en el Arduino Mega). En este caso, si solo se utiliza
un servo, el otro pin no puede ser utilizado para la salida normal de PWM
con analogWrite(). Por ejemplo, en Arduino 0016 y anteriores, no se puede tener
un servo en el pin 9 y salida PWM en el pin 10)*, en particular el pin donde
estaba conectado el PWM para controlar uno de los motores DC a travs del
puente H. Para solucionar el problema, el movimiento del servo se fue
implementado sin utilizar la librera Servo de la siguiente forma:
*Citado desde pgina de Arduino, ubicada en la Bibliografa

18

void
voidservo_move(unsigned
servo_move(unsignedintinttime,unsigned
time,unsignedn)n)
{{
for
for(unsigned
(unsignedintinti=0;i<n;++i)
i=0;i<n;++i)
{{
digitalWrite(ServoPin,1);
digitalWrite(ServoPin,1);
delayMicroseconds(time);
delayMicroseconds(time);
digitalWrite(ServoPin,0);
digitalWrite(ServoPin,0);
delayMicroseconds(20000-time);
delayMicroseconds(20000-time);
}}
}}

Que corresponde a la forma de programar el movimiento de un servo sin


la necesidad de la librera Servo.

3.3 DETECCIN
El sensor trmico es un dispositivo que se debe conectar usando el
protocolo I2C, por lo tanto es necesario invocar la librera Wire. Pero en general,
la implementacin para obtener los datos de los 8 pixeles del sensor infrarrojo
fue obtenida de internet (el cdigo completo se encuentra en la seccin de
anexos). Se implement una funcin que llamada detectar() que cada vez que
se ejecuta actualiza una variable global correspondiente a un arreglo de datos
que contiene la temperatura detectada en cada pixel. Dentro de la misma funcin
detectar(), son llamadas otro grupo de funciones que actualizan variables
globales notables para determinar la deteccin de fuego o tambin la cercana al
fuego, a continuacin se presenta la implementacin de la funcin getProm():
void getProm(){
void getProm(){
prom=0;
prom=0;
for (int i=1; i<9; i++){
for (int i=1; i<9; i++){
el indice 0 porque
prom+=TempActuales[i];
prom+=TempActuales[i];
}
}prom=prom/8;
prom=prom/8;
}
}

// Recorrer los ocho pixeles,sin considerer


// Recorrer los ocho pixeles,sin
// considerer el indice 0 porque
// corresponde a la temperature ambiente
// corresponde a la T ambiente

Esta funcin actualiza el promedio de temperaturas de los ocho pixeles. Las


otras funciones de actualizacin son:

void getMPR() : Actualiza la proporcin temperatura mxima sobre


temperatura promedio.
void getMax() : Actualiza tanto la temperatura mxima como el ndice de
la temperatura mxima, y tambin la temperatura mnima. Obtiene los
denominados indicador1 e indicador2, el indicador1 corresponde a la
19

proporcin temperatura mxima sobre nmero de pixeles con temperatura


sobre 40 grados, y el indicador2 es anloga al indicador1 pero en este
caso es la proporcin con respecto al nmero de pixeles con temperatura
mayor a 30 grados. (el uso de estas variables ser explicado ms
adelante).
void getSigma() :Actualiza la desviacin estndar de las temperaturas.
void getDistance(): Actualiza la distancia a la que se encuentra el fuego.

Se implementaron las funciones vueltacompleta() que devuelve un boolean


que es igual a true si algn pixel supera la temperatura umbral igual a 40
grados, y centrar(), como su nombre lo indica, centra la temperatura mxima
(posiciona el robot de manera que la mxima temperatura se encuentre en el
pixel 4 o 5).

boolean vueltacompleta() : Hace que el robot gire 360 a menos que


detecte una temperatura mayor a 40 correspondiente a la temperatura
umbral, en donde se detiene inmediatamente y devuelve un boolean
fuego=true.

Durante el giro, el sensor realiza un total de 50 detecciones, cantidad


suficiente para que no existan puntos ciegos. De todos modos se intent
antes hacer una deteccin lo ms continua posible (en tal caso el nmero de
detecciones en una vuelta era de 185), sin embargo la deteccin fallaba, esto
debido posiblemente al tiempo casi nulo entre cada deteccin.
Implementacin vueltacompleta():
boolean vueltacompleta(){
fuego=false;
GiroDer(velGiroDeteccion);
for (j=1; j<=50; j++){
delay(86); //delay suficiente y necesario para que el robot de una vuelta
detectar(); // de 360 grados
if (TempMax>TempUmbral){
fuego=true;
break;
}
}
detener();
return fuego;
}

void centrar(): Esta funcin posiciona al robot de manera que la


temperatura mxima se encuentre en el pixel 4 o 5. La implementacin es
bastante simple, si las temperatura mxima esta en los pixeles 1,2 o 3, se
invoca la funcin GiroIzq(), en caso contrario (pixeles 6,7 o 8) se ejecuta
la funcin GiroDer(), en ambos casos, las funciones de giro se ejecutan
por 50 milisegundos y luego se ejecuta la funcin detener(), este
20

delay(retraso) es importante, pues se hicieron pruebas sin tal delay() y el


robot quedaba oscilando, al igual que si el retraso fuese muy grande.

3.4 FUNCIONAMIENTO GENERAL


La programacin del funcionamiento la dividimos en 2 partes
fundamentales, bsqueda y extincin del fuego, siendo la ltima la que implic
mayor dificultad.
Bsqueda
Para encontrar el fuego, el robot tena que recorrer cierta superficie, si el
fuego no estaba cerca de la posicin de partida del robot, este tena que moverse
hacia algn lado y seguir buscando. Para tal movimiento implementamos un
recorrido de la forma de una espiral cuadrada, programado usando con un ciclo
while, donde una vez detectado el fuego se cierra este quiebra este ciclo y se
ingresa al ciclo de extincin del fuego.

Figura 20. Esquema del recorrido pensado


para la bsqueda del fuego.

Extincin del fuego


Una vez detectado el fuego, se inicia un ciclo continuo que centra el fuego
y luego avanza, es importante destacar que el robot solo avanza si el fuego est
centrado, esto es una desventaja cuando el fuego est muy lejos, porque el pixel
que contiene la temperatura mxima varia con ms facilidad debido a la
distancia, sin embargo una vez cerca, el robot comienza a acercarse al fuego de
manera ms rpida.
Estimacin de distancia
Sin duda este era el mayor problema con que nos enfrentamos, pues solo
usando un sensor con 8 pixeles tenamos que estimar la distancia a la cual se
encontraba una llama de cierto tamao.
Para estimar la distancia, decidimos hacer una regresin lineal mltiple usando
Excel. Tomamos una serie de medidas, a 60cm, 45cm, 30cm y 0cm de la llama,
obteniendo datos como la desviacin estndar, diferencia entre temperatura
21

mxima y mnima, etc. Promediando los datos, obtuvimos la siguiente tabla de


valores.
Tmax Distancia(cm)
Sigma
MPR
Indicador1 Indicador2 T Prom
Tmin
3,679
108,7666667 108,766667 29,5386364 93,1333333
60 32,1216667
128
34,264
111,885714
45 38,2285714 3,73514286
65,8285714
3,47756757
128
42,67
36,7994595
111,162162
30 37,6397297
0 42,0684375 2,1228125 32,0234375 19,918125 60,3428125 100,3125
Tabla 3. Datos, dependencia de la distancia con ciertos parmetros.
(Lo que representa el indicador1 e indicador2 fueron explicados en el apartado
de la programacin del sensor TPA)
Con estos datos, considerando como variable dependiente la distancia, y
todos los dems datos como parmetros, aplicamos una regresin lineal mltiple
que nos entreg los siguientes resultados:

Intercepcin
Variable X 1
Variable X 2
Variable X 3
Variable X 4
Variable X 5
Variable X 6

Coeficientes
-69,9949423
0
0
0,1019934
0,63083851
0
0,53994909

Tabla 4. Coeficientes asociados a cada


parmetros en la regresin lineal.

Lo que nos indica que en realidad la desviacin estndar, el MPR y la


temperatura promedio eran parmetros que no ayudan a determinar la distancia
o ms bien que no presentan un relacin lineal con la distancia.
Con esto, se obtiene una funcin de distancia que recibe como parmetros
el indicador1, indicador2 y la diferencia entre temperatura mxima y temperatura
mnima, la cual es:
Distancia=(indicador1*0.1019934)+(indicador2*0.63083851)+((tmaxtmin)*0.53994909)-69.99

22

4. Resultados
Los resultados obtenidos fueron favorables, el robot cumpli el objetivo
principal de buscar y apagar el fuego. En cuanto al resultado de la construccin
podemos decir que en general fue fiel al diseo, las cosas improvisadas como la
fijacin de los dispositivos no implic mayor dificultad ni problemas que nos
hubieran hecho cambiar partes fundamentales del diseo.
Por otro lado, en la parte de la programacin funcion, sin embargo sabemos
que se puede mejorar bastante. Un resultado a considerar es que el robot logra
apagar solo llamas de un cierto tamao, si son muy anchas la distancia aparente
es menor a la distancia real por lo que el mecanismo de apagado se activa antes.
Otro resultado relevante es que si la llama es detectada desde muy lejos, la
programacin de centrado y avance continuo hacen que el robot avance
demasiado lento hacia el objetivo, lo que puede resultar un poco tedioso, sin
embargo sabemos que con un poco de fineza en la programacin esto puedo
haberse solucionado fcilmente. Siguiendo con los resultados de la deteccin, la
espiral cuadrada que queramos que hiciera el robot en la bsqueda del objetivo
no funciona como queramos, esto por los problemas de calibracin de la vuelta
completa y el giro en noventa grados como tambin un avance del robot que no
es perfectamente en lnea recta que se intent corregir pero no se pudo, en
general la calibracin del robot dependa mucho de las condiciones externas que
hacan que algunas acciones fueran distintas luego de cada prueba.

Ideas para un proyecto mejor:


En el caso de tener que enfrentarse a la idea de redisear el proyecto, se
ha postulado una serie de ideas que mejorara el funcionamiento del robot,
reduciendo el tiempo de espera para apagar el fuego y ms an, la efectividad
en cuanto a la estimacin de las distancias Robot-Fuego. Junto con esto, ampliar
el rango de funciones para el robot para no trabajar en casos particulares como
actualmente se trabaja.
Se han sugerido ciertos cambios:
Ubicar el sensor en un servo motor, en la parte frontal del carro, para que
as ejecutar detecciones en 360 mientras el carro se encuentra en movimiento
(esta sera la principal causa en la reduccin del tiempo de espera de apagado
del fuego).
Para autonomizar el apagado de ms de un fuego existen 2 ideas, cambiar
el brazo por un brazo mvil, conectado a un servo con alto torque (3 a 5 Kg) con
la idea de que cada vez que se quiera apagar el fuego el servo se active.

23

Figura 21. Idea para un proyecto mejorado


La segunda idea para el apagado de multi fuegos es la implementacin
de otro motor en donde est situado el servo, cuya funcin sera lanzar y recoger
el hilo que sostiene al pao, el cual sera un proceso ms lento y requerira otro
puente H para regular el sentido del motor al momento de recoger. Junto con
esto otra conexin a Arduino (siendo que son pocos los pines sobrantes en el
modelo actual).
Otra idea propuesta para mejorar al proyecto sera la implementacin de
otro sensor u otro segmento de cdigo, que permita al robot darse cuenta de los
obstculos y esquivarlos, dando la posibilidad de esconder el fuego en un lugar
alejado y que el robot se d el lujo de encontrarlo de todas maneras. Adems
sera posible incluir otras funciones al robot, como una mayor velocidad de
accin y reaccin.

24

5. Conclusiones

Del proyecto en s y de los resultados obtenidos podemos decir que estamos


satisfechos, sin embargo en realidad no del todo satisfechos, sabemos que
algunas cosas pudieron haberse hecho mejor y que el robot puede ser ms
eficiente.
En cuanto a la construccin no hay mucho que decir, el tamao del robot fue
el justo y necesario para poder acoger todos los componentes, aunque de todos
modos se pudo haber ideado un mecanismo para tener ms que un solo disparo
y poder as apagar independientemente ms de una llama. Con respecto al
movimiento aprendimos que la calibracin aunque a primera vista parece muy
simple, puede en realidad no serlo debido a ciertos factores aleatorios,
calibrbamos una y otra vez la vuelta completa, el avance y otras funciones hasta
que funcionarn a la perfeccin, pero al otro da o minutos ms tarde estas no
funcionaban como lo habamos programado antes.
Con respecto al curso, podemos decir que hemos aprendido mucho, como
hacer circuitos, como usar de manera adecuada un multitester, un nuevo
lenguaje de programacin, y ms en general el proceso de resolucin de
problemas, que corresponde a la tarea de los ingenieros, el diseo, y luego la
implementacin para solucionar un problema.

25

6. Bibliografa

Bus I2C: http://robots-argentina.com.ar/Comunicacion_busI2C.htm


Arduino: http://www.arduino.cc/es/
Programa para dibujos 3D: http://www.sketchup.com/es

Datasheet TPA: http://www.superrobotica.com/S320085.htm


Datasheet Servo: http://www.letmodel.cz/technical-data/serva/hs-311.pdf
Material Docente EI2001 -1 Taller de proyecto:
o Manual bsico de programacin en C
o Control motores DC
o Gua de usuario Arduino

26

Anda mungkin juga menyukai