- Kinakailangan na Materyal
- Diagram ng Circuit
- Code at Paliwanag
- Paano Kinokontrol nito ang Banayad na Intensity na Awtomatiko:
"Maging isang maliwanag na spark, ilaw hanggang sa madilim!" minsan nakakalimutan nating patayin ang mga ilaw at mag-aaksaya ng kuryente at dapat nakita mo rin ang ilaw ng kalye na nakabukas sa araw. Nakapagtayo na kami ng ilang mga circuit sa Dark detector kung saan awtomatikong papatay ang mga ilaw kung maliwanag ito sa labas at MAG-ON kung madilim sa labas. Ngunit sa oras na ito, sa circuit na ito hindi lamang namin binubuksan ang mga ilaw na Na-on at naka-off batay sa mga kundisyon ng ilaw ngunit naiiba rin ang tindi ng ilaw ayon sa mga kondisyon sa labas ng ilaw. Dito ginamit namin ang konsepto ng LDR at PWM kasama ang Arduino para sa pagbawas o pagtaas ng liwanag ng 1 wat na Power LED na awtomatiko.
Talaga, ang PWM ay tumutukoy sa Pulse Width Modulation, ang output signal sa pamamagitan ng isang PWM pin ay magiging isang analog signal at nakuha bilang isang digital signal mula sa Arduino. Gumagamit ito ng duty cycle ng digital wave upang makabuo ng sunud-sunod na halagang analog para sa signal. At, ang signal na iyon ay karagdagang ginagamit upang makontrol ang ningning ng Power LED.
Kinakailangan na Materyal
- Arduino UNO
- LDR
- Resistor (510, 100k ohm)
- Kapasitor (0.1uF)
- Transistor 2N2222
- 1 watt Power LED
- Mga kumokonekta na mga wire
- Breadboard
Diagram ng Circuit
Code at Paliwanag
Ang kumpletong Arduino code para sa Awtomatikong LED dimmer ay ibinibigay sa dulo.
Sa code sa ibaba, tinutukoy namin ang PWM pin at ang mga variable na gagamitin sa code.
int pwmPin = 2; // nagtatalaga ng pin 12 sa variable pwm int LDR = A0; // nagtatalaga ng analog input A0 sa variable pot int c1 = 0; // idineklara ang variable c1 int c2 = 0; // nagdedeklara ng variable c2
Ngayon, sa loop, binabasa muna namin ang halaga gamit ang command na "analogRead (LDR)" pagkatapos ay i-save ang analog input sa isang variable na pinangalanang "halaga" . Sa pamamagitan ng paggawa ng ilang pagkalkula sa matematika bumubuo kami ng signal ng PWM. Dito, kinokontrol namin ang tindi ng ilaw gamit ang PWM lamang kung ang halaga ng analog ay mas mababa sa 500, at kung ito ay higit sa 500 kumpletong pinapatay namin ang mga ilaw.
int halaga = analogRead (LDR); Serial.println (halaga); c1 = halaga; c2 = 500-c1; // subtract c2 mula sa 1000 ans ay nakakatipid ng resulta sa c1 kung (halaga <500) { digitalWrite (pwmPin, HIGH); delayMicroseconds (c2); digitalWrite (pwmPin, LOW); delayMicroseconds (c1); } kung (halaga> 500) { digitalWrite (2, LOW); } }
Maaari kang matuto nang higit pa tungkol sa PWM sa Arduino mula dito.
Paano Kinokontrol nito ang Banayad na Intensity na Awtomatiko:
Tulad ng bawat diagram ng circuit, gumawa kami ng isang voltage divider circuit gamit ang LDR at 100k resistor. Ang output ng divider ng boltahe ay feed sa analog pin ng Arduino. Nararamdaman ng analog Pin ang boltahe at nagbibigay ng ilang halagang analog sa Arduino. Nagbabago ang halaga ng analog ayon sa paglaban ng LDR. Kaya, kung madilim sa LDR, tumaas ang paglaban nito at sa gayon bumababa ang halaga ng boltahe (halaga ng analog). Samakatuwid, ang halaga ng analog ay nag-iiba ang output ng PWM o ang cycle ng tungkulin, at ang cycle ng tungkulin ay higit na proporsyonal sa kasidhian ng ilaw ng kapangyarihan na LED. Kaya't ang ilaw sa LDR ay awtomatikong makokontrol ang tindi ng Power LED. Nasa ibaba ang daloy ng diagram kung paano ito gagana, ang baligtad na palatandaan ng arrow ay nagpapahiwatig ng "pagtaas" at ang downside arrow sign ay nagpapahiwatig ng "pagbawas".
Lakas ng ilaw (sa LDR) ↓ - Paglaban ↑ - Boltahe sa analog pin ↓ - Duty cycle (PWM) ↑ - Liwanag ng Power LED ↑
Kung ang buong maliwanag sa labas (kapag ang halaga ng analog ay nagdaragdag ng higit sa 500) ang power LED ay papatayin.
Ito ay kung paano mo makokontrol ang tindi ng ilaw na awtomatiko gamit ang LDR.
Dagdag dito suriin ang aming lahat ng mga kaugnay na LDR dito.