Inhoudsopgave:
- Stap 1: Dingen die in dit project worden gebruikt
- Stap 2: Verhaal
- Stap 3: Download benodigde bestanden
- Stap 4: Monteer
- Stap 5: Programma
- Stap 6: draagbare thermometer
- Stap 7: Conclusie
- Stap 8: Coderen
Video: Temperatuurmeting met XinaBox en een thermistor: 8 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
Meet de temperatuur van een vloeistof met behulp van een analoge ingang xChip van XinaBox en een thermistorsonde.
Stap 1: Dingen die in dit project worden gebruikt
Hardware onderdelen
- XinaBox SX02 x 1 xChip analoge ingangssensor met ADC
- XinaBox CC01 x 1 xChip-versie van Arduino Uno op basis van ATmega328P
- Weerstand 10k ohm x 1 10k weerstand voor spanningsdelernetwerk
- Thermistorsonde x 1 10k bij 25°C NTC waterdichte thermistorsonde
- XinaBox IP01 x 1 xChip USB Programmer gebaseerd op FT232R Van FTDI Limited
- XinaBox OD01 x 1 xChip 128x64 Pixel OLED-scherm
- XinaBox XC10 x 4 xChip-busconnectoren
- XinaBox PU01 x 1 xChip USB (Type A) Voeding
- 5V USB-voeding x 1 Powerbank of vergelijkbaar
Software-apps en online services
Arduino IDE
Handgereedschap en fabricagemachines
Schroevendraaier met platte kop Om de klem van de schroefklem vast of los te maken
Stap 2: Verhaal
Invoering
Ik wilde de temperatuur van een vloeistof meten door een eenvoudige thermometer te maken. Door XinaBox xChips te gebruiken, kon ik dit relatief eenvoudig bereiken. Ik gebruikte de SX02 analoge ingang xChip die 0 - 3.3V accepteert, de CC01 xChip gebaseerd op de ATmega328P en het OD01 OLED-display xChip om mijn temperatuurresultaten te bekijken.
Thermistor die de temperatuur van water in een glas meet
Stap 3: Download benodigde bestanden
U hebt de volgende bibliotheken en software nodig:
- xSX0X- Analoge ingangssensorbibliotheek
- xOD01 - OLED-displaybibliotheek
- Arduino IDE - Ontwikkelomgeving
Klik hier om te zien hoe u de bibliotheken installeert.
Nadat u de Arduino IDE hebt geïnstalleerd, opent u deze en selecteert u "Arduino Pro of Pro Mini" als het bord om uw programma naar te uploaden. Zorg er ook voor dat de ATmega328P (5V, 16MHz) processor is geselecteerd. Zie afbeelding hieronder.
Selecteer het Arduino Pro- of Pro Mini-bord en de ATmega328P (5V, 16MHz) processor
Stap 4: Monteer
Klik de programmer xChip, IP01 en de op ATmega328P gebaseerde CC01 xChip samen met behulp van XC10-busconnectoren, zoals hieronder weergegeven. Om te uploaden naar de CC01 moet u de schakelaars respectievelijk in de 'A'- en 'DCE'-posities plaatsen.
IP01 en CC01 klikten samen
Neem vervolgens uw 10kΩ-weerstand en schroef het ene uiteinde in de terminal gemarkeerd met "IN" en het andere uiteinde in de aardingsterminal, "GND", op de SX02. Neem de draden op de thermistorsonde en schroef het ene uiteinde in Vcc, "3.3V", en het andere uiteinde in de "IN"-aansluiting. Zie onderstaande grafiek.
SX02-aansluitingen
Combineer nu OD01 en SX02 met CC01 door ze eenvoudig aan elkaar te klikken met behulp van XC10-busconnectoren. Zie onder. Het zilveren element in de afbeelding is de thermistorsonde.
Complete unit voor programmering
Stap 5: Programma
Steek het apparaat in de USB-poort van uw computer. Download of kopieer en plak de onderstaande code in uw Arduino IDE. Compileer en upload de code naar je bord. Na het uploaden zou uw programma moeten starten. Als uw sonde zich op kamertemperatuur bevindt, moet u ±25°C op het OLED-display in acht nemen, zoals hieronder weergegeven.
Observeer na het uploaden de kamertemperatuur op het OLED-display
Stap 6: draagbare thermometer
Verwijder het apparaat van uw computer. Demonteer de unit en zet hem weer in elkaar met PU01 in plaats van IP01. Neem nu uw draagbare 5V USB-voeding, zoals een powerbank of iets dergelijks, en plaats de nieuwe eenheid erin. Je hebt nu je eigen coole draagbare thermometer met een goede nauwkeurigheid. Zie de omslagafbeelding om het in werking te zien. Ik heb heet water gemeten in een glas. De onderstaande afbeeldingen tonen uw complete unit.
Complete unit bestaande uit CC01, OD01, SX02 en PU02.
Stap 7: Conclusie
Dit project duurde minder dan 10 minuten om te monteren en nog eens 20 minuten om te programmeren. de enige vereiste passieve component was een weerstand. De xChips klikken gewoon in elkaar waardoor het erg handig is.
Stap 8: Coderen
ThermTemp_Display.ino Arduino Onderzoek thermistoren om de berekeningen in de code te begrijpen.
#include // include kernbibliotheek voor xCHIPs
#include // include analoge input sensor library #include // include OLED display library #include // include wiskundige functies#define C_Kelvin 273.15 // voor conversie van kelvin naar celsius #define series_res 10000 // waarde van serieweerstand in ohm #define B 3950 // B parameter voor thermistor #define room_tempK 298.15 // kamertemperatuur in kelvin #define room_res 10000 // weerstand bij kamertemperatuur in ohm #define vcc 3.3 // voedingsspanning xSX01 SX01(0x55); // stel de i2c-adres float-spanning in; // variabele die de gemeten spanning bevat (0 - 3,3 V) float therm_res; // thermistorweerstand float act_tempK; // werkelijke temperatuur kelvin float act_tempC; // werkelijke temperatuur in celsius void setup () {// plaats hier uw setup-code, om één keer uit te voeren: // initialiseer variabelen naar 0 voltage = 0; therm_res = 0; act_tempK = 0; act_tempC = 0; // start seriële communicatie Serial.begin (115200); // start i2c-communicatie Wire.begin(); // start de analoge ingangssensor SX01.begin(); // start OLED-weergave OLED.begin (); // duidelijke weergave OD01.clear(); // vertraging om vertraging te normaliseren (1000); } void loop() { // plaats hier je hoofdcode, om herhaaldelijk uit te voeren: // lees de spanning SX01.poll(); // sla de volatge spanning op = SX01.getVoltage (); // bereken thermistorweerstand therm_res = ((vcc * series_res) / voltage) - series_res; // bereken de werkelijke temperatuur in kelvin act_tempK = (room_tempK * B) / (B + room_tempK * log(therm_res / room_res)); // converteer kelvin naar celsius act_tempC = act_tempK - C_Kelvin; // printtemperatuur op OLED-display // handmatige opmaak om in het midden weer te geven OD01.set2X(); OD01.println(""); OD01.println(""); OD01.print(" "); OD01.print(act_tempC); OD01.print("C"); OD01.println(""); vertraging (2000); // update display elke 2 seconden }
Aanbevolen:
Temperatuurmeting met AD7416ARZ en Raspberry Pi: 4 stappen:
Meting van temperatuur met behulp van AD7416ARZ en Raspberry Pi: AD7416ARZ is een 10-bits temperatuursensor met vier enkelkanaals analoog naar digitaal converters en een ingebouwde temperatuursensor erin. De temperatuursensor op de onderdelen is toegankelijk via multiplexerkanalen. Deze zeer nauwkeurige temp
Temperatuurmeting met STS21 en Arduino Nano: 4 stappen
Temperatuurmeting met behulp van STS21 en Arduino Nano: STS21 digitale temperatuursensor biedt superieure prestaties en een ruimtebesparende voetafdruk. Het levert gekalibreerde, gelineariseerde signalen in digitaal I2C-formaat. De fabricage van deze sensor is gebaseerd op CMOSens-technologie, wat bijdraagt aan de superieure
Temperatuurmeting Automatisch & Voice Inform: 5 stappen (met afbeeldingen)
Automatische temperatuurmeting en spraakinformatie: de afgelopen dag worstelt de hele wereld met het virus Covid19. De eerste controle op getroffen personen (of waarvan vermoed wordt dat ze zijn getroffen) is het meten van de lichaamstemperatuur. Dus dit project is gemaakt om een model te maken dat automatisch de lichaamstemperatuur kan meten en via vo
Thermometer met behulp van een thermistor: 5 stappen
Thermometer die een thermistor gebruikt.: Dit is de thermometer die alleen een thermistor en een weerstand gebruikt. U kunt ook op elk moment de temperatuur van uw kamer of wat dan ook bewaken en opslaan. U kunt ook de eerder opgeslagen gegevens op de thingsio
Bedien tot 4 servo's met een smartphone of een ander apparaat met een audio-uitgang: 3 stappen
Bedien tot 4 servo's met behulp van een smartphone of elk apparaat met een audio-uitgang: hier presenteer ik een eenvoudige elektronische montage om maximaal vier servo's te besturen met elk apparaat dat een audiobestand kan lezen