Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Bluetooth Temperatuurmeter met Arduino Nano

Onderdelen en benodigdheden

Arduino Nano R31
Jumper wires (generiek)1 set
HC-06 Bluetooth Module1
NTC Thermistor1
Weerstand 10k ohm1
Weerstand 1k ohm1
Weerstand 2.21k ohm1

Benodigde tools en machines

  • Solderbout (optioneel)
  • 3D-printer (optioneel, voor behuizing)

Apps en online diensten

  • MIT App Inventor 2

Over dit project

In deze tutorial bouw je een Arduino-temperatuurcontroller die waarden via Bluetooth naar een Android-app stuurt.

Benodigdheden

  • Arduino Nano
  • NTC thermistor (let op de 25°C weerstandswaarde voor de berekening)
  • Weerstanden: 2k, 1k en één gelijk aan de thermistorwaarde
  • HC-06 Bluetooth module
  • Diverse jumper wires

Spanningsdeler voor thermistor

Eerst bouwen we de spanningsdeler voor de thermistor (zie schema). De Arduino meet de spanningsval over de onbekende weerstand. Met de bekende weerstand berekenen we de thermistorweerstand:

raw = analogRead(analogPin);
if(raw) {
  ratio = raw * Vin;
  Vout = (ratio)/1024.0;
  ratio = (Vin/Vout) - 1;
  R2 = R1 * ratio;
}

Temperatuurberekening (Beta-formule)

De gemeten weerstand wordt omgerekend naar temperatuur met de Beta-formule:

Temp = Beta / log(R2 / (Ro * exp(-Beta/To)));
Temp = Temp - 273.15; // Kelvin naar Celsius

Let op: De Beta-waarde en Ro bij 25°C vind je in de datasheet van je thermistor!

Bluetooth module aansluiten

De HC-06 module werkt op 3.3V. De TX van de Arduino (5V) moet via een spanningsdeler (1k/2.21k) naar de RX van de module. Zie het schema.

Data verzenden via Bluetooth

Initialiseer de seriële poort en print de gewenste waarden. In dit voorbeeld meet het apparaat 25-75°C, telt ~300 seconden bij hoge temperatuur en verandert dan de boodschap:

void setup() { Serial.begin(9600); }
void loop() {
  if(Temp >= 74) {
    for (int i = 0; i <= 30; i++) {
      Serial.print("Temperature >= 74 °C");
      delay(10000);
    }
    Serial.print("Heating Complete");
    delay(10000);
  } else if (Temp <= 26) {
    Serial.print("Temperature <= 25 °C");
    delay(10000);
  } else {
    Serial.print("Temperature: ");
    Serial.println(Temp);
    delay(10000);
  }
}

Android App met MIT App Inventor 2

Een simpele app ontvangt de Bluetooth-data en toont de temperatuur. De interface en programmeringsblokken zijn in de afbeeldingen te zien. De app is beschikbaar in de App Inventor gallery. Je kunt de app uitbreiden met geluidsmeldingen bij bepaalde temperatuurdrempels.

Optioneel: Soldeer en 3D-print een behuizing

Voor een definitieve versie kun je de componenten solderen en een 3D-geprinte behuizing maken. Een gat in de zijkant geeft toegang aan de USB-poort voor voeding. Een lange kabel naar de thermistor houdt de elektronica ver van de meetomgeving (bijv. vloeistof).

Code

De complete Arduino-sketch 'Temperature monitor with bluetooth module' is boven te vinden. Pas de waarden voor R1, Ro, Beta en To aan naar jouw thermistor.

Schema's

Weerstand R2 moet aangepast worden aan de thermistorweerstand. De meetfout neemt toe met het verschil tussen onbekende en bekende weerstand.

Productieproces

  1. Raspberry Pi Temperatuur & Vochtigheid Netwerk Monitor – DIY Setup Gids
  2. Een ThingSpeak Temperatuurmonitor Bouwen met Raspberry Pi & BrickPi
  3. Je huis temperatuur monitoren met een Raspberry Pi-dashboard
  4. Slimme Plantenalarmer – DIY Sensor voor Optimale Hydratatie
  5. Bouw een Italiaanse Woordklok met Arduino Nano, NeoPixel, LCD en RTC
  6. Bouw een Betrouwbare Sigfox kWh Meter met Arduino MKR Fox 1200
  7. Contactloos Gebaarslot: Veilige toegang met APDS-9960 en Arduino
  8. Arduino Nano Companion Kit – Essentiële Componenten & Hulpmiddelen voor DIY Electronica
  9. USB MIDI Adapter Kit voor Arduino Micro / Leonardo – Complete Onderdelenlijst
  10. Geïsoleerde analoge ingangsschakeling voor Arduino bouwen
  11. Precisie Reactietijd Test met Arduino UNO