Table des matières:

Enregistreur de données Arduino avec RTC, Nokia LCD et encodeur : 4 étapes
Enregistreur de données Arduino avec RTC, Nokia LCD et encodeur : 4 étapes

Vidéo: Enregistreur de données Arduino avec RTC, Nokia LCD et encodeur : 4 étapes

Vidéo: Enregistreur de données Arduino avec RTC, Nokia LCD et encodeur : 4 étapes
Vidéo: Четырехквадрантный прерыватель - 1 л.с. Скорость машины постоянного тока и управление направлением с помощью IGBT 2024, Juin
Anonim
Enregistreur de données Arduino avec RTC, Nokia LCD et encodeur
Enregistreur de données Arduino avec RTC, Nokia LCD et encodeur
Enregistreur de données Arduino avec RTC, Nokia LCD et encodeur
Enregistreur de données Arduino avec RTC, Nokia LCD et encodeur
Enregistreur de données Arduino avec RTC, Nokia LCD et encodeur
Enregistreur de données Arduino avec RTC, Nokia LCD et encodeur

Les pièces:

  • Arduino Nano ou Arduino Pro Mini
  • Nokia 5110 84x48 LCD
  • Capteur de température/humidité DHT11
  • Module RTC DS1307 ou DS3231 avec EEPROM AT24C32 intégrée
  • Encodeur pas cher avec 3 condensateurs anti-rebond

Caractéristiques:

  • GUI basée sur Nokia LCD et encodeur
  • la température, l'humidité, la date et l'heure peuvent être enregistrées toutes les 1 à 120 minutes
  • chaque enregistrement est compressé à un champ de 39 bits uniquement, de sorte que la mémoire flash de 32 kbit (4 Ko) peut contenir 819 enregistrements
  • La puce AT24C256 en option peut stocker même 6553 enregistrements
  • sommeil profond utilisé pour économiser la batterie, ATMEGA est réveillé par des interruptions principalement
  • DHT11 est alimenté uniquement pendant les mesures
  • alimenté par une seule pile 18650 ou autre pile au lithium
  • quelques affichages "visages"
  • 6 polices
  • indicateur de niveau de batterie
  • examen des données et graphiques
  • min/max avec date/heure
  • toutes les données enregistrées via le port série au format CSV
  • LCD rétro-éclairage
  • propre bibliothèque N5110 rapide et à faible ressource utilisée
  • propre lecture de données DHT11 de bas niveau
  • propre code de gestion EEPROM DS1307, DS3231 et AT24C32 I2C
  • le code utilise presque tous les flashs Arduino de 32 Ko
  • tous les registres internes peuvent être stockés dans une EEPROM externe ou une RAM interne DS1307

Compression de données

Les valeurs suivantes sont enregistrées:

  • temps (h, min)
  • date (j, m, a)
  • Température
  • humidité

Les données ci-dessus sont compressées dans un champ de bits de 39 bits:

  • h 0..23 -> 5b
  • min 0..59 -> 6b
  • d 1..31 -> 5b
  • m 1..12 -> 4b
  • et 2018..2021 -> 2b
  • temp -40.0..64.0 -> 1024valeurs = 10b
  • hum 0..100 -> 7b
  • 39 bits au total

Seuls 5 octets sont utilisés pour 1 enregistrement:

bits 76543210 octet0 hhhhhmmm octet1 mmmddddd octet2 mmmmaytt octet3 tttttttt octet4 hhhhhhh0

Étape 1: regarder des vidéos

Image
Image

Si vous êtes intéressé par les fonctionnalités et le développement du projet, regardez les vidéos ci-dessus

Étape 2: Connexions

Connexions
Connexions
Connexions
Connexions

Nokia 5110:

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

DHT11:

  1. VCC à VCC
  2. DONNÉES à D14
  3. NC
  4. GND à GND

EEPROM RTC DS1307/DS3231 et AT24C32:

Arduino I2C (A4/A5)

Encodeur:

  • PinA à D2
  • PinB à D4
  • Bouton à D3

Étape 3: Modifications "LowPower" des modules RTC (en option)

Modules RTC
Modules RTC
Modules RTC
Modules RTC

Dans DS1307 coupez 2 traces, enlevez R6 et faites un joint de soudure

En DS3231 coupez 2 traces

Étape 4: Micrologiciel

Croquis Arduino:

github.com/cbm80amiga/N5110_DHT11_logger_G…

Bibliothèque N5110:

github.com/cbm80amiga/N5110_SPI

Possibilités de configuration:

#define USE_DS3231 -> pour utiliser DS3231 au lieu de DS1307

#define REG_IN_RTCRAM -> les registres sont stockés dans la RAM RTC (uniquement pour DS1307)

Conseillé: