Innehållsförteckning:
- Steg 1: Saker som används i detta projekt
- Steg 2: Berättelse
- Steg 3: Ladda ner nödvändiga filer
- Steg 4: Montera
- Steg 5: Program
- Steg 6: Bärbar termometer
- Steg 7: Slutsats
- Steg 8: Kod
Video: Temperaturmätning med hjälp av XinaBox och en termistor: 8 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:37
Mät temperaturen på en vätska med en analog ingång xChip från XinaBox och en termistorsond.
Steg 1: Saker som används i detta projekt
Hårdvarukomponenter
- XinaBox SX02 x 1 xChip analog ingångssensor med ADC
- XinaBox CC01 x 1 xChip -version av Arduino Uno baserad på ATmega328P
- Motstånd 10k ohm x 1 10k motstånd för spänningsdelare nätverk
- Termistorsond x 1 10k vid 25 ° C NTC vattentät termistorsond
- XinaBox IP01 x 1 xChip USB -programmerare baserad på FT232R från FTDI Limited
- XinaBox OD01 x 1 xChip 128x64 pixel OLED -skärm
- XinaBox XC10 x 4 xChip -busskontakter
- XinaBox PU01 x 1 xChip USB (typ A) strömförsörjning
- 5V USB Power Supply x 1 Power Bank eller liknande
Programvaruappar och onlinetjänster
Arduino IDE
Handverktyg och tillverkningsmaskiner
Flatskruvmejsel För att dra åt eller lossa skruvklämman
Steg 2: Berättelse
Introduktion
Jag ville mäta temperaturen på en vätska genom att skapa en enkel termometer. Genom att använda XinaBox xChips kunde jag åstadkomma detta med relativt enkelhet. Jag använde SX02 analog ingång xChip som accepterar 0 - 3.3V, CC01 xChip baserat på ATmega328P och OD01 OLED -skärmen xChip för att se mina temperaturresultat.
Termistor som mäter temperaturen på vatten i ett glas
Steg 3: Ladda ner nödvändiga filer
Du behöver följande bibliotek och programvara:
- xSX0X- Analog ingångssensorbibliotek
- xOD01 - OLED -skärmbibliotek
- Arduino IDE - Utvecklingsmiljö
Klicka här för att se hur du installerar biblioteken.
När du har installerat Arduino IDE, öppna den och välj "Arduino Pro eller Pro Mini" som kortet att ladda upp ditt program till. Se också till att ATmega328P (5V, 16MHz) -processorn är vald. Se bilden nedan.
Välj Arduino Pro eller Pro Mini -kortet och ATmega328P (5V, 16MHz) -processorn
Steg 4: Montera
Klicka på programmeraren xChip, IP01 och ATmega328P -baserade CC01 xChip tillsammans med XC10 -busskontakter enligt nedan. För att ladda upp till CC01 måste du placera omkopplarna i positionerna 'A' respektive 'DCE'.
IP01 och CC01 klickade ihop
Ta sedan ditt 10kΩ -motstånd och skruva ena änden i terminalen märkt "IN" och den andra änden i jordterminalen, "GND", på SX02. Ta ledningarna på termistorsonden och skruva fast ena änden i Vcc, "3.3V", och den andra änden i "IN" -uttaget. Se grafiken nedan.
SX02 -anslutningar
Kombinera nu OD01 och SX02 med CC01 genom att helt enkelt klicka på dem tillsammans med XC10 -bussanslutningar. Se nedan. Silverelementet i bilden är termistorsonden.
Komplett enhet för programmering
Steg 5: Program
Sätt in enheten i USB -porten på din dator. Ladda ner eller kopiera och klistra in koden nedan i din Arduino IDE. Kompilera och ladda upp koden till ditt kort. När programmet har laddats upp bör det börja köras. Om sonden har rumstemperatur bör du observera ± 25 ° C på OLED -displayen enligt nedan.
Efter uppladdning observera rumstemperaturen på OLED -displayen
Steg 6: Bärbar termometer
Ta bort enheten från din dator. Demontera enheten och sätt ihop den igen med PU01 istället för IP01. Ta nu din 5V bärbara USB -strömförsörjning, t.ex. en powerbank eller liknande, och sätt in den nya enheten i den. Du har nu din egen coola bärbara termometer med god noggrannhet. Se omslagsbilden för att se den i drift. Jag mätte varmt vatten i ett glas. Bilderna nedan visar din kompletta enhet.
Komplett enhet bestående av CC01, OD01, SX02 och PU02.
Steg 7: Slutsats
Detta projekt tog under 10 minuter att montera och ytterligare 20 minuter att programmera. den enda passiva komponenten som krävdes var ett motstånd. XChips klickar bara ihop vilket gör det väldigt bekvämt.
Steg 8: Kod
ThermTemp_Display.ino Arduino Research termistorer för att förstå beräkningarna i koden.
#include // inkluderar kärnbibliotek för xCHIP
#inkludera // inkludera analogt ingångssensorbibliotek #inkludera // inkludera OLED -bildskärmsbibliotek #inkludera // inkludera matematiska funktioner B 3950 // B parameter för termistor #definiera rum_tempK 298,15 // rumstemperatur i kelvin #definiera rum_res 10000 // motstånd vid rumstemperatur i ohm #definiera vcc 3.3 // matningsspänning xSX01 SX01 (0x55); // ställ in i2c -adressens flottörspänning; // variabel som innehåller den uppmätta spänningen (0 - 3.3V) float term_res; // termistormotståndsflottan act_tempK; // faktisk temperatur kelvin float act_tempC; // faktisk temperatur i celsius void setup () {// lägg din installationskod här, för att köra en gång: // initialisera variabler till 0 spänning = 0; term_res = 0; act_tempK = 0; act_tempC = 0; // starta seriell kommunikation Serial.begin (115200); // starta i2c -kommunikation Wire.begin (); // starta den analoga ingångssensorn SX01.begin (); // starta OLED -skärmen OLED.begin (); // tydlig display OD01.clear (); // fördröjning för att normalisera fördröjning (1000); } void loop () {// lägg din huvudkod här för att köra upprepade gånger: // läs spänningen SX01.poll (); // lagra volatgespänningen = SX01.getVoltage (); // beräkna termistorresistans therm_res = ((vcc * series_res) / spänning) - series_res; // beräkna den faktiska temperaturen i kelvin act_tempK = (room_tempK * B) / (B + room_tempK * log (therm_res / room_res)); // konvertera kelvin till celsius act_tempC = act_tempK - C_Kelvin; // utskriftstemperatur på OLED -skärm // manuell formatering för visning i mitten OD01.set2X (); OD01.println (""); OD01.println (""); OD01.print (""); OD01.print (act_tempC); OD01.print ("C"); OD01.println (""); fördröjning (2000); // uppdatera display varannan sekund}
Rekommenderad:
Temperaturmätning med STS21 och Arduino Nano: 4 steg
Temperaturmätning med STS21 och Arduino Nano: STS21 digital temperatursensor erbjuder överlägsen prestanda och ett platsbesparande fotavtryck. Den ger kalibrerade, lineariserade signaler i digitalt I2C -format. Tillverkningen av denna sensor är baserad på CMOSens -teknik, som tillskrivs den överlägsna
Temperaturmätning Automatisk och röstinformation: 5 steg (med bilder)
Temperaturmätning Automatisk och röstinformation: Den senaste dagen kämpar hela världen med virus Covid19. Första kontrollen av påverkade personer (eller misstänks ha påverkats) mäter kroppstemperatur. Så det här projektet är utformat efter en modell som kan mäta kroppstemperaturen automatiskt och informera via vo
Datum, tid och temperaturvisning med hjälp av XinaBox: 8 steg
Datum, tid och temperaturvisning med XinaBox: Cool OLED -skärm som visar datum, tid och temperatur i Celsius och Fahrenheit med Xinabox xChips baserat på ESP8266
Arduino -robot med avstånd, riktning och rotationsgrad (öst, väst, norr, söder) som styrs med röst med hjälp av Bluetooth -modul och autonom robotrörelse .: 6 steg
Arduino -robot med avstånd, riktning och rotationsgrad (öst, väst, norr, söder) som styrs med röst med hjälp av Bluetooth -modul och autonom robotrörelse.: Denna instruktion förklarar hur man gör Arduino -robot som kan flyttas i önskad riktning (framåt, bakåt , Vänster, höger, öst, väst, norr, syd) krävs Distans i centimeter med röstkommando. Roboten kan också flyttas autonomt
Hur man bygger en väderstation med hjälp av XinaBox och Ubidots över HTTP: 7 steg
Hur man bygger en väderstation med hjälp av XinaBox och Ubidots via HTTP: Lär dig hur du gör din egen väderstation på Ubidots, med XinaBox xChips (IP01, CW01 och SW01) ESP8266 Core och Wi-Fi-modulen (xChip CW01) låter användare skicka data från XinaBox modulära xChips till molnet. Dessa data kan övervakas på distans