Sommario:

Datalogger Arduino con RTC, LCD Nokia ed encoder: 4 passaggi
Datalogger Arduino con RTC, LCD Nokia ed encoder: 4 passaggi

Video: Datalogger Arduino con RTC, LCD Nokia ed encoder: 4 passaggi

Video: Datalogger Arduino con RTC, LCD Nokia ed encoder: 4 passaggi
Video: Проект Arduino: часы реального времени DS3231 и цветной TFT-дисплей 1,8 ST7735 2024, Giugno
Anonim
Datalogger Arduino con RTC, LCD Nokia ed encoder
Datalogger Arduino con RTC, LCD Nokia ed encoder
Datalogger Arduino con RTC, LCD Nokia ed encoder
Datalogger Arduino con RTC, LCD Nokia ed encoder
Datalogger Arduino con RTC, LCD Nokia ed encoder
Datalogger Arduino con RTC, LCD Nokia ed encoder

Parti:

  • Arduino Nano o Arduino Pro Mini
  • Nokia 5110 84x48 LCD
  • Sensore di temperatura/umidità DHT11
  • Modulo RTC DS1307 o DS3231 con EEPROM AT24C32 integrata
  • Encoder economico con 3 condensatori antirimbalzo

Caratteristiche:

  • GUI basata su LCD Nokia e codificatore
  • temperatura, umidità, data e ora possono essere memorizzate ogni 1 - 120 minuti
  • ogni record è compresso solo a 39 bitfield, quindi il flash a 32 kbit (4 KB) può contenere 819 record
  • il chip AT24C256 opzionale può memorizzare anche 6553 record
  • sonno profondo utilizzato per risparmiare la batteria, ATMEGA viene svegliato principalmente da interruzioni
  • DHT11 è alimentato solo durante le misurazioni
  • alimentato da singola 18650 o altra cella al litio
  • alcune "facce" da esposizione
  • 6 caratteri
  • misuratore di livello della batteria
  • revisione dei dati e grafici
  • min/max con data/ora
  • dump di tutti i dati registrati tramite porta seriale in formato CSV
  • Retroilluminazione LCD
  • propria libreria di risorse N5110 veloce e bassa utilizzata
  • propria lettura dei dati DHT11 di basso livello
  • proprio codice di gestione EEPROM I2C DS1307, DS3231 e AT24C32
  • il codice utilizza quasi tutte le flash Arduino da 32 KB
  • tutti i registri interni possono essere memorizzati in EEPROM esterna o RAM interna DS1307

Compressione dati

Si registrano i seguenti valori:

  • tempo (h, min)
  • data (g, m, a)
  • temperatura
  • umidità

I dati di cui sopra sono compressi in un campo di bit a 39 bit:

  • ore 0..23 -> 5b
  • minimo 0..59 -> 6b
  • d 1..31 -> 5b
  • m 1..12 -> 4b
  • e 2018..2021 -> 2b
  • temp -40.0..64.0 -> 1024valori = 10b
  • ronzio 0..100 -> 7b
  • totale 39 bit

Vengono utilizzati solo 5 byte per 1 record:

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

Passaggio 1: guarda i video

Image
Image

Se sei interessato alle funzionalità e allo sviluppo del progetto, guarda i video sopra

Passaggio 2: connessioni

Connessioni
Connessioni
Connessioni
Connessioni

Nokia 5110:

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

DHT11:

  1. Da VCC a VCC
  2. DATI a D14
  3. NC
  4. GND a GND

RTC DS1307/DS3231 e AT24C32 EEPROM:

Arduino I2C (A4/A5)

Codificatore:

  • PinA a D2
  • PinB a D4
  • Pulsante per D3

Passaggio 3: modifiche "LowPower" ai moduli RTC (opzionale)

Moduli RTC
Moduli RTC
Moduli RTC
Moduli RTC

In DS1307 tagliare 2 tracce, rimuovere R6 e fare un giunto di saldatura

In DS3231 tagliare 2 tracce

Passaggio 4: firmware

Schema Arduino:

github.com/cbm80amiga/N5110_DHT11_logger_G…

Biblioteca N5110:

github.com/cbm80amiga/N5110_SPI

Opzioni di configurazione:

#define USE_DS3231 -> per usare DS3231 invece di DS1307

#define REG_IN_RTCRAM -> i registri sono memorizzati nella RAM RTC (solo per DS1307)

Consigliato: