Obsah:

Měření teploty pomocí XinaBoxu a termistoru: 8 kroků
Měření teploty pomocí XinaBoxu a termistoru: 8 kroků

Video: Měření teploty pomocí XinaBoxu a termistoru: 8 kroků

Video: Měření teploty pomocí XinaBoxu a termistoru: 8 kroků
Video: Jak měřit teplotu zaměstnancům pomocí termokamery? 2024, Červenec
Anonim
Měření teploty pomocí XinaBoxu a termistoru
Měření teploty pomocí XinaBoxu a termistoru

Změřte teplotu kapaliny pomocí analogového vstupu xChip od XinaBox a termistorové sondy.

Krok 1: Věci použité v tomto projektu

Hardwarové komponenty

  • XinaBox SX02 x 1 xChip analogový vstupní senzor s ADC
  • XinaBox CC01 x 1 xChip verze Arduino Uno založená na ATmega328P
  • Rezistor 10k ohm x 1 10k odpor pro síť děliče napětí
  • Termistorová sonda x 1 10k při 25 ° C NTC vodotěsná termistorová sonda
  • XinaBox IP01 x 1 xChip USB programátor založený na FT232R od FTDI Limited
  • XinaBox OD01 x 1 xChip 128x64 Pixel OLED displej
  • Konektory sběrnice XinaBox XC10 x 4 xChip
  • Napájení XinaBox PU01 x 1 xChip USB (typ A)
  • 5V USB napájecí zdroj x 1 napájecí banka nebo podobný

Softwarové aplikace a online služby

Arduino IDE

Ruční nářadí a výrobní stroje

Plochý šroubovák K utažení nebo uvolnění šroubové svorky

Krok 2: Příběh

Úvod

Chtěl jsem změřit teplotu kapaliny vytvořením jednoduchého teploměru. Pomocí XinaBox xChips jsem toho mohl dosáhnout relativně jednoduše. Pro zobrazení teplotních výsledků jsem použil analogový vstup xChip SX02, který přijímá 0 - 3,3 V, CC01 xChip založený na ATmega328P a OL01 displeji OD01 xChip.

Termistor měřící teplotu vody ve sklenici

Krok 3: Stáhněte si potřebné soubory

Budete potřebovat následující knihovny a software:

  • xSX0X- knihovna snímačů analogového vstupu
  • xOD01 - OLED zobrazovací knihovna
  • Arduino IDE - vývojové prostředí

Kliknutím sem zobrazíte, jak nainstalovat knihovny.

Jakmile nainstalujete Arduino IDE, otevřete jej a vyberte „Arduino Pro nebo Pro Mini“jako desku, do které chcete nahrát svůj program. Také se ujistěte, že je vybrán procesor ATmega328P (5V, 16MHz). Viz obrázek níže.

Vyberte desku Arduino Pro nebo Pro Mini a procesor ATmega328P (5V, 16MHz)

Krok 4: Sestavte

Klepněte na programátor xChip, IP01 a CC01 xChip na bázi ATmega328P pomocí konektorů sběrnice XC10, jak je znázorněno níže. Chcete -li nahrát do CC01, musíte umístit přepínače do polohy „A“a „DCE“.

IP01 a CC01 klikly společně

Dále vezměte odpor 10 kΩ a jeden konec našroubujte na svorku označenou „IN“a druhý konec na zemnící svorku „GND“na SX02. Vezměte vodiče na sondě termistoru a jeden konec našroubujte do Vcc, „3,3 V“, a druhý konec do svorky „IN“. Viz obrázek níže.

Připojení SX02

Nyní zkombinujte OD01 a SX02 s CC01 pouhým kliknutím dohromady pomocí konektorů sběrnice XC10. Viz. níže. Stříbrným prvkem na obrázku je termistorová sonda.

Kompletní jednotka pro programování

Krok 5: Program

Vložte jednotku do USB portu na vašem počítači. Stáhněte nebo zkopírujte a vložte níže uvedený kód do svého Arduino IDE. Zkompilujte a nahrajte kód na svou nástěnku. Po nahrání by se měl váš program spustit. Pokud je sonda při pokojové teplotě, měli byste na OLED displeji sledovat ± 25 ° C, jak je uvedeno níže.

Po nahrání sledujte pokojovou teplotu na OLED displeji

Krok 6: Přenosný teploměr

Vyjměte jednotku z počítače. Demontujte jednotku a znovu ji sestavte pomocí PU01 místo IP01. Nyní vezměte svůj přenosný napájecí zdroj 5 V USB, jako je power banka nebo podobný, a vložte do něj novou sestavu. Nyní máte vlastní skvělý přenosný teploměr s dobrou přesností. Podívejte se na úvodní obrázek, abyste ho viděli v provozu. Měřil jsem horkou vodu ve sklenici. Níže uvedené obrázky ukazují vaši kompletní jednotku.

Kompletní jednotka obsahující CC01, OD01, SX02 a PU02.

Krok 7: Závěr

Sestavení tohoto projektu trvalo méně než 10 minut a dalších 20 minut na programování. jedinou požadovanou pasivní komponentou byl odpor. XChipy jednoduše kliknou dohromady, což je velmi praktické.

Krok 8: Kód

ThermTemp_Display.ino Arduino Prohlédněte si termistory, abyste porozuměli výpočtům v kódu.

#include // zahrnout základní knihovnu pro xCHIP

#include // zahrnout knihovnu senzorů analogového vstupu #include // zahrnout knihovnu OLED displeje #include // zahrnout matematické funkce #definovat C_Kelvin 273.15 // pro převod z kelvinu na celsius #define series_res 10000 // hodnota sériového rezistoru v ohmech #define B 3950 // B parametr pro termistor #definovat room_tempK 298,15 // pokojová teplota v kelvinech #definovat room_res 10 000 // odpor při pokojové teplotě v ohmech #definovat vcc 3,3 // napájecí napětí xSX01 SX01 (0x55); // nastavení plovoucího napětí adresy i2c; // proměnná obsahující naměřené napětí (0 - 3,3 V) float therm_res; // odpor termistoru float act_tempK; // skutečná teplota kelvin float act_tempC; // skutečná teplota v celsius void setup () {// sem vložte svůj instalační kód, aby se spustil jednou: // inicializace proměnných na 0 napětí = 0; therm_res = 0; act_tempK = 0; act_tempC = 0; // zahájení sériové komunikace Serial.begin (115200); // zahájení komunikace i2c Wire.begin (); // spusťte senzor analogového vstupu SX01.begin (); // spuštění OLED displeje OLED.begin (); // vymazat displej OD01.clear (); // zpoždění k normalizaci zpoždění (1000); } void loop () {// sem vložte svůj hlavní kód, aby běžel opakovaně: // načtěte napětí SX01.poll (); // uložení napěťového napětí = SX01.getVoltage (); // výpočet odporu termistoru therm_res = ((vcc * series_res) / napětí) - série_res; // vypočítat skutečnou teplotu v kelvine act_tempK = (room_tempK * B) / (B + room_tempK * log (therm_res / room_res)); // převést kelvin na celsius act_tempC = act_tempK - C_Kelvin; // teplota tisku na OLED displeji // ruční formátování pro zobrazení uprostřed OD01.set2X (); OD01.println (""); OD01.println (""); OD01.print (""); OD01.print (act_tempC); OD01.print ("C"); OD01.println (""); zpoždění (2000); // aktualizace zobrazení každé 2 sekundy}

Doporučuje: