- మెటీరియల్ అవసరం
- సర్క్యూట్ రేఖాచిత్రం
- కోడ్ మరియు వివరణ
- ఇది కాంతి తీవ్రతను స్వయంచాలకంగా ఎలా నియంత్రిస్తుంది:
"ప్రకాశవంతమైన స్పార్క్గా ఉండండి, చీకటి అయ్యే వరకు వెలిగించండి!" కొన్నిసార్లు మేము లైట్లు ఆపివేయడం మరియు విద్యుత్తును వృథా చేయడం మర్చిపోతాము మరియు రోజులో వీధి లైట్ ఆన్ చేయడాన్ని మీరు కూడా చూడాలి. డార్క్ డిటెక్టర్లో మేము ఇప్పటికే కొన్ని సర్క్యూట్లను నిర్మించాము, అక్కడ వెలుతురు ప్రకాశవంతంగా ఉంటే లైట్లు స్వయంచాలకంగా ఆపివేయబడతాయి మరియు బయట చీకటిగా ఉంటే ఆన్ చేస్తుంది. ఈ సమయంలో, ఈ సర్క్యూట్లో మేము కాంతి పరిస్థితుల ఆధారంగా లైట్లను ఆన్ మరియు ఆఫ్ చేయడమే కాకుండా వెలుపలి కాంతి పరిస్థితుల ప్రకారం కాంతి యొక్క తీవ్రతను మారుస్తాము. 1 వాట్ పవర్ ఎల్ఈడీ యొక్క ప్రకాశాన్ని స్వయంచాలకంగా తగ్గించడానికి లేదా పెంచడానికి ఇక్కడ మేము ఆర్డునోతో ఎల్డిఆర్ మరియు పిడబ్ల్యుఎం కాన్సెప్ట్ను ఉపయోగించాము.
సాధారణంగా, పిడబ్ల్యుఎం పల్స్ వెడల్పు మాడ్యులేషన్ను సూచిస్తుంది, పిడబ్ల్యుఎం పిన్ ద్వారా అవుట్పుట్ సిగ్నల్ అనలాగ్ సిగ్నల్గా ఉంటుంది మరియు ఆర్డునో నుండి డిజిటల్ సిగ్నల్గా పొందబడుతుంది. ఇది సిగ్నల్ కోసం సీక్వెన్షియల్ అనలాగ్ విలువను ఉత్పత్తి చేయడానికి డిజిటల్ వేవ్ యొక్క విధి చక్రం ఉపయోగిస్తుంది. మరియు, పవర్ సిగ్నల్ యొక్క ప్రకాశాన్ని నియంత్రించడానికి ఆ సిగ్నల్ మరింత ఉపయోగించబడుతుంది.
మెటీరియల్ అవసరం
- ఆర్డునో UNO
- ఎల్డిఆర్
- రెసిస్టర్ (510, 100 కే ఓం)
- కెపాసిటర్ (0.1uF)
- ట్రాన్సిస్టర్ 2 ఎన్ 2222
- 1 వాట్ పవర్ LED
- వైర్లను కనెక్ట్ చేస్తోంది
- బ్రెడ్బోర్డ్
సర్క్యూట్ రేఖాచిత్రం
కోడ్ మరియు వివరణ
ఆటోమేటిక్ ఎల్ఈడి డిమ్మర్ కోసం పూర్తి ఆర్డునో కోడ్ చివరిలో ఇవ్వబడుతుంది.
దిగువ కోడ్లో, మేము పిడబ్ల్యుఎం పిన్ మరియు కోడ్లో ఉపయోగించాల్సిన వేరియబుల్స్ను నిర్వచిస్తున్నాము.
int pwmPin = 2; // వేరియబుల్ pwm int LDR = A0 కు పిన్ 12 ను కేటాయిస్తుంది ; // అనలాగ్ ఇన్పుట్ A0 ను వేరియబుల్ పాట్ కు కేటాయించింది int c1 = 0; // వేరియబుల్ c1 int c2 = 0; // వేరియబుల్ సి 2 ను ప్రకటిస్తుంది
ఇప్పుడు, లూప్లో, మనం మొదట “ అనలాగ్ రీడ్ (ఎల్డిఆర్)” ఆదేశాన్ని ఉపయోగించి విలువను చదువుతున్నాము, ఆపై అనలాగ్ ఇన్పుట్ను “విలువ” అనే వేరియబుల్లో సేవ్ చేయండి. కొన్ని గణిత గణన చేయడం ద్వారా మేము PWM సిగ్నల్ను ఉత్పత్తి చేస్తున్నాము. ఇక్కడ, మేము అనలాగ్ విలువ 500 కన్నా తక్కువ ఉంటే మాత్రమే పిడబ్ల్యుఎం ఉపయోగించి కాంతి యొక్క తీవ్రతను నియంత్రిస్తున్నాము మరియు అది 500 కన్నా ఎక్కువ ఉంటే మేము లైట్లను పూర్తిగా ఆపివేస్తాము.
int విలువ = అనలాగ్ రీడ్ (LDR); సీరియల్.ప్రింట్ల్న్ (విలువ); c1 = విలువ; c2 = 500-c1; // 1000 ans నుండి c2 ను తీసివేస్తే (విలువ <500) { డిజిటల్ రైట్ (pwmPin, HIGH) ఉంటే ఫలితాన్ని c1 లో ఆదా చేస్తుంది ; delayMicroseconds (c2); డిజిటల్ రైట్ (pwmPin, LOW); delayMicroseconds (c1); } if (విలువ> 500) { డిజిటల్ రైట్ (2, తక్కువ); } }
మీరు ఆర్డునోలో పిడబ్ల్యుఎం గురించి ఇక్కడ నుండి మరింత తెలుసుకోవచ్చు.
ఇది కాంతి తీవ్రతను స్వయంచాలకంగా ఎలా నియంత్రిస్తుంది:
సర్క్యూట్ రేఖాచిత్రం ప్రకారం, మేము ఎల్డిఆర్ మరియు 100 కె రెసిస్టర్ ఉపయోగించి వోల్టేజ్ డివైడర్ సర్క్యూట్ చేసాము. వోల్టేజ్ డివైడర్ అవుట్పుట్ అనేది ఆర్డునో యొక్క అనలాగ్ పిన్కు ఫీడ్. అనలాగ్ పిన్ వోల్టేజ్ను గ్రహించి అర్దునోకు కొంత అనలాగ్ విలువను ఇస్తుంది. LDR యొక్క నిరోధకత ప్రకారం అనలాగ్ విలువ మారుతుంది. కాబట్టి, LDR కన్నా చీకటిగా ఉంటే, దాని నిరోధకత పెరుగుతుంది మరియు అందువల్ల వోల్టేజ్ విలువ (అనలాగ్ విలువ) తగ్గుతుంది. అందువల్ల, అనలాగ్ విలువ PWM అవుట్పుట్ లేదా విధి చక్రంలో మారుతూ ఉంటుంది, మరియు విధి చక్రం LED యొక్క కాంతి యొక్క తీవ్రతకు మరింత అనులోమానుపాతంలో ఉంటుంది. కాబట్టి LDR పై కాంతి స్వయంచాలకంగా పవర్ LED యొక్క తీవ్రతను నియంత్రిస్తుంది. ఇది ఎలా పని చేస్తుందో ఫ్లో రేఖాచిత్రం క్రింద ఉంది, తలక్రిందుల బాణం గుర్తు "పెరుగుతున్నది" అని సూచిస్తుంది మరియు ఇబ్బంది బాణం గుర్తు "తగ్గుతోంది" అని సూచిస్తుంది.
కాంతి తీవ్రత (LDR న) ↓ - ప్రతిఘటన ↑ - అనలాగ్ పిన్ వద్ద వోల్టేజ్ ↓ - డ్యూటీ చక్రం (PWM) ↑ - పవర్ LED యొక్క ప్రకాశం ↑
దాని పూర్తి ప్రకాశవంతమైన వెలుపల ఉంటే (అనలాగ్ విలువ 500 కన్నా ఎక్కువ పెరిగినప్పుడు) LED శక్తి ఆపివేయబడుతుంది.
LDR ను ఉపయోగించి మీరు స్వయంచాలకంగా కాంతి తీవ్రతను నియంత్రించవచ్చు.
మా అన్ని LDR సంబంధిత సర్క్యూట్లను ఇక్కడ తనిఖీ చేయండి.