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

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

Onderdelen en benodigdheden

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren Arduino UNO × 1
Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren Jumper wires (standaard) – 25 stuks totaal × 25
Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren Breadboard (standaard) × 1
Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren Draaipotentiometer, 10 kΩ × 1
Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren Adafruit RGB Backlight LCD - 16x2 × 1
Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren Doorvoert weerstand, 220 kΩ × 1
Diymall Voltage Sensor DC 0-25V × 1
DROK Signaalversterker AD620 × 1
Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren Cup Blade Anemometer (bekervormige aanemometer) × 1

Benodigde tools

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren Soldeerbout (standaard)

Over dit project

Achtergrond

We moesten een luchtstroommeter bouwen voor residentiële toepassingen. In de huidige HVAC-industrie zijn de enige luchtstroomsensoren bedoeld voor industriële systemen. De apparaten die gebruikt worden voor industriële roosters zijn te groot voor residentiële roosters of kunnen de luchtstroom niet meten vanwege de lagere uitvoer van residentiële HVAC-systemen.

Hoe het werkt

Om een signaal te genereren uit de luchtstroom, gebruikten we een bekeraanemometer om de lucht te vangen. We ontwierpen aangepaste 3D-geprinte bladen met Autodesk Inventor om de prestaties te optimaliseren. Ook werd een 3D-geprinte behuizing gemaakt voor de aanemometer.

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren
Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

Het signaal van de aanemometer wordt uitgelezen door een spanningsensor. Dit signaal moest versterkt worden voor nauwkeurigere meting. De versterker (AD620) versterkt de uitgangsspanning van de aanemometer met een factor 10 (instelbaar tussen 1.5x en 1000x afhankelijk van invoerspanning).

Een Arduino Uno leest het analoge signaal van de spanningsensor en controleert wat op het LCD-scherm wordt getoond. We wilden de windsnelheid in CFM (Cubic Feet per Minute) weergeven.

De bouw

Elektronica

Start met de aanemometer. Hieronder foto's van het apparaat.

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren
Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

Bekijk de "Anemometer Top View". Het punt waar de bladen verbinden is L-vormig en dun – niet geschikt voor hoge snelheden. Daarom ontwierpen we nieuwe bladen: dikker en steviger. Doel: het luchtoppervlak tussen blaad en behuizing verkleinen, meer lucht vangen, hogere spanning.

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

Spanningsanalyses in Autodesk Inventor tonen aan dat de nieuwe bladen veel steviger zijn bij hoge snelheden.

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

STL-bestanden voor de bladen zijn bijgevoegd in de bestanden-sectie. NOG NIET DE NIEUWE BLADEN BEVESTIGEN.

Plaats de gemodificeerde aanemometer in de behuizing (STL-bestanden in bestanden-sectie). Zonder bladen: schuif aanemometer door het gat in de bodem van de behuizing. Bevestig bodem van aanemometer met Gorilla Glue aan twee dunne houten cirkels (hobbywinkel). Boor 4 gaatjes: 1 voor draad, 3 voor schroeven.

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

Versterker aansluiten

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

Alle draden aan versterker zijn male-to-male.

  • Soldeer rode draad aan +S (rechts) → rode draad aanemometer.
  • Soldeer zwarte draad aan -S (rechts) → gele draad aanemometer.
  • Isoleer met isolatietape.
Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

Versterker aan batterijvoeding:

  • Gele draad aan GND (rechts) → zwarte draad batterijpakketconnector.
  • Witte draad aan Vln (rechts) → rode draad batterijpakketconnector.

Versterker aan spanningsensor:

  • Blauwe draad aan GND versterker → VCC spanningsensor.
  • Groene draad aan Vout versterker → GND spanningsensor.
Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

Nu spanningsensor aan Arduino aansluiten – zie schema in schematics-sectie.

Afwerking

Plaats een stuk schuimplaat als "plafond" boven de ventilatorbehuizing (Gorilla Glue). Elektronica op schuimplaat, meer schuimplaat om te behuizen.

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

Gaten in schuim voor toegang tot 9V-batterijen van Arduino en versterker.

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

Trechter bouwen: PVC-platen in trapeziumvorm (4 stuks), verbonden met Gorilla Glue en kit. Dezelfde methode voor verbinding trechter-behuizing. Aan grote kant van trechter: weerstrips voor afdichting tegen roost. Doorsnede groot uiteinde: 14" × 14".

Kalibratie

Getest met een referentie-apparaat met bekende luchtstroom. Eerst code die spanning op LCD toonde. Verzamelde data gebruikt voor vergelijkingen om CFM te berekenen.

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren
Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

Op de grafiek: twee curven, initiële luchtstroom en werkelijke luchtstroom (verschil door verstuiking in trechter). We gebruiken de best-fit vergelijking voor werkelijke luchtstroom:

y = 1.1409x² + 44.958x in onze Arduino-code.

Code is verdeeld in drie regimes:

  • Grote CFM: y = 1.1409x² + 44.958x
  • Middel tot lage CFM: y = 40x + 20
  • Nul CFM: y = 0

Code vind je in de codesectie. Na uploaden is de stroommeter klaar!

Zelf kalibreren (optioneel)

Wil je zelf kalibreren, b.v. in m/s of mph?

  1. Vind manier om werkelijke stroomsnelheid te meten (goedkoop: hand-aanemometer kopen).
  2. Plaats hand-aanemometer voor ventilator met meerdere snelheidsstanden.
  3. Noteer windsnelheid per stand.
  4. Upload "Voltage Sensor Code" naar Arduino om uitgangsspanning te meten.
  5. Noteer spanning per ventilatorstand.
  6. Maak in Excel een spreidingsdiagram "Windsnelheid vs. Spanning".
  7. Gebruik trendlijn voor vergelijking die "Windsnelheid vs. Spanning" modelleert.
  8. Niet lineair? Gebruik aparte vergelijkingen voor lager/hoog bereik.
  9. Vervang mijn vergelijkingen in "Flowmeter Code" door de jouwe. Upload → klaar!

Code

Flowmeter Code (C/C++)

#include 

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

// Weerstandswaarden in de sensor
float R1 = 30000;
float R2 = 7500;

void setup() {
  Serial.begin(9600);
  lcd.begin(16, 2);
}

void loop() {
  int sensorValue = analogRead(A0);
  float voltage = ((5 * sensorValue * (R1 + R2)) / (1024 * R2));

  // Stukgewijze functie voor CFM
  if (voltage > 1) {
    // Grote CFM
    float cfm = (1.1409 * voltage * voltage) + 44.258 * voltage;
    Serial.println(cfm);
    lcd.print("CFM = ");
    lcd.setCursor(0, 1);
    lcd.print(cfm);
    delay(1000);
    lcd.clear();
    delay(1000);
  }
  else if (voltage > 0.01) {
    // Middel tot lage CFM
    float cfm = (40 * voltage) + 20;
    Serial.println(cfm);
    lcd.print("CFM = ");
    lcd.setCursor(0, 1);
    lcd.print(cfm);
    delay(1000);
    lcd.clear();
    delay(1000);
  }
  else {
    // Geen stroom
    float cfm = 0;
    Serial.println(cfm);
    lcd.print("CFM = ");
    lcd.setCursor(0, 1);
    lcd.print(cfm);
    delay(1000);
    lcd.clear();
    delay(1000);
  }
}

Code voor Spanningsensor (calibratie)

float R1 = 30000;
float R2 = 7500;

void setup() {
  Serial.begin(9600);
}

void loop() {
  int sensorValue = analogRead(A0);
  float voltage = ((5 * sensorValue * (R1 + R2)) / (1024 * R2));
  Serial.println(voltage);
  delay(1000);
}

Voltage Sensor Code (met LCD voor zelf kalibreren)

#include 
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

float R1 = 30000;
float R2 = 7500;

void setup() {
  Serial.begin(9600);
  lcd.begin(16, 2);
}

void loop() {
  int sensorValue = analogRead(A0);
  float voltage = ((5 * sensorValue * (R1 + R2)) / (1024 * R2));
  Serial.println(voltage);
  lcd.print("V = ");
  lcd.setCursor(0, 1);
  lcd.print(voltage);
  delay(1000);
  lcd.clear();
  delay(1000);
}

Schema's

Arduino-gestuurde Residentiële Luchtstroommeter: Bouwen & Monitoren

Productieproces

  1. Luchtreinigers: ontwerp, geschiedenis en toekomstige trends
  2. Zuurstoftankproductie: Van Grondstoffen tot Kwaliteitsborging
  3. Luchtverfrisser: Van Oude Geuren tot Moderne Plug-in Technologie
  4. Zuurstof: Van oude ontdekking tot moderne industriële krachthuis
  5. Airconditioning Systemen: Ontwerp, Productie en Toekomstige Trends
  6. Luchtballonnen: Van de Gebroeders Montgolfier tot Modern Vliegen
  7. Airbagsystemen: Ontwerp, Geschiedenis en Toekomstige Innovaties
  8. Bouw je eigen UFO Attack Game met Arduino UNO & MAX7219 Display
  9. 3D RGB Arduclock – Bluetooth LED Tijdstuk met Real-Time Clock
  10. Riviergezondheidsmonitor: Arduino-gebaseerd Waterkwaliteitssysteem
  11. Een Arduino Iron Man bouwen: onderdelen, sensoren en stapsgewijze handleiding