Inhoudsopgave:

Arduino Nano en twee DS18B20 temperatuursensoren met I2C LCD - Ajarnpa
Arduino Nano en twee DS18B20 temperatuursensoren met I2C LCD - Ajarnpa

Video: Arduino Nano en twee DS18B20 temperatuursensoren met I2C LCD - Ajarnpa

Video: Arduino Nano en twee DS18B20 temperatuursensoren met I2C LCD - Ajarnpa
Video: FLProg10: датчик температуры DS18B20 | ESP32 NodeMCU | Визуальное программирование для Arduino 2024, November
Anonim
Arduino Nano en twee DS18B20 temperatuursensoren met I2C LCD
Arduino Nano en twee DS18B20 temperatuursensoren met I2C LCD

Vandaag wil ik je laten zien hoe je twee temperatuursensoren DS18B20 maakt met Arduino Nano Clone en I2C LCD.// Dnes bych vam chtel ukazat, jak zprovoznit dve teplotni cidla DS18B20 s Arduino Nano klonem a I2C displejem.

Ik gebruik Arduino IDE 1.8.8 // Pouzivam Arduino ve verzi 1.8.8 (toho casu aktualni verze)

In commentaar zie je // Tsjechische taal

We moeten twee temperaturen meten en deze temperaturen op het display zien. Zoals je kunt zien, hebben we een 16x2 I2C-display, dat betekent 1 rij = 1 temperatuur.

// Potrebujeme merit dve teploty a tyto teploty zobrazit na displeji. // Jak jste si vsimli, mame 16x2 displej v nasem pripade to znamena 1 radek = 1 teplota.

Stap 1: Bereid // Priprava. voor

Voorbereiden // Priprava
Voorbereiden // Priprava
Voorbereiden // Priprava
Voorbereiden // Priprava
Voorbereiden // Priprava
Voorbereiden // Priprava

Wat we nodig hebben // Co budeme potrebovat:

  • 1x Arduino Nano of Clone (ik heb een compatibele kloon met CH341)
  • 1x I2C LCD (ik heb 16x2 met blauwe achtergrondverlichting)
  • 2x Dallas temperatuursensoren DS18B20 (ik heb waterdichte versie)
  • 1x 4, 7k weerstand

Mijn aanbevolen:

  • Arduino Nano-terminalschild (met schroeven) // Doporucuji pro instalaci Arduino Nano-terminalschild
  • Voor het testassemblagecircuit kunnen we breadboard gebruiken // pro otestovani pouzieme nepajive pole

Informatie:

Voor Win10 64bit-gebruikers had ik een groot probleem om de juiste stuurprogramma's te vinden. Alle aanbevolen stuurprogramma's werkten niet. Daarom heb ik de functionele stuurprogramma's toegevoegd om te downloaden. U kunt hier ook daadwerkelijke stuurprogramma's downloaden.

// Pro uzivatele Win10 64bit, mel jsem velike problemy najit funcni ovladace. Vsechny doporucovane ovladace // (vcetne ovladacu na strankach obchodu) nefungovaly. Proto jsem pridal v mem pripade funkcni ovladace ke // stazeni. Aktualni verzi ovladacu, muzete stahnout zde.

Hoe stuurprogramma's heel kort te installeren:

  • Drivers.zip //Stahnete ovladace downloaden
  • Pak drivers.zip uit in map
  • Installeer de stuurprogramma's // Nainstalujte ovladace
  • Sluit Arduino Nano aan // Pripojte Arduino Nano

Correct geïnstalleerde stuurprogramma's die u kunt controleren in Windows Apparaatbeheer

// Spravne nainstalovane ovladace muzete zkontrolovat ve Spravci zarzeni Windows

Nu kunnen we Arduino IDE uitvoeren // Nyni muzeme spustit Arduino IDE

We moeten de juiste opties kiezen in de Arduino IDE, in ons geval is dit: // V Arduino IDE musite vybrat spravne nastaveni

  • Rechter bord Arduino Nano // Arduino bureau
  • Voor Nano Clone (328P oude bootloader) // Pro klon vybereme (oude bootloader)
  • Communicatiepoort // komunikacni-poort

Stap 2: Circuitmontage // Zapojeni Obovdu

Circuitassemblage // Zapojeni Obovdu
Circuitassemblage // Zapojeni Obovdu
Circuitassemblage // Zapojeni Obovdu
Circuitassemblage // Zapojeni Obovdu

Temperatuursensoren maken parasitaire bedrading mogelijk. Dit wordt hier niet beschreven. Gebruik google.com. voor meer informatie over parasitaire bedrading

// parazitni zapojeni teplotnich senzoru zde nebudu popisovat. Pokud chcete vice informaci o parazitickem zapojeni cidel pouzite google.com

Informatie:

  • PIN A4 - SDA
  • PIN A5 - SCL

Waarschuwing:

Soldeer en tin kunnen HEET zijn!;-) // Neopalit se, je zaklad;-)

De tweede foto is een mogelijk resultaat.

Stap 3: Arduino IDE Zoek het adres

Arduino IDE Zoek het adres
Arduino IDE Zoek het adres

Ervan uitgaande dat alles werkt, kunnen we Arduino IDE uitvoeren // Za predpokladu, ze vse funguje, muzeme spustit Arduino IDE

Deze stap heeft drie substappen: // Tento krok ma tri dilci kroky

  1. Zoek het adres I2C LCD // Najdeme adresu I2C displeje
  2. Zoek het ROM-adres temperatuursensoren // Najdeme adresu teplotnich cidel
  3. Onze thermometers code // nas vlastni kod
  4. Zoek / controleer het I2C-adres De gemakkelijkste manier om het adres te vinden is door gebruik te maken van voorbereide I2C_scanner.ino Kopieer naar Arduino IDEUpload naar de BoardShow seriële monitor (kopieer het adres, we hebben het nodig)
  5. Zoek het ROM-adres Herhaal de eerste stap met DS18B20_finder.inoShow seriële monitor (kopieer het adres, we hebben het nodig)

Onze eigen code is de volgende stap…

Stap 4: Arduino IDE eigen code en functies // Vlastni Kod Teplomeru a Funkce

Arduino IDE eigen code en functies // Vlastni Kod Teplomeru en Funkce
Arduino IDE eigen code en functies // Vlastni Kod Teplomeru en Funkce
Arduino IDE eigen code en functies // Vlastni Kod Teplomeru en Funkce
Arduino IDE eigen code en functies // Vlastni Kod Teplomeru en Funkce
Arduino IDE eigen code en functies // Vlastni Kod Teplomeru en Funkce
Arduino IDE eigen code en functies // Vlastni Kod Teplomeru en Funkce
Arduino IDE eigen code en functies // Vlastni Kod Teplomeru en Funkce
Arduino IDE eigen code en functies // Vlastni Kod Teplomeru en Funkce

We hebben alle benodigde informatie. Laten we naar je eigen code kijken.// Mame vsechny potrebne informace, pojdme se podivat na nas kod.

Info: alle belangrijke stappen op de foto's zijn voorzien van commentaar // Vsechny dulezite kroky na fotografiich jsou komentovany.

Specificatie resolutie: // Specifikace rozliseni teplotnich senzoru

Resolutie / Toename / Tijd

9 bit / 0,5 graden C / 93,75 mSec10 bit / 0,25 graden C / 187,5 mSec11 bit / 0,125 graden C / 375 mSec12 bit / 0,0625 graden C / 750 mSec

Thermometer char

byte teplomer [8] = // codering thermometer char (vytvoreni znak teplomeru) {B00100, B01010, B01010, B01110, B01110, B11111, B11111, B01110};

Als je nog een char wilt, kun je deze op deze site maken

// Pokud chcete vytvorit jakykoli vlastni znak, muzete pouzit tento generator

Celsius-teken (°)

lcd.print((char)223);

Beperking van decimalen // Omezeni poctu desetinnych mist

Als je om wat voor reden dan ook maar één decimaal nodig hebt

// Pokud z nějakého důvodu potřebujete pouze jedno desetinné místo

lcd.print(read_temperature(), 1); // 1 (het getal 1 geeft het aantal decimalen aan)

// Cislo 1 udava pocet desetinnych mist

Stap 5: Voltooien - Galerij // Konec - Galerie

Afwerking - Galerij // Konec - Galerie
Afwerking - Galerij // Konec - Galerie
Afwerking - Galerij // Konec - Galerie
Afwerking - Galerij // Konec - Galerie
Afwerking - Galerij // Konec - Galerie
Afwerking - Galerij // Konec - Galerie

En uiteindelijk weinig woorden…?

Ik hoop dat het nuttig was en ons heeft geholpen.

Veel functies kunnen meer en beter, maar in mijn geval is dat alles wat ik nodig heb.

Dat zijn allemaal vrienden!!

//

Par slov na zaver?

Doufam, ze jsem nam pomohl. Mnoho funkci muze byt pridano a mohou byt lepsi, ale v mem pripade to bylo vse co potrebuji.

Tot je vse, pratele!!

Aanbevolen: