A termékfotók tájékoztató jellegűek, és a gyártási tételtől és a beszállítótól függően kisebb eltéréseket mutathatnak. A termék specifikációi és árai előzetes értesítés nélkül változhatnak. Mindent megteszünk, hogy a lehető legpontosabb és leghitelesebb specifikációkat adjuk meg a termékoldalon, de lehetséges, hogy ezek nem teljesen helyesek. Ha ilyen esetet észlel, kérjük, jelentse nekünk.
A termék szakemberek számára készült, és használatához képzett, valamint felhatalmazott személyzet szükséges. A termék nem tartalmaz összeszerelési/használati útmutatót . A termék nem megfelelő képesítéssel rendelkező személyek általi üzembe helyezése a weboldalon található Általános Szerződési Feltételek értelmében a jótállás elvesztését eredményezi.
A megadott műszaki adatok (áram, teljesítmény stb.) ideális működési körülmények között érvényes maximális értékeket jelentenek. A biztonságos használat és az optimális élettartam érdekében javasolt a terméket folyamatos üzemben legfeljebb a megadott maximális értékek 50%-án használni.
SGP41 levegőminőség-érzékelő modul, VOC és NOx, I2C, 3,3 V
Kompatibil modul a levegőminőség valós idejű monitorozásához, VOC és NOx érzékelés a Sensirion MOX technológiával, I2C kommunikáció a gyors integrációhoz Arduino, ESP32, Raspberry Pi vagy STM32 rendszerekkel, alacsony, 3,3 V-os feszültségen működik, ideális akkumulátoros eszközökhöz, alkalmas okosotthonokhoz, HVAC rendszerekhez, légtisztítókhoz és hordozható meteorológiai állomásokhoz.
Shipping by csütörtök 22 október
A termék megvásárlásával jár 3,36 lei hűségpont.
Nemzetközi gyors szállítás az EU-n belül. Ingyenes szállítás 100 EUR feletti megrendelések esetén a legtöbb EU-országban.
24 órán belül szállítunk raktárunkból
Minden rendelés után pontokat kap, a rendelés értékének 5%-ában.
SGP41 érzékelőn alapuló modul, levegőminőség mérésére tervezve, kompatibilis az Arduino-val és más fejlesztőkártyákkal, okosotthon-alkalmazásokban, HVAC-ban, légtisztítókban vagy hordozható meteorológiai állomásokban használható.
Az érzékelő a Sensirion integrált MOX (fém-oxid) technológiáját használja a VOC (illékony szerves vegyületek) és NOx (nitrogén-oxid) gázok érzékelésére, így valós időben pontos képet ad a levegőminőségről.
A modul egy szabványos I2C interfésszel ellátott fekete panelre van szerelve, így könnyen integrálható olyan panelekre, mint az Arduino, ESP32, Raspberry Pi vagy STM32. Alacsony, 1,62 V és 1,98 V közötti feszültségen működik, így alkalmas hordozható alkalmazásokhoz és akkumulátoros eszközökhöz.
Figyelem! Az érzékelő nem kompatibilis az 1,9 VDC-nál nagyobb logikai szintekkel és tápegységgel! Használjon 1,8 VDC logikai szintátalakítót és tápegységet!
Specifikációk:
Tápfeszültség: 1,62 – 1,98 VDC
Érzékelő típusa: SGP41 (Sensirion)
Mért paraméterek: VOC és NOx
Interfész: I2C (standard cím 0x59)
Tipikus áramerősség: < 2 mA aktív módban
Bemelegedési idő: < 10 s
Modulméret: 10 × 10 mm
Nyák anyaga: FR4, fekete NYÁK
Kiosztás:
| Fenyő | Név | Funkció | Leírás |
|---|---|---|---|
| 1 | VCC | táplálás | 1,62 V – 1,98 V |
| 2 | Földelés | Tömeg | Közös hivatkozás |
| 3 | SDA | I²C adatok | Kétirányú adatvonal |
| 4 | SCL | I²C óra | Kommunikációs szinkronizálás |
Használat:
Csatlakoztassa az érzékelőt a mikrovezérlőhöz az I2C buszon keresztül:
VCC → 1,8 V
GND → GND közös
SDA → I²C SDA csatlakozó
SCL → I²C SCL csatlakozó
Inicializálja a kommunikációt a 0x59 címen.
Indítsd el a fűtési és VOC/NOx leolvasási rutint a Sensirion könyvtár szerint (elérhető Arduino és Raspberry Pi számára).
A visszaadott értékek értelmezése:
VOC-index (0–500)
NOx-index (0–500)
Az alacsony értékek tiszta levegőt, a magas értékek szennyezett levegőt jeleznek.
Figyelem! Az érzékelő nem kompatibilis az 1,9 VDC-nál nagyobb logikai szintekkel és tápegységgel! Használjon 1,8 VDC logikai szintátalakítót és tápegységet!
Példa Arduino és logikai szintátalakító csatlakoztatására:
| Arduino UNO | Szintkonverziós mód | SGP41 |
|---|---|---|
| 5V | HV | – |
| Földelés | Földelés | Földelés |
| SDA (A4) | HV1 → LV1 | SDA |
| Egyéni nyelv (A5) | HV2 → LV2 | SCL |
| LV (alsó oldal) | – | 1,8 V |
| HV (magas oldal) | – | 5V |
| 1,8 V-os LDO kimenet | – | VCC |
- Bemeneti feszültség
- 1.6 V
- Bemeneti feszültség típusa
- DC
Produs destinat utilizarii in proiecte electronice, automatizari, prototipare, educatie si cercetare.
Produsul trebuie utilizat numai conform specificatiilor tehnice mentionate in descriere si/sau in documentatia produsului.
Avertismente generale de siguranta:
Nu utilizati produsul la tensiuni, curenti sau temperaturi peste valorile specificate.
Montajul si conectarea trebuie realizate de persoane cu cunostinte tehnice minime in domeniul electric/electronic.
Evitati scurtcircuitele, inversarea polaritatii si conectarea gresita a alimentarii.
Nu lasati produsul alimentat nesupravegheat in timpul testelor.
Produsul nu este jucarie si nu este destinat copiilor.
Pentru modulele electronice, se recomanda utilizarea in carcase, panouri sau montaje protejate, dupa caz.
Identificare produs:
Denumirea produsului, codul/SKU-ul si caracteristicile tehnice sunt mentionate in pagina produsului si/sau pe eticheta ambalajului.
Producator / Importator / Distribuitor:
Sigmanortec S.R.L.
Calea Bucuresti nr. 9, Targu Jiu, Gorj, Romania
E-mail: [email protected]
Website: www.sigmanortec.ro
Persoana responsabila in UE:
Sigmanortec S.R.L.
Calea Bucuresti nr. 9, Targu Jiu, Gorj, Romania
E-mail: [email protected]
Documentatie si siguranta:
Pentru informatii suplimentare, fise tehnice, declaratii de conformitate sau instructiuni, ne puteti contacta la [email protected].
/*
Test code for SGP41 VOC and NOx Air Quality Sensor Module
Board: ESP32 Dev Module
Wiring:
SGP41 VCC -> ESP32 3V3
SGP41 GND -> ESP32 GND
SGP41 SDA -> ESP32 GPIO21
SGP41 SCL -> ESP32 GPIO22
Libraries to install from Library Manager:
Sensirion I2C SGP41 (Sensirion)
Sensirion Gas Index Algorithm (Sensirion)
Note: on a 5V board such as Arduino UNO, power the module from the 3.3V pin
and use a bidirectional I2C logic level converter on SDA and SCL.
*/
#include <Wire.h>
#include <SensirionI2CSgp41.h>
#include <VOCGasIndexAlgorithm.h>
#include <NOxGasIndexAlgorithm.h>
// I2C pins used on the ESP32 dev board
#define I2C_SDA_PIN 21
#define I2C_SCL_PIN 22
// Default humidity and temperature values used when no external RH/T sensor is connected
// 0x8000 corresponds to 50% RH, 0x6666 corresponds to 25 degC
const uint16_t defaultRh = 0x8000;
const uint16_t defaultT = 0x6666;
SensirionI2CSgp41 sgp41;
VOCGasIndexAlgorithm vocAlgorithm;
NOxGasIndexAlgorithm noxAlgorithm;
uint16_t error;
void setup() {
Serial.begin(115200);
delay(1000);
Wire.begin(I2C_SDA_PIN, I2C_SCL_PIN);
sgp41.begin(Wire);
// Read and print the sensor serial number, to confirm the I2C link works
uint16_t serialNumber[3];
uint8_t serialNumberSize = 3;
error = sgp41.getSerialNumber(serialNumber, serialNumberSize);
if (error) {
Serial.print("Error getting serial number: ");
Serial.println(error);
} else {
Serial.print("SGP41 serial number: ");
for (int i = 0; i < serialNumberSize; i++) {
Serial.print(serialNumber[i], HEX);
Serial.print(" ");
}
Serial.println();
}
Serial.println("Conditioning for 10 seconds, do not skip this step.");
uint16_t srawVoc = 0;
for (int i = 0; i < 10; i++) {
error = sgp41.executeConditioning(defaultRh, defaultT, srawVoc);
if (error) {
Serial.print("Error during conditioning: ");
Serial.println(error);
}
delay(1000);
}
Serial.println("Conditioning done, starting measurements.");
}
void loop() {
uint16_t srawVoc = 0;
uint16_t srawNox = 0;
error = sgp41.measureRawSignals(defaultRh, defaultT, srawVoc, srawNox);
if (error) {
Serial.print("Error reading raw signals: ");
Serial.println(error);
} else {
int32_t vocIndex = vocAlgorithm.process(srawVoc);
int32_t noxIndex = noxAlgorithm.process(srawNox);
Serial.print("SRAW_VOC: ");
Serial.print(srawVoc);
Serial.print(" SRAW_NOX: ");
Serial.print(srawNox);
Serial.print(" VOC Index: ");
Serial.print(vocIndex);
Serial.print(" NOx Index: ");
Serial.println(noxIndex);
}
delay(1000);
}
A Sensirion SGP41 érzékelős modulja két különálló jellel figyeli a beltéri levegő minőségét, az egyik a illékony szerves vegyületekre (VOC), a másik a nitrogén-oxidokra (NOx) vonatkozik. Ebben az oktatóanyagban egy ESP32 lappal helyezzük üzembe a modult, mivel az érzékelő I2C interfésze natívan 3.3 V-on működik, ugyanazon a logikai feszültségen, amit az ESP32 is használ, így nincs szükség szintillesztőre.

Hogyan működik:
Az SGP41 érzékelőnek két MOX mérőeleme van, mindegyiknek saját mikro-fűtőlapja. Minden elem egy 16 bites nyers jelet állít elő, SRAW_VOC és SRAW_NOX, amely arányos a gázérzékeny réteg ellenállásának logaritmusával. Ezek a nyers jelek önmagukban nem használhatók közvetlenül, ezért a mikrokontrolleren futó Sensirion Gas Index algoritmuson keresztül kerülnek feldolgozásra, amely egy 1-től 500-ig terjedő skálán VOC Index-et és NOx Index-et állít elő.
Minden bekapcsolás után az első mérés előtt az érzékelőt 10 s-ig kondicionálni kell, ezalatt a NOx elem fűtőlapja eléri a munkahőmérsékletet. A kondicionálás után a nyers jeleket másodpercenként egyszer olvassuk be, és mindegyik érték áthalad a Gas Index algoritmuson, amely az új leolvasást összehasonlítja az elmúlt üzemórák átlagával, és kiszámítja a megfelelő indexet. A 100-as VOC Index azt jelenti, hogy a levegő átlagosan olyan, mint az elmúlt 24 h-ban, az 1-es NOx Index pedig az oxidáló gázok hiányát jelzi.
Mire van szükséged:
- 1 x SGP41 levegőminőség érzékelő modul, VOC és NOx, I2C, 1.6V
- 1 x ESP32-DevKitC fejlesztői lap, ESP32-WROOM-32D, 38P
- 1 x Breadboard 830 pontos MB-102
- 4 x 40 db Dupont vezeték 20cm, Apa-Apa
Bekötés:
A modult 3.3 V-ról tápláljuk, ugyanazon a feszültségen, mint az ESP32 I2C interfésze, így a kapcsolat közvetlenül megvalósítható, szintillesztő nélkül. Ha az érzékelőt egy Arduino UNO lappal teszteled, a modult az UNO 3.3V pinjéről táplád, és az SDA és SCL vonalakat vezesd át egy kétirányú logikai szintillesztőn, mivel az UNO I2C pinjei 5 V-on dolgoznak.
| Termék pin | Hova csatlakozik | Szerep |
|---|---|---|
| VCC | 3V3 | Érzékelő tápellátás |
| GND | GND | Közös föld |
| SDA | GPIO21 | I2C adat |
| SCL | GPIO22 | I2C óra |
Könyvtárak:
Sensirion I2C SGP41, a Sensirion-tól, az érzékelővel való kommunikációhoz.
Sensirion Gas Index Algorithm, a Sensirion-tól, a VOC Index és NOx Index kiszámításához a nyers jelekből.
Wire, az I2C kommunikációhoz használt alap könyvtár, amely az ESP32 rendszerlaphoz van mellékelve.
A kód:
A program bekapcsoláskor kondicionálja az érzékelőt, majd másodpercenként beolvassa a nyers jeleket, és megjeleníti őket a VOC Index-szel és a NOx Index-szel együtt.
/*
SGP41 VOC and NOx Air Quality Sensor with ESP32
Board: ESP32 Dev Module
Wiring:
SGP41 VCC -> ESP32 3V3
SGP41 GND -> ESP32 GND
SGP41 SDA -> ESP32 GPIO21
SGP41 SCL -> ESP32 GPIO22
Libraries to install from Library Manager:
Sensirion I2C SGP41 (Sensirion)
Sensirion Gas Index Algorithm (Sensirion)
*/
#include <Wire.h>
#include <SensirionI2CSgp41.h>
#include <VOCGasIndexAlgorithm.h>
#include <NOxGasIndexAlgorithm.h>
// I2C pins used on the ESP32 dev board
#define I2C_SDA_PIN 21
#define I2C_SCL_PIN 22
// Default humidity and temperature values used when no external RH/T sensor is connected
// 0x8000 corresponds to 50% RH, 0x6666 corresponds to 25 degC, as defined by Sensirion
const uint16_t defaultRh = 0x8000;
const uint16_t defaultT = 0x6666;
SensirionI2CSgp41 sgp41;
VOCGasIndexAlgorithm vocAlgorithm;
NOxGasIndexAlgorithm noxAlgorithm;
uint16_t error;
char errorMessage[256];
void setup() {
Serial.begin(115200);
delay(1000);
// Start I2C bus on the chosen SDA and SCL pins
Wire.begin(I2C_SDA_PIN, I2C_SCL_PIN);
sgp41.begin(Wire);
Serial.println("SGP41 conditioning, please wait 10 seconds...");
// Conditioning must run for 10 s before the first raw signal measurement
uint16_t srawVoc = 0;
for (int i = 0; i < 10; i++) {
error = sgp41.executeConditioning(defaultRh, defaultT, srawVoc);
if (error) {
Serial.print("Error during conditioning: ");
Serial.println(error);
}
delay(1000);
}
Serial.println("Conditioning done, starting measurements.");
}
void loop() {
uint16_t srawVoc = 0;
uint16_t srawNox = 0;
// Read raw VOC and NOx signals once per second
error = sgp41.measureRawSignals(defaultRh, defaultT, srawVoc, srawNox);
if (error) {
Serial.print("Error reading raw signals: ");
Serial.println(error);
} else {
// Convert raw signals into VOC Index and NOx Index using the Gas Index Algorithm
int32_t vocIndex = vocAlgorithm.process(srawVoc);
int32_t noxIndex = noxAlgorithm.process(srawNox);
Serial.print("SRAW_VOC: ");
Serial.print(srawVoc);
Serial.print(" SRAW_NOX: ");
Serial.print(srawNox);
Serial.print(" VOC Index: ");
Serial.print(vocIndex);
Serial.print(" NOx Index: ");
Serial.println(noxIndex);
}
delay(1000);
}
Hogyan működik a kód:
A definíciós részben létrejön az sgp41 objektum a SensirionI2CSgp41 osztályból, az érzékelővel való kommunikációhoz, valamint a vocAlgorithm és noxAlgorithm objektumok a VOCGasIndexAlgorithm és NOxGasIndexAlgorithm könyvtárakból, amelyek sorban megkapják a nyers jeleket, és visszaadják az indexeket. A defaultRh és defaultT konstansok az alapértelmezett páratartalom és hőmérséklet értékeket tartalmazzák, amelyeket akkor használunk, ha nincs külső páratartalom-érzékelő.
A setup részben inicializáljuk a soros portot, elindítjuk az I2C buszt a Wire.begin paranccsal a GPIO21 és GPIO22 pinjeken, meghívjuk az sgp41.begin függvényt az objektum buszhoz kötéséhez, majd lefut egy ciklus, amely 10 alkalommal hívja meg az executeConditioning függvényt, másodpercenként egyszer, ahogy azt az érzékelő megköveteli az első mérés előtt.
A loop részben másodpercenként egyszer meghívjuk a measureRawSignals függvényt, 1000 ms-os delay segítségével, kiolvassuk a srawVoc és srawNox értékeket, és mindegyik algoritmus process függvénye átalakítja a nyers jelet a megfelelő indexszé. Az eredményeket a Serial.print segítségével jelenítjük meg a soros monitoron, a nyers jelekkel együtt, ellenőrzés céljából.
Eredmény:
Nyisd meg a soros monitort 115200 baud sebességgel. A 10 s-os kondicionálás után másodpercenként egy sor jelenik meg a képernyőn a nyers jelekkel, valamint a VOC Index és NOx Index értékekkel, az utóbbinak néhány óra folyamatos működésre van szüksége a teljesen stabil értékekhez.
SGP41 conditioning, please wait 10 seconds...
Conditioning done, starting measurements.
SRAW_VOC: 24981 SRAW_NOX: 15234 VOC Index: 100 NOx Index: 1
SRAW_VOC: 24975 SRAW_NOX: 15231 VOC Index: 99 NOx Index: 1
SRAW_VOC: 24988 SRAW_NOX: 15229 VOC Index: 101 NOx Index: 1
SRAW_VOC: 25102 SRAW_NOX: 15240 VOC Index: 108 NOx Index: 1
SRAW_VOC: 25310 SRAW_NOX: 15255 VOC Index: 124 NOx Index: 1
SRAW_VOC: 25006 SRAW_NOX: 15233 VOC Index: 102 NOx Index: 1
Gyakori problémák:
A soros monitor nem jelenít meg semmit: ellenőrizd, hogy a soros sebesség 115200 baud-ra van-e állítva a Serial.begin-ben és a soros monitorban is, és ellenőrizd, hogy a megfelelő ESP32 lapot választottad-e ki az Arduino IDE-ben.
Az érzékelő nem válaszol a 0x59 címen: ellenőrizd az SDA és SCL vezetékeket, ne cseréld fel őket egymással, és ellenőrizd, hogy a modul 3.3 V-ról van táplálva, nem 5 V-ról.
A VOC Index vagy a NOx Index hosszú ideig ugyanazon az értéken marad: ellenőrizd, hogy a measureRawSignals-t minden másodpercben megszakítás nélkül meghívod-e, mivel a Gas Index algoritmusnak folyamatos leolvasási folyamra van szüksége az alkalmazkodáshoz.
A NOx Index magas értékeket mutat, amelyek nem csökkennek: hagyd az érzékelőt néhány órán át folyamatosan működni, mivel a NOx Index teljes stabilizálódása bekapcsolás után tovább tart, mint a VOC Index-é.
Az értékek a valós környezethez képest furcsának tűnnek: aktiváld a páratartalom-kompenzációt, a measureRawSignals-nak valós hőmérséklet és páratartalom értékeket küldve egy külső érzékelőtől, az alapértelmezett értékek helyett.
Korlátok és tanácsok:
Az SGP41 modul a levegő minőségének relatív becslését adja, nem pontos anyagkoncentrációt, és nem szabad biztonsági érzékelőként használni mérgező vagy gyúlékony gázokhoz. A stabil eredmények érdekében tartsd az érzékelőt folyamatos üzemben, ismételt leállítások nélkül, és kerüld a közvetlen hőforrások vagy erős légáramlatok közelébe való szerelést. Jobb pontosság érdekében adj hozzá egy külső hőmérséklet- és páratartalom-érzékelőt, például SHT40-et, amelynek leolvasásait az SGP41 érzékelőnek továbbítod kompenzáció céljából. Erre az összeállításra alapozva egy szabályozott szellőztető rendszert is építhetsz, amely automatikusan beindít egy ventilátort vagy légtisztítót, amikor a VOC Index vagy a NOx Index meghalad egy beállított küszöbértéket.