Stap 8: Flowsensor
De flowsensor wordt gebruikt om te meten vloeistof stroomt door een pijp / container. Je denkt misschien waarom we deze sensor nodig. Daar twee hoofdredenen
1. voor het meten van de hoeveelheid water gebruikt om de planten, Voorkom verspilling water
2. uit te schakelen de pomp om te voorkomen dat droge run.
Hoe werkt de Sensor?
Het werkt op het principe van de "Hall-Effect". Een spanningsverschil wordt geïnduceerd in een dirigent loodrecht op de elektrische stroom en het loodrecht op het magnetisch veld. De rotor van een kleine ventilator/schroef wordt geplaatst in het pad van de vloeibare stromen, wanneer de vloeistof stroomt de rotor draait. De schacht van de rotor is verbonden met een sensor hall-effect. Het is een arrangement van een huidige vloeiende spoel en een magneet aangesloten op de schacht van de rotor. Dus wordt een spanning/puls geïnduceerd als deze rotor draait. In deze flowmeter, voor elke liter vloeistof passeren het per minuut output het over paar pulsen. De stroomsnelheid in L/uur kan worden berekend door het tellen van de pulsen uit de uitvoer van de sensor. De Intel Edison zal het tellen werk doen.
De sensoren van stroom wordt geleverd met drie draden:
1. rood/VCC (5-24V DC-ingang)
2.Black/GND (0V)
3. geel/OUT (Pulse uitgang)
Voorbereiding van de Connector van de pomp: De pomp wordt geleverd met JST connector en draden. Maar de vrouwelijke connector in mijn voorraad voldeed niet aan mee en de draadlengte is ook klein. Dus ik gesneden van de oorspronkelijke connector en soldeer een nieuwe verbindingslijn met geschikte grootte.
Verbinding:
Sensor---> Intel
VCC---> 5V
GND---> GND
UIT---> D2
Test de Code:
De pols van de pin van de flowsensor is verbonden met de digitale pen 2. De pin-2 fungeert als een externe interrupt-pin.
Dit wordt gebruikt om te lezen van de pulsen van de uitvoer vanuit de flowsensor van water. Wanneer de Raad van bestuur van Intel de pols detecteert, wordt er onmiddellijk gegenereerd een functie.
Om te weten meer over Interrupt kunt u de pagina met Arduino naslaginformatie.
De test code wordt genomen formulier SeeedStudio. Voor meer informatie kunt u hier
Opmerking: Voor stroom berekening je moet changei de vergelijking volgens de fiche van uw pomp.
// reading liquid flow rate using Seeeduino and Water Flow Sensor from Seeedstudio.com// Code adapted by Charles Gantt from PC Fan RPM code written by Crenn // http:/themakersworkbench.com http://thebestcasescenario.com http://seeedstudio.com volatile int NbTopsFan; //measuring the rising edges of the signal int Calc; int hallsensor = 2; //The pin location of the sensor void rpm () //This is the function that the interupt calls { NbTopsFan++; //This function measures the rising and falling edge of the hall effect sensors signal } // The setup() method runs once, when the sketch starts void setup() // { pinMode(hallsensor, INPUT); //initializes digital pin 2 as an input Serial.begin(9600); //This is the setup function where the serial port is initialised, attachInterrupt(0, rpm, RISING); //and the interrupt is attached } // the loop() method runs over and over again, // as long as the Arduino has power void loop () { NbTopsFan = 0; //Set NbTops to 0 ready for calculations sei(); //Enables interrupts delay (1000); //Wait 1 second cli(); //Disable interrupts Calc = (NbTopsFan * 60 / 73); //(Pulse frequency x 60) / 73Q, = flow rate in L/hour Serial.print (Calc, DEC); //Prints the number calculated above Serial.print (" L/hour\r\n"); //Prints "L/hour" and returns a new line }