ostaquet / Arduino-MQ131-driver

Arduino driver for gas sensor MQ131 (Ozone / O3)
MIT License
65 stars 19 forks source link

when I apply ozone to the MQ131 sensor instead of increasing the value it drops #31

Closed acavolina closed 3 years ago

acavolina commented 4 years ago

some help ?

ostaquet commented 4 years ago

Can you elaborate a bit? :-)

Can you share the wiring, the test protocol and the program?

acavolina commented 4 years ago

hi, change the sensor (high concentration) and work good the new one, I think was damaged for high temp soldering, the problem now are with the zero level ozone, using RL 1M resistor or 10K the zero are in 18 PPM or 16 PPM, when apply ozone at 15 ppm rise to 24. Now leave the sensor in heating process with 5V directly for 48 hrs to make test again

acavolina commented 4 years ago

MQ131.setEnv(27,65); // temp 27o RH = 65% lcd.init(); //initialize lcd screen lcd.backlight(); // turn on the backlight lcd.setCursor(0,0); // tell the screen to write on the top row lcd.begin(16,2); pinMode(6, OUTPUT); // pin 6 rele pinMode(5, OUTPUT); // pin 5 buzzer pinMode(3, INPUT_PULLUP); // pin 3 SELEC pinMode(4, INPUT_PULLUP); // pin 4 ENTER Serial.begin(115200);

// Init the sensor // - Heater control on pin 2 // - Sensor analog read on pin A0 // - Model LOW_CONCENTRATION // - Load resistance RL of 1MOhms (1000000 Ohms) //MQ131.begin(2,A0, LOW_CONCENTRATION, 1000000);
MQ131.begin(2,A0, HIGH_CONCENTRATION, 1110000); programa: lcd.clear(); lcd.setCursor(0,0); lcd.print("Calibracion...");

MQ131.calibrate(); lcd.clear(); lcd.setCursor(0,0); lcd.print("R0="); lcd.print(MQ131.getR0()); lcd.print(" Ohms"); lcd.setCursor(0,1); lcd.print("calentar en="); lcd.print(MQ131.getTimeToRead()); lcd.print("s"); lcd.clear(); delay(5900); }

ostaquet commented 4 years ago

The high concentration version of the MQ131 is designed for the high concentration of ozone. It means that the low ozone concentration will produce erratic values.

According to the datasheet, the minimal concentration detected is 10ppm. Knowing that it is a chemical sensor, you will have an high variability at such a low concentration.

I’m not surprized that you cannot reach the 0ppm with the high concentration sensor as it is not designed for this. Try again with high ozone concentration (> 100 ppm) after calibration & burn-in time to validate your results.

Kesavaram commented 4 years ago

I had the same issue. I suspect your sensor might be a SnO2 sensor where the resistance of the sensor decreases with an increase in O3 concentration.

ostaquet commented 3 years ago

@acavolina It seems that @Kesavaram is right. He added the code to support the SnO2 version (release 1.5.0).

Can you try your low concentration sensor with the model SN_O2_LOW_CONCENTRATION ?

acavolina commented 3 years ago

thanks I will buy it and try it

El 1 nov. 2020, a las 11:05, Olivier Staquet notifications@github.com escribió:

@acavolina https://github.com/acavolina It seems that @Kesavaram https://github.com/Kesavaram is right. He added the code to support the SnO2 version (release 1.5.0).

Can you try your low concentration sensor with the model SN_O2_LOW_CONCENTRATION ?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/ostaquet/Arduino-MQ131-driver/issues/31#issuecomment-720102451, or unsubscribe https://github.com/notifications/unsubscribe-auth/AREHDK4V22RY5OSEXJKIQUTSNV2K7ANCNFSM4RY46KBA.