Índice:

Arduino Datalogger com RTC, Nokia LCD e codificador: 4 etapas
Arduino Datalogger com RTC, Nokia LCD e codificador: 4 etapas

Vídeo: Arduino Datalogger com RTC, Nokia LCD e codificador: 4 etapas

Vídeo: Arduino Datalogger com RTC, Nokia LCD e codificador: 4 etapas
Vídeo: Arduino Data Logger Project - Very Easy 2024, Junho
Anonim
Arduino Datalogger com RTC, Nokia LCD e codificador
Arduino Datalogger com RTC, Nokia LCD e codificador
Arduino Datalogger com RTC, Nokia LCD e codificador
Arduino Datalogger com RTC, Nokia LCD e codificador
Arduino Datalogger com RTC, Nokia LCD e codificador
Arduino Datalogger com RTC, Nokia LCD e codificador

Partes:

  • Arduino Nano ou Arduino Pro Mini
  • LCD Nokia 5110 84x48
  • Sensor de temperatura / umidade DHT11
  • Módulo RTC DS1307 ou DS3231 com EEPROM AT24C32 embutido
  • Codificador barato com 3 capacitores de debouncing

Recursos:

  • GUI baseado em Nokia LCD e codificador
  • temperatura, umidade, data e hora podem ser armazenados a cada 1 a 120 minutos
  • cada registro é compactado para 39 bits de campo apenas para flash de 32kbit (4KB) pode caber 819 registros
  • chip AT24C256 opcional pode armazenar até 6553 registros
  • sono profundo usado para economizar bateria, ATMEGA é despertado principalmente por interrupções
  • DHT11 é alimentado apenas durante as medições
  • alimentado por 18650 único ou outra célula de lítio
  • alguns "rostos" de exibição
  • 6 fontes
  • medidor de nível de bateria
  • revisão de dados e gráficos
  • min / max com data / hora
  • todos os dados gravados são despejados via porta serial em formato CSV
  • Luz de fundo do LCD
  • própria biblioteca N5110 rápida e com poucos recursos usada
  • própria leitura de dados DHT11 de baixo nível
  • próprio código de manuseio DS1307, DS3231 e AT24C32 I2C EEPROM
  • o código usa quase todo o flash Arduino de 32 KB
  • todos os registros internos podem ser armazenados em EEPROM externa ou RAM interna DS1307

Compressão de dados

Os seguintes valores são registrados:

  • tempo (hr, min)
  • data (d, m, y)
  • temperatura
  • umidade

Os dados acima são compactados em um campo de bits de 39 bits:

  • hr 0..23 -> 5b
  • min 0..59 -> 6b
  • d 1..31 -> 5b
  • m 1..12 -> 4b
  • y 2018..2021 -> 2b
  • temp -40,0..64,0 -> 1024 valores = 10b
  • hum 0..100 -> 7b
  • total de 39 bits

Apenas 5 bytes são usados para 1 registro:

bits 76543210 byte0 hhhhhmmm byte1 mmmddddd byte2 mmmmyytt byte3 tttttttt byte4 hhhhhhh0

Etapa 1: Assistir aos vídeos

Image
Image

Se você está interessado em recursos de projeto e desenvolvimento, assista aos vídeos acima

Etapa 2: conexões

Conexões
Conexões
Conexões
Conexões

Nokia 5110:

  1. RST para D9
  2. CS / CE para D10
  3. DC para D8
  4. MOSI / DIN para D11
  5. SCK / CLK a D13
  6. VCC para Arduino VCC
  7. LIGHT para D6
  8. GND para GND

DHT11:

  1. VCC para VCC
  2. DATA para D14
  3. NC
  4. GND para GND

RTC DS1307 / DS3231 e AT24C32 EEPROM:

Arduino I2C (A4 / A5)

Codificador:

  • PinA a D2
  • PinB para D4
  • Botão para D3

Etapa 3: Modificações "LowPower" dos Módulos RTC (opcional)

Módulos RTC
Módulos RTC
Módulos RTC
Módulos RTC

No DS1307 corte 2 traços, remova R6 e faça a junta de solda

No DS3231 corte 2 traços

Etapa 4: Firmware

Esboço do Arduino:

github.com/cbm80amiga/N5110_DHT11_logger_G…

Biblioteca N5110:

github.com/cbm80amiga/N5110_SPI

Opções de configuração:

#define USE_DS3231 -> para usar DS3231 em vez de DS1307

#define REG_IN_RTCRAM -> registros são armazenados em RTC RAM (apenas para DS1307)

Recomendado: