Bonjour à tous !
En fait j'ai un soucis , lorsque je branche mon capteur de Co2 à l'arduino uno tout fonctionne parfaitement , ça affiche les bonnes valeurs etc .. Mais quand je le branche à l'arduino mega ça ne marche pas ..
Quelqu'un pourrait m'aider?
bonjour,
boule de cristal cassée.
code entre balise < / > et un peu plus d'explication
Quel capteur?
Monté comment?
....?
Voici le code , même si je penses que le probleme ne vient pas de là puisqu'il fonctionne avec l'arduino uno
#include <SPI.h>
/*
VEETECH CO2 Monitor and Data Logger
SKETCH 2 Operation
Code by Martin Liddament
Used to determine:
- CO2 Concentration;
- Display concentration on 4-digit display in ppm;
- Record concentration on an SD Card at 10 minute intervals.
IMPORTANT
- For demonstration only;
- Not verified or guaranteed free of errors;
- Not suitable for critical applications;
- Use of this code is entirely at user's risk;
- Accurate calibration of the CO2 module is essential.
This code is in the public domain.
Copyright VEETECH Ltd 2013 www.veetech.co.uk.
*/
// Setting some initial parameters
#include <SD.h>
#include <math.h>
int co2 = 9999; // co2 is the co2 concentration. Preset value for code checking
int timePeriod = 0;
// analog input
int analogPin = A0; // voltage input from sensor
// Setting Sensor Calibration Constants
float v400ppm = 4.51; //MUST BE SET ACCORDING TO CALIBRATION
float v40000ppm = 3.125; //MUST BE SET ACCORDING TO CALIBRATION````````````````````````
float deltavs = v400ppm - v40000ppm;
float A = deltavs/(log10(400) - log10(40000));
float B = log10(400);
void setup()
{
Serial.begin(9600);
pinMode(analogPin, INPUT);
}
void loop()
{
// Read co2 data from sensor
int data = analogRead(analogPin); //digitise output from c02 sensor
float voltage = data/204.6; //convert output to voltage
// Calculate co2 from log10 formula (see sensor datasheet)
float power = ((voltage - v400ppm)/A) + B;
float co2ppm = pow(10,power);
Serial.print("ppm =");
Serial.println (co2ppm);
}
Pour le capteur c'est celui ci https://digitalmeans.co.uk/shop/image/cache/data/dfrobot/environment/co2_gas_sensor-analog-mg811-007-500x500.png et il est monté pareil que sur le shéma.
Merci de votre aide
que viennent faire spi et sd et math dans le code?
si on regarde le wiki, le premier code est tout simple
void setup(){
Serial.begin(9600);
}
void loop(){
Serial.print("Sample value:");
Serial.println(analogRead(A0));
delay(100);
}
tu es certain de tes connexions?