- భాగాలు అవసరం
- గ్రావిటీ ఇన్ఫ్రారెడ్ CO2 సెన్సార్
- 0.96 'OLED డిస్ప్లే మాడ్యూల్
- సర్క్యూట్ రేఖాచిత్రం
- CO2 ఏకాగ్రతను కొలవడానికి ఆర్డునో కోడ్
- గ్రావిటీ ఇన్ఫ్రారెడ్ CO2 సెన్సార్ యొక్క ఇంటర్ఫేసింగ్ను పరీక్షిస్తోంది
గాలిలో కార్బన్ డయాక్సైడ్ పెరుగుతున్న సాంద్రత ఇప్పుడు తీవ్రమైన సమస్యగా మారింది. NOAA నివేదిక ప్రకారం, ఓజోన్ CO2 గా ration త 0.0385 శాతానికి (385 ppm) చేరుకుంది మరియు ఇది 2.1 మిలియన్ సంవత్సరాలలో అత్యధిక మొత్తం. అంటే గాలి యొక్క ఒక మిలియన్ కణాలలో, 385 కణాలు కార్బన్ డయాక్సైడ్ ఉన్నాయి. ఈ పెరుగుతున్న CO2 స్థాయి పర్యావరణాన్ని తీవ్రంగా ప్రభావితం చేసింది మరియు వాతావరణ మార్పు మరియు గ్లోబల్ వార్మింగ్ వంటి పరిస్థితులను ఎదుర్కోవటానికి దారితీసింది. CO2 స్థాయిని చెప్పడానికి రోడ్లపై చాలా గాలి నాణ్యత కొలిచే పరికరాలు వ్యవస్థాపించబడ్డాయి, కాని మేము DIY CO2 కొలిచే పరికరాన్ని కూడా నిర్మించగలము మరియు దానిని మా ప్రాంతంలో వ్యవస్థాపించవచ్చు.
ఈ ట్యుటోరియల్లో, పిపిఎమ్లోని CO2 గా ration తను కొలవడానికి మేము గ్రావిటీ ఇన్ఫ్రారెడ్ CO2 సెన్సార్ను ఆర్డునోతో ఇంటర్ఫేస్ చేయబోతున్నాం. గ్రావిటీ ఇన్ఫ్రారెడ్ CO2 సెన్సార్ అధిక ఖచ్చితత్వ అనలాగ్ CO2 సెన్సార్. ఇది CO2 కంటెంట్ను 0 నుండి 5000 ppm పరిధిలో కొలుస్తుంది. గాలి నాణ్యత మానిటర్ను నిర్మించడానికి మేము MQ135 గ్యాస్ సెన్సార్, షార్ప్ GP2Y1014AU0F సెన్సార్ మరియు నోవా PM సెన్సార్ SDS011 ను ఉపయోగించిన మా మునుపటి ప్రాజెక్ట్లను కూడా మీరు తనిఖీ చేయవచ్చు.
భాగాలు అవసరం
- ఆర్డునో నానో
- గ్రావిటీ ఇన్ఫ్రారెడ్ CO2 సెన్సార్ V1.1
- జంపర్ వైర్లు
- 0.96 'SPI OLED డిస్ప్లే మాడ్యూల్
- బ్రెడ్బోర్డ్
గ్రావిటీ ఇన్ఫ్రారెడ్ CO2 సెన్సార్
గ్రావిటీ ఇన్ఫ్రారెడ్ CO2 సెన్సార్ V1.1 అనేది DFRobot విడుదల చేసిన తాజా హై-ప్రెసిషన్ అనలాగ్ ఇన్ఫ్రారెడ్ CO2 సెన్సార్. ఈ సెన్సార్ నాన్-డిస్పర్సివ్ ఇన్ఫ్రారెడ్ (ఎన్డిఐఆర్) టెక్నాలజీపై ఆధారపడి ఉంటుంది మరియు మంచి సెలెక్టివిటీ మరియు ఆక్సిజన్ లేని డిపెండెన్సీని కలిగి ఉంటుంది. ఇది ఉష్ణోగ్రత పరిహారాన్ని అనుసంధానిస్తుంది మరియు DAC అవుట్పుట్కు మద్దతు ఇస్తుంది. ఈ సెన్సార్ యొక్క ప్రభావవంతమైన కొలిచే పరిధి 0 నుండి 5000 పిపిఎమ్ వరకు ± 50 పిపిఎమ్ + 3% ఖచ్చితత్వంతో ఉంటుంది. ఈ పరారుణ CO2 సెన్సార్ను HVAC, ఇండోర్ వాయు నాణ్యత పర్యవేక్షణ, పారిశ్రామిక ప్రక్రియ మరియు భద్రతా రక్షణ పర్యవేక్షణ, వ్యవసాయం మరియు పశుసంవర్ధక ఉత్పత్తి ప్రక్రియ పర్యవేక్షణలో ఉపయోగించవచ్చు.
పరారుణ CO2 సెన్సార్ పిన్అవుట్:
ముందు చెప్పినట్లుగా, ఇన్ఫ్రారెడ్ CO2 సెన్సార్ ఒక తో వస్తుంది 3-పిన్ కనెక్టర్. దిగువ సంఖ్య మరియు పట్టిక పరారుణ CO2 సెన్సార్ కోసం పిన్ కేటాయింపులను చూపుతుంది:
పిన్ నం. |
పిన్ పేరు |
వివరణ |
---|---|---|
1 |
సిగ్నల్ |
అనలాగ్ అవుట్పుట్ (0.4 ~ 2 వి) |
2 |
వీసీసీ |
విసిసి (4.5 ~ 5.5 వి) |
3 |
GND |
GND |
పరారుణ CO2 సెన్సార్ లక్షణాలు & లక్షణాలు:
- గ్యాస్ డిటెక్షన్: కార్బన్ డయాక్సైడ్ (CO2)
- ఆపరేటింగ్ వోల్టేజ్: 4.5 ~ 5.5 వి డిసి
- వేడిచేసే సమయం: 3 నిమి
- ప్రతిస్పందన సమయం: 120 సె
- నిర్వహణ ఉష్ణోగ్రత: 0 ~ 50
- ఆపరేటింగ్ తేమ: 0 ~ 95% RH (సంగ్రహణ లేదు)
- జలనిరోధిత మరియు వ్యతిరేక తుప్పు
- అధిక చక్ర జీవితం
- నీటి ఆవిరి జోక్యం
0.96 'OLED డిస్ప్లే మాడ్యూల్
OLED (సేంద్రీయ కాంతి-ఉద్గార డయోడ్లు) ఒక స్వీయ కాంతి-ఉద్గార సాంకేతికత, ఇది రెండు కండక్టర్ల మధ్య సేంద్రీయ సన్నని చిత్రాల శ్రేణిని ఉంచడం ద్వారా నిర్మించబడింది. ఈ చిత్రాలకు విద్యుత్ ప్రవాహం వర్తించినప్పుడు ప్రకాశవంతమైన కాంతి ఉత్పత్తి అవుతుంది. OLED లు టెలివిజన్ల మాదిరిగానే సాంకేతిక పరిజ్ఞానాన్ని ఉపయోగిస్తున్నాయి, కాని మన టీవీల్లో కంటే తక్కువ పిక్సెల్లను కలిగి ఉన్నాయి.
ఈ ప్రాజెక్ట్ కోసం, మేము మోనోక్రోమ్ 7-పిన్ SSD1306 0.96 ”OLED డిస్ప్లేని ఉపయోగిస్తున్నాము. ఇది మూడు వేర్వేరు కమ్యూనికేషన్ ప్రోటోకాల్లలో పనిచేయగలదు: SPI 3 వైర్ మోడ్, SPI ఫోర్-వైర్ మోడ్ మరియు I2C మోడ్. పిన్స్ మరియు దాని విధులు క్రింది పట్టికలో వివరించబడ్డాయి:
మేము ఇప్పటికే మునుపటి వ్యాసంలో OLED మరియు దాని రకాలను వివరంగా కవర్ చేసాము.
పిన్ పేరు |
ఇతర పేర్లు |
వివరణ |
Gnd |
గ్రౌండ్ |
మాడ్యూల్ యొక్క గ్రౌండ్ పిన్ |
Vdd |
విసిసి, 5 వి |
పవర్ పిన్ (3-5 వి భరించదగినది) |
ఎస్.సి.కె. |
D0, SCL, CLK |
క్లాక్ పిన్గా పనిచేస్తుంది. I2C మరియు SPI రెండింటికీ ఉపయోగిస్తారు |
SDA |
డి 1, మోసి |
మాడ్యూల్ యొక్క డేటా పిన్. IIC మరియు SPI రెండింటికీ ఉపయోగిస్తారు |
RES |
RST, రీసెట్ |
మాడ్యూల్ను రీసెట్ చేస్తుంది (SPI సమయంలో ఉపయోగపడుతుంది) |
DC |
A0 |
డేటా కమాండ్ పిన్. SPI ప్రోటోకాల్ కోసం ఉపయోగిస్తారు |
సి.ఎస్ |
చిప్ సెలెక్ట్ |
SPI ప్రోటోకాల్ క్రింద ఒకటి కంటే ఎక్కువ మాడ్యూల్ ఉపయోగించినప్పుడు ఉపయోగపడుతుంది |
OLED లక్షణాలు:
- OLED డ్రైవర్ IC: SSD1306
- రిజల్యూషన్: 128 x 64
- విజువల్ యాంగిల్:> 160 °
- ఇన్పుట్ వోల్టేజ్: 3.3 వి ~ 6 వి
- పిక్సెల్ రంగు: నీలం
- పని ఉష్ణోగ్రత: -30 ° C ~ 70 ° C.
లింక్ను అనుసరించడం ద్వారా OLED మరియు విభిన్న మైక్రోకంట్రోలర్లతో దాని ఇంటర్ఫేసింగ్ గురించి మరింత తెలుసుకోండి.
సర్క్యూట్ రేఖాచిత్రం
ఆర్డ్యునో కోసం గ్రావిటీ అనలాగ్ ఇన్ఫ్రారెడ్ CO2 సెన్సార్ ఇంటర్ఫేసింగ్ కోసం సర్క్యూట్ రేఖాచిత్రం క్రింద ఇవ్వబడింది:
మేము గ్రావిటీ ఇన్ఫ్రారెడ్ CO2 సెన్సార్ మరియు OLED డిస్ప్లే మాడ్యూల్ను Arduino నానోతో మాత్రమే కనెక్ట్ చేస్తున్నందున సర్క్యూట్ చాలా సులభం. ఇన్ఫ్రారెడ్ CO2 సెన్సార్ మరియు OLED డిస్ప్లే మాడ్యూల్ రెండూ + 5V మరియు GND తో శక్తినిస్తాయి. CO2 సెన్సార్ యొక్క సిగ్నల్ (అనలాగ్ అవుట్) పిన్ Arduino నానో యొక్క A0 పిన్తో అనుసంధానించబడి ఉంది. OLED డిస్ప్లే మాడ్యూల్ SPI కమ్యూనికేషన్ను ఉపయోగిస్తున్నందున, మేము OLED మాడ్యూల్ మరియు Arduino నానోల మధ్య SPI కమ్యూనికేషన్ను ఏర్పాటు చేసాము. కనెక్షన్లు క్రింది పట్టికలో చూపించబడ్డాయి:
ఎస్ |
OLED మాడ్యూల్ పిన్ |
ఆర్డునో పిన్ |
1 |
GND |
గ్రౌండ్ |
2 |
వీసీసీ |
5 వి |
3 |
డి 0 |
10 |
4 |
డి 1 |
9 |
5 |
RES |
13 |
6 |
DC |
11 |
7 |
సి.ఎస్ |
12 |
సర్క్యూట్ రేఖాచిత్రం ప్రకారం హార్డ్వేర్ను కనెక్ట్ చేసిన తర్వాత, ఇది క్రింద ఉన్నట్లుగా ఉండాలి:
CO2 ఏకాగ్రతను కొలవడానికి ఆర్డునో కోడ్
ఆర్డునో ప్రాజెక్ట్ కోసం ఈ గ్రావిటీ అనలాగ్ ఇన్ఫ్రారెడ్ CO2 సెన్సార్ కోసం పూర్తి కోడ్ పత్రం చివరిలో ఇవ్వబడింది. ఇక్కడ మేము కోడ్ యొక్క కొన్ని ముఖ్యమైన భాగాలను వివరిస్తున్నాము.
కోడ్ ఉపయోగిస్తుంది Adafruit_GFX , మరియు Adafruit_SSD1306 లైబ్రరీలు. ఈ లైబ్రరీలను ఆర్డునో ఐడిఇలోని లైబ్రరీ మేనేజర్ నుండి డౌన్లోడ్ చేసుకొని అక్కడి నుండే ఇన్స్టాల్ చేసుకోవచ్చు. దాని కోసం, Arduino IDE తెరిచి, స్కెచ్> లైబ్రరీని చేర్చండి> లైబ్రరీలను నిర్వహించండి . ఇప్పుడు అడాఫ్రూట్ జిఎఫ్ఎక్స్ కోసం శోధించండి మరియు అడాఫ్రూట్ చేత అడాఫ్రూట్ జిఎఫ్ఎక్స్ లైబ్రరీని ఇన్స్టాల్ చేయండి.
అదేవిధంగా, అడాఫ్రూట్ చేత అడాఫ్రూట్ SSD1306 లైబ్రరీలను వ్యవస్థాపించండి. మేము ఆర్డ్యునో యొక్క అనలాగ్ పిన్ నుండి నేరుగా వోల్టేజ్ విలువలను చదువుతున్నందున ఇన్ఫ్రారెడ్ CO2 సెన్సార్కు లైబ్రరీ అవసరం లేదు.
Arduino IDE కి లైబ్రరీలను ఇన్స్టాల్ చేసిన తరువాత, అవసరమైన లైబ్రరీ ఫైల్లను చేర్చడం ద్వారా కోడ్ను ప్రారంభించండి. ఆర్డునో యొక్క అనలాగ్ పిన్ నుండి పఠనం నేరుగా తీసుకున్నందున డస్ట్ సెన్సార్కు లైబ్రరీ అవసరం లేదు.
# చేర్చండి
అప్పుడు, OLED వెడల్పు మరియు ఎత్తును నిర్వచించండి. ఈ ప్రాజెక్ట్లో, మేము 128 × 64 SPI OLED డిస్ప్లేని ఉపయోగిస్తున్నాము. మీరు మార్చవచ్చు SCREEN_WIDTH , మరియు SCREEN_HEIGHT మీ ప్రదర్శన ప్రకారం వేరియబుల్స్.
# SCREEN_WIDTH 128 ను నిర్వచించండి # SCREEN_HEIGHT 64 ని నిర్వచించండి
OLED డిస్ప్లే కనెక్ట్ చేయబడిన SPI కమ్యూనికేషన్ పిన్లను నిర్వచించండి.
# OLED_MOSI 9 ని నిర్వచించండి # OLED_CLK 10 ని నిర్వచించండి # OLED_DC 11 ని నిర్వచించండి # OLED_CS 12 ని నిర్వచించండి # OLED_RESET 13 ని నిర్వచించండి
అప్పుడు, SPI కమ్యూనికేషన్ ప్రోటోకాల్తో ముందుగా నిర్వచించిన వెడల్పు మరియు ఎత్తుతో అడాఫ్రూట్ ప్రదర్శన ఉదాహరణను సృష్టించండి.
Adafruit_SSD1306 డిస్ప్లే (SCREEN_WIDTH, SCREEN_HEIGHT, OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS);
ఆ తరువాత, CO2 సెన్సార్ అనుసంధానించబడిన Arduino పిన్ను నిర్వచించండి.
పూర్ణాంక సెన్సార్ఇన్ = A0;
ఇప్పుడు సెటప్ () ఫంక్షన్ లోపల, డీబగ్గింగ్ ప్రయోజనాల కోసం సీరియల్ మానిటర్ను 9600 బాడ్ రేటుతో ప్రారంభించండి. అలాగే, ప్రారంభ () ఫంక్షన్తో OLED డిస్ప్లేని ప్రారంభించండి .
సీరియల్.బెగిన్ (9600); display.begin (SSD1306_SWITCHCAPVCC); అనలాగ్ రిఫరెన్స్ (డిఫాల్ట్);
లూప్ () ఫంక్షన్ లోపల, మొదట అనలాగ్ రీడ్ () ఫంక్షన్కు కాల్ చేయడం ద్వారా ఆర్డునో యొక్క అనలాగ్ పిన్ వద్ద సిగ్నల్ విలువలను చదవండి. ఆ తరువాత, ఈ అనలాగ్ సిగ్నల్ విలువలను వోల్టేజ్ విలువలుగా మార్చండి.
void loop () {int సెన్సార్వాల్యూ = అనలాగ్ రీడ్ (సెన్సార్ఇన్); ఫ్లోట్ వోల్టేజ్ = సెన్సార్ విలువ * (5000 / 1024.0);
ఆ తరువాత, వోల్టేజ్ విలువలను సరిపోల్చండి. వోల్టేజ్ 0 V అయితే, సెన్సార్తో కొంత సమస్య సంభవించిందని అర్థం. వోల్టేజ్ 0 V కన్నా ఎక్కువ అయితే 400 V కన్నా తక్కువ ఉంటే, అప్పుడు సెన్సార్ ఇంకా ప్రీ-హీటింగ్ ప్రాసెస్లో ఉందని అర్థం.
if (వోల్టేజ్ == 0) {Serial.println ("తప్పు"); } else if (వోల్టేజ్ <400) {Serial.println ("preheating"); }
వోల్టేజ్ 400 V కంటే సమానంగా లేదా ఎక్కువ ఉంటే, దానిని CO2 గా ration త విలువలకు మార్చండి.
else {int వోల్టేజ్_డిఫెరెన్స్ = వోల్టేజ్ -400; ఫ్లోట్ ఏకాగ్రత = వోల్టేజ్_డిఫెరెన్స్ * 50.0 / 16.0;
ఆ తరువాత, setTextSize () మరియు setTextColor () ఉపయోగించి టెక్స్ట్ పరిమాణం మరియు టెక్స్ట్ రంగును సెట్ చేయండి.
display.setTextSize (1); display.setTextColor (WHITE);
తదుపరి పంక్తిలో, సెట్ కర్సర్ (x, y) పద్ధతిని ఉపయోగించి టెక్స్ట్ ప్రారంభమయ్యే స్థానాన్ని నిర్వచించండి. Display.println () ఫంక్షన్ను ఉపయోగించి OLED డిస్ప్లేలో CO2 విలువలను ప్రింట్ చేయండి.
display.println ("CO2"); display.setCursor (63,43); display.println ("(PPM)"); display.setTextSize (2); display.setCursor (28,5); display.println (ఏకాగ్రత);
చివరికి, OLED డిస్ప్లేలో వచనాన్ని ప్రదర్శించడానికి డిస్ప్లే () పద్ధతిని పిలవండి.
display.display (); display.clearDisplay ();
గ్రావిటీ ఇన్ఫ్రారెడ్ CO2 సెన్సార్ యొక్క ఇంటర్ఫేసింగ్ను పరీక్షిస్తోంది
హార్డ్వేర్ మరియు కోడ్ సిద్ధమైన తర్వాత, సెన్సార్ను పరీక్షించడానికి ఇది సమయం. దాని కోసం, ఆర్డునోను ల్యాప్టాప్కు కనెక్ట్ చేయండి, బోర్డు మరియు పోర్ట్ను ఎంచుకుని, అప్లోడ్ బటన్ను నొక్కండి. అప్పుడు మీ సీరియల్ మానిటర్ తెరిచి కొంత సమయం వేచి ఉండండి (ప్రీహీట్ ప్రాసెస్), అప్పుడు మీరు తుది డేటాను చూస్తారు.
క్రింద చూపిన విధంగా విలువలు OLED డిస్ప్లేలో ప్రదర్శించబడతాయి:
గమనిక: సెన్సార్ను ఉపయోగించే ముందు, సరైన పిపిఎం విలువలను పొందడానికి సెన్సార్ సుమారు 24 గంటలు వేడి చేయనివ్వండి. నేను మొదటిసారి సెన్సార్ను శక్తివంతం చేసినప్పుడు, అవుట్పుట్ CO2 గా ration త 1500 PPM నుండి 1700PPM వరకు ఉంది మరియు 24 గంటల హీట్-అప్ ప్రక్రియ తర్వాత, అవుట్పుట్ CO2 గా ration త 450 PPM నుండి 500 PPM కు తగ్గింది, అవి సరైన PPM విలువలు. కాబట్టి CO2 గా ration తను కొలవడానికి సెన్సార్ను ఉపయోగించే ముందు దాన్ని క్రమాంకనం చేయడం అవసరం.
గాలిలో ఖచ్చితమైన CO2 గా ration తను కొలవడానికి పరారుణ CO2 సెన్సార్ను ఈ విధంగా ఉపయోగించవచ్చు. పూర్తి కోడ్ మరియు వర్కింగ్ వీడియో క్రింద ఇవ్వబడ్డాయి. మీకు ఏవైనా సందేహాలు ఉంటే, వాటిని వ్యాఖ్య విభాగంలో ఉంచండి లేదా సాంకేతిక సహాయం కోసం మా ఫోరమ్లను ఉపయోగించండి.