0% encontró este documento útil (0 votos)
155 vistas21 páginas

AutoClima: Vehículo Autónomo Meteorológico

Este documento presenta el proyecto AutoClima, un vehículo autónomo diseñado para medir la temperatura y humedad del ambiente en diferentes ubicaciones. AutoClima usa sensores como DHT11 para medir el clima y un módulo GPS para geolocalizarse. Una Raspberry Pi almacena los datos recolectados por los sensores a medida que AutoClima se mueve autónomamente siguiendo una ruta predefinida. El objetivo es analizar las variaciones del clima en distintas áreas.

Cargado por

Juancho Vargas
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
155 vistas21 páginas

AutoClima: Vehículo Autónomo Meteorológico

Este documento presenta el proyecto AutoClima, un vehículo autónomo diseñado para medir la temperatura y humedad del ambiente en diferentes ubicaciones. AutoClima usa sensores como DHT11 para medir el clima y un módulo GPS para geolocalizarse. Una Raspberry Pi almacena los datos recolectados por los sensores a medida que AutoClima se mueve autónomamente siguiendo una ruta predefinida. El objetivo es analizar las variaciones del clima en distintas áreas.

Cargado por

Juancho Vargas
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

UNIVERSIDAD FRANCISCO DE PAULA SANTANDER

FACULTAD DE INGENIERÍA

Programa de Ingenierı́a Electrónica

AutoClima: Vehiculo autónomo para medición de


temperatura y húmeda con geolocalización

Richard Samir Hernández CÓD. 1161062


Juan Enrique Vargas López CÓD. 1161072
Karina Andrea Rivera Vaca CÓD. 1161188

Materia: Sistemas Embebidos

Docente: M. Sc. Angelo Soto Vergel

Cúcuta, Norte de Santander, Colombia


Abril 8, 2019
Índice general

1. Ingenierı́a Conceptual 3
1.1. Definición del producto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Requerimientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.1. Técnicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.2. Funcionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.3. Del producto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3. Plantemiento de la necesidad . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.1. Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.2. Justificación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4. Normativa y regulación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4.1. Regulaciones de software . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5. Metodologı́a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.5.1. Instrumentar los motores con el puente H y la Raspberry pi, para crear
las funciones de manejo del vehiculo . . . . . . . . . . . . . . . . . . . 8
1.5.2. Progamación de los sensores y Display . . . . . . . . . . . . . . . . . 9
1.5.3. Implementación vehiculo automata con data logging . . . . . . . . . . 11
1.6. Presupuesto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2. Ingenierı́a basica 15
2.0.1. Fase de codificación . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.0.2. Arduino IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.0.3. Fase de implementación . . . . . . . . . . . . . . . . . . . . . . . . . 19

2
Capı́tulo 1

Ingenierı́a Conceptual

1.1. Definición del producto


Autoclima es un vehı́culo meteorológico autónomo, capaz de tomar diferentes medidas
del clima y ambiente por medio de sensores, Autoclima contara con un módulo GPS el cual
le permitirá movilizarse de acuerdo a una ruta trazada con anterioridad para llevar a cabo
un registro tal como se aprecia en la figura 1.1.

Temp. (◦ C) −11,7◦ 7,5◦ 24,8◦


Húm (re) 1,5 15

Figura 1.1: Registro en tiempo real temperatura y húmeda

Para la elaboración del AutoClima se plantea utilizar como placa principal una tarjeta
arduino nano utilizando C++ como lenguaje de programación, esta placa será la encargada
de controlar los diferentes sensores, motores y módulos necesarios para la construcción del
autoclima. Algunos de los sensores que se utilizaran son: el DHT11 el cual es un sensor digital
capaz de medir la temperatura y la humedad del ambiente. También contara con motores
controlados por la placa principal para el desplazamiento del carro por diferentes sitios. Otro
de los componentes más importantes es el módulo de GPS, el cual permitirá conocer la ruta
y obtener información del lugar de las respectivas medidas de forma autónoma, esto con el
fin de analizar las medidas del clima en diferentes lugares, adicional a esto se emplearan
dos sensores ultrasónicos HC-SR04 y un sensor infrarrojo para evitar posibles choques con
obstáculos en la vı́a.

El esquema jerárquico de conexiones preliminar se puede apreciar en la figura 1.2, en


donde se muestra el Arduino como centro desde el cual se manejara los diferentes disositivos
ademas de como centro de control y la Raspberry pi como registro de datos.

3
Data
logging

Raspberry
Motores
Pi

Longitud

Latitud

Módulo
Infrarrojo Arduino GPS

Velocidad

Orienta.

HC-SR04 DTH11

Temperat.
Distancia

Húmeda

Figura 1.2: Esquema jerárquico de conexiones proyecto AutoClima

1.2. Requerimientos
Para la elaboración de AutoClima, se requiere de los siguientes elementos técnicos, fun-
cionales y del producto.

1.2.1. Técnicos
A continuación, se relacionan los requerimientos técnicos de AuntoClima, se hace referen-
cia a los elementos necesarios para la construcción y correcto funcionamiento del producto.

Raspberry Pi 3 Modelo B +.

Sensor DHT11.

4
Sensores HC-SR04.

Módulo GPS neo 6m.

Baterias para el autoclima.

Motores DC 5v.

Puente H L298n.

Sensor infrarrojo.

1.2.2. Funcionales
Para que AuntoClima pueda realizar sus mediciones y correcto recorrido por las zonas a
monitorear, se nombran seguidamente las funcionalidades generales requeridas.

AutoClima debe ser capaz de medir la temperatura y la humedad relativa del ambiente.

AutoClima tendrá la capacidad de almacenar en la Raspberry Pi, los datos de tempe-


ratura y la humedad.

AutoClima enviara la información de altitud, longitud, orientación y velocidad del


vehı́culo, contando con un GPS.

AutoClima evitará colisiones con los obstáculos en el camino al medir la distancia con
ellos.

1.2.3. Del producto


La estructura de AutoClima debe contar con unas caracterı́sticas concretas de diseño,
para que el producto sea competitivo en el mercado, con unos requerimientos especı́ficos que
se ensuciaran a continuación:

Es necesario que AutoClima cuente con las medidas mı́nimas de 22 cm de longitud, 16


cm de ancho y con una altura de 10 cm.

La Rasberry debe contar con medidas de protección para su conexión con el puente H
L298n y los motores.

Alimentación por medio de power bank para ser totalmente inalámbrico.

AutoClima debe tener una duración autónoma de 10 minutos de funcionamiento para


recorrer el área requerida.

5
1.3. Plantemiento de la necesidad

1.3.1. Antecedentes
Antecedente: Sistema autónomo de temperatura

Autores:Mateo Sorroche Montellano, Jordi Bécares Ferrés y Pere Tuset Peiró


Universidad:Universitat Oberta de Catalunya
Año:2016 Pais: España
Resumen:El proyecto nace de la necesidad de optimizar recursos y costes destinados al
control y vigilancia en los procesos de control de temperatura. En cualquier proceso indus-
trial o en el ámbito doméstico existen situaciones en la que se requiere un control preciso
sobre alguna variable fı́sica (temperatura, humedad, iluminación, etc.) de forma autónoma
y desatendida. Con él pretendemos sentar una base o punto de partida para resolver este y
otros aspectos relacionados, ya que es fácilmente adaptable, configurable y ampliable. El sis-
tema desarrollado mantiene de forma autónoma y controlada la temperatura de un entorno
(planta) en el nivel establecido, de tal forma que puede aplicar calor o disiparlo en función
de la necesidad puntual existente para conseguir sus objetivos [1].

Antecedente: Diseño de un vehı́culo inteligente mediante aprendizaje por obser-


vación

Autor: Zoraida Mediavilla Sansegundo


Universidad: Universidad de Cantabria
Año:2016 Pais: España
Resumen: El objetivo principal de este trabajo fin de grado es la creación de un tipo de
vehı́culo autónomo que sea capaz de aprender a conducir imitando a un conductor humano.
Por eso, el prototipo necesitaba unos sensores, una cámara para poder recabar toda la in-
formación necesaria del entorno y su comportamiento en cada instante. Para hacer esto, se
necesitaba que tuviera un controlador remoto o algún tipo de mecanismo que permitiera su
manejo.

Antecedente: Sistema de sonorización haciendo uso de Raspbeny Pi para su uso


e implantación en un entorno inteligente

Autor: Antonio Álvarez Rodrigo


Universidad: Universidad de Extremadura
Año:2014 Pais: España
Resumen: El objetivo principal que se pretende conseguir con este trabajo es el de recoger
una serie de datos con sensores de diferente naturaleza utilizando tecnologı́as de bajo coste
como Raspberly Pi. Este sistema de sensores podrá ser instalado en algún lugar de una
ciudad inteligente. Sin embargo, se pretende también definir una serie de reglas que utilicen
esos datos para poder interactuar con un drone.

6
1.3.2. Justificación
Un variado número de modelos meteorológicos presentes en el mercado, no poseen una
alimentación autónoma, esto reduce las aplicaciones en zonas rurales. Además algunos siste-
mas carecen de interfaces de comunicación las cuales son necesarias cuando se desea acceder
de forma remota a los datos del ambiente. La mayorı́a de los dispositivos de medición de tem-
peratura y humedad se instalan en un lugar especı́fico, es decir la zona a proteger y existen
aplicaciones en microclimas de diferentes zonas cada uno con un entorno climático diferente,
por ejemplo el cultivo de flores, lo cual requiere de un sistema completo para cada entorno
a monitorear, esto implica un incremento en gastos de equipos o sistemas de medición.
Para lograr una reducción en costos, AutoClima pretende brindar una óptima disminución
en recursos, con un control autónomo de temperatura y humedad del ambiente. AutoClima
realizara mediciones a diferentes áreas con un solo sistema, ya que será un vehı́culo que
podrá ir a diferentes puntos, con la facultad de transitar por cada zona de forma predefinida,
tomando las mediciones necesarias .A su vez AutoClima permitirá el acceso a los datos de
cada medición y ubicación de cada muestra de forma remota.
Autoclima brindara una versatilidad en aplicación a diferentes sectores, como por ejemplo
el sector agrario, dando un censado a diferentes cultivos, también puede tener una aplica-
ción en el sector industrial, por ejemplo para monitorear la conservación de temperatura
en diferentes áreas de un proceso de fabricación de alimentos. Otra aplicación seria en el
sector doméstico para los cambios climáticos. A su vez AutoClima permite una ampliación o
mejoras en su propio sistema ası́ abriendo paso a nuevas aplicaciones según las adaptaciones
y reformas.

1.4. Normativa y regulación

1.4.1. Regulaciones de software


Python

Phyton es desarrollado bajo una licencia de código libre de OSI (Iniciativa de Código
libre, del inglés Open Source Initiative, haciéndolo de libre uso y distribución, como para
uso comercial. La licencia de Python es administrada por PSF (Fundación de Software de
Python de sus palabras en inglés Python Software Foundation) [2].

GNU

GNU es un sistema operativo de software libre, es decir, respeta la libertad de los usua-
rios. El sistema operativo GNU consiste en paquetes de GNU (programas publicados es-
pecı́ficamente por el proyecto GNU) además de software libre publicado por terceras partes.
El desarrollo de GNU ha permitido que se pueda utilizar un ordenador sin software que
atropelle nuestra libertad [3].

7
Arduino
Los productos que vende la compañı́a son distribuidos como Hardware y Software Libre,
bajo la Licencia Pública General de GNU (GPL) y la Licencia Pública General Reducida
de GNU (LGPL),Software de código abierto y extensible: el software de Arduino se publi-
ca como herramientas de código abierto, disponibles para su extensión por programadores
experimentados. El lenguaje se puede expandir a través de las bibliotecas de C++ [4].

1.5. Metodologı́a
1.5.1. Instrumentar los motores con el puente H y la Raspberry
pi, para crear las funciones de manejo del vehiculo
El modulo de puente h debe ser instrumentado con reles para su uso ya que los motores
con los que se cuentan requieren de una potencia y voltaje superior a la entregada por la
Raspberry pi, esto causaria su destrucción si se conectara directamente, en la figura 1.3 se
aprecia el funcionamiento interno de un puente h, el cual cuenta con 4 interruptores Q1, Q2,
Q3 y Q4. La logica de ests interruptores determina el movimiento de los motores.

Figura 1.3: Esquema funcionamiento Puente H.

La logica con la que se programará el puente H viene dada por la siguiente tabla 1.1 de
estados logicos, por lo tanto la programación que se realizara debe ser del tipo de estado
finitos y funciones en python para ser facilmente llamada.

8
Tabla 1.1: Logica de movimiento motores con puente H.

Q1 Q2 Q3 Q4 ACCIÓN
1 0 0 1 Avanza
0 1 1 0 Retrocede
Se detiene
0 0 0 0
bajo inercia
Frenado
1 1 0 0
en seco

1.5.2. Progamación de los sensores y Display


La programación en este punto se divide en cuatro módulos. cada uno con su propio
protocolo de comunicación y código:
Temperatura y húmeda (DHT11).

Distancia (HC-SR04).

Sensor infrarrojo.

Módulo GPS.

Módulo DHT11
El módulo DHT11 cuenta con una libreria ya desarrollada por Aadafruit para la Rasp-
berry pi bajo el lenguaje de Phython, por lo tanto se optará por esta opción ademas se
requiere implementar las conexiones como se muestran en la figura 1.4.

Figura 1.4: Conexiones tipicas DHT11

Módulo HC-SR04
El módulo HC-SR04 al igual que el anterior cuenta con una libreria ya desarrollada por
Aadafruit para la Raspberry pi bajo el lenguaje de Phython, por lo tanto se optará por esta
opción, ademas se requiere implementar las conexiones como se muestran en la figura 1.5.

9
Figura 1.5: Conexiones sensor HC-SR04

Sensor Infrarrojo
El sensor infrarrojo presenta un manejo sencillo, este posee tres terminales dos son de
alimentación y la tercera envia un puso alto al detectar un obstaculo, este se aprecia en laa
siguiente figura 1.6.

Figura 1.6: Sensor Infrarrojo

Módulo GPS
Se implementara este módulo para delimitar y comnocer las condiciones de las areas en
las cuales se programara el movimiento del vehiculo. a continuacion se expone las variables
que seran registradas con este figura 1.7.

 


  - Longitud

 
 -Recopila -Latitud


Módulo GPS  - Velocidad




 -Orientación
n




 -Data Logging Archivo .CSV

Figura 1.7: Datos recopilados por el módulo GPS

10
1.5.3. Implementación vehiculo automata con data logging
Finalmente con los cuatro módulos de sensores implementados y los motores configurados
para el control del auto se procede a realizar el montaje total de todo el sistema, uniendo
las diferentes funciones de programación ya previemente establecidas.
Al inicio de la ejecución del programa se crear un archivo .CSV que registrara los siguien-
tes elementos que se aprecian en la tabla 1.2.

Tabla 1.2: Apariencia Tabla del archivo .CSV

Tiempo Temperatura Húmeda Longitud Latitud Velocidad Orientación


Segundos Centgrados relativa Grados Grados cm/s Cardinal

El sensado de todas las variables se ejecuta cada segundo al mismo tiepo que se expone
en el display I2C, la autonomia de la Raspberry sera por medio de una power bank ademas
los motores se alimentaran con pilas de 12v, en la figura 1.8 se puede apeciar un esquema
de flujo resumido del comportamiento del software.

Arduino

HC-SR04 e
GPS DTH11
infrarrojo

T = 1seg T = 1seg
Raspberry
pi

Si Cambio
¿Obstáculos? de
dirección
Data No
Logging

Sigue
Archivo Adelante
.CSV

Figura 1.8: Funcionamiento Basico del programa

11
1.6. Presupuesto

Tabla 1.3: Presupuesto Global del proyecto por fuentes de financiación (en miles de $).

FUENTES
RUBROS ESTUDIANTES UFPS TOTAL
Efectivo Especie Efectivo Especie
Personal 0 2583 0 1934 4517
Equipos 0 599 0 272 871
Software 0 0 0 0 0
Materiales 415 0 0 450 862
TOTAL 415 3182 0 2656 6250

Tabla 1.4: Descripción de los gastos de personal (en miles de $).

Nombre Función Dedicación # Fuentes Total


director / dentro del horas / $/h de
estudiante proyecto semana meses Estudiantes UFPS
Richard Hernández Estudiante 9 5,625 4 861 0 861
Juan Vargas Estudiante 9 5,625 4 861 0 861
Karina Rivera Estudiante 9 5,625 4 861 0 861
Angelo Soto Orientador 7 16,25 4 0 1934 1934
Total 2583 1934 4517

Tabla 1.5: Descripción de los equipos que se planea adquirir o arrendar (en miles de $).

Fuentes
Descripción Cantidad Justificación Total
Estudiantes UFPS
Multı́metro 1 Mediciones electrónicas 0 272 272
Total 272

12
Tabla 1.6: Descripción de los equipos de uso propio (en miles de $).

Horas Fuentes
Descripción $/h de Justificación Estu- UFPS Total
uso diantes
Equipo de mesa 1 153 Documentación del proyecto 153 0 153
Computador Dell 1 153 Programación 153 0 153
Computador HP 1 153 Programación 153 0 153
Pantalla HDMI 1 153 Programación Rapsberry Pi 100 0 100
Total 599

Tabla 1.7: Descripción del software que se planea adquirir o licenciar (en miles de $).

Fuentes
Descripción Cantidad Justificación Total
Estudiantes UFPS
Raspbian 3 Sistema operativo para la 0 0 0
Raspberry Pi 3 B
7-Zip 3 Herramienta para descom- 0 0 0
primir Raspbian
win32diskimager 3 Montar imagen de Raspbian 0 0 0
HDDLLF 3 Formato de bajo nivel 0 0 0
DHCP Server 3 Conexión PC-Ethernet- 0 0 0
Raspberry
PuTTY 3 Cliente SSH 0 0 0

Tabla 1.8: Descripción del software de uso propio (en miles de $).

Horas Fuentes
Descripción $/h de Justificación Estudiantes UFPS Total
utilización
MikTeX 0 120 Paquetes para LATEX 0 0 0
TeXMaker 0 120 Edición de documentos 0 0 0

13
Tabla 1.9: Descripción de los materiales e insumos (en miles de $).

Fuentes
Descripción Can- Justificación Total
tidad Estudiantes UFPS
Raspberry Pi 3 B 3 Tarjeta fı́sica de desarrollo 0 450 450
Micro SD 32GB 3 Almacenamiento para Rasp- 75 0 75
cat 10 berry
Módulo GPS neo 1 sensor para geolocalización 40 0 40
6m
DHT11 1 Sensor de temperatura de al- 15 0 15
ta resolución
Sensor Infrarrojo 2 Distancia 5 0 5
T5875DV 3 Adaptador de energı́a para 150 0 150
Raspberry Pi
Caja RPi 1 Protección contra agentes 12 0 12
externos
Módulo HC- 2 Sendor de distancia 30 0 30
SR04
Motores DC 5v 2 Motores 60 0 60
Armazon carro 1 Soporte sensores y motores 15 0 15
Puente H l298n 1 Control de motores 10 0 10
Arduino Nano 1 Control de sensores 15 0 10
Total 412 450 862

14
Capı́tulo 2

Ingenierı́a basica

En esta sección se detalla las fases metodologicas planteadas en el capitulo 1, donde


se programan los diferentes sensores de adquisición de datos, distancia y motores en el
arduino nano. A continuacion en la tabla 2 se puede apreciar las diferentes fases para la
implementación del Autoclima, las fases que se han desarrollado corresponde a software y
hardware.
Tabla 2.1: Fases del proyecto y su estado.

Fase Del Proyecto Estado ¿Por cumplir? Responsables


Análisis de requerimientos Completo X Richard, Juan, Karina.
Fase de prueba de elementos Completo X Richard, Juan.
Fase de codificación Parcial Data Logging Richard, Karina.
Fase de implementación Parcial Raspberry con protocolo Wifi Richard, Juan, Karina.

2.0.1. Fase de codificación


La implementación de los sensores se lleva a cabo por medio del Arduino IDE, para mayor
orden y facilidad de modificación del codigo se programa en modo de pestañas llamando las
diferentes funciones de los sensores al progrsms principal, a continuación se exponen los
diferentes codigos par los sensores empleados.
Los códigos se encuentran comentados en sus lineas para explicar su funcionamiento.

Sensor infrarrojo
Este sensor solo requiere un pin que envia un pulso bajo al detectar un obstacuo.
// Definimos p i n
const int i n f r a P i n = A1 ;

unsigned int d e t e c t o ;

unsigned long T i m e i n f r a = 0 ;
int p e r i o d o i n f r a = 2 0 0 ;

15
void s e t u p i n f r a r r o j o ( ) {
pinMode ( i n f r a P i n , INPUT) ; }

void d i s t a n c i a i n f r a r r o j o ( ) {

d e t e c t o = d i g i t a l R e a d ( i n f r a P i n ) ; // l e c t u r a d i g i t a l de p i n
Time infra = m i l l i s () ;
i f ( d e t e c t o == LOW) { // S i d e t e c t a b a j o hay o b s t a a c u l o .
S e r i a l . p r i n t l n ( ” Detectado o b s t a c u l o ” ) ; }
while ( m i l l i s ( ) < T i m e i n f r a + p e r i o d o i n f r a ) {}}

Sensor DHT11
Entrega la temperatura y humeda, por medio de un solo pin, empleando un protocolo
propio de adafruit, requiere de libreria.
#include <A d a f r u i t S e n s o r . h>
#include <DHT. h>
// Se d e f i n e p i n e s
const int DHTPin = 1 2 ;
DHT dht (DHTPin , DHT11) ;
// i n i c i a l i z a c i n de v a r i a b l e s
unsigned long t ;
unsigned long h ;

unsigned long Time tyh = 0 ;


int p e r i o d o t y h = 2 0 0 ;

void temperatura humedad ( ) {


// i n i c i o de s e n s o r
dht . b e g i n ( ) ;

void m e d i c i o n t y h ( ) {

Time tyh = m i l l i s ( ) ;
// L e c t u r a de v a r i a b l e s
h = dht . readHumidity ( ) ;
t = dht . readTemperature ( ) ;

Serial . p r i n t ( ” Temperatura : ” ) ;
Serial . print ( t ) ;
Serial . p r i n t ( ”Humedad : ” ) ;
Serial . print (h) ;

while ( m i l l i s ( ) < Time tyh + p e r i o d o t y h ) {}


// D e t e c c i o n de f a l l o s
i f ( isnan (h) | | isnan ( t ) ) {
S e r i a l . p r i n t l n ( ” F a i l e d t o r e a d from DHT s e n s o r ! ” ) ;
return ;
}
}

16
Sensor ultrasonico

Solo se muestra uno de los dos sensores, la programación del otro es exactamente la
misma, solo cambian los pines de trigger y echo.

// Definimos p i n e s
const int echo1 = 3 ;
const int t r i g 1 = 2 ;

unsigned long tiempo1 , d i s t a n c i a 1 ;

unsigned long Time = 0 ;

int p e r i o d o 0 = 2 ;
int p e r i o d o 1 = 1 0 ;
int p e r i o d o 2 = 2 0 0 ;

void s e t u p u l t r a s o n i c o s d e r ( ) {
pinMode ( echo1 , INPUT) ;
pinMode ( t r i g 1 , OUTPUT) ;
}

void d i s t a n c i a u l t r a s o n i c o s d e r ( ) {

// ENVIAR PULSO DE DISPARO EN EL PIN ”TRIGGER”


Time = m i l l i s ( ) ;
d i g i t a l W r i t e ( t r i g 1 , LOW) ;
while ( m i l l i s ( ) < Time + p e r i o d o 0 ) {}

Time = m i l l i s ( ) ;
d i g i t a l W r i t e ( t r i g 1 , HIGH) ;
while ( m i l l i s ( ) < Time + p e r i o d o 1 ) {}

d i g i t a l W r i t e ( t r i g 1 , LOW) ;

// MEDIR EL TIEMPO EN ESTADO ALTO DEL PIN ”ECHO” EL PULSO ES PROPORCIONAL A


LA DISTANCIA MEDIDA
tiempo1 = p u l s e I n ( echo1 , HIGH) ;

// LA VELOCIDAD DEL SONIDO ES DE 340 M/S O 29 MICROSEGUNDOS POR CENTIMETRO


// DIVIDIMOS EL TIEMPO DEL PULSO ENTRE 58 , TIEMPO QUE TARDA RECORRER IDA Y
VUELTA UN CENTIMETRO LA ONDA SONORA
d i s t a n c i a 1 = tiempo1 / 5 8 ;

// ENVIAR EL RESULTADO AL MONITOR SERIAL


Time = m i l l i s ( ) ;
S e r i a l . p r i n t l n ( ” Derecha : ” ) ;
Serial . print ( distancia1 ) ;
S e r i a l . p r i n t l n ( ” cm” ) ;
while ( m i l l i s ( ) < Time + p e r i o d o 2 ) {}
}

17
GPS Neo 6m

Requiere simular unos pines de Rx y Tx, por medio de una libreria, se emplea la libreria
de tinyGPS por su sencillez.
#include <S o f t w a r e S e r i a l . h>
#include <TinyGPS . h>
// L i b r e r i a y p i n e s de comunicacion
TinyGPS gps ;
S o f t w a r e S e r i a l s s (10 , 9) ;

void s e t u p g p s ( ) {
// i n i c i o comunicacion
ss . begin (9600) ;}

void g p s n e o ( ) {
// V a r i a b l e s para r e c i b i r d a t o s de s a t e l i t e s
b o o l newData = f a l s e ;
unsigned long c h a r s ;
unsigned short s e n t e n c e s , f a i l e d ;
// Por un segundo a n a l i z a m o s l o s d a t o s de GPS e informamos a l g u n o s v a l o r e s
clave
f o r ( unsigned long s t a r t = m i l l i s ( ) ; m i l l i s ( ) − s t a r t < 1 0 0 0 ; ) {
while ( s s . a v a i l a b l e ( ) ) {
char c = s s . r e a d ( ) ;
// S e r i a l . w r i t e ( c ) ; // uncomment t h i s l i n e i f you want t o s e e t h e GPS
data f l o w i n g
i f ( gps . encode ( c ) )
newData = t r u e ; } }

i f ( newData ) {
float flat , flon ;
unsigned long age ;
gps . f g e t p o s i t i o n (& f l a t , &f l o n , &age ) ;
S e r i a l . p r i n t ( ”LAT=” ) ;
S e r i a l . p r i n t ( f l a t == TinyGPS : : GPS INVALID F ANGLE ? 0 . 0 : f l a t , 6 ) ;
S e r i a l . p r i n t ( ” LON=” ) ;
S e r i a l . p r i n t ( f l o n == TinyGPS : : GPS INVALID F ANGLE ? 0 . 0 : f l o n , 6 ) ;
S e r i a l . p r i n t ( ” SAT=” ) ;
S e r i a l . p r i n t ( gps . s a t e l l i t e s ( ) == TinyGPS : : GPS INVALID SATELLITES ? 0 : gps
. s a t e l l i t e s () ) ;
S e r i a l . p r i n t ( ” PREC=” ) ;
S e r i a l . p r i n t ( gps . hdop ( ) == TinyGPS : : GPS INVALID HDOP ? 0 : gps . hdop ( ) ) ; }
// D e t e c c i n de f a l l o s en c o n e x i n d e l modulo
gps . s t a t s (& c h a r s , &s e n t e n c e s , &f a i l e d ) ;
S e r i a l . p r i n t ( ” CHARS=” ) ;
S e r i a l . print ( chars ) ;
S e r i a l . p r i n t ( ” SENTENCES=” ) ;
Serial . print ( sentences ) ;
S e r i a l . p r i n t ( ” CSUM ERR=” ) ;
Serial . println ( failed ) ;
i f ( c h a r s == 0 )
S e r i a l . p r i n t l n ( ” ∗∗ No c h a r a c t e r s r e c e i v e d from GPS : check w i r i n g ∗∗ ” ) ; }

18
2.0.2. Arduino IDE
En la siguiente figura 2.1 se aprecia el funcionamiento de todos los sensores en el monitor
serial, el codigo que se aprecia es el llamado de las funciones ya mostradas anteriormente en
el codigo principal.

Figura 2.1: Funcionamiento sensores en software IDE arduino

2.0.3. Fase de implementación


Se realiza el montaje de todos los sensores en el armazón de vehiculo, y se prueba su fun-
cionamiento.A continuación en la figura 2.2 se aprecia el montaje con los diferentes sensores,
correpsondiendo ellos a los numeros que se muestran.

1. Sensores HC-SR04.

2. Sensor infrarrojo.

3. Módulo GPS neo 6m.

4. Sensor DHT11.

5. Puente H L298n.

6. Baterias para el autoclima.

19
Figura 2.2: Montaje del vehiculo automata con los sensores

20
Bibliografı́a

[1] P. T. P. Mateo Sorroche Montellano, Jordi Bécares Ferrés, Sistema autónomo de tempe-
ratura. PhD thesis, Universitat Oberta de Catalunya, 2016.

[2] P. S. Foundation, “Python language reference, version 3.7,” 2019.

[3] F. S. Foundation, “El sistema operativo gnu,” 2019.

[4] Arduino, “About us,” 2019.

21

También podría gustarte