Documentos de Académico
Documentos de Profesional
Documentos de Cultura
proyectos arduino
fgura 1. Diagrama de cableado de la pequeña estación meteorológica: sensor Si7021, mini placa Wemos D1 y
Nokia 5510 LCD.
anuncios
Componentes
Wemos D1 mini
La D1 mini (figura 1) es una placa microcontroladora ESP8266 de 3,3 V y 16 pines con unas
dimensiones de 34×34 mm que pertenece a la gran familia de placas que cuentan con un
núcleo de microprocesador L106 de 32 bits que funciona a 80 MHz. La memoria es flash de 4
MB y SDRAM de 64 kB. La arquitectura es moderna y hay comunicación serial estándar, I2C,
SPI, una pila TCP/IP y WiFi. Una característica particular que hace que las placas de
microcontroladores ESP8266 sean más atractivas es que se pueden programar en
instrucciones familiares de estilo C++ Arduino a través del IDE de Arduino.
Cableado
La figura 1 muestra el cableado pin a pin de un Wemos D1 mini con sus periféricos. El Si7021
es un dispositivo I2C dedicado que requiere los pines D1 (SCL) y D2 (SDA) del Wemos D1
mini. Una resistencia de 4,7 k Ω es obligatoria entre el pin SCL y 3,3 V y entre el pin SDA y
3,3 V para mantener estos pines ALTOS. Además de los dos cables de señal, hay una fuente
de alimentación pin to wire con 3.3V y GND.
La pantalla de Nokia utiliza el protocolo serial SPI que necesita cinco cables para funcionar:
CLK, DIN (igual a MOSI), DC, CE y RST. Como se explicó anteriormente, el cableado está
inspirado en SPI suave; seleccionados aquí son los pines 'estándar' D4 (CLK), D3 (DIN), D6
(DC), D7 (CE) y D0 (RST). El pin D8 está conectado a un led. Tenga en cuenta que se incluye
una resistencia de 220 Ω en el cableado del LED. Esto se hace para reducir la intensidad de la
luz del LED; no es necesaria la reducción de voltaje. El pin de la fuente de alimentación de la
luz trasera del Nokia (BL) está conectado a través de un interruptor de botón táctil capacitivo
al pin de 3,3 V del Wemos D1. No olvide conectar correctamente a tierra todos los
componentes electrónicos.
anuncios
TIERRA a TIERRA
BL (fuente de alimentación de luz de fondo): alimenta cuatro leds montados en la carcasa
de la pantalla. A través del pin de datos del interruptor táctil capacitivo a 3,3 V (el
interruptor táctil aquí reemplaza un interruptor de botón común)
VCC (potencia) a 3V3
CLK (reloj) a D4
DIN (datos; a veces llamado MOSI) a D3
DC (comando/datos) a D6
CE (habilitación de chip) a D7
RST (pin de reinicio) a D0
Programación
El IDE estándar de Arduino debe ampliarse para admitir placas ESP8266. Esto se puede
lograr en el IDE de Arduino abriendo el menú Archivo, Preferencias y agregando en la
pantalla de diálogo Preferencias en la ventana de diálogo URL del administrador de placas
adicionales el siguiente texto:
https://arduino.esp8266.com/stable/package_esp8266com_index.json
#define CLK D4
#define DIN D3
#define DC D6
#define CE D7
#define RST D0
anuncios
CrowdStrike
OPE
Your Reputation Is Worth It
DENUNCIAR ESTE ANUNCIOPRIVACIDAD
En la pantalla LCD, en cada indicador, el extremo del pivote fijo de la aguja está determinado
por las coordenadas 'pivot_x' y 'pivot_y'. El extremo libre está determinado por las
coordenadas 'aguja_x' y 'aguja_y'. El cálculo de estas últimas coordenadas implica un ángulo
de oscilación de la aguja con la horizontal. Los extremos fijo y libre de una aguja se conectan
a través de una instrucción display.drawLine que incluye al final un parámetro de 'color'.
Este color es 1 (píxel encendido = negro) o 0 (píxel apagado = fondo).
Una vez que se calcula una nueva posición de aguja, necesitamos borrar la posición de aguja
calculada en la iteración anterior de Loop (). Este 'borrado' se realiza en cada iteración a
través de la siguiente serie de instrucciones:
1. Copie los valores de las coordenadas de la punta de la aguja ('needle_x', 'needle_y') en las
variables 'needle_x_old' y 'needle_y_old',
2. Luego calcule los valores de las coordenadas 'needle_x' y 'needle_y para la posición
actualizada de la punta de la aguja,
3. Dibuje la aguja 'vieja' usando los valores guardados en 'needle_x_old' y 'needle_y_old'
pero use aquí el parámetro de color '0',
4. Dibuja la aguja actualizada usando 'needle_x' y 'needle_y' y, por supuesto, el color 1,
5. Vuelva a dibujar el círculo de pivote para evitar que se abolle cuando la aguja se 'mueva'.
anuncios
CrowdStrike®
OPE
From The Industry Leader
DENUNCIAR ESTE ANUNCIOPRIVACIDAD
Por supuesto, hay dos agujas que duplican el número de variables (ver croquis).
Resultados
La figura 2 muestra un prototipo funcional de la diminuta estación meteorológica. El sensor
Si7021 proporciona señal de temperatura y humedad a los pines D1 (SCL) y D2 (SCK) del
Wemos D1 mini, mientras que el pin D8 del Wemos controla un led. Los otros pines son
necesarios para la comunicación con la pantalla del Nokia 5510. El led externo rojo funciona
como indicador de actividad y puede considerarse como una especie de lujo.
La retroiluminación de la pantalla de Nokia se proporciona aquí mediante un interruptor
táctil capacitivo separado (visible en la figura 2) que no está conectado al microcontrolador.
Este interruptor táctil es una placa mini de tres pines: pines marcados como Vcc, GND y I/O.
El estado del pin de E/S cambia de BAJO a ALTO cuando se toca el interruptor. La señal
ALTA se transmite directamente al pin BL de la pantalla. Cuando se toca el interruptor, su
pin de E/S proporciona una cantidad modesta de corriente porque los LED de
retroiluminación se queman con menos intensidad que cuando el cable BL se alimenta
directamente desde el riel de 3,3 V o recibe energía a través de un botón. El interruptor táctil
capacitivo aquí es un "lujo elegante", agradable para las soluciones IOT.
Sketch
Nota: las bibliotecas "SPI.h", "Wire.h", Adafruit_PCD8544.h" y "Adafruit_GFX.h" son
necesarias para compilar este boceto. Estas bibliotecas se pueden instalar a través del
administrador de bibliotecas en el IDE de Arduino.
anuncios
DENUNCIAR ESTE ANUNCIOPRIVACIDAD
Wemos_D1_Nokia_5510_Si7021_two_gauges.ino