You are on page 1of 15

Ao de la consolidacin del Mar de Grau

UNIVERSIDAD NACIONAL
F
A MAYOR DE SAN MARCOS
C
U (UNIVERSIDAD DEL PER, DECANA DE AMRICA)
L
T
AD DE INGENIERA DE SISTEMAS E
INFORMTICA

E.A.P. INGENIERA DE SISTEMAS

TEMA : SISTEMA INTELIGENTE DE RECARGA DE TANQUES CON


PUERTA AUTOMATICA

CURSO : INTELIGENCIA ARTIFICIAL

PROFESOR : VEGA HUERTA, HUGO

GRUPO : 6

INTEGRANTES:
ALVA BALTAZAR, STEPHANIE MARIEL
CAMPOS HUAYNATE, JUAN
CUMPA BARRETO, ALEJANDRO
MENDOZA MELO, MARYURI
QUISPE GONZALES, DAVID
ORTEGA ALVARADO, MARTIN

1
2016
TABLA DE CONTENIDO

OBJETIVOS: .......................................................................................................................... 4
CONCEPTOS TERICOS ......................................................................................................... 4
ARDUINO UNO R3 ....................................................................................................... 4
SENSOR DE DISTANCIA: ............................................................................................... 5
PROTOBOARD:............................................................................................................ 5
LEDS:.......................................................................................................................... 5
SIM900:...................................................................................................................... 6
SERVOMOTOR: ........................................................................................................... 6
CONECTORES:............................................................................................................. 7
DESCRIPCIN DEL CDIGO ................................................................................................... 8
Variables .................................................................................................................... 8
Setup() ....................................................................................................................... 9
Loop() ...................................................................................................................... 10
int ping(int TriggerPin, int EchoPin) ............................................................................ 11
EnviarMensaje()........................................................................................................ 12
FOTOS ............................................................................................................................... 13

2
INTRODUCCIN

En el siguiente informe presentaremos y describiremos la forma en la que realizamos


un sistema inteligente que recargue automticamente un tanque, en el cul se
utilizarn 2 sensores de distancia, dicho proyecto consiste en tres tanques, el primero
es el tanque T1 que sirve para abastecer al tanque T2, el T2 que abastecer al tanque
T3, y por ltimo el T3 que se abastece de T2.

El sistema funciona de manera automtica, en dnde el tanque T2 tendr un sensor de


distancia que detectar si el tanque T2 se encuentra vaco o con un contenido mnimo,
y para ello debe de abrirse la llave de agua para que el tanque T1 pueda abastecerlo,
pero cundo el sensor detecte que T2 ya est lleno, entonces debe de cerrarse la llave
de agua para que T2 no se rebalse. T1 tambin tendr un sensor de distancia de modo
que cundo el contenido de T1 baje a un litro, el sistema inteligente enviar un
mensaje de texto al proveedor para realizar el pedido de un bidn de agua de 5 litros y
luego de un tiempo se abra la tapa por donde se proceder a abastecer al tanque.

Con el fin de hacerlo ms sencillo y entendible el procedimiento de este proyecto,


mencionaremos breves definiciones de los materiales que utilizaremos; asimismo,
mostraremos el ensamblado, adems de comentar y explicar el cdigo utilizado.

Tambin adjuntaremos capturas de pantalla y/o fotos de partes del procedimiento.

3
SISTEMA INTELIGENTE DE
RECARGA DE TANQUES

OBJETIVOS:

Este es un proyecto simple que nos ayudar a familiarizarnos con la plataforma Arduino, cuyos
objetivos son:

Demostrar la facilidad de la programacin para inventar nuevas cosas que funcionen


con tecnologa de computacin.
Demostrar que muchos de los eventos de la vida cotidiana se pueden automatizar
haciendo uso de las tecnologas adecuadas.
Conocer el funcionamiento y manejo de sensores y familiarizarnos con la plataforma
Arduino.

CONCEPTOS TERICOS

ARDUINO UNO R3

Este es el nuevo Arduino Uno R3 utiliza el


microcontrolador ATmega328. En adicin a
todas las caractersticas de las tarjetas
anteriores, el Arduino Uno utiliza
el ATmega16U2 para el manejo de USB en
lugar del 8U2 (o del FTDI encontrado en
generaciones previas). Esto permite ratios
de transferencia ms rpidos y ms
memoria. No se necesitan drivers para Linux
o Mac (el archivo inf para Windows es
necesario y est incluido en el IDE de
Arduino).

4
SENSOR DE DISTANCIA:

El HC-SR04 es un sensor de distancias por


ultrasonidos capaz de detectar objetos y calcular la
distancia a la que se encuentra en un rango de 2 a
450 cm. El sensor funciona por ultrasonidos y
contiene toda la electrnica encargada de hacer la
medicin. Su uso es tan sencillo como enviar el
pulso de arranque y medir la anchura del pulso de
retorno. De muy pequeo tamao, el HC-SR04 se
destaca por su bajo consumo, gran precisin y bajo
precio por lo que est reemplazando a los sensores
polaroid en los robots ms recientes.

PROTOBOARD:

La protoboard es un dispositivo muy utilizado para probar circuitos electrnicos. Tiene la

ventaja de que permite armar con facilidad un circuito, sin la necesidad de realizar soldaduras.

LEDS:
El LED, acrnimo de Light
EmittingDiode, o diodo emisor de luz de estado
slido (solidstate), constituye un tipo especial
de semiconductor, cuya caracterstica principal es
convertir en luz la corriente elctrica de bajo voltaje
que atraviesa su chip. Desde el punto de vista fsico
un LED comn se presenta como un bulbo
miniaturizado, carente de filamento o de cualquier

5
otro tipo de elemento o material peligroso, con la ventaja sobre otras tecnologas que no
contamina el medio ambiente.

SIM900:

El shield GSM GPRS SIM900 o ICOMSAT del


fabricante Itead Studio, permite conectar el
Arduino a la red de telefona celular de tu
preferencia y hacer uso de todos los servicios que
esta te ofrece (voz y datos). El mdulo de SIMCOM
SIM900 es capaz de funcionar en cualquier red
GSM en el mundo gracias a que se trata de un
dispositivo de 4 bandas (850/900/1800/1900MHz).
Si desea un mdulo genrico que puede funcionar
con cualquier otro microcontrolador, le
recomendamos el Sistema mnimo SIM900.

Caractersticas:
Operacin global y con cualquier proveedor (multibanda).
Se controla mediante comandos AT y comandos AT extendidos.
Incluye stack TCP/IP soporta TCP, HTTP, FTP mediante comandos AT.
Ideal para transmisin de datos sobre GPRS.
Ancho de banda de descarga 85.6 kbps.
Ancho de banda de subida 42.8 kbps.
SMS en modo PDU y Texto
La interfaz de control del mdem GSM se puede asociar con varios pines del Arduino
no solamente los del UART, permitiendo usar libreras como SoftSerial
Incluye sper capacitor para almacenamiento persistente de datos
Librera para funcionar con Arduino.

SERVOMOTOR:

Un servomotor (tambin conocido como servo), es un motor de corriente continua compuesto


por engranajes que limitan la velocidad. Est limitado, teniendo un rango de movimiento de 0
a 180 grados.Son muy comunes en juguetes y en objetos pequeos.
Como podemos observar en la imagen, el
servo dispone d tres cables distintos.
Cada uno de ellos se conecta de la
siguiente manera: el cable de color rojo
(normalmente) se utiliza para recibir la
corriente elctrica. Tenemos que tener en

6
cuenta que debe recibir entre 5 y 7V para conseguir que funcione; el cable de color negro o
marrn sirve para conectarlo a tierra; finalmente el cable de color amarillo, blanco o naranja es
el que va conectado al pin de nuestro Arduino.

CONECTORES:

Conector macho: tiene un punto saliente. Esta


punta se enchufa dentro del conector hembra.

Conector hembra: aceptan la punta del conector


macho, a menudo van en la parte trasera de un
televisor, estreo y equipos hogareos.}

Conector macho-macho: tienen un conector


macho en ambos extremos del cable o
puente conector, por lo general se usan para
extender cables de parlantes o actan
como puentes para conectar dos
dispositivos que tienen conectores hembras.

7
DESCRIPCIN DEL CDIGO
Variables

Primero incluimos la librera Servo.h para poder usar los mtodos de la clase Servo y trabajar
con nuestro servomotor.

Luego declaramos nuestras variables:

8
Servomotor: Inicializamos un objeto de la clase Servo para poder usar las funciones.

EchoT1: Es el pin receptor del sensor distancia del tanque 1. Inicializado en el pin digital 5.

TriggerT1: Es el pin emisor del sensor distancia del tanque 1. Inicializado en el pin digital 6.

EchoT2: Es el pin receptor del sensor distancia del tanque 2. Inicializado en el pin digital 10.

TriggerT2: Es el pin emisor del sensor distancia del tanque 2. Inicializado en el pin digital 11.

control: Es el pin con el cual controlaremos el motor. Inicializado en el pin digital 2.

i=1 : Variable para que solo mande un mensaje (se pudo haber usado tambin un booleano)

Setup()

Se inicializan la velocidad de transmisin del monitor serial en 19200 porque esta es la


velocidad de transmisin del GPRS.

Se inicializan los pines TriggerT1,TriggerT2 y control como salida y los pines EchoT1 y EchoT2
como entrada.

Se inicializa el pin 9 para poder controlar al servomotor.

Se indica que el servomotor este en un angulo de 180 grados (tapa cerrada).

9
Loop()

int cmT1 = ping(TriggerT1, EchoT1);


Mide la distancia del tanque 1 al agua.
int cmT2 = ping(TriggerT2, EchoT2);
Mide la distancia del tanque 2 al agua.
if (cmT1 < 4)
cuando el tanque 1 se llena se pone i=1 y se espera 4 segundos para que la tapa del
servomotor se cierre (180).
if((cmT1 >= 9)&&(cmT1<=13)
digitalWrite(control,LOW);
Si el tanque 2 est casi vacio, se enciende el motor para bombear el agua del tanque1 al
tanque2. if(cmT2 <= 5)

10
digitalWrite(control,HIGH);
Si el tanque2 esta casi lleno se apaga el motor para dejar de bombear el agua del tanque1 al
tanque 2.

int ping(intTriggerPin, intEchoPin)

longduration, distanceCm;
Declaramos las variables duration y distanceCm.
digitalWrite(TriggerPin, LOW);
Para generar un pulso limpio ponemos a LOW 4us
delayMicroseconds(4);
Espera 4 microsegundos.
digitalWrite(TriggerPin, HIGH);
Generamos Trigger (disparo) de 10us
delayMicroseconds(10);
Espera 10 microsegundos.
digitalWrite(TriggerPin, LOW);
Termina el disparo del pulso generado
duration = pulseIn(EchoPin, HIGH);
Medimos el tiempo entre pulsos, en microsegundos
distanceCm = duration * 10 / 292/ 2;
Convertimos a distancia, en cm
returndistanceCm;
Retorna la distancia en centmetros.

11
EnviarMensaje()

Serial.print("AT+CMGF=1\r");
Pone al sensor GPRS en modo SMS.

delay(100);
Espera una dcima de segundo.

Serial.println("AT + CMGS = \"+51951696030\"");


Aqu se escribe el nmero de celular anteponiendo el cdigo de pas (Per +51)

delay(100);
Espera una dcima de segundo.

Serial.print("Temperatura alta de ");


Serial.println(temp);
Este ser el mensaje enviado

delay(100);
Espera una dcima de segundo.

Serial.println((char)26);
Indica el termino del SMS.

delay(100);
Espera una dcima de segundo.

12
FOTOS

13
14
15

You might also like