Tartalomjegyzék:

Szerezze meg a DS18B20 sorozatszámát Arduino segítségével: 5 lépés
Szerezze meg a DS18B20 sorozatszámát Arduino segítségével: 5 lépés

Videó: Szerezze meg a DS18B20 sorozatszámát Arduino segítségével: 5 lépés

Videó: Szerezze meg a DS18B20 sorozatszámát Arduino segítségével: 5 lépés
Videó: LDmicro 14: ЖК-дисплей I2C и часы реального времени DS3231 (программирование лестничной схемы ПЛК микроконтроллера с помощью LDmicro) 2024, Július
Anonim
Szerezze meg a DS18B20 sorozatszámát egy Arduino segítségével
Szerezze meg a DS18B20 sorozatszámát egy Arduino segítségével

Ez egy gyors útmutató arról, hogyan szerezheti be a DS18B20 1 vezetékes hőmérséklet-érzékelőinek egyedi sorozatszámát.

Ez hasznos olyan projekteknél, amelyek több érzékelőt igényelnek.

Amire szüksége van:

  • Arduino 5v (UNO, Mega, Pro Mini stb.) - Arduino UNO R3 - AliExpress - eBay
  • DS18B20 hőmérséklet érzékelő - AliExpress - eBay
  • 4.7k - 1/4 w THT ellenállás - AliExpress - eBay
  • Kenyeretábla - AliExpress - eBay
  • Jumper vezetékek - férfi -férfi - AliExpress - eBay
  • Arduino IDE telepített számítógép

Lépés: Adja hozzá a szükséges könyvtárat az Arduino IDE -hez

Adja hozzá a szükséges könyvtárat az Arduino IDE -hez
Adja hozzá a szükséges könyvtárat az Arduino IDE -hez
  1. Nyissa meg az Arduino IDE -t (1.8.1 -et használok)
  2. Kattintson a "Vázlat" -> "Könyvtár felvétele" -> "Könyvtárak kezelése …"
  3. Válassza ki a keresősávot, és írja be a "dallas" szót
  4. Kattintson a "DallasTemperature", majd az "Install" gombra

Alternatív megoldásként letöltheti a Könyvtárat innen:

Ez a könyvtár tartalmazza az OnWire könyvtárat.

2. lépés: Csatlakoztassa a DS18B20 -at

Csatlakoztassa a DS18B20 -at
Csatlakoztassa a DS18B20 -at
Csatlakoztassa a DS18B20 -at
Csatlakoztassa a DS18B20 -at

Kenyérsütő tábla használatával csatlakoztassa a +5V, a GND és a Digitális 2 -es tűt (a 2 -es tű már be van állítva a példavázlatban) az Arduino -ból a Male to Male kenyérsütő ugrók segítségével.

Csatlakoztassa a DS18B20 -at párhuzamosan a kenyértáblán lévő 3x sorkapcsokkal.

  • 1. tüske (GND) -> GND (föld 0V)
  • 2. tű (DATA) -> Digitális 2. tű
  • 3. tű (Vdd) -> +5V

Normál tápellátási mód esetén csatlakoztasson egy 4,7K ellenállást +5V -tól a digitális kivezetés 2 -es vezetékéhez a kenyértáblán.

Az alábbi link kiváló forrás a DS18B20 1 vezetékes hőmérséklet-érzékelő számára.

www.tweaking4all.com/hardware/arduino/ardu…

3. lépés: Töltse be az „Egyetlen” példavázlatot

Töltse be a példa vázlatot
Töltse be a példa vázlatot
Töltse be a példa vázlatot
Töltse be a példa vázlatot

Miután csatlakoztatta, készen áll a Dallas Temperature "Single" SketchOpen Arduino IDE betöltésére (az 1.8.1 -et használom) Kattintson a "File" -> "Examples" -> "Dallas Temperature" -> "Single" hozzáadtam késésben (5000); a 103. sorban, hogy legyen időm másolni a sorozatszámotVálassza ki a megfelelő táblaformát "Eszközök" -> "Tábla" Válassza ki a megfelelő portot "Eszközök" -> "Port" Most "Töltse fel" a Vázlat "Vázlat" -> "Feltöltés" lehetőséget Kattintson az "Eszközök" -> "Soros monitor" elemre, és győződjön meg arról, hogy az adatátviteli sebesség megegyezik az enyém 9600 -mal. Ha nem vázlatot készített, akkor ellenőrizze a táblát, a portot, az USB -illesztőprogramokat stb.

4. lépés: Másolja ki a sorozatszámot

Másolja a sorozatszámot
Másolja a sorozatszámot
Másolja a sorozatszámot
Másolja a sorozatszámot

A "Soros monitor" menüben a negyedik sor jelenik meg: "Eszköz 0 címe: xxxxxxxxxxxxxxxx"

Ez a DS18B20 sorozatszáma

Ha "0000000000000000", akkor probléma merül fel a DS18B20 olvasásakor.

Jelölje ki az egérrel, és nyomja meg a CTRL+C billentyűkombinációt a billentyűzeten, majd a Jegyzettömbben

Más projektjeimhez a kódom ezekből a számokból álló tömböt használ. A HEX karakterláncot a következő formátumra formáztam.

DeviceAddress tempSensorSerial [9] = {

{0x28, 0xFF, 0x07, 0xA6, 0x70, 0x17, 0x04, 0xB5}, {0x28, 0xFF, 0xB2, 0xA6, 0x70, 0x17, 0x04, 0x28}, {0x28, 0xFF, 0x42, 0x04, 0x07, 0x28, 0xD3}, {0x28, 0xFF, 0x86, 0xA8, 0x70, 0x17, 0x04, 0xA6}, {0x28, 0xFF, 0x2B, 0x65, 0x71, 0x17, 0x04, 0x76}, {0x28, 0xFF, 0x66, 0x66, 0x17, 0x04, 0xF5}, {0x28, 0xFF, 0xD9, 0x9B, 0x70, 0x17, 0x04, 0x9C}, {0x28, 0xFF, 0x98, 0x6A, 0x71, 0x17, 0x04, 0xED}, {0x28x, 0x42, 0x71, 0x17, 0x04, 0x4C}};

5. lépés: Kész

Befejezett
Befejezett

Mostantól azonosíthatja a kódban az egyes DS18B20 1 vezetékes hőmérséklet-érzékelőket, és használhat egy ilyen funkciót:

float getTemperature (bájt j) {

sensors.requestTemperaturesByAddress (tempSensorSerial [j]);

float tempC = szenzorok.getTempC (tempSensorSerial [j]);

visszatérési tempC;

}

Ajánlott: