Está en la página 1de 6

1

Proyecto Final
(Nomviembre de 2022)
Brayan Ruiz - 81802, Johan Carreño - 82683, David Zabala - 82033.


con baja sensibilidad a gases como vapor de alcohol y humo,
Resumen -En este documento encontraran el desarrollo del el módulo contiene un circuito electrónico que permite realizar
proyecto para la materia de sistemas embebidos está compuesto la conexión con alguna tarjeta de desarrollo, cuenta con una
por uso de GPIO, salidas analógicas, comunicación Uart, salida analógica y otra digital.
desarrollo de aplicación para comunicación Bluethoot, uso de
sensor HQ-05 (Sensor de gas natural, propano, aire y alcohol) el
cual medirá nuestro nivel de gas para llevarse a la aplicación y
mostrar una alarma que nos permita evidenciar que se excedió el
límite.

Índice de Términos - Tarjeta re-programable, registro, puertos,


usuario, C++, sistema embebido, librerías, binario, hexadecimal,
LCD, escalas, Switch case, Systick, RCC, GPIO.

I. INTRODUCCIÓN

E n este documento se evidencia el desarrollo del proyecto


el que contara con comunicación UART, lectura de sensores,
GPIO, salidas digitales para la lcd o modulo 7 segmentos y se
complementara con dispositivos externos para su correcto
funcionamiento: Fig. 2.MQ-5.

a) Dispositivo de conversión Serial a USB o a c) Modulo Bluetooth


Bluetooth: El módulo Bluetooth HC-05 nos permite conectar nuestros
El Cable Convertidor USB a puerto serial RS232 (DB9) proyectos con Arduino a un smartphone, celular o PC de
permite conectar dispositivos con puertos seriales a través de forma inalámbrica (Bluetooth), con la facilidad de operación
puerto USB. Trabaja con módems, PDA, cámaras digitales, de un puerto serial, la transmisión se realiza totalmente en
impresoras, routers, decodificadores, entre otros dispositivos. forma transparente al programador, por lo que se conecta en
forma directa a los pines seriales de nuestro microcontrolador
preferido (respetando los niveles de voltaje, ya que el módulo
se alimenta con 3.3V). Todos los parámetros del módulo se
pueden configurar mediante comandos AT.

Fig. 1. Cable convertidor USB-Serial RS232

b) MQ-5 Detector de Gas Natural Fig. 3. MÓDULO BLUETOOTH HC05


Es un sensor electro-químico que varía su resistencia al estar
contacto con GLP (Gas Licuado de Petróleo) y gas natural;


2

d) MIT APP INVENTOR g) Tarjeta de Desarrollo STM32F411RE


Es un sitio web creado por estudiantes del MIT para La tarjeta es un sistema embebido el cual nos permitirá la
crear aplicaciones de manera sencilla efectiva, la cual optimización del proyecto a la hora de generar la necesidad
facilita en nuestro proyecto para la comunicación UART presentada pues a través de registros logramos disminuir el
con nuestros dispositivos móviles en este caso celular. consumo de programación y también de pines los cuales se
evidenciarán en beneficios a la hora de presentar un proyecto
físico.

Fig. 4. MÓDULO BLUETOOTH HC05 Fig. 7. Tarjeta de Desarrollo STM32F411RE

h) Pantalla LCD 16x2


e) Buzzer
Se le denomina Buzzer pasivo o altavoz, son dispositivos que Es una pantalla de cristal líquido nombrada por sus siglas en
nos permiten convertir una señal eléctrica en una onda de inglés Liquid Crystal Display, que se utiliza para ver imágenes
sonido, no disponen de electrónica interna, pues tenemos que fijas y en movimiento. Formada por gran cantidad de píxeles
proporcionar una señal eléctrica para conseguir el sonido que consisten en moléculas de cristal líquido contenidas entre
deseado. dos conjuntos de electrodos transparentes.

Fig. 5. Buzzer pasivo.

f) Software u Vision Keil.


Es el software por el cual programamos el funcionamiento de
nuestro laboratorio según los parámetros estipulados por el
profesor. Fig. 8. Pantalla LCD

II. OBJETIVOS
 Realizar una función en C++, que nos permita la
configuración de cualquiera de los módulos UART de la
tarjeta, incluyendo factores como la velocidad de
transmisión y el pin de conexión TX y RX.
 En un conjunto de conocimientos construir un circuito el
cual permita establecer comunicación UART con lectura
de datos digitales o analógicas para ser mostradas en
nuestras salidas como lo puede ser una pantalla LCD O
Fig. 6. uVision Keil. bien sea en el apk creada por nosotros.
3

 Alarmar al celular en el momento que nuestro sensor  GPIOx->PUPDR= Configuración de las entradas y
exceda la lectura de gas y así poder interrumpir el salidas para el pull up o pull down
proceso antes de generar una tragedia por la disipación  RCC->APB2ENR= Se habilita el reloj del módulo ADC
del gas.  ADC->CCR=El prescaler de la frecuencia del módulo
 Resaltar el trabajo realizado a lo largo de la materia con ADC si se quiere ser dividido en 2,4,6,8.
la función de evidenciar cada uno de los conocimientos  ADC->CR1=Se selecciona la resolución de bits a la cual
del grupo para lograr una correcta presentación del se trabajará en la tarjeta.
proyecto en la materia.  ADC->CR2= Se elije si se hará en modo continuo o
modo simple el conversor, además de encenderlo.
III. MARCO TEÓRICO  ADC->CR2=se puede finalizar la conversión, conversión
USART es un módulo de comunicación serie estándar, de por software entre otras funciones y configuraciones.
forma asíncrona, esta característica lo hace muy deseable, ya  SYSCFG->EXTICR [0] = Esto habilita las
que requiere un solo medio de transmisión para enviar interrupciones dependiendo del puerto seleccionado
información, en lugar de se requiere un medio para un reloj.  EXTI->IMR = Nos permite acceder al registro de las
Debe asumir señal de reloj o sincronización, interrupciones para saltar de una en una
independientemente de cada elemento, emisor y receptor. Otra  EXTI->EMR =Se accede al registro para las
ventaja de este módulo es que tiene comunicación full-duplex, interrupciones externas
es decir, se puede enviar y recibir información al mismo  EXTI->FTSR =Es el registro que se configura para usar
tiempo. Para ello se utilizan dos medios de transmisión las interrupciones en flancos de bajada
dedicados, uno solo para transmisión y otro solo para  EXTI->RTSR=Es el registro que se configura para usar
recepción. la interrupción en flancos de subida
 EXTI->PR= Es para seleccionar el estado de la bandera
La comunicación síncrona tiene las siguientes características:  RCC->APB2ENR |= 0x00000020 modulo usart6
un bit de inicio o bit de inicio, que siempre es lógico 0, 8 bits y habilitado
1, 1,5 o 2 bits de parada. Por último, la velocidad de  GPIOx->MODER |=0x0000A001 ; // alterna los puertos
transferencia se debe establecer el mismo valor en ambos PC6 PC7 si se coloca en configuración un 01
dispositivos de comunicación, que es prácticamente el valor  GPIOx->OSPEEDR =configura la velocicad de lectura
predeterminado toda la comunicación de 9600 bps, sin de datos
embargo, esto no es una regla puede ser mayor o menor.  GPIOC->PUPDR = Configura que tipo de resistencia
usaremos
Las compañías de gas natural necesitan determinadas unidades  USART6->BRR =Registro que nos configura los baudios
de medida para poder cuantificar la energía y así facturar al a trabajar
cliente el importe correcto en la factura. El consumo de gas se  USART6->CR1 habilita Tx, Rx Interrupt de Rx
realiza en m3, pero es preciso convertir estos m3 en kWh, para  USART6->CR1 |= Habilita UART, UE=1
así poder aplicar el precio establecido en la tarifa contratada.  NVIC_EnableIRQ(USART6_IRQn); // Llamar la
interrupción del UART6
El gas natural se mide en metros cúbicos, razón por la que se
necesita un factor de conversión que permita transformarlos en A continuación, presentamos los cálculos realizados para la
kilovatios hora (kWh), y de esta manera facturar la energía al lectura del gas propano en nuestros diferentes dispositivos la
cliente. cual vamos a mostrar en milímetros cúbicos para una lectura
logica de gas:
La empresa Enagás se encarga de fijar el factor de conversión,
calculando el poder calorífico del gas y publicándolo en el Según el datasheet del sensor este tiene una resistencia de 20K
Boletín Oficial del Estado. Ω y la tarjeta maneja un voltaje de 3.3V para estos valores los
reemplazamos en nuestra formula de ley de Kirchhoff la cual
Otra cosa importante son los registros que ya se vieron consiste en dividir el voltaje entre la resistencia y así se
posteriormente en las clases. Estos registros constan de una obtiene la corriente de un circuito.
cabecera que es en donde se parametrizan muchas cualidades
que ofrece la tarjeta: R=20 k ΩV =3.3 V
 Registro RCC_AHB1ENR= Habilita un puerto en Ecuación.1.
especifico para después asignarlo como entradas o V 3.3 V
I= = =0.156 Amp
salidas. R 20 k Ω
 GPIOx->MODER = asigna si queremos una entrada (00) Ecuación.2.
o una salida general (01) Luego con el dato de la corriente calculamos la potencia y
 GPIOx->OTYPER = Solo para la salida si deseamos una hacemos una regla de tres con los 11.7Kwh que equivalen a
configuración de push-pull u open-drain nuestra potencia para luego pasarlo a metros cúbicos.
 GPIOx->OSPEED = LA velocidad que deseamos en P=V ∗I =0. 000 5 445 Amp
nuestro pin de salida (00) minima, (01) mediana, (10) Ecuación.3.
rápida, (11) ultra-rápida.
4

Ahora de metros cúbicos los transformamos a centímetros


cúbicos y por último a los milímetros cúbicos.
−10 3 3
¿ 10 ∗1 m −1 0 m
5.45 =4.6538¿ 10
kw h
11.5
h
Ecuación.4.

−1 1 3
¿ 10 ∗1 m 3
∗1 c m
h 3
−6
∗1000 mm
1∗10 m m3
4.6538 =0.0465
1cm 3 h
Ecuación.5.

mm3
0.0465
→→ 3.3 V
h
Fig. 9. Montaje de los periféricos LCD en la protoboard.
ADC∗0.0465
Dato =VariableLCD
3.3
b) Resetear la Tarjeta Stm32
IV. MATERIALES  Se conecta el sistema embebido para reiniciar la tarjeta con la
 Software uVision Keil (programacion) programación inicial gracias al software ST-Link con esto
 SoftwareST-Link (reinicio) para continuar con la programación en el software U-vision.
 Tarjeta de desarrollo STM32F411RE
 Cable micro o mini USB
 Teclado matricical 4X4 (membrana) c) Configurar el programa, periféricos y demás en
 LCD 16X2 Uvision
 PC o Dispositivo movil En el desarrollo del código se generan un sin numero de
 Dispositivo de conversión Serial a USB o a Bluetooth configuraciones las cuales nos permiten explotar las
 Sensor MQ-5 capacidades de nuestra tarje para un mejor funcionamiento del
 Briquet para generar el gas butano en el sensor proyecto

V. PROCEDIMIENTO
Paso a Paso:

a) Conectar la LCD
Aquí es donde se selecciona las entradas y salidas digitales del
teclado matricial, entradas análogas de los sensores, y las
salidas del periférico de la LCD, para posteriormente usar esos
pines en la configuración de los diferentes modulo,
interrupciones y en el código en general.

Fig. 10. Configuración de los periféricos y la LCD en Uvision.


5

transmisión de datos, esto varia dependiendo de si esta


haciendo la lectura del gas o si yo elijo apagar la bocina, en
nuestro segundo caso se presenta la conversión de dato para
milímetros cúbicos m^3 y luego la llevamos a la LCD para
una correcta lectura de datos analógicos

Fig. 11. Configuración de los periféricos y la LCD en Uvision.

d) Desarrollo de funciones
En la siguiente sección del informe se dará a conocer parte del
código donde se desarrolla como tal las funciones propuestas
para el laboratorio ya que lo anteriormente mostrado son las
configuraciones necesarias para el eficaz funcionamiento del
mismo. Fig. 14. Código en desarrollo para casos del proyecto.

Fig. 15. Código en desarrollo para casos del proyecto.

Fig. 12. Código en desarrollo para la comunicación.


f) Desarrollo de la aplicación
En la siguiente imagen podemos encontrar lo que es la programación del
botón conectar y la lista de dispositivos a través de un bloque lógico el cual
nos pregunta por la lista de dispositivos y los elementos en ella, para luego
conectarnos específicamente a nuestro modulo Bluetooth.

Fig. 13. Código en desarrollo para la comunicación.

e) Desarrollo de programación funcional


En este literal encontramos la programación de cada uno de
los casos o el correcto funcionamiento de nuestro proyecto,
Fig. 16. Bloque 1 de programación de la aplicación.
por ejemplo en nuestro caso 1 realizamos el modo UART el
cual consiste en leer los datos y enviarlos a la aplicación para
A continuación, se encuentra la IDE (Development
encender la bocina y luego ser apagada desde nuestra
Environment o Entorno de desarrollo integrado) de la
6

aplicación la cual nos va a realizar la conexión por bluetooth y


por ende la comunicación UART.

Fig. 19. Bloque 5 de programación de la aplicación.

VI. CONCLUSIONES
1. El sensor MQ-5 no solo se puede manejar a través de la
lectura de gas natural sino también de propano y sus
datos están leídos en mm cúbicos para nuestro caso del
proyecto.
2. El conocimiento de programación en SCRATCH
facilitaría el desarrollo de la aplicación y mejoraría
aspectos estéticos o funcionales en cuanto a la
comunicación UART.
3. Se necesita una correcta conversión para la lectura del
gas pues como sabes usualmente es adimensional , pero
nos damos cuenta que no, que este puede llegar a variar
cualquier equipo y cada configuración que nosotros le
damos

REFERENCIAS
Fig. 17. Interfaz de la aplicación.
[1] https://preciogas.com/faq/factor-conversion-gas-natural-
kwh#poder-calorifico-gas
En esta imagen podemos encontrar la programación del lugar donde
[2] http://www.datasheet.es/PDF/904638/MQ-5-pdf.html
escribiremos el dato para ser enviado, el botón de borrar los datos recibidos y
el de enviar los mismos datos para así cumplir su función en la programación.
[3] https://classroom.google.com/u/0/c/
NDg4NjY0MDgzNzM3/m/NDg5NjE2NTAwMDI0/
details?hl=es

[4] https://appinventor.mit.edu/

Fig. 18. Bloque 2,3,4 de programación de la aplicación.

Encontramos en el último bloque la programación del botón para


desconectarnos del módulo bluetooth y mostrar en pantalla la validación de
este proceso.

También podría gustarte