Sei sulla pagina 1di 13

UNIVERSIDAD DE LAS FUERZAS ARMADAS ESPE

DEPARTAMENTO DE CIENCIAS EXACTAS


Informe N°02

CARRERA: INGENIERÍA EN NIVEL: 1ER NIVEL NRC: 2272


TELECOMUNICACIONES
NOMBRES: CAROLINA AGUIAR ; HENRY PAUL; ISAAC CORRALES; DEYDER
MONTIEL; KEVIN YANANCAYO
FECHA DE REALIZACIÓN: 2018/12/12
CALIFICACIÓN: PROFESOR: ING. LAURO DIAZ
SANTAMARIA
FIRMA:

OBJETIVOS:
 Uso de lenguaje de programación C++ para el control de dispositivos de
iluminación.
 Introducir el uso de de sistemas digitales a instalaciones electrónicas.
 Aprender sobre codificación y decodificación en señales inalámbricas en
dispositivos
 Demostrar los alcances de la programación C++ en la vida cotidiana.

MARCO TEORICO:

ARDUINO:
Una placa con todos los elementos necesarios para conectar periféricos a las entradas y
salidas de un microcontrolador, y que puede ser programada tanto en Windows como
macOS y GNU/Linux.
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.
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 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.

El Arduino es una placa basada en un microcontrolador ATMEL. Los


microcontroladores son circuitos integrados en los que se pueden grabar instrucciones,
las cuales las escribes con el lenguaje de programación que puedes utilizar en el entorno
Arduino IDE. Estas instrucciones permiten crear programas que interactúan con los
circuitos de la placa.
El microcontrolador de Arduino posee lo que se llama una interfaz de entrada, que es
una conexión en la que podemos conectar en la placa diferentes tipos de periféricos. La
información de estos periféricos que conectes se trasladará al microcontrolador, el cual
se encargará de procesar los datos que le lleguen a través de ellos.
El tipo de periféricos que puedas utilizar para enviar datos al microcontrolador depende
en gran medida de qué uso le estés pensando dar. Pueden ser cámaras para obtener
imágenes, teclados para introducir datos, o diferentes tipos de sensores.
También cuenta con una interfaz de salida, que es la que se encarga de llevar la
información que se ha procesado en el Arduino a otros periféricos. Estos periféricos
pueden ser pantallas o altavoces en los que reproducir los datos procesados, pero
también pueden ser otras placas o controladores.
LED:
Acrónimo de “Light Emitting Diode”, o diodo emisor de luz de estado sólido (solid
state), constituye un tipo especial de semiconductor, cuya característica principal es
convertir en luz la corriente eléctrica de bajo voltaje que atraviesa su chip. Desde el
punto de vista físico un LED común se presenta como un bulbo miniaturizado, carente
de filamento o de cualquier otro tipo de elemento o material peligroso, con la ventaja
sobre otras tecnologías que no contamina el medio ambiente.
El color que emite cada diodo LED en particular depende principalmente del
material semiconductor que se haya empleado en su fabricación. Cada compuesto
químico propio del material semiconductor utilizado en la fabricación de un diodo LED
permite la emisión de una luz de un color específico, correspondiente a una determinada
longitud de onda del espectro electromagnético.

Partes que componen un LED común:

1.- Lente que forma parte del encapsulado o envoltura


protectora del LED.
2.- Encapsulado de resina epoxy (transparente o del mismo
color de la luz que emite el chip).
3.- Chip o diodo semiconductor emisor de luz.
4.- Copa reflectora. 5.- Yunque. 6.- Base.
7.- Marca plana que identifica el terminal correspondiente
al cátodo del chip.
8.- Terminal de conexión externa negativo (–) correspondiente
al cátodo (de tamaño más corto que el conectado al ánodo).
9.- Terminal de conexión externa positivo (+) correspondiente al ánodo.
10.- Alambre de oro muy fino conectado al ánodo del chip y al terminal. positivo de
conexión externa.
Los diodos LEDs tienen una vida útil extensa, de unas 50 mil horas aproximadamente,
comparadas con las mil horas que poseen las lámparas incandescentes y las 10 mil de
las fluorescentes. Al generar muy poco calor su eficiencia alcanza cerca del 85% de la
energía consumida.
LED RGB:
Es un led que combina tres colores (Rojo, Verde, Azul) para formar más de 16 millones
de tonos de luz. De esta forma, dependiendo de la tonalidad pasada como parámetro,
podemos emitir un color de luz u otro.
Los colores del Led RGB vienen representados con números comprendidos entre el
valor 0 y el valor 255. De esta forma, para componer el color rojo pondríamos el valor
máximo del rojo y el valor mínimo de los otros colores, es decir, el rojo equivale a
"R=255; G=0; B=0". Y así sucesivamente con el resto de colores.
El propósito de este es poder crear, en teoría, toda la gamma de colores posibles
mezclando cada color con intensidades distintas. Cuando se mezclan los tres a la misma
intensidad de obtiene el blanco.
Para el control de este LED es común usar el encapsulado de 5mm como en los LED
comunes, agregando un pin de conexión por cada color y uno para el nodo común. Este
nodo común puede ser el cátodo o el ánodo como se muestra a continuación:
Las caídas de voltaje y consumo de corriente para cada color son:

LED Rojo 2,1[V] 20[mA]

LED Verde 3,3[V] 20[mA]

LED Azul 3,3[V] 20[mA]

PYTHON:
Phyton es un lenguaje de programación indispensable para cualquier informático o
aprendiz de desarrollo web. Constituye una base sólida para quienes deseen formarse en
el área, porque se trata de un lenguaje dinámico que se implementa en una variedad de
plataformas, por lo cual permite crear no solo sitios sino aplicaiciones en una amplia
variedad de sistemas operativos como iOS, Android, Windows o Mac.
A nivel científico, posee una amplia biblioteca de recursos con especial énfasis en las
matemáticas para aspirantes a programadores en áreas especializadas. También es útil
para crear videojuegos gracias a su dinamismo y simplicidad, aunque tratándose de un
lenguaje de programación interpretado es más lento que Java, C++ o C#.
Características del lenguaje

Propósito general
Se pueden crear todo tipo de programas. No es un lenguaje creado específicamente para
la web, aunque entre sus posibilidades sí se encuentra el desarrollo de páginas.

Multiplataforma
Hay versiones disponibles de Python en muchos sistemas informáticos distintos.
Originalmente se desarrolló para Unix, aunque cualquier sistema es compatible con el
lenguaje siempre y cuando exista un intérprete programado para él.

Interpretado
Quiere decir que no se debe compilar el código antes de su ejecución. En realidad sí que
se realiza una compilación, pero esta se realiza de manera transparente para el
programador. En ciertos casos, cuando se ejecuta por primera vez un código, se
producen unos bytecodes que se guardan en el sistema y que sirven para acelerar la
compilación implícita que realiza el intérprete cada vez que se ejecuta el mismo código.

Interactivo
Python dispone de un intérprete por línea de comandos en el que se pueden introducir
sentencias. Cada sentencia se ejecuta y produce un resultado visible, que puede
ayudarnos a entender mejor el lenguaje y probar los resultados de la ejecución de
porciones de código rápidamente.
Orientado a Objetos
La programación orientada a objetos está soportada en Python y ofrece en muchos casos
una manera sencilla de crear programas con componentes reutilizables.

Funciones y librerías
Dispone de muchas funciones incorporadas en el propio lenguaje, para el tratamiento de
strings, números, archivos, etc. Además, existen muchas librerías que podemos importar
en los programas para tratar temas específicos como la programación de ventanas o
sistemas en red o cosas tan interesantes como crear archivos comprimidos en .zip.

Sintaxis clara
Por último, destacar que Python tiene una sintaxis muy visual, gracias a una notación
identada (con márgenes) de obligado cumplimiento. En muchos lenguajes, para separar
porciones de código, se utilizan elementos como las llaves o las palabras clave begin y
end. Para separar las porciones de código en Python se debe tabular hacia dentro,
colocando un margen al código que iría dentro de una función o un bucle. Esto ayuda a
que todos los programadores adopten unas mismas notaciones y que los programas de
cualquier persona tengan un aspecto muy similar.

C++:
Es un lenguaje de programación diseñado a mediados de los años 80 por Bjarne
Stroustrup. La intención de su creación fue el extender al exitoso lenguaje de
programación C con mecanismos que permitieran la manipulación de objetos.
Tiene todas las propiedades del lenguaje C más otras útiles funcionalidades que lo
convierten en uno de los preferidos para crear aplicaciones con interfaz gráfica.
En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es
un lenguaje híbrido. Posteriormente se añadieron facilidades de programación genérica,
que se sumó a los otros dos paradigmas que ya estaban admitidos (programación
estructurada y la programación orientada a objetos). Por esto se suele decir que el C++
es un lenguaje de programación de alto nivel, que es la base de los sistemas operativos,
software licenciado y libre del mundo informático actual.
En la actualidad, el C++ es un lenguaje versátil, potente y general. Su éxito entre los
programadores profesionales le ha llevado a ocupar el primer puesto como herramienta
de desarrollo de aplicaciones. El C++ mantiene las ventajas del C en cuanto a riqueza de
operadores y expresiones, flexibilidad, concisión y eficiencia. Además, ha eliminado
algunas de las dificultades y limitaciones del C original. La evolución de C++ ha
continuado con la aparición de Java, un lenguaje creado simplificando algunas cosas de
C++ y añadiendo otras, que se utiliza para realizar aplicaciones en Internet.
Las principales herramientas necesarias para escribir un programa en C++ son las
siguientes:
 Un compilador de C++
 Paciencia
 Nociones sobre programación
 Un editor cualquiera de texto, o mejor un entorno de desarrollo (IDE)

MÓDULO BLUETOOTH:

Módulo Bluetooth HC-05


Es idea para utilizar en todo tipo de proyectos donde necesites una conexión
inalámbrica fiable y sencilla de utilizar. Se configura mediante comandos AT y tiene la
posibilidad de hacerlo funcionar tanto en modo maestro como esclavo. Eso quiere decir
que puedes conectar dos módulos juntos, conectar tu robot al móvil o incluso hacer una
pequeña red de sensores comunicados entre ellos con un maestro y varios esclavos.
El módulo Bluetooth HC-05 puede alimentarse con una tensión de entre 3.3 y 6V
(normalmente 5V), pero los pines TX y RX utilizan niveles de 3,3V por lo que no se
puede conectar directamente a placas de 5V. Debes utilizar dos pequeñas resistencias
como divisor de tensión para que el módulo no se estropee. En las imágenes del
producto podrás ver el esquema de conexionado. También dispone de un pulsador para
entrar en modo comandos, aunque también lo puedes hacer por software utilizando el
pin EN.
Tiene un LED incorporado que indica el estado de la conexión y si está emparejado o no
en función de la velocidad del parpadeo.
El HC-05 es un módulo Bluetooth muy versátil que no dejarás de utilizar en todos tus
proyectos!
Características:
Protocolo Bluetooth: v1.1 / 2.0.
Frecuencia: banda ISM de 2,4 GHz .
Modulación: GFSK
Potencia de transmisión : menos de 4dBm , Clase 2 .
Sensibilidad: Menos de -84dBm en el 0,1% BER .
Ratio asíncronos: 2.1Mbps ( Max) / 160 kbps .
Sincróno : 1Mbps / 1Mbps .
Perfiles de la ayuda : puerto serie Bluetooth (maestro y esclavo) .
Fuente de alimentación: + 3.3VDC 50mA . (soporta de 3.3 a 6V)
Temperatura de trabajo: -5 ° C a 45 ° C.

S.O. ANDROID:
Android es un sistema operativo basado en Linux que fue pensado en un principio para
usarse con un teclado y un cursor que permitía navegar por las aplicaciones. En la
actualidad, tras varias actualizaciones, está pensado para dispositivos móviles con
pantalla táctil, ya sean smartphones o tabletas. Inicialmente fue creado por la compañía
de software Android Inc, pero en el año 2005 Google compró la empresa y 2 años
después presentó el sistema operativo.
No sería hasta un año más tarde cuando se lanzara el primer móvil que contaba con este
sistema, el HTC Dream, que comenzó a venderse en octubre de 2008. En la
actualidad, más de mil millones de teléfonos y tablets de todo el mundo lo utilizan por
ser, “un sistema operativo personalizable, fácil de utilizar y que funciona a la perfección
con las aplicaciones de Google”, indican en su web oficial. El logotipo, y casi mascota,
del sistema es Andy, un androide verde.
Estructura
Los componentes del Sistema Operativo de Android, cada sección se describe en detalle
a continuación:
Aplicaciones
Las aplicaciones base incluyen un cliente de email, programa de SMS,
calendario, mapas, navegador, contactos, y otros. Todas las aplicaciones son escritas en
el lenguaje de programación Java.
Framework de Aplicaciones
Los desarrolladores tienen acceso completo a los mismos Apis del framework usados
por las aplicaciones base. La arquitectura está diseñada para simplificar la reutilización
de componentes; cualquier aplicación puede publicar sus capacidades y cualquier otra
aplicación puede hacer luego uso de esas capacidades (sujeto a reglas de seguridad del
framework). Éste mismo mecanismo permite que los componentes sean reemplazados
por el usuario. Una capa de servicios disponibles para las aplicaciones incluye:
(Deliverius)
Librerías: Android incluye un conjunto de librerías C/C++ usadas por varios
componentes del sistema Android. Estas capacidades se exponen a los desarrolladores a
través del framework de aplicaciones de Android. Algunas son: System C library
(implementación librería C standard), librerías de medios, librerías de gráficos, 3d,
SQLite, entre otras. (Deliverius)
Runtime de Android
Android incluye un conjunto de librerías base que proveen la mayor parte de las
funcionalidades disponibles en las librerías base del lenguaje de programación Java.
Cada aplicación Android corre su propio proceso, con su propia instancia de la máquina
virtual Dalvik. Dalkiv ha sido escrito de forma que un dispositivo puede correr en
múltiples máquinas virtuales de forma eficiente. (Deliverius). Dalkiv
ejecuta archivos en el formato Dalvik Ejecutable (.dex), el cual está optimizado
para memoria mínima. La Máquina Virtual está basada en registros, y corre clases
compiladas por el compilador de Java que han sido transformadas al formato. Dex por
la herramienta incluida "dx".
Núcleo - Linux:
Android depende de un Linux versión 2.6 para los servicios base del sistema como
seguridad, gestión de memoria, gestión de procesos, stack de red, y modelo de drivers.
El núcleo también actúa como una capa de abstracción entre el hardware y el resto del
stack de software. (Deliverius)
MARCO PRÁCTICO:
PROCEDIMIENTO:
1) Adquirir los materiales para la realización del procedimiento
2) Conectar el arduino al led rgb mediante resistencias
3) Conectar el modulo bluetooth al arduino en su puerto serial
4) Abrir la interfaz de programación de arduino
5) Crear un sketch capaz de interpretar los datos enviados desde el celular
6) Crear una aplicación en android para poder interactuar con el usuario
7) Comprobar las conexiones de los circuitos
8) Demostrar el correcto funcionamiento del circuit

PLATAFORMA DE PROGRAMACION:
http://diymakers.es/crear-app-para-arduino-con-app-inventor/
INTERFAZ:
CODIGO DE COLORES:

PREVISUALIZACIÓN:
DEMOSTRACIÓN PRACTICA:
ANEXOS:

WEBGRAFIAS:
https://www.xataka.com/basics/que-arduino-como-funciona-que-puedes-hacer-uno
https://blanchardspace.wordpress.com/2013/05/06/introduccion-a-c-que-es/
https://tienda.bricogeek.com/modulos-bluetooth/800-modulo-bluetooth-hc-05.html
http://www.asifunciona.com/fisica/ke_led/ke_led_2.htm
https://desarrolloweb.com/articulos/1325.php
https://www.programoergosum.com/cursos-online/robotica-educativa/251-led-rgb-del-
robot-mbot/que-es-un-led-rgb
http://www.arduino.utfsm.cl/el-led-rgb/

Potrebbero piacerti anche