Átfolyásmérő + Arduino Nano

Az átfolyásmérőm típusa  FS300A.

Átfolyásmérő

Arduino NanoÁtfolyásmérő
GNDFekete vezeték
5VPiros vezeték
D2Sárgavezeték

A program annyit csinál hogy kiírja az átfolyt folyadék mennyiségét.A sorosport sebessége 38400 Bpm. A calibrationFactor változó azt adja meg hogy mennyi impulzust ad egy liter átfolyása esetén.

/*
Liquid flow rate sensor -DIYhacking.com Arvind Sanjeev

Measure the liquid/water flow rate using this code. 
Connect Vcc and Gnd of sensor to arduino, and the 
signal line to arduino digital pin 2.
 
 */

byte sensorInterrupt = 0;  // 0 = digital pin 2
byte sensorPin       = 2;
float calibrationFactor = 5.5;  //IDEJÖN AZ HOGY MENNYI IMPULZUST AD 1 LITERENKENT.
volatile byte pulseCount;  
float flowRate;
unsigned int flowMilliLitres;
unsigned long totalMilliLitres;
unsigned long oldTime;

void setup()
{
  Serial.begin(38400);
  pinMode(sensorPin, INPUT);
  pulseCount        = 0;
  flowRate          = 0.0;
  flowMilliLitres   = 0;
  totalMilliLitres  = 0;
  oldTime           = 0;
  attachInterrupt(sensorInterrupt, pulseCounter, FALLING);
}

void loop()
{
   
   if((millis() - oldTime) > 1000)    // Only process counters once per second
  { 
    detachInterrupt(sensorInterrupt);
    flowRate = ((1000.0 / (millis() - oldTime)) * pulseCount) / calibrationFactor;    
    oldTime = millis();
    flowMilliLitres = (flowRate / 60) * 1000;
    totalMilliLitres += flowMilliLitres;
    unsigned int frac;
    frac = (flowRate - int(flowRate)) * 10;
   
    Serial.print("Osszes atfolyt folyadek:");            
    Serial.print(totalMilliLitres/1000);
    Serial.println("L"); 

    // Reset the pulse counter so we can start incrementing again
    pulseCount = 0;
    
    // Enable the interrupt again now that we've finished sending output
    attachInterrupt(sensorInterrupt, pulseCounter, FALLING);
  }
}

void pulseCounter()
{
  // Increment the pulse counter
  pulseCount++;
}

Az ötlet https://diyhacking.com/arduino-flow-rate-sensor/ innen származik

This entry was posted in Arduino and tagged , , , , . Bookmark the permalink.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük

Ez a weboldal az Akismet szolgáltatását használja a spam kiszűrésére. Tudjunk meg többet arról, hogyan dolgozzák fel a hozzászólásunk adatait..