Skip to content
Snippets Groups Projects
Select Git revision
  • 3595985353e0339c0b8cbcf24972ed3e373ffaf5
  • without_tipselection default
  • develop protected
  • fix/grafana-local-dashboard
  • wasp
  • fix/dashboard-explorer-freeze
  • master
  • feat/timerqueue
  • test/sync_debug_and_650
  • feat/sync_revamp_inv
  • wip/sync
  • tool/db-recovery
  • portcheck/fix
  • fix/synchronization
  • feat/new-dashboard-analysis
  • feat/refactored-analysis-dashboard
  • feat/new-analysis-dashboard
  • test/demo-prometheus-fpc
  • prometheus_metrics
  • wip/analysis-server
  • merge/fpc-test-value-transfer
  • v0.2.2
  • v0.2.1
  • v0.2.0
  • v0.1.3
  • v0.1.2
  • v0.1.1
  • v0.1.0
28 results

server.go

Blame
  • SCD30-6-JUIN-2.ino 3.46 KiB
    // Code pour faire fonctionner capteur et les 3 leds ensemble avec les conditions
    #include <Adafruit_SCD30.h>
    #include <SPI.h>
    #include <SD.h>
    #include <Wire.h>
    #include <SPI.h>
    
    Adafruit_SCD30  scd30;
    
    File myFile;
    const int L1 = 7; //rouge
    const int L2 = 3; //jaune
    const int L3 =2 ; //vert
    
    void save_co2() {
      myFile = SD.open("CO2.txt", FILE_WRITE);
    
      myFile.println(scd30.CO2);
      
      myFile.close();
    }
    
    void setup(void) {
      
      pinMode(L1,OUTPUT);
      pinMode(L2,OUTPUT);
      pinMode(L3,OUTPUT);
    
      Serial.begin(115200);
      while (!Serial) delay(10); // will pause Zero, Leonardo, etc until serial console opens
    
      Serial.println("Adafruit SCD30 test!");
    
      // Try to initialize!
      if (!scd30.begin()) {
        Serial.println("Failed to find SCD30 chip");
        while (1) { delay(10); }
      }
      Serial.println("SCD30 Found!");
    
    
      // if (!scd30.setMeasurementInterval(10)){
      //   Serial.println("Failed to set measurement interval");
      //   while(1){ delay(10);}
      // }
      Serial.print("Measurement Interval: "); 
      Serial.print(scd30.getMeasurementInterval()); 
      Serial.println(" seconds");
    
      // Initialisation de la carte SD
      Serial.print("Initializing SD card...");
      if (!SD.begin(10)) {
        Serial.println("initialization failed!");
        digitalWrite(L1,HIGH);
        delay(200);
        digitalWrite(L1,LOW);
        delay(200);
        digitalWrite(L1,HIGH);
        delay(200);
        digitalWrite(L1,LOW);
        delay(200);
        digitalWrite(L1,HIGH);
        delay(200);
        digitalWrite(L1,LOW);
        delay(200);
        digitalWrite(L1,HIGH);
        delay(200);
        digitalWrite(L1,LOW);
        delay(200);
        digitalWrite(L1,HIGH);
        delay(200);
        digitalWrite(L1,LOW);
        delay(200);
        digitalWrite(L1,HIGH);
        delay(200);
        digitalWrite(L1,LOW);
        while (1);
      }
      Serial.println("initialization done.");
      digitalWrite(L3,HIGH);
      delay(200);
      digitalWrite(L3,LOW);
      delay(200);
      digitalWrite(L3,HIGH);
      delay(200);
      digitalWrite(L3,LOW);
      delay(200);
      digitalWrite(L3,HIGH);
      delay(200);
      digitalWrite(L3,LOW);
      delay(200);
      digitalWrite(L3,HIGH);
      delay(200);
      digitalWrite(L3,LOW);
      delay(200);
      digitalWrite(L3,HIGH);
      delay(200);
      digitalWrite(L3,LOW);
      delay(200);
      digitalWrite(L3,HIGH);
      delay(200);
      digitalWrite(L3,LOW);
    
      myFile = SD.open("CO2.txt", FILE_WRITE);
      myFile.println(" ");
      myFile.println("----------- NOUVELLE MESURE -------------");
      myFile.close();
      
    }
    
    void loop() {
      if (scd30.dataReady()){
        Serial.println("Data available!");
    
        if (!scd30.read()){ Serial.println("Error reading sensor data"); return; }
    
        Serial.print("Temperature: ");
        Serial.print(scd30.temperature);
        Serial.println(" degrees C");
        
        Serial.print("Relative Humidity: ");
        Serial.print(scd30.relative_humidity);
        Serial.println(" %");
        
        Serial.print("CO2: ");
        Serial.print(scd30.CO2, 3);
        Serial.println(" ppm");
        Serial.println("");
    
        save_co2();
    
      } else {
        //Serial.println("No data");
      }
    
      delay(100);
    
      //programmation des LEDS
    
      if (scd30.CO2 > 1000){ //rouge
        digitalWrite(L1,HIGH);
        digitalWrite(L2,LOW);
        digitalWrite(L3,LOW);
      }
      else if(scd30.CO2 < 800 and scd30.CO2 > 300) { //vert
        digitalWrite(L1,LOW);
        digitalWrite(L2,LOW);
        digitalWrite(L3,HIGH); 
      }
    
      else if(scd30.CO2 <300) { //stabilisation en attendant la calibration du capteur
        digitalWrite(L1,LOW);
        digitalWrite(L2,LOW);
        digitalWrite(L3,LOW);
        delay(2000);
      }
      else { //jaune
         digitalWrite(L1,LOW);
        digitalWrite(L2,HIGH);
        digitalWrite(L3,LOW);
      }
      
    }