Ja kādreiz esat domājis, kā efektīvi izmērīt apgaismojuma līmeni vidē, izmantojot Arduino, jūs esat īstajā vietā. Šajā rakstā mēs soli pa solim paskaidrosim, kā to izdarīt, izmantojot LDR fotorezistoru, ko sauc arī par fotorezistoru. Šie mazie tehnoloģiskie brīnumi ir elektroniski komponenti, kas spēj mainīt savu pretestību atkarībā no saņemtā gaismas daudzuma, kas paver bezgalīgas iespējas elektronikas un automatizācijas projektiem.
Gaismas sensoram ar Arduino ir daudz pielietojumu: no automātiskām apgaismojuma sistēmām līdz robotiem, kas orientējas, pamatojoties uz gaismu. Pats labākais, ka tas ir par pieņemamu cenu un viegli lietojams komponents. Šeit mēs sniegsim jums visu nepieciešamo informāciju, lai jūs varētu izveidot savu gaismas mērīšanas sistēmu ar Arduino un pilnībā izmantot tās potenciālu.
Kas ir LDR un kā tas darbojas?
A LDR (gaismas atkarīgais rezistors) Tā ir pretestība, kuras lielums mainās atkarībā no gaismas daudzuma, kas uz to krīt. Tumšos apstākļos pretestība ir ļoti augsta, sasniedzot vērtības līdz 1 MOhm. Gluži pretēji, kad LDR saņem bagātīgu gaismu, pretestība ievērojami samazinās, sasniedzot vērtības no 50 līdz 100 omiem intensīvā gaismā.
Tās darbība balstās uz pusvadītāju materiālu vadītspējas principu. Saņemot gaismu, fotoni aktivizē materiālā esošos elektronus, atvieglojot strāvas plūsmu un tādējādi samazinot pretestību. Šis sensora veids ir ļoti noderīgs lietojumiem, kur nepieciešams relatīvs gaismas mērījums vidē.
LDR funkcijas
Šis komponents ir ļoti populārs zemo izmaksu un lietošanas vienkāršības dēļ. Tipiskās pretestības vērtības svārstās no 1 MOhm pilnīgā tumsā līdz 50-100 Om spilgtā gaismā. Tomēr ir vērts pieminēt, ka tie nav visprecīzākie sensori, ja vēlaties precīzi izmērīt apgaismojumu (gaisma luksos), jo tos var ietekmēt tādi faktori kā temperatūra.
Pretestības variācijas ir diezgan lēnas, aizņem no 20 līdz 100 milisekundēm atkarībā no modeļa. Tas nozīmē, ka tas nav piemērots strauju gaismas izmaiņu noteikšanai, piemēram, ar maiņstrāvas darbināmām gaismām, bet nodrošina izcilu stabilitāti pastāvīgākos apgaismojuma apstākļos.
Kamēr LDR ir vairāk piemēroti gaismas tendenču mērīšanai ka, lai nodrošinātu precīzus datus, to zemās izmaksas un viegla integrācija ar Arduino dēļiem padara tos par ideālu sensoru DIY projektiem.
Shēma un savienojuma shēma
Lai Arduino varētu izmērīt LDR pretestības izmaiņas, sensors ir jāuzstāda uz tā sauktā sprieguma dalītājs. Šī ir ļoti vienkārša shēma, kas sastāv no LDR un fiksēta rezistora, kas savienots virknē. LDR atrodas starp ieejas spriegumu (piemēram, 5 V uz plates Arduino Uno) un analogās ievades tapu, un fiksētais rezistors ir savienots starp tapu un zemi (GND).
Fiksētās pretestības vērtība parasti ir 10 kOhmi, lai gan tā var atšķirties atkarībā no jutības, kuru vēlaties sasniegt savā mērījumā.
Montāžas un koda piemēri
Lai izveidotu pamatsistēmu ar Arduino un LDR, vispirms ir jāpievieno šādi elementi:
- Viens LDR gals pie 5V barošanas.
- Otrs LDR gals uz analogo ieeju (piemēram, A0) un tajā pašā laikā uz fiksētu rezistoru, kas tiks savienots ar zemi.
Izmantojot šo iestatījumu, varat sākt nolasīt vērtības, ko LDR nodrošina, izmantojot analogo ievadi. Tālāk sniegtais kods ir pamata piemērs šo vērtību lasīšanai:
const int pinLDR = A0;
void setup() {
Serial.begin(9600); // Iniciar monitor serie}
void loop() {
int valorLDR = analogRead(pinLDR); // Leer valor de LDR
Serial.println(valorLDR); // Imprimir valor en monitor
delay(500);
}
Šis kods izdrukās vērtības no 0 (t.i., ja nav gaismas) līdz 1023 (maksimālais saņemtais apgaismojums). Šīs vērtības ir proporcionālas gaismai, ko uztver LDR.
Pretestības uzvedība kā gaismas funkcija
Kā jau minēts, LDR pretestība samazinās, saņemot vairāk gaismas. Lai iegūtu a precīzs gaismas daudzuma mērījums, jums jāzina sava LDR pretestības vērtības dažādos apgaismojuma apstākļos.
Piemēram, GL55 sērijā vērtības svārstās no 5 kΩ līdz 200 kΩ gaismas klātbūtnē un no 500 kΩ līdz 10 MΩ tumšos apstākļos. Šīs vērtības var atšķirties atkarībā no modeļa, tāpēc vienmēr ir ieteicams iepazīties ar sensora ražotāja datu lapu.
Interesanta LDR īpatnība ir tā Tā jutība ir vislielākā spektra zaļās gaismas daļā., aptuveni pie viļņu garuma 540 nm. Tas nozīmē, ka LDR labāk reaģē uz zaļo gaismu nekā citas redzamā spektra daļas.
Praktiski pielietojumi
Iespējamie LDR pielietojumi, kas savienoti ar Arduino, ir gandrīz bezgalīgi. Starp praktiskākajām ir automātiskās apgaismojuma sistēmas, kurās ķēde var aktivizēt vai deaktivizēt gaismas atkarībā no konstatētajiem gaismas līmeņiem. Tie tiek izmantoti arī viegli sekojoši roboti un mājas automatizācijas sistēmas.
Varat, piemēram, izveidot sistēmu, kurā, samazinoties gaismas līmenim, iedegas LED, lai kompensētu gaismas trūkumu. Šeit ir vienkāršs koda piemērs:
int LDRPin = A0; // Pin para la LDR
int LEDPin = 13; // Pin para el LED
int threshold = 500; // Umbral para encender el LED
void setup() {
pinMode(LEDPin, OUTPUT);
pinMode(LDRPin, INPUT);}
void loop() {
int valorLuz = analogRead(LDRPin);
if (valorLuz < threshold) {
digitalWrite(LEDPin, HIGH); // Enciende el LED
} else {
digitalWrite(LEDPin, LOW); // Apaga el LED
}
delay(100);}
Šī mazā programma nolasa LDR vērtību un, ja gaismas līmenis ir zemāks par iestatīto slieksni, tā ieslēdz LED. Pretējā gadījumā tas to izslēdz. Vienkāršs, bet ļoti funkcionāls piemērs apgaismojuma automatizācijas projektos.
Ierobežojumi un piesardzības pasākumi
Lai gan LDR izmantošana daudzos projektos ir ļoti ērta, ir svarīgi ņemt vērā dažus tā ierobežojumus:
- Tie nav ļoti precīzi, ja vēlaties izmērīt precīzu gaismas intensitāti luksos.
- Tās darbība var atšķirties atkarībā no temperatūras.
- Tie vislabāk darbojas, lai noteiktu lielākas gaismas izmaiņas, nevis straujas izmaiņas.