Skillnad mellan versioner av "Grove - Air Quality Sensor"
Rad 11: | Rad 11: | ||
== Exempelkod == | == Exempelkod == | ||
=== Arduino === | === Arduino === | ||
− | < | + | <syntaxhighlight lang="C++" line> |
#include "AirQuality.h" | #include "AirQuality.h" | ||
#include "Arduino.h" | #include "Arduino.h" | ||
Rad 82: | Rad 82: | ||
except IOError: | except IOError: | ||
print "Error" | print "Error" | ||
− | </ | + | </syntaxhighlight> |
== Mer information == | == Mer information == |
Versionen från 26 oktober 2018 kl. 22.51
Denna sensor är konstruerad för en övergripande övervakning av inomhusluft. Det är mottagligt för ett brett spektrum av skadliga gaser, som kolmonoxid, alkohol, aceton, tunnare, formaldehyd och så vidare. På grund av mätmekanismen kan denna sensor inte mata ut specifik data för att kvantitativt beskriva målgaskoncentrationernas koncentrationer. Men det är fortfarande tillräckligt kompetent att användas i applikationer som kräver endast kvalitativa resultat, som automatisk upprepnings sprutor och auto-luftcykelsystem.
Kompatibilitet
- Arduino
- Raspberry Pi
Port
Analog
Exempelkod
Arduino
#include "AirQuality.h"
#include "Arduino.h"
AirQuality airqualitysensor;
int current_quality =-1;
void setup()
{
Serial.begin(9600);
airqualitysensor.init(14);
}
void loop()
{
current_quality=airqualitysensor.slope();
if (current_quality >= 0)// if a valid data returned.
{
if (current_quality==0)
Serial.println("High pollution! Force signal active");
else if (current_quality==1)
Serial.println("High pollution!");
else if (current_quality==2)
Serial.println("Low pollution!");
else if (current_quality ==3)
Serial.println("Fresh air");
}
}
ISR(TIMER2_OVF_vect)
{
if(airqualitysensor.counter==122)//set 2 seconds as a detected duty
{
airqualitysensor.last_vol=airqualitysensor.first_vol;
airqualitysensor.first_vol=analogRead(A0); // change this value if you use another A port
airqualitysensor.counter=0;
airqualitysensor.timer_index=1;
PORTB=PORTB^0x20;
}
else
{
airqualitysensor.counter++;
}
}
Raspberry Pi
import time
import grovepi
# Connect the Grove Air Quality Sensor to analog port A0
# SIG,NC,VCC,GND
air_sensor = 0
grovepi.pinMode(air_sensor,"INPUT")
while True:
try:
# Get sensor value
sensor_value = grovepi.analogRead(air_sensor)
if sensor_value > 700:
print "High pollution"
elif sensor_value > 300:
print "Low pollution"
else:
print "Air fresh"
print "sensor_value =", sensor_value
time.sleep(.5)
except IOError:
print "Error"