Jag tror att det finns människor som är lite obekväma att ständigt närma sig lampan och tända ljuset, varför det finns en önskan att få hela lampan att slås på oberoende. Ja, det finns "smarta" uttag som styrs via Wi-Fi, det finns enklare som du kan ställa in responstiden, men du kan naturligtvis alltid köpa en dimmer och inte riktigt oroa dig. Men allt detta kan göras. gör det själv (med undantag för Wi-Fi-uttag), även om det här alternativet till exempel är för LED-remsor, eftersom det kommer att finnas några nyanser när du hanterar pausen, hos personen till ovannämnda dimmer. I vårt fall kommer ljusstyrkan beroende på omgivande belysning att ändras smidigt.
Nödvändiga detaljer
1., i det här fallet - Nano, du kan göra något mindre, till exempel Micro
2. Ett fotokänsligt element, här är ett motstånd (18 KOhm) och en fotoresistor (jag har en SF-2 6A) anslutna i serie. Allt detta fungerar nästan som ett inställningsmotstånd.
3. MOSFET-transistor, bättre svagare, 55 ampere är för mycket (om strömförbrukningen är liten krävs inte en särskilt kraftfull transistor)
4. Naturligtvis kablar. En tunn tråd behövs för att leda "sensorn" närmare fönstret, den som är tjockare är ansluten till lampans strömförsörjning och till Arduinka (och själva modulen behöver inte hängas på en tjock tråd, den förbrukar lite ändå)
Assembly. Steg 1
Arbetet med denna typ av ljussensor bör kontrolleras på ett bra sätt, för jag försökte göra allt så billigt och lättare som möjligt.
För att göra det behöver du ett motstånd och en fotoresistor. Vi ansluter dem i serie, 5V- och GND-stift kommer att anslutas till början och slutet, den centrala kommer att anslutas till den givna analoga kontakten i firmware, dess nummer kommer att ändras.
Om det råder tvivel om att en sådan sensor inte fungerar särskilt bra kan du kontrollera den med koden nedan och portmonitorn.
Kod för att kontrollera om du är osäker:
#definiera potent_pin 0 // Kontakt i mittfot, 0 ändringar till någon annan analog
int val;
ogiltig installation () {
Serial.begin (9600); // Aktivera utgång till port vid 9600 baud
}
void loop () {
val = analogRead (potent_pin);
val = karta (val, 0, 1023, 0, 100); // 100 kan ersättas med valfritt värde upp till 1023 inklusive
val = begränsning (val, 0, 100); // 100 ändring till det ovan angivna värdet, om det har ändrats
Serial.println (val); // utgång till portmonitor
fördröjning (30); // försening
}
Om utgångsvärdena ändras beroende på belysningen, är allt bra
Assembly. Steg 2
Bra, sensorn fungerar. Nu är det dags att skapa en kod för att generera en PWM-signal för att styra ett fältarbete.
VARNING. PWM på ATmega168 / ATmega328-styrenheter genereras endast vid 3, 5, 6, 9, 10 och 11 digitala stift.
Kod 2:
int pwm;
ogiltig installation () {
}
void loop () {
pwm = analogRead (0);
pwm = karta (pwm, 1023, 0, 0, 255);
pwm = begränsning (pwm, 0, 255);
analogWrite (3, pwm-255); // PWM till den tredje digitala
}
Siffran 255 kan ändras i intervallet från 0 till 1023 inklusive, och detta värde kan ändras direkt "när du är på språng." Som praxis har visat mig är maximalt 255 det bästa alternativet, om mindre - bränner för ljust under dagen, om mer - brinner svagare än vid behov.
Assembly. finale
På 5V- och GND-stiftet lödar vi de extrema kontakterna i vårt motstånd, vid A0 sätter vi den mittersta. Vi löd grinden till fälteffekttransistorn till D3, källan till minuskraften från Arduino och strömförsörjningen, lysdioderna till minus till avloppet och plus för kraften till plus av källan. Schematiskt ser det ut så här:
Det är inte nödvändigt att sätta en fälteffekttransistor på en kylare, såvida det naturligtvis inte används en kraftfull en, men det finns ingen mening i en särskilt kraftfull. Men en lång ledning behövdes för att leda sensorn till en plats där yttre ljus inte faller, till exempel bakom en blomma eller utanför genom ett fönster, etc. Det är tillrådligt att sätta en kondensator på strömförsörjningen och avloppet för fälteffekttransistorn, till exempel började mitt band fungera inte riktigt rätt. Arduino kan strömförsörjas inte från USB eller strömförsörjningen från telefonen utan från bandströmförsörjningen genom att mata en spänning på 7-15 volt till GND och VIN.
Väskan är gjord av kroppen på den dödade strömförsörjningen, där jag placerar strömförsörjningen på bandet och Arduino, med ett lödat kontakt. Han passade nästan i storlek, men han var redan ständigt på band.
Så jag stängde sensorn med min hand:
Men jag håller inte min hand över honom:
Var kan detta komma till nytta?
Denna design kan hjälpa till med allt känsligt arbete där du behöver en stabil bakgrundsbelysning, till exempel om du glömde att slå på ljuset, men tejpen är påslagen. Det är också bekvämt att använda det om du har plantor någonstans för ytterligare plantering på trädgårdsbädden. Var är det att använda, för att naturligtvis bedöma för dig.
P.S. Det är sant att mina händer är krokiga och jag fastade lysdioden felaktigt på kretsen.
#definiera potent_pin 0 // Kontakt i mittfot, 0 ändringar till någon annan analog
int val;
ogiltig installation () {
Serial.begin (9600); // Aktivera utgång till port vid 9600 baud
}
void loop () {
val = analogRead (potent_pin);
val = karta (val, 0, 1023, 0, 100); // 100 kan ersättas med valfritt värde upp till 1023 inklusive
val = begränsning (val, 0, 100); // 100 ändring till det ovan angivna värdet, om det har ändrats
Serial.println (val); // utgång till portmonitor
fördröjning (30); // försening
}
int pwm;
ogiltig installation () {
}
void loop () {
pwm = analogRead (0);
pwm = karta (pwm, 1023, 0, 0, 255);
pwm = begränsning (pwm, 0, 255);
analogWrite (3, pwm-255); // PWM till den tredje digitala
}
På 5V- och GND-stiftet lödar vi de extrema kontakterna i vårt motstånd, vid A0 sätter vi den mittersta. Vi löd grinden till fälteffekttransistorn till D3, källan till minuskraften från Arduino och strömförsörjningen, lysdioderna till minus till avloppet och plus för kraften till plus av källan. Schematiskt ser det ut så här:
Det är inte nödvändigt att sätta en fälteffekttransistor på en kylare, såvida det naturligtvis inte används en kraftfull en, men det finns ingen mening i en särskilt kraftfull. Men en lång ledning behövdes för att leda sensorn till en plats där yttre ljus inte faller, till exempel bakom en blomma eller utanför genom ett fönster, etc. Det är tillrådligt att sätta en kondensator på strömförsörjningen och avloppet för fälteffekttransistorn, till exempel började mitt band fungera inte riktigt rätt. Arduino kan strömförsörjas inte från USB eller strömförsörjningen från telefonen utan från bandströmförsörjningen genom att mata en spänning på 7-15 volt till GND och VIN.
Väskan är gjord av kroppen på den dödade strömförsörjningen, där jag placerar strömförsörjningen på bandet och Arduino, med ett lödat kontakt. Han passade nästan i storlek, men han var redan ständigt på band.
Så jag stängde sensorn med min hand:
Men jag håller inte min hand över honom:
Var kan detta komma till nytta?
Denna design kan hjälpa till med allt känsligt arbete där du behöver en stabil bakgrundsbelysning, till exempel om du glömde att slå på ljuset, men tejpen är påslagen. Det är också bekvämt att använda det om du har plantor någonstans för ytterligare plantering på trädgårdsbädden. Var är det att använda, för att naturligtvis bedöma för dig.
P.S. Det är sant att mina händer är krokiga och jag fastade lysdioden felaktigt på kretsen.