Aspectos Éticos, Sociales y
Profesionales Avanzados en
Informática
Modulo 2: Eficiencia
Energética sobre
diferentes plataformas
Microcontroladores
Definición
Un microcontrolador es básicamente un
microprocesador especializado en el control
de dispositivos o equipos electrónicos.
Integra memoria de datos y programa, con
módulos de hardware que le permiten
sensar datos del ambiente, controlar
acciones y comunicarse con otros
dispositivos.
Microcontroladores
Definición
Microcontroladores
Arquitectura
Arquitectura Harvard
Memoria de programa reducida
Memoria de datos reducida
Integraciones
Temporizadores
Conversores
Dispositivos de comunicación
Control PWM
Microcontroladores
Evolución
PICs dedicados
Lenguaje Assembler y Lenguaje C (Bare-Metal)
Entornos de programación propietarios
Plataformas de Desarrollo
Sistemas Operativos Embebidos
Debbuging
Placas de desarrollo populares
Familia Arduino
Plataforma de Código Abierto
Hardware y Software
Objetos y entornos interactivos
Gran Comunidad de Desarrollo
Prototipos
Arduino UNO
Microcontrolador: ATmega328
Voltaje Operativo: 5v
Voltaje de Entrada (Recomendado): 7 – 12 v
Pines de Entradas/Salidas Digital: 14 (De las cuales 6 son salidas
PWM)
Pines de Entradas Análogas: 6
Memoria Flash: 32 KB (ATmega328) de los cuales 0,5 KB es usado por
Bootloader.
SRAM: 2 KB (ATmega328)
EEPROM: 1 KB (ATmega328)
Velocidad del Reloj: 16 MHZ.
Familia Arduino
Shields Arduino
IDE y Librerías
Setup
Se ejecuta una sola vez
Configuraciones
Loop
Iteración Infinita
Lógica de funcionamiento secuencial
Placas de desarrollo
NodeMCU
Plataforma de Desarrollo orientada a
Internet de las Cosas (IoT)
Firmware y Hardware de código abierto
Basada en Microcontroladores de Espressif
Lenguaje script Lua
Portabilidad a otros lenguajes
Lenguaje C
IDE Arduino
MicroPython
Heltec WiFi LoRa 32
Esta placa incluye dos chips principales, el ESP32 y el transceptor
LoRa SX1278 (con conector I-PEX, para antena externa).
EL chip ESP32 es una solución integrada de WiFi-Bluetooth
con radiofrecuencia de 2.4GHz
34 GPIOs programables
1 SAR ADC de 12bit, 2 DAC de 8 bit
Interfaces: 4 SPI, 2 I2S, 2 I2C
PWM
Protocolo 802.11 b/g/n
EL SX1278 es un chip transceptor de radio frecuencia LoRa
Hay dos modelos, el de 433MHz y el 868/915MHz
Single Boards Computers (SBC)
Raspberry Pi 3 Model B+
Computadora de bajo coste
Se le puede conectar Monitor(HDMI) y periféricos (USB)
Sistema Operativo (slot Micro-SD)
Caracteristicas:
CPU + GPU: Broadcom BCM2837B0, Cortex-A53 (ARMv8)
64-bit SoC @ 1.4GHz.1 SAR ADC de 12bit, 2 DAC de 8 bit
RAM: 1GB LPDDR2 SDRAM.
GPIO de 40 pines.
Ethernet: Gigabit Ethernet sobre USB 2.0 (300 Mbps)
Consumo Energético
Microcontroladores
Se deben evaluar optimizaciones de consumo:
Modos Sleep o modos bajo consumo
Reducción de frecuencia de clock
Desactivación de componentes
Variación de la intensidad de transmisión
Optimización de tamaño y periodicidad de
paquetes
Sensor de corriente
ACS 712
Sensor de efecto Hall para medir corriente eléctrica.
El efecto Hall permite detectar el campo magnético generado por la
corriente que pasa por el sensor.
5A, 20A y 30A (según el rango de corriente).
Tensión de operación: 5V.
Sensor de corriente
ACS 712
VCC del ACS712 a 5V de Arduino
GND del ACS712 a GND de Arduino
OUT del ACS712 a un pin analógico
El circuito de carga (el que querés
medir) se conecta a VIN y VOUT del
módulo ACS712
Sensor de corriente
Adafruit INA219
Es una placa sensor, que incluye el modulo Invasivo INA219
Características
Rango de medición ±3.2A
ADC interno de 12bits
Resolución 0.8mA
Alimentación 5V o 3V
Comunicación I2C
https://github.com/adafruit/Adafruit_INA219
Sensor de corriente
Adafruit INA219
Otros sensores
Práctica
Agregar la librería de Adafruit INA219
Medir consumo en NodeMCU
Conexión WIFI
Modos Sleeps
Medir consumo en Heltec WiFI LoRa 32
Conexión WiFi
Conexión Bluetooth
OLED
Modos Sleep
Transmisión LoRa
Práctica
Probar el ACS 712
Inicio de PC
Consumo estable
Algoritmo de procesamiento