0% encontró este documento útil (0 votos)
27 vistas15 páginas

2-COA634-Clase 13 y 16 Abril 2020

Este documento describe diferentes tipos de microcontroladores como Arduino, ESP8266 y ESP32 y cómo conectarlos a bases de datos MySQL. Explica las ventajas de usar microcontroladores de código abierto, los componentes necesarios y cómo utilizar la librería MySQL Connector para Arduino para realizar consultas básicas.

Cargado por

juanjoescobar
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)
27 vistas15 páginas

2-COA634-Clase 13 y 16 Abril 2020

Este documento describe diferentes tipos de microcontroladores como Arduino, ESP8266 y ESP32 y cómo conectarlos a bases de datos MySQL. Explica las ventajas de usar microcontroladores de código abierto, los componentes necesarios y cómo utilizar la librería MySQL Connector para Arduino para realizar consultas básicas.

Cargado por

juanjoescobar
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
Está en la página 1/ 15

Microcontroladores y Bases de Datos

Por: M.C. Juan José Escobar Aguayo

COA634
μProcesadores vs. μCrontroladores

Microprocesador
por su arquitectura la implementación es mas cara, susceptible a ruido

Microcontrolador
Muy barato de implementar arquitectura básicamente tareas repetitivas
Amplia Variedad de sensores libres (diseñados bajo la filosofía open source) y con sus
librerías

2
Implementaciones

Arduino
¿Qué es Arduino?
Arduino es una plataforma electrónica de código abierto basada en hardware y software
fáciles de usar.
¿Por qué usar micros Open Source?
Baratos. También puedes comprar clones que son incluso más baratos.
Fácil de usar y comenzar a programar
Comunidad enorme
Completamente Open Source

3
ESP8266

El ESP8266 es muy barato (60MXP) con un modulo Wi-Fi, que permite controlarlo muy
fácilmente tal cual como se haría con un Arduino pero con Wi-Fi.
Por lo que es una excelente opción para domótica/IoT

¿Que tan potente es?


Puedes crear un webserver y hacerle peticiones estándar para controlar entradas y salidas, leer
entradas, mandar mails, un tweet algún gadget IoT, etc.
Especificaciones
 802.11 b/g/n protocol
 Wi-Fi Direct (P2P), soft-AP
 Integrated TCP/IP protocol stack
 Built-in low-power 32-bit CPU
 SDIO 2.0, SPI, UART

4
Versiones e implementaciones

Hay un amplia variedad de versiones como el ESP-12E, Kit NodeMCUThe

5
ESP32

Es el sucesor del ESP32, tiene mas funcionalidades y combina Wi-Fi y Bluetooth.


Existen muchas tarjetas de desarrollo puedes verlas aquí ESP32.net hay una lista muy
extensa y puedes comparar sus caracterśticas

Especificaciones
 ESP32 is dual core
 Wi-Fi y bluetooth
 Corre programas de 32 bit.
 La frecuencia del reloj va desde 240MHz y tiene 512 kB RAM.
 Hay muchos periféricos disponibles: capacitivos, resistivos, touch, ADCs, DACs,
UART, SPI, I2C entre otros

6
IDE (entorno de desarrollo)


Instala java

Descargar de: www.arduino.cc

descargar bibliotecas con ejemplos

Sintaxis heredada de C (muy entendible)

7
Que mas necesitamos?


Cable serial o mejor aun un USB a RS232 (caso especial ESP8266 )

Programador AVR, (opcional)

una placa de desarrollo ARDUINO, ES8266 o ESP32

Jumpers (cables Dupont)

Protoboard

Fuente de poder (podemos usar un cargador de celular)

Conectar

8
Conectar el μControlador a MySQL

Que necesitamos?

Servidor Msql (windows/Linux/Mac) (Para Windows Xampp)


MySQL Conector/Arduino
Arduino /ESP8266/ESP32

9
Software adicional

Servidor web Apache, NginX, etc. (en un Raspberry)

Lenguaje de Script PHP 7.X

PhpMyadmin

10
Librería Mysql_Connector_Arduino

Que es?
Una capa de abstracción
Instalación

11
Limitaciones

Hardware: Arduino ATmega328p


Librería solo puede traer hasta 250 columnas
Las recupera de 1 en 1 a la vez
Solo cumple con las especificaciones de MySQL/Oracle
Aún en desarrollo, solo soporta la autenticación:
mysql_native_password

12
Hola MySQL

#include <Ethernet.h>
#include <MySQL_Connection.h>

byte mac_addr[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

IPAddress server_addr(10,0,1,35); // IP of the MySQL *server* here


char user[] = "root"; // MySQL user login username
char password[] = "secret"; // MySQL user login password

EthernetClient client;
MySQL_Connection conn((Client *)&client);

void setup() {
Serial.begin(115200);
while (!Serial); // wait for serial port to connect
Ethernet.begin(mac_addr);
Serial.println("Connecting...");
if (conn.connect(server_addr, 3306, user, password)) {
delay(1000);
// You would add your code here to run a query once on startup.
}
else
Serial.println("Connection failed.");
conn.close();
}

void loop() {
}

13
Ejemplo de uso

Monitor
de temperatura
y Humedad

14
Continuará...

Gracias por su atención!

15

También podría gustarte