POC Breath using SMD commercial sensors

Dependencies:   iAQ_Core Adafruit_SGP30_mbed mbed BME680

Revision:
6:f6faf142e5fc
Parent:
5:646a7e58989e
Child:
7:f37620a76a1d
--- a/flow.h	Thu Jan 23 15:24:41 2020 +0000
+++ b/flow.h	Fri May 01 11:58:59 2020 +0000
@@ -50,7 +50,7 @@
         if (flag==1)
         {
           FPressure=P1-fp;
-          finalflow=(0.24*sqrt(FPressure)); //flow in litter per second
+          finalflow=(0.1724*sqrt(FPressure))+0.1637; //flow in litter per second, recalibrated at Imperial
             if(isnan(finalflow)==true){
                 return 0;
                 }
@@ -120,38 +120,130 @@
 
 ///////////////////// 8-CHANNEL SENSOR LOOP /////////////////////////
 
-int c2612()
+int c2612S0()
 {
     float sen5;
+    float v5;
+    float res5;
+    float r5;
+    
     while(1){
-        sen5=1000*((5/sensor5*3.3)-1);
+        v5=3.3*sensor5;
+        res5=5/v5;
+        r5=res5-1;
+        sen5=1000*r5;
+        return (int)sen5;
+    }
+}
+
+int c2612S1()
+{
+    float sen5;
+    float v5;
+    float res5;
+    float r5;
+    
+    while(1){
+        v5=(3.3*sensor5);
+        res5=5/v5;
+        r5=res5-1;
+        sen5=1000*r5;
         return (int)sen5;
     }
 }
 
-int c2610()
+int c2610S0()
 {
     float sen6;
+    float v6;
+    float res6;
+    float r6;
+    
     while(1){
-        sen6=1000*((5/sensor6*3.3)-1);
+        v6=3.3*sensor6;
+        res6=5/v6;
+        r6=res6-1;
+        sen6=1000*r6;
+        return (int)sen6;
+    }
+}
+
+int c2610S1()
+{
+    float sen6;
+    float v6;
+    float res6;
+    float r6;
+    
+    while(1){
+        v6=(3.3*sensor6);
+        res6=5/v6;
+        r6=res6-1;
+        sen6=1000*r6;
         return (int)sen6;
     }
 }
 
-int c2620()
+int c2620S0()
 {
     float sen7;
+    float v7;
+    float res7;
+    float r7;
+    
     while(1){
-        sen7=1000*((5/sensor7*3.3)-1);
+        v7=3.3*sensor7;
+        res7=5/v7;
+        r7=res7-1;
+        sen7=1000*r7;
         return (int)sen7;
     }
 }
 
-int c2602()
+int c2620S1()
+{
+    float sen7;
+    float v7;
+    float res7;
+    float r7;
+    
+    while(1){
+        v7=(3.3*sensor7);
+        res7=5/v7;
+        r7=res7-1;
+        sen7=1000*r7;
+        return (int)sen7;
+    }
+}
+
+int c2602S0()
 {
     float sen8;
+    float v8;
+    float res8;
+    float r8;
+    
     while(1){
-        sen8=1000*((5/sensor8*3.3)-1);
+        v8=3.3*sensor8;
+        res8=5/v8;
+        r8=res8-1;
+        sen8=1000*r8;
+        return (int)sen8;
+    }
+}
+
+int c2602S1()
+{
+    float sen8;
+    float v8;
+    float res8;
+    float r8;
+    
+    while(1){
+        v8=(3.3*sensor8);
+        res8=5/v8;
+        r8=res8-1;
+        sen8=1000*r8;
         return (int)sen8;
     }
 }