Está en la página 1de 13

lOMoARcPSD|3456802

Robot Explorador- Informe Funcional

Programación (Universidad Nacional Mayor de San Marcos)

StuDocu no está patrocinado ni avalado por ningún colegio o universidad.


Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)
lOMoARcPSD|3456802

UNIVERSIDAD NACIONAL MAYOR


DE SAN MARCOS
(Universidad del Perú, Fundada en 1551)
FACULTAD DE INGENIERIA ELECTRONICA E ING.
ELECTRICA

E.A.P. DE ING.ELECTRONICA

Curso : Programación avanzada

Tema : robot explorador

Grupo : viernes

Hora : 16:00 – 18:00

Profesor : Ávila Patricio

Integrantes : Christian Sánchez Lunarejo 13190019


Nicolás Barraza
Frank Ramos Clemente
David Briceño
Terry Quinto Flores

Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)


lOMoARcPSD|3456802

INDICE

INTRODUCCION…………………………………………………………………………………………………………. 2
INFORME FUNCIONAL ………………………………………………………………………………………………. 3
OBJETIVOS FUNCIONALES……………………………………………………………………………………….. 3
MARCO TEORICO…………………………………………………………………………………………………….. 4
JAVA………………………………………………………………………………………………………………………….. 4
NETBEANS…………………………………………………………………………………………………………..……… 4
ARDUINO……………………………………………………………………………………………………………………. 5
CÁMARA IP WIFI………………………………………………………………………………………………………… 6
SENSOR DE TEMPERATURA……………………………………………………………………………………….. 6
SENSOR DE DISTANCIA………………………………………………………………………………………………. 7
ARDUINO UNO ………………………………………………………………………………………………………….. 7
ARDUINO MEGA………………………………………………………………………………………………………… 8
INTERFAZ GRAFICA……………………………………………………………………………………………………. 9

ALCANCES Y LIMITACIONES……………………………………………………………………………………. 10
BENEFICIOS……………………………………………………………………………………………………………. 10
CONCLUSIONES………………………………………………………………………………………………………… 11
BIBLIOGRAFIA…………………………………………………………………………………………………………… 11

Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)


lOMoARcPSD|3456802

INTRODUCCION

Existen muchas circunstancias en las cuales no es conveniente emplear personas para


la realización de algunas labores debido al alto riesgo a que ellos se exponen; por esta
razón se han desarrollado diversas herramientas o equipos que permiten reemplazar al
hombre al realizar estas operaciones a distancia. Dentro de estos equipos se
encuentran los móviles teleoperados también conocidos como robots a pesar de no
ser autónomos en sí mismos.
Los robots teleoperados son aquellos controlados por un usuario a distancia desde una
estación remota. Dada su gran utilidad, se han empleado en diversos campos. Este tipo
de manejo supone una ventaja desde el punto de vista de la protección y seguridad del
usuario, ya que en caso de realizar trabajos en ambientes inseguros o inestables o con
sustancias potencialmente peligrosas, como químicos o explosivos, no se arriesga su
integridad física. En el desarrollo de robots teleoperados se involucra la electrónica, las
comunicaciones, el control, y la visión por computador.
La robótica es una ciencia o rama de la tecnología, que estudia el diseño y construcción
de máquina capaces de desempeñar tareas realizadas por el ser humano o que
requieren del uso de inteligencia, una área interdisciplinaria formada por la ingeniería
mecánica, electrónica e informática. La mecánica comprende tres aspectos: diseño
mecánico de la máquina, análisis estático y análisis dinámico.
La electrónica le permite al robot trasmitir la información que se le entrega,
coordinando impulsos eléctricos que hacen que el robot realice los movimientos
requeridos por la tarea.
La informática provee de los programas necesarios para lograr la coordinación
mecánica requerida en los movimientos del robot, dar un cierto grado de inteligencia a
la máquina, es decir adaptabilidad, autonomía y capacidad interpretativa y correctiva.
En la actualidad la ayuda de la robótica ha hecho posible que los robots lleguen a
lugares inaccesibles por el hombre y cumplan con mayor precisión las tareas
encomendadas.
Utilizando estos conceptos se pretende resolver el problema de inaccesibilidad del
hombre en ciertos lugares, como por ejemplo, Minas, tuberías, etc.

Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)


lOMoARcPSD|3456802

INFORME FUNCIONAL:

1. OBJETIVOS FUNCIONALES

 Los constantes accidentes que se presentan en el la minería subterránea de carbón,


por distintas circunstancias, como, derrumbes, fallas en las paredes de las vías
subterráneas, explosiones entre otras, hacen que las personas que se desenvuelven en
este ámbito arriesguen su vida diariamente.

 Nuestro proyecto de Programación Avanzada consiste en un prototipo de un robot


explorador, que pueda ingresar a la mina sorteando la mayoría de obstáculos que se
interpongan en su camino, para tomar a determinadas distancias la medición de la
concentración de los diferentes niveles de temperatura. Todo esto en tiempo real y
monitorizado de forma inalámbrica desde el exterior de la mina y de esa manera
solucionar los problemas antes mencionados

Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)


lOMoARcPSD|3456802

2. MARCO TEORICO

1. JAVA

Java es un lenguaje de programación


orientado a objetos que se incorporó
al ámbito de la informática en los
años noventa. La idea de Java es que
pueda realizarse programas con la
posibilidad de ejecutarse en cualquier
contexto, en cualquier ambiente,
siendo así su portabilidad uno de sus
principales logros. Fue desarrollado por Sun Microsystems, posteriormente adquirido
por Oracle. En la actualidad puede utilizarse de modo gratuito, pudiéndose conseguir
sin problemas un paquete para desarrolladores que oriente la actividad de programar
en este lenguaje. Puede ser modificado por cualquiera, circunstancia que lo convierte
e lo ue o ú e te se de o i a ódigo a ie to .

Cuando se programa con un lenguaje, se utiliza un tipo de código que la máquina es


incapaz de reconocer. Es por ello que se requiere de un proceso de compilación, esto
es, de t adu i el le guaje utilizado pa a ue la á ui a sea apaz de e o o e lo y
procesarlo. Cada vez que un código requiere ser ejecutado en un ambiente distinto,
deberá compilarse nuevamente. Con el desarrollo de Java se intentó evitar este tipo de
circunstancia, haciendo que el código corriera en cualquier ambiente. El modo en que
se logró este objetivo es desarrollando una máquina virtual que ejecutase el código
co pilado; esto sig ifi a ue la t adu ió ya o se ha e pa a ue sea o p e dida
po u dete i ado siste a ope ativo; se ha e pa a ue la i te p ete la á ui a
vi tual , ue puede o e e ual uie siste a ope ativo. De esta a e a, solo es
necesario realizar una compilación, que podrá ser utilizada en cualquier entorno que
tenga instalada la máquina virtual java.

Como en cualquier lenguaje de estas características, existen diversos entornos de


desarrollo que tienen como función facilitar el proceso de programar con Java. Algunos
ejemplos al respecto pueden ser Eclipse, JCreator, NetBeans, Jbuilder, etc. Estos
ofrecen un lugar para escritura de código, señalización de errores, compilación, etc.
Son gratuitos, por los que pueden obtenerse en la red con facilidad.

2. NETBEANS

NetBeans es un proyecto de código


abierto de gran éxito con una gran
base de usuarios, una comunidad en
constante crecimiento, y con cerca
de 100 socios en todo el mundo.
Sun MicroSystems fundó el
proyecto de código abierto
NetBeans en junio de 2000 y +

Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)


lOMoARcPSD|3456802

continúa siendo el patrocinador principal de los proyectos (Actualmente Sun


Microsystems es administrado por Oracle Corporation).

La plataforma NetBeans permite que las aplicaciones sean desarrolladas a partir de un


conjunto de componentes de software llamados módulos. Un módulo es un archivo
Java que contiene clases de java escritas para interactuar con las APIs de NetBeans y
un archivo especial (manifest file) que lo identifica como módulo. Las aplicaciones
construidas a partir de módulos pueden ser extendidas agregándole nuevos módulos.
Debido a que los módulos pueden ser desarrollados independientemente, las
aplicaciones basadas en la plataforma NetBeans pueden ser extendidas fácilmente por
otros desarrolladores de software.

El NetBeans IDE soporta el desarrollo de todos los tipos de aplicación Java (J2SE, web,
EJB y aplicaciones móviles). Entre sus características se encuentra un sistema de
proyectos basado en Ant, control de versiones y refactoring.

NetBeans IDE 6.5.2, la cual fue publicada el 19 de noviembre de 2008, extiende las
características existentes del Java EE (incluyendo Soporte a Persistencia, EJB 3 y JAX-
WS). Adicionalmente, el NetBeans Enterprise Pack soporta el desarrollo de
Aplicaciones empresariales con Java EE 5, incluyendo herramientas de desarrollo
visuales de SOA, herramientas de esquemas XML, orientación a web servicies (for
BPEL), y modelado UML. El NetBeans C/C++ Pack soporta proyectos de C/C++, mientras
el PHP Pack, soporta PHP 5.

Modularidad. Todas las funciones del IDE son provistas por módulos. Cada módulo
provee una función bien definida, tales como el soporte de Java, edición, o soporte
para el sistema de control de versiones. NetBeans contiene todos los módulos
necesarios para el desarrollo de aplicaciones Java en una sola descarga, permitiéndole
al usuario comenzar a trabajar inmediatamente.

3. ARDUINO

Arduino es una plataforma de


creación de electrónica de código
abierto, la cual está basada en
hardware y software libre,
flexible y fácil de utilizar para los
creadores y desarrolladores. Esta
plataforma permite crear
diferentes tipos de
microordenadores de una sola
placa a los que la comunidad de
creadores puede darles diferentes tipos de uso.

Para poder entender este concepto, primero vas a tener que entender los conceptos
de hardware libre y el software libre. El hardware libre son los dispositivos cuyas
especificaciones y diagramas son de acceso público, de manera que cualquiera puede
replicarlos. Esto quiere decir que Arduino ofrece las bases para que cualquier otra

Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)


lOMoARcPSD|3456802

persona o empresa pueda crear sus propias placas, pudiendo ser diferentes entre ellas
pero igualmente funcionales al partir de la misma base.

El software libre son los programas informáticos cuyo código es accesible por
cualquiera para que quien quiera pueda utilizarlo y modificarlo. Arduino ofrece la
plataforma Arduino IDE (Entorno de Desarrollo Integrado), que es un entorno de
programación con el que cualquiera puede crear aplicaciones para las placas Arduino,
de manera que se les puede dar todo tipo de utilidades.

4. CÁMARA IP WIFI

Las cámaras IP son aquellas que incluyen una conexión directa a Internet, de forma
que solo hay que conectarlas al router para poder verlas a través de Internet. Los
modelos más actuales se conectan a Internet a través de Wi-Fi y son compatibles con
móviles y tabletas. La forma más sencilla y económica de vigilar su casa o negocio

I. FUNCIONALIDADES

 SENSOR DE TEMPERATURA

Los sensores de temperatura se utilizan en diversas aplicaciones tales como


aplicaciones para la elaboración de alimentos, climatización para control ambiental,
dispositivos médicos, manipulación de productos químicos y control de dispositivos en
el sector automotriz (p. ej., refrigerantes, ingreso de aire, temperaturas del cabezal de
cilindro, etc.). Los sensores de temperatura se utilizan para medir el calor para
asegurar que el proceso se encuentre, o bien dentro de un cierto rango, lo que
proporciona seguridad en el uso de la aplicación, o bien en cumplimiento de una
condición obligatoria cuando se trata de calor extremo, riesgos, o puntos de medición
inaccesibles.

Hay dos variedades principales: sensores de temperatura con contacto y sin contacto.
Los sensores de contacto incluyen termopares y termistores que hacen contacto con el
objeto a medir, y los sensores sin contacto se encargan de medir la radiación térmica
emitida por una fuente de calor para determinar su temperatura. Este último grupo
mide la temperatura a distancia y a menudo se utilizan en entornos peligrosos.

Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)


lOMoARcPSD|3456802

 SENSOR DE DISTANCIA

Los sensores de distancia y transductores de distancia, están pensados para realizar la


medida de distancia lineal o desplazamiento lineal de una forma automatizada, ya que
proporcionan una señal eléctrica según la variación física, en este caso la variación
física es la distancia.
Los rangos de medida disponibles son muy diversos, según el tipo de sensor de
distancia empleado. Así pues hay modelos que tienen rangos de unas pocas micras y
otros modelos que pueden llegar a medir cientos de metros. En función del rango
requerido, el formato del sensor varía, siendo más o menos voluminoso, con mayor o
menor protección IP, etc.

 ARDUINO UNO

Arduino Uno es una placa electrónica basada en el microcontrolador ATmega328.


Cuenta con 14 entradas/salidas digitales, de las cuales 6 se pueden utilizar como
salidas PWM (Modulación por ancho de pulsos) y otras 6 son entradas analógicas.
Además, incluye un resonador cerámico de 16 MHz, un conector USB, un conector de
alimentación, una cabecera ICSP y un botón de reseteado. La placa incluye todo lo
necesario para que el microcontrolador haga su trabajo, basta conectarla a un
ordenador con un cable USB o a la corriente eléctrica a través de un transformador.

Características técnicas de Arduino Uno r3:


- Microcontrolador: ATmega328
- Voltage: 5V
- Voltage entrada (recomendado): 7-12V
- Voltage entrada (limites): 6-20V
- Digital I/O Pins: 14 (de los cuales 6 son salida PWM)
- Entradas Analógicas: 6
- DC Current per I/O Pin: 40 mA
- DC Current parar 3.3V Pin: 50 mA
- Flash Memory: 32 KB (ATmega328) de los cuales 0.5 KB son utilizados para el
arranque
- SRAM: 2 KB (ATmega328)
- EEPROM: 1 KB (ATmega328)
- Clock Speed: 16 MHz

Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)


lOMoARcPSD|3456802

 ARDUINO MEGA

Arduino Mega es una tarjeta de desarrollo open-source construida con un


microcontrolador modelo Atmega2560 que posee pines de entradas y salidas (E/S),
analógicas y digitales. Esta tarjeta es programada en un entorno de desarrollo que
implementa el lenguaje Processing/Wiring. Arduino puede utilizarse en el desarrollo de
objetos interactivos autónomos o puede comunicarse a un PC a través del puerto serial
(conversión con USB) utilizando lenguajes como Flash, Processing, MaxMSP, etc. Las
posibilidades de realizar desarrollos basados en Arduino tienen como límite la
imaginación.

El Arduino Mega tiene 54 pines de entradas/salidas digitales (14 de las cuales pueden
ser utilizadas como salidas PWM), 16 entradas análogas, 4 UARTs (puertos serial por
hardware), cristal oscilador de 16MHz, conexión USB, jack de alimentación, conector
ICSP y botón de reset. Arduino Mega incorpora todo lo necesario para que el
microcontrolador trabaje; simplemente conéctalo a tu PC por medio de un cable USB o
con una fuente de alimentación externa (9 hasta 12VDC). El Arduino Mega es
compatible con la mayoría de los shields diseñados para Arduino Duemilanove,
diecimila o UNO.

Características:
 Microcontrolador ATmega2560.
 Voltaje de entrada de – 7-12V.
 54 pines digitales de Entrada/Salida (14 de ellos son salidas PWM).
 16 entradas análogas.
 256k de memoria flash.

Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)


lOMoARcPSD|3456802

 INTERFAZ GRAFICA

Llamamos Interfaz Gráfica GUI (Graphical User Interface) al conjunto de componentes


gráficos que posibilitan la interacción entre el usuario y la aplicación. Es decir ventanas,
botones, combos, listas, cajas de diálogo, campos de texto, etc.

Primero tenemos que diseñar la aplicación, programarla y por último los eventos que
se generan a medida que el usuario interactúa con la Interfaz.

Los componentes son objetos de las clases que heredan de la clase base componente
como Button, List, TextField, TextArea, Label, etc.

En una GUI los componentes son contenidos en Contenedores o containers. Un


Containes es un objeto cuya clase hereda de Container(clase que a su vez es subclase
de Component) y tiene la responsabilidad de contener Componentes.

Generalmente una GUI se monta sobre un Frame. Esté será el Container principal que
contendrá a los componentes de la Interfaz Gráfica, un Container podría contener a
otros containers.

Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)


lOMoARcPSD|3456802

3. ALCANCES Y LIMITACIONES

3.1 ALCANCES:

El prototipo está diseñado para manipular el robot en cualquier ambiente donde se


vaya a operar junto a un sistema efectivo que permita desplazarse con gran
facilidad y donde su función sea observar mediante la cámara, y poder identificar
obstrucciones en ductos de diámetros superiores a 45 cm, siendo capaz de recopilar
ciertos puntos para que esta información sea almacenada y procesada por un PC o
laptop después de ser ejecutado el recorrido del robot.

3.2 LIMITACIONES:

Las limitaciones por las que va estar sometido el prototipo es por el tipo de área de
traslado que podría tomar ,ya que en recorridos en superficies desniveladas podría
provocar un atascamiento del robot dentro de las tuberías,minas,etc .por lo que el
prototipo robot debe ejecutarse en una superficie con pocos obstáculos de subida
y bajada es decir que haya aproximadamente ángulos menores de 15° de
inclinación, puesto que el diseño de la transmisión y la tracción debe proporcionar
el suficiente manejo de torque y estabilidad para el robot

4. BENEFICIOS.

 Nos facilita la localización de minas terrestres o exploraciones arriesgadas. Esta


idea sería la solución a muchos de estos problemas que se le dificultan a las
personas, ya que teniendo un Robot Explorador que se use para investigar
espacios reducidos o arriesgados para el ser humano, se podría prevenir la
inseguridad en estos ambientes, mejorando el desempeño en cuanto a
exploración, realización de tareas entre otras, y una optimización de las mismas.

10

Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)


lOMoARcPSD|3456802

CONCLUSIONES

En el proyecto realizado se ha logrado desarrollar un robot explorador la cual


consistió en implementar un algoritmo para exploración y pasar de las comunes
simulaciones hechas solo en la computadora a un escenario real de pruebas. El
sistema permitió establecer un control sobre un robot móvil encargado de realizar la
tarea y al mismo tiempo debe ser capaz de obtener información que sea de utilidad
para la construcción de un mapa y un modelo virtual del ambiente explorado

BIBLIOGRAFIA

 http://repositorio.ug.edu.ec/bitstream/redug/24306/1/B-CINT-PTG-
N.233.Rodr%C3%ADguez%20Flores%20Leslie%20Michelle.Marin%20
Molina%20Christian%20Guillermo.pdf

 http://repositorio.unicordoba.edu.co/bitstream/handle/123456789/286/traba
jo%20de%20grado%20final%202015fficce2003.pdf?sequence=1

 https://playground.arduino.cc/Es/Es

 https://eprints.ucm.es/12318/1/T32658.pdf

11

Descargado por Luis Daniel Ramos Quea (danielramosquea@gmail.com)

También podría gustarte