Produktinformationen "CO2 Sensor MH-Z19C-PH"
Das MH-Z19C Infrarot-Gasmodul ist ein kleiner Sensor, der das nicht dispersive Infrarot (NDIR) Prinzip verwendet, um die Existenz von CO 2 in der Luft zu erfassen. Der Sensor zeichnet sich durch gute Selektivität ab und arbeitet sauerstoffunabhängig.
Leistungsdaten:
Modell: MH-Z19C
Hersteller: verschiedene
Typ: Elektronik
Sensor: CO2 Gas Messung
Messverfahren: nicht dispersive Infrarot (NDIR) Prinzip
Messbereich: 400-5'000 ppm CO2
Betriebsspannung: 5.0V DC (+-0.1V)
Stromaufnahme: <40mA (Aufheizen bis 125mA)
Interface: UART Level 3.3V und PWM Level 3.3V
Anschlüsse: Pin-Leiste 2.54mm Raster
Genauigkeit: +-40ppm
Vorheizzeit: 60 Sekunden (Altes Modell HM-Z19B hatte 180 Sekunden)
Ansprechzeit: 120 Sek.
Abmessungen: 33x20x17mm
PinOut MH-Z19C: Siehe Bild
Python Script zur CO2 Messung mit MH-Z19C mit einem Raspberry Pico:
from machine import Pin
import utime
#MH-Z19C Pin-6 VCC <-> PICO Pin-40 +5.0V
#MH-Z19C Pin-7 GND <-> PICO Pin-38 GND
#MH-Z19C Pin-9 PWM <-> PICO Pin-4 GP2
Modell: MH-Z19C
Hersteller: verschiedene
Typ: Elektronik
Sensor: CO2 Gas Messung
Messverfahren: nicht dispersive Infrarot (NDIR) Prinzip
Messbereich: 400-5'000 ppm CO2
Betriebsspannung: 5.0V DC (+-0.1V)
Stromaufnahme: <40mA (Aufheizen bis 125mA)
Interface: UART Level 3.3V und PWM Level 3.3V
Anschlüsse: Pin-Leiste 2.54mm Raster
Genauigkeit: +-40ppm
Vorheizzeit: 60 Sekunden (Altes Modell HM-Z19B hatte 180 Sekunden)
Ansprechzeit: 120 Sek.
Abmessungen: 33x20x17mm
PinOut MH-Z19C: Siehe Bild
Python Script zur CO2 Messung mit MH-Z19C mit einem Raspberry Pico:
from machine import Pin
import utime
#MH-Z19C Pin-6 VCC <-> PICO Pin-40 +5.0V
#MH-Z19C Pin-7 GND <-> PICO Pin-38 GND
#MH-Z19C Pin-9 PWM <-> PICO Pin-4 GP2
print("*** MH-Z19C CO2 ***")
OnBoardLED = machine.Pin(25, machine.Pin.OUT)
MH_Z19C_PWM = machine.Pin(2, machine.Pin.IN, Pin.PULL_UP) # GP2 (PICO-Pin-4)
while True:
OnBoardLED.toggle()
# utime.sleep(0.75)
i = 0
while i<1000: # warte max 1000mS auf 0-Pegel
i = i + 1
utime.sleep_ms(1)
if MH_Z19C_PWM.value()==0:
break
MH_Z19C_PWM = machine.Pin(2, machine.Pin.IN, Pin.PULL_UP) # GP2 (PICO-Pin-4)
while True:
OnBoardLED.toggle()
# utime.sleep(0.75)
i = 0
while i<1000: # warte max 1000mS auf 0-Pegel
i = i + 1
utime.sleep_ms(1)
if MH_Z19C_PWM.value()==0:
break
i = 0
while i<1000: # warte max 1000mS auf 1-Pegel
i = i + 1
utime.sleep_ms(1)
if MH_Z19C_PWM.value()==1:
break
while i<1000: # warte max 1000mS auf 1-Pegel
i = i + 1
utime.sleep_ms(1)
if MH_Z19C_PWM.value()==1:
break
i = 0
while i<1000: # Miss Zeit mit 1_pegel (max 1000mS)
i = i + 1
utime.sleep_ms(1)
if MH_Z19C_PWM.value()==0:
break
CO2 = int((i-2)*5)
while i<1000: # Miss Zeit mit 1_pegel (max 1000mS)
i = i + 1
utime.sleep_ms(1)
if MH_Z19C_PWM.value()==0:
break
CO2 = int((i-2)*5)
# Puls 2'000ppm 5'000ppm
# 202mS = 400ppm 900ppm
# 502mS = 1000ppm 2500ppm
# 752mS = 1500ppm 3750ppm
# 1002mS = 2000ppm 5000ppm
# 202mS = 400ppm 900ppm
# 502mS = 1000ppm 2500ppm
# 752mS = 1500ppm 3750ppm
# 1002mS = 2000ppm 5000ppm
print("PWM: "+str(i)+"mS CO2: "+str(CO2)+"ppm " +str(int(CO2/100)/100)+"%")
Anmelden