Optiskie sensori. Fotorezistori MK shēmās. Kā izmantot fotorezistorus, fotodiodes un fototranzistorus Ielu apgaismojuma fotorezistors vietnē Arduino

  1. Phototoresist: http://ali.ski/5GDvP7
  2. Diodes un rezistori: http://fas.st/KK7DwjyF
  3. Attīstības padome: http://ali.ski/rq8wz8
  4. Arduino uno: http://ali.ski/gC_mOa

Šajā apmācībā mēs savienosim fotorezistoru ar Arduino. kas kontrolēs iebūvēto LED.

Fotorezistors: fotorezistoru pretestība samazinās, ja tiek pakļauta gaismai, un palielinās tumsā. Fotorezistori ir viegli lietojami, taču diezgan lēni reaģē uz gaismas līmeņa izmaiņām un tiem ir ļoti zema efektivitāte. precizitāte. Parasti fotorezistoru pretestība var svārstīties no 50 omi dienasgaismā līdz vairāk nekā 10 megaomi tumsā.

Mēs savienosim pašu fotorezistoru ar zemi caur 10 kOhm rezistoru un to pašu kāju savienosim ar Arduino analogo tapu A0, otrā fotorezistora kāja tiks savienota ar 5 voltu Arduino. Tas viss ir skaidri parādīts diagrammā raksta sākumā.

Pēc pareizas fotorezistora pievienošanas Arduino, jums ir jākopē tālāk esošais kods, jāielīmē tas Arduino ide programmā un jāielādē viss šis programmas kods Arduino.

Int PhotosensorPin = A0; //Norādiet tapu, kurai pievienots fotorezistors unsigned int sensorValue = 0; //Deklarējiet mainīgo vērtību saglabāšanai. void setup() ( pinMode(13, OUTPUT); Serial.begin(9600); ) void loop() ( sensorValue = analogRead(PhotosensorPin); // Lasīt vērtības no fotorezistora if(sensorValue<700) digitalWrite(13, HIGH); //Включаем else digitalWrite(13, LOW); // Выключаем Serial.print(sensorValue, DEC); //Вывод данных с фоторезистора (0-1024) Serial.println(""); delay(500); }

Pēc programmas koda ielādes Arduino, jums ir jāatver porta monitors.

Tagad, ja uz fotorezistoru nokrīt gaisma un ir izslēgta iebūvētā gaismas diode, aizsedziet fotorezistoru ar roku un redzēsiet, ka kādā brīdī LED iedegsies! Varat arī redzēt izmaiņas vērtībā no fotorezistora porta monitorā.

Fotorezistora darbības demonstrāciju var redzēt zemāk esošajā videoklipā.

Video:

Gaismas sensors ir ierīce, kas ļauj mūsu ierīcei novērtēt gaismas līmeni. Kāpēc vajadzīgs šāds sensors? Piemēram, lai ielu apgaismojuma sistēma ieslēgtu lampas tikai tad, kad pilsētā iestājas nakts. Vēl viens gaismas sensoru pielietojums ir šķēršļu noteikšana robotam, kas pārvietojas labirintā. Vai līnijas noteikšana ar robotizētu izsekotāju (LineFollower). Bet šajos divos gadījumos tiek izmantots īpašs gaismas avots kopā ar gaismas sensoru. Sāksim ar vienkāršu piemēru un arduino Uno mikrokontrollerim pievienosim vienu no visizplatītākajiem sensoriem – fotorezistoru. Kā norāda nosaukums, fotorezistors ir rezistors, kas maina savu pretestību atkarībā no gaismas, kas uz to krīt. Šis radio elements izskatās šādi: Fotorezistori atšķiras ar pretestības diapazonu. Piemēram:

  • VT83N1 - 12-100 kOhm;
  • VT93N2 - 48-500 kOhm.
Tas nozīmē, ka tumsā fotorezistora pretestība ir 12 kOhm, un noteiktā testa apgaismojumā tā ir 100 kOhm. Konkrēti šo gaismas diožu gadījumā testa apgaismojumam bija šādi parametri: apgaismojums -10 luksi un krāsu siltums - 2856K. Papildus fotorezistoram gaismas sensori bieži izmanto fotodiode un fototranzistoru. Abi izskatās kā tipiskas gaismas diodes:

1. Savienojums

Lai savienotu mūsu fotorezistoru ar Arduino Uno, jums tas būs jāatceras. Galu galā fotorezistora ķēdes izejā mēs saņemsim noteiktu spriegumu diapazonā no 0 līdz 5 voltiem, kas mums būs jāpārvērš par ļoti konkrētu skaitli, ar kuru jau darbosies mikrokontrollera programma. Paturot prātā, ka Arduino Uno ir 6 analogās ieejas uz kājām A0-A5, mēs savienojam fotorezistoru saskaņā ar šādu shēmu:

Izkārtojuma izskats


Paskaties, kas notika. Mēs vienkārši izveidojām parastu sprieguma dalītāju, kura augšdelms mainīsies atkarībā no gaismas līmeņa, kas krīt uz fotorezistoru. Spriegumu, kas ņemts no apakšējās puses, pielietojam analogajai ieejai, kas to pārvērš skaitļā no 0 līdz 1024.

2. Programma

Pieslēdzot fotorezistoru saskaņā ar vienkāršu shēmu, mēs sākam rakstīt programmu. Pirmā lieta, ko mēs darīsim, ir izvadīt neapstrādāto signālu no analogās ieejas uz seriālo portu, lai vienkārši saprastu, kā mainās vērtība A0 ieejā. Atbilstošā programma izskatās šādi: const int pinPhoto = A0; int neapstrādāts = 0; void setup() ( Serial.begin(9600); pinMode(pinPhoto, INPUT); ) void loop() ( raw = analogRead(pinPhoto); Serial.println(raw); delay(200); ) Šīs programmas palaišana kopā ar mums hackspace no sensora saņēmām šādas vērtības:
Tagad nosedzisim sensoru ar roku:
Var redzēt, ka vērtība ļoti mainās. No 830 tiešas gaismas gadījumā, līdz 500 ēnojuma gadījumā (šķēršļa parādīšanās gaismas ceļā). Zinot šo uzvedību, mēs varam skaitliski noteikt iedarbināšanas slieksni. Lai tas būtu vienāds ar, teiksim, 600. Ne gluži 500, jo mēs vēlamies pasargāt sevi no nejaušas aktivizēšanās. Pēkšņi pāri sensoram pārlido muša – tas būs nedaudz noēnots un rādīs 530. Visbeidzot pievienosim programmai kādu darbību, kas tiks veikta, ja gaismas līmenis nokritīsies zem noteiktā sliekšņa. Vienkāršākais, ko varam darīt, ir iedegt standarta LED #13 uz Arduino. Rezultāts ir šāda programma: const int pinPhoto = A0; const int led = 13; int neapstrādāts = 0; void setup() ( pinMode(pinPhoto, INPUT); pinMode(led, OUTPUT); ) void loop() ( raw = analogRead(pinPhoto); if(raw< 600) digitalWrite(led, HIGH); else digitalWrite(led, LOW); delay(200); } Накрываем датчик рукой (или выключаем свет в комнате) — светодиод зажигается. Убираем руку — гаснет. Работает, однако. А теперь представьте, что вы зажигаете не светодиод, а подаете сигнал на реле, которое включает лампу в подъезде вашего дома. Получаеся готовый прибор для экономии электроэнергии. Или ставите такой датчик на робота, и он при наступлении ночи ложится спать вместе с вами 🙂 В общем, как говорил профессор Фарнсворт, у датчика света тысяча и одно применение!

Apgaismojuma padeves automatizācija dzīvoklī, mājā vai ielā tiek panākta, izmantojot fotorelejus. Ja tas ir pareizi konfigurēts, tas ieslēgs gaismu, kad kļūst tumšs, un izslēgsies dienasgaismas stundās. Mūsdienu ierīcēs ir iestatījums, kas ļauj iestatīt sprūda atkarībā no apgaismojuma līmeņa. Tie ir neatņemama “gudrās mājas” sistēmas sastāvdaļa, uzņemoties būtisku daļu no īpašnieku pienākumiem. Fotoreleja ķēdē, pirmkārt, ir rezistors, kas gaismas ietekmē maina pretestību. To ir viegli montēt un konfigurēt ar savām rokām.

Darbības princips

Fotoreleja pieslēguma shēmā ietilpst sensors, pastiprinātājs un fotovadītājs PR1 maina pretestību gaismas ietekmē. Tajā pašā laikā mainās caur to plūstošās elektriskās strāvas stiprums. Signālu pastiprina salikts tranzistors VT1, VT2 (Dārlingtonas ķēde), un no tā iet uz izpildmehānismu, kas ir K1.

Tumsā fotosensora pretestība ir vairāki mOhmi. Gaismas ietekmē tas samazinās līdz vairākiem kOhm. Šajā gadījumā atveras tranzistori VT1, VT2, ieslēdzot releju K1, kas kontrolē slodzes ķēdi caur kontaktu K1.1. Diode VD1 neļauj pašindukcijas strāvai iziet, kad relejs ir izslēgts.

Neskatoties uz vienkāršību, fotoreleja ķēde ir ļoti jutīga. Lai iestatītu to vajadzīgajā līmenī, tiek izmantots rezistors R1.

Barošanas spriegums tiek izvēlēts atbilstoši releja parametriem un ir 5-15 V. Tinuma strāva nepārsniedz 50 mA. Ja nepieciešams to palielināt, var izmantot jaudīgākus tranzistorus un relejus. Fotoreleja jutība palielinās, palielinoties barošanas spriegumam.

Fotorezistora vietā varat uzstādīt fotodiodi. Ja nepieciešams sensors ar paaugstinātu jutību, tiek izmantotas shēmas ar fototranzistoriem. Tos ieteicams izmantot, lai taupītu elektroenerģiju, jo parastās ierīces minimālā reakcijas robeža ir 5 luksi, kad apkārtējie objekti joprojām ir atšķirami. 2 luksu slieksnis atbilst dziļai krēslai, pēc kuras 10 minūtes vēlāk iestājas tumsa.

Fotoreleju ieteicams izmantot pat ar manuālu apgaismojuma vadību, jo varat aizmirst izslēgt gaismu, un sensors par to “parūpēsies” pats. To ir viegli uzstādīt, un cena ir diezgan pieņemama.

Fotoelementu raksturojums

Fotoreleja izvēli nosaka šādi faktori:

  • fotoelementu jutība;
  • barošanas spriegums;
  • pārslēgšanas jauda;
  • ārējā vide.

Jutību raksturo kā iegūtās fotostrāvas attiecību pret ārējo gaismas plūsmu, un to mēra μA/lm. Tas ir atkarīgs no frekvences (spektrālā) un gaismas intensitātes (integrālā). Lai kontrolētu apgaismojumu ikdienas dzīvē, ir svarīgs pēdējais raksturlielums atkarībā no kopējās gaismas plūsmas.

Nominālais spriegums ir norādīts uz ierīces korpusa vai pievienotajā dokumentā. Ārvalstīs ražotām ierīcēm var būt dažādi barošanas sprieguma standarti.

Tā kontaktu slodze ir atkarīga no to lampu jaudas, kurām ir pievienots fotorelejs. Apgaismojuma fotoreleja ķēdes var nodrošināt tiešu lampu pārslēgšanu caur sensoru kontaktiem vai starteriem, kad slodze ir liela.

Ārā krēslas slēdzis atrodas zem noslēgta caurspīdīga vāka. Tas nodrošina aizsardzību pret mitrumu un nokrišņiem. Strādājot aukstajos periodos, tiek izmantota apkure.

Rūpnīcā ražoti modeļi

Iepriekš fotoreleja ķēde tika montēta ar rokām. Tagad tas nav nepieciešams, jo ierīces ir kļuvušas lētākas un funkcionalitāte ir paplašinājusies. Tos izmanto ne tikai ārējam vai iekšējam apgaismojumam, bet arī augu laistīšanas, ventilācijas sistēmu u.c. kontrolei.

1. Fotorelejs FR-2

Rūpnīcā ražotos modeļus plaši izmanto automatizācijas ierīcēs, piemēram, lai kontrolētu ielu apgaismojumu. Bieži vien dienas laikā varat redzēt, ka deg gaismas, kuras esat aizmirsis izslēgt. Izmantojot fotosensorus, nav nepieciešama manuāla apgaismojuma vadība.

Ielu apgaismojuma automātiskai vadībai tiek izmantota rūpnieciski ražotā fotoreleja shēma fr-2. Relejs K1 arī ir klāt. Fotorezistors FSK-G1 ar rezistoriem R4 un R5 ir savienots ar tranzistora VT1 pamatni.

Barošana tiek piegādāta no vienfāzes tīkla 220 V. Kad apgaismojums ir zems, FSK-G1 pretestība ir liela un signāls, kas balstīts uz VT1, nav pietiekams, lai to atvērtu. Attiecīgi ir aizvērts arī tranzistors VT2. Relejs K1 ir iedarbināts, un tā darba kontakti ir aizvērti, saglabājot iedegtas lampas.

Kad apgaismojums palielinās līdz darbības slieksnim, fotorezistora pretestība samazinās un atveras, pēc tam relejs K1 izslēdzas, atverot lampu barošanas ķēdi.

2. Fotostafetes veidi

Modeļu izvēle ir pietiekami liela, lai jūs varētu izvēlēties pareizo:

  • ar tālvadības sensoru, kas atrodas ārpus izstrādājuma korpusa, kuram ir pievienoti 2 vadi;
  • Lux 2 - ierīce ar augstu uzticamības un kvalitātes līmeni;
  • fotorelejs ar 12 V barošanas avotu un slodzi ne lielāku;
  • modulis ar taimeri, kas uzstādīts uz DIN sliedes;
  • IEC ierīces no vietējā ražotāja ar augstu kvalitāti un funkcionalitāti;
  • AZ 112 - automātiska mašīna ar augstu jutību;
  • ABB, LPX ir uzticami Eiropas kvalitātes ierīču ražotāji.

Fotoreleja pievienošanas metodes

Pirms sensora iegādes jums jāaprēķina lampu patērētā jauda un jāņem tā ar 20% rezervi. Pie ievērojamas slodzes ielu fotoreleja ķēde paredz papildus uzstādīt elektromagnētisko starteri, kura tinumu jāieslēdz caur fotoreleja kontaktiem un pārslēdz slodzi ar jaudas kontaktiem.

Mājās šo metodi izmanto reti.

Pirms uzstādīšanas tiek pārbaudīts barošanas spriegums ~220 V. Savienojums tiek veikts no automātiskā slēdža. Fotosensors ir uzstādīts tā, lai lukturīša gaisma uz to nekristu.

Ierīce izmanto spailes, lai savienotu vadus, kas atvieglo uzstādīšanu. Ja to trūkst, tiek izmantota sadales kārba.

Pateicoties mikroprocesoru izmantošanai, fotoreleja savienojuma shēma ar citiem elementiem ir ieguvusi jaunas funkcijas. Darbības algoritmam tika pievienots taimeris un kustības sensors.

Tas ir ērti, kad lampas automātiski ieslēdzas, kad cilvēks iet pa nolaišanos vai pa dārza celiņu. Turklāt darbība notiek tikai tumsā. Taimera izmantošanas dēļ fotorelejs nereaģē uz garāmbraucošo automašīnu lukturiem.

Vienkāršākā savienojuma shēma taimeram ar kustības sensoru ir sērijveida. Dārgiem modeļiem ir izstrādātas īpašas programmējamas shēmas, kas ņem vērā dažādus darbības apstākļus.

Fotorelejs ielu apgaismojumam

Lai pievienotu fotoreleju, ķēde tiek pielietota tā korpusam. To var atrast ierīces dokumentācijā.

No ierīces iziet trīs vadi.

  1. Neitrālais vadītājs - izplatīts lampām un fotorelejiem (sarkans).
  2. Fāze - savienota ar ierīces ieeju (brūns).
  3. Potenciālais vadītājs sprieguma padevei no fotoreleja uz lampām (zils).

Ierīce darbojas pēc fāzes pārtraukuma vai fāzes pārslēgšanas principa. Krāsu marķējumi var atšķirties atkarībā no ražotāja. Ja tīklā ir zemējuma vadītājs, tas nav savienots ar ierīci.

Modeļos ar iebūvētu sensoru, kas atrodas caurspīdīgā korpusa iekšpusē, ielu apgaismojums darbojas autonomi. Jums vienkārši jāpiegādā tai strāva.

Iespējas ar tālvadības sensoriem tiek izmantotas gadījumos, kad fotoreleja elektroniskais saturs ir ērti novietots vadības panelī ar citām ierīcēm. Tad nav nepieciešama atsevišķa uzstādīšana, elektroinstalācija un apkope augstumā. Elektronisko bloku novieto iekštelpās, un sensoru izved ārā.

Ielu apgaismojuma fotoreleja īpašības: diagramma

Uzstādot fotoreleju ārpus telpām, jāņem vērā daži faktori.

  1. Barošanas sprieguma un kontaktu un slodzes atbilstības jaudas pieejamība.
  2. Ierīču uzstādīšana uzliesmojošu materiālu tuvumā un agresīvā vidē nav atļauta.
  3. Ierīces pamatne atrodas apakšā.
  4. Sensora priekšā nedrīkst atrasties kustīgi priekšmeti, piemēram, koku zari.

Vadi ir savienoti caur āra sadales kārbu. Tas ir fiksēts blakus foto relejam.

Fotoreleja izvēle

  1. Iespēja pielāgot reakcijas slieksni ļauj pielāgot sensora jutību atkarībā no gada laika vai mākoņainā laikā. Rezultāts ir enerģijas ietaupījums.
  2. Uzstādot fotoreleju ar iebūvētu jutīgu elementu, ir nepieciešamas minimālas darbaspēka izmaksas. Tam nav nepieciešamas īpašas prasmes.
  3. Taimera relejs ir labi programmējams savām vajadzībām un darbībai iestatītajā režīmā. Varat iestatīt ierīci izslēgties naktī. Norāde uz ierīces korpusa un spiedpogu vadība atvieglo iestatījumus.

Secinājums

Fotoreleja izmantošana ļauj automātiski kontrolēt lampas ieslēgšanas periodu. Tagad vairs nav jākļūst par lampu aizdedzinātāju. Fotoreleja ķēde, bez cilvēka iejaukšanās, vakaros ieslēdz apgaismojumu ielās un izslēdz no rīta. Ierīces var kontrolēt apgaismojuma sistēmu, kas palielina tās resursus un atvieglo darbību.

Reālos Arduino projektos diezgan bieži tiek izmantoti gaismas sensori (apgaismojums), kas būvēti uz fotorezistoru bāzes. Tie ir salīdzinoši vienkārši, nav dārgi, un tos ir viegli atrast un iegādāties jebkurā interneta veikalā. Arduino fotorezistors ļauj kontrolēt gaismas līmeni un reaģēt uz tā izmaiņām. Šajā rakstā mēs apskatīsim, kas ir fotorezistors, kā darbojas uz tā balstīts gaismas sensors un kā pareizi savienot sensoru ar Arduino platēm.

Fotorezistors, kā norāda nosaukums, ir tieši saistīts ar rezistoriem, kas bieži sastopami gandrīz jebkurā elektroniskajā shēmā. Parastā rezistora galvenā īpašība ir tā pretestības vērtība. No tā ir atkarīgs spriegums un strāva, izmantojot rezistoru, mēs iestatām citu komponentu nepieciešamos darbības režīmus. Parasti rezistora pretestības vērtība tādos pašos darbības apstākļos praktiski nemainās.

Atšķirībā no parastajiem rezistoriem, fotorezistors var mainīt savu pretestību atkarībā no apkārtējās gaismas līmeņa. Tas nozīmē, ka elektroniskās shēmas parametri pastāvīgi mainīsies, pirmkārt, mūs interesē sprieguma kritums pāri fotorezistoram. Ierakstot šīs sprieguma izmaiņas uz Arduino analogajām tapām, mēs varam mainīt ķēdes loģiku, tādējādi radot ierīces, kas pielāgojas ārējiem apstākļiem.

Fotorezistori diezgan aktīvi tiek izmantoti visdažādākajās sistēmās. Visizplatītākais lietojums ir ielu apgaismojums. Ja pilsētā iestājas nakts vai kļūst mākoņains, gaismas ieslēdzas automātiski. Ekonomisku spuldzīti mājai var izgatavot no fotorezistora, kas ieslēdzas nevis pēc grafika, bet atkarībā no apgaismojuma. Jūs pat varat izveidot drošības sistēmu, kuras pamatā ir gaismas sensors, kas iedarbināsies uzreiz pēc slēgta skapja vai seifa atvēršanas un izgaismošanas. Kā vienmēr, jebkura Arduino sensora pielietojuma jomu ierobežo tikai mūsu iztēle.

Kādus fotorezistorus var iegādāties interneta veikalos

Vispopulārākā un pieejamākā sensoru iespēja tirgū ir Ķīnas uzņēmumu sērijveida modeļi, ražotāja VT produktu kloni. Ne vienmēr ir iespējams noskaidrot, kas un ko tieši ražo šis vai cits piegādātājs, taču, lai sāktu darbu ar fotorezistoriem, visvienkāršākā iespēja ir diezgan piemērota.

Iesācējam Arduino lietotājam var ieteikt iegādāties gatavu foto moduli, kas izskatās šādi:


Šim modulim jau ir visi nepieciešamie elementi, lai viegli savienotu fotorezistoru ar Arduino plati. Daži moduļi ievieš salīdzinājuma ķēdi un nodrošina ciparu izvadi un apgriešanas rezistoru kontrolei.

Krievu radioamatierim var ieteikt vērsties pie Krievijas PA sensora. Pārdošanā ir pieejami FR1-3, FR1-4 utt. - ražoti vēl padomju laikos. Bet, neskatoties uz to, FR1-3 ir precīzāka detaļa. No tā izriet cenas atšķirība.Par FR viņi prasa ne vairāk kā 400 rubļus. FR1-3 maksās vairāk nekā tūkstoti rubļu gabalā.

Fotorezistoru marķēšana

Mūsdienu Krievijā ražoto modeļu marķēšana ir diezgan vienkārša. Pirmie divi burti ir PhotoResistor, cipari aiz domuzīmes norāda izstrādes numuru. FR -765 - fotorezistors, attīstīšana 765. Parasti marķē tieši uz detaļas korpusa

VT sensoram ir pretestības diapazons, kas norādīts marķējuma diagrammā. Piemēram:

  • VT83N1 - 12-100kOhm (12K - apgaismots, 100K - tumsā)
  • VT93N2 - 48-500kOhm (48K – izgaismots, 100K – tumsā).

Dažreiz, lai precizētu informāciju par modeļiem, pārdevējs nodrošina īpašu ražotāja dokumentu. Papildus darbības parametriem tur ir norādīta arī detaļas precizitāte. Visiem modeļiem ir jutīguma diapazons redzamajā spektra daļā. Kolekcionēšana gaismas sensors Jums jāsaprot, ka darbības precizitāte ir relatīvs jēdziens. Pat modeļiem no viena ražotāja, vienas partijas vai viena pirkuma tas var atšķirties par 50% vai vairāk.

Rūpnīcā detaļas ir noregulētas uz viļņu garumiem, sākot no sarkanas līdz zaļai gaismai. Lielākā daļa cilvēku arī “redz” infrasarkano starojumu. Īpaši precīzas detaļas var pat noteikt ultravioleto gaismu.

Sensora priekšrocības un trūkumi

Galvenais fotorezistoru trūkums ir spektra jutība. Atkarībā no krītošās gaismas veida pretestība var atšķirties par vairākām kārtām. Trūkumi ietver arī zemo reakcijas ātrumu uz apgaismojuma izmaiņām. Ja gaisma mirgo, sensoram nav laika reaģēt. Ja izmaiņu biežums ir diezgan augsts, rezistors parasti pārstāj “redzēt”, ka apgaismojums mainās.

Priekšrocības ietver vienkāršību un pieejamību. Tiešas pretestības izmaiņas atkarībā no gaismas, kas uz to krīt, ļauj vienkāršot elektriskā pieslēguma ķēdi. Fotorezistors pats par sevi ir ļoti lēts, tas ir iekļauts daudzos Arduino komplektos un konstruktoros, un tāpēc ir pieejams gandrīz jebkuram iesācējam Arduino ražotājam.

Fotorezistora pievienošana Arduino

Projektos arduino Fotorezistors tiek izmantots kā gaismas sensors. Saņemot no tā informāciju, dēlis var ieslēgt vai izslēgt relejus, iedarbināt dzinējus un nosūtīt ziņojumus. Protams, sensors ir jāpievieno pareizi.

Gaismas sensora savienojuma shēma ar Arduino ir diezgan vienkārša. Ja izmantojam fotorezistoru, tad pieslēguma shēmā sensors ir realizēts kā sprieguma dalītājs. Viena roka mainās atkarībā no apgaismojuma līmeņa, otrā piegādā spriegumu analogajai ieejai. Kontrollera mikroshēmā šis spriegums tiek pārveidots ciparu datos, izmantojot ADC. Jo Kad sensora pretestība samazinās, kad uz to saskaras gaisma, samazināsies arī pāri tam krītošā sprieguma vērtība.

Atkarībā no tā, kurā dalītāja svirā ievietojām fotorezistoru, analogajai ieejai tiks piegādāts palielināts vai samazināts spriegums. Ja viena fotorezistora kāja ir savienota ar zemi, tad maksimālā sprieguma vērtība atbildīs tumsai (fotorezistora pretestība ir maksimāla, pāri tai krītas gandrīz viss spriegums), bet minimālā vērtība atbilst labam apgaismojumam (pretestība ir tuvu nullei, spriegums ir minimāls). Ja fotorezistora sviru pievienosim barošanas avotam, izturēšanās būs pretēja.

Pašas dēļa uzstādīšana nedrīkst radīt nekādas grūtības. Tā kā fotorezistoram nav polaritātes, to var savienot no abām pusēm, to var pielodēt pie plates, savienot ar vadiem, izmantojot shēmas plati, vai izmantot ar parastajiem klipšiem (krokodila klipšiem) savienošanai. Strāvas avots ķēdē ir pats Arduino. Fotorezistors viena kāja ir savienota ar zemi, otra ir savienota ar ADC plati (mūsu piemērā - AO). Mēs pievienojam 10 kOhm rezistoru tai pašai kājai. Protams, fotorezistoru var savienot ne tikai ar analogo tapu A0, bet arī ar jebkuru citu.

Daži vārdi par papildu rezistoru 10 K. Tam mūsu ķēdē ir divas funkcijas: strāvas ierobežošana ķēdē un vajadzīgā sprieguma ģenerēšana ķēdē ar dalītāju. Strāvas ierobežojums ir nepieciešams situācijā, kad pilnībā izgaismots fotorezistors krasi samazina tā pretestību. Un sprieguma ģenerēšana ir paredzēta prognozējamām vērtībām analogajā portā. Faktiski normālai darbībai ar mūsu fotorezistoriem pietiek ar 1K pretestību.

Mainot rezistora vērtību, mēs varam “novirzīt” jutības līmeni uz “tumšo” un “gaismo” pusi. Tātad 10 K nodrošinās ātru gaismas iestāšanās pārslēgšanu. 1K gadījumā gaismas sensors precīzāk noteiks augstus gaismas līmeņus.

Ja izmantosiet gatavu gaismas sensora moduli, savienojums būs vēl vienkāršāks. Mēs savienojam VCC moduļa izeju ar 5V savienotāju uz plates, GND ar zemi. Mēs savienojam atlikušās tapas ar Arduino savienotājiem.

Ja platei ir digitālā izeja, tad mēs to nosūtām uz digitālajām tapām. Ja tas ir analogs, dodieties uz analogo. Pirmajā gadījumā mēs saņemsim sprūda signālu - ir pārsniegts apgaismojuma līmenis (sprūda slieksni var regulēt, izmantojot regulēšanas rezistoru). No analogajām tapām mēs varēsim iegūt sprieguma vērtību, kas ir proporcionāla faktiskajam apgaismojuma līmenim.

Fotorezistora gaismas sensora skice paraugs

Mēs savienojām ķēdi ar fotorezistoru ar Arduino un pārliecinājāmies, ka viss ir izdarīts pareizi. Tagad atliek tikai ieprogrammēt kontrolieri.

Gaismas sensora skices rakstīšana ir pavisam vienkārša. Mums ir jānoņem tikai pašreizējā sprieguma vērtība no analogās tapas, kurai ir pievienots sensors. Tas tiek darīts, izmantojot mums visiem zināmo funkciju analogRead (). Pēc tam mēs varam veikt dažas darbības atkarībā no apgaismojuma līmeņa.

Uzrakstīsim skici gaismas sensoram, kas ieslēdz vai izslēdz LED, kas pievienots saskaņā ar šādu shēmu.

Darbības algoritms ir šāds:

  • Nosakiet signāla līmeni no analogās tapas.
  • Mēs salīdzinām līmeni ar sliekšņa vērtību. Maksimālā vērtība atbildīs tumsai, minimālā vērtība atbilst maksimālajam apgaismojumam. Izvēlēsimies sliekšņa vērtību, kas vienāda ar 300.
  • Ja līmenis ir mazāks par slieksni, ir tumšs, jums jāieslēdz gaismas diode.
  • Pretējā gadījumā izslēdziet LED.
#define PIN_LED 13 #define PIN_PHOTO_SENSOR A0 void setup() ( Serial.begin(9600); pinMode(PIN_LED, OUTPUT); ) void loop() ( int val = analogRead(PIN_PHOTO_SENSOR); Serial.println(val); if ( val< 300) { digitalWrite(PIN_LED, LOW); } else { digitalWrite(PIN_LED, HIGH); } }

Nosedzot fotorezistoru (ar rokām vai gaismu necaurlaidīgu priekšmetu), varam novērot LED iedegšanos un izslēgšanu. Mainot sliekšņa parametru kodā, mēs varam piespiest spuldzi ieslēgt/izslēgt dažādos apgaismojuma līmeņos.

Uzstādot, mēģiniet novietot fotorezistoru un LED pēc iespējas tālāk vienu no otra, lai mazāk gaismas no spilgtās LED nokristu uz gaismas sensoru.

Gaismas sensors un vienmērīga fona apgaismojuma spilgtuma maiņa

Jūs varat modificēt projektu tā, lai gaismas diodes spilgtums mainītos atkarībā no apgaismojuma līmeņa. Algoritmā tiks veiktas šādas izmaiņas:

  • Mēs mainīsim spuldzes spilgtumu, izmantojot PWM, nosūtot vērtības no 0 līdz 255 uz kontaktu ar LED, izmantojot analogWrite().
  • Lai pārveidotu gaismas līmeņa digitālo vērtību no gaismas sensora (no 0 līdz 1023) PWM LED spilgtuma diapazonā (no 0 līdz 255), mēs izmantosim funkciju map().

Skices piemērs:

#define PIN_LED 10 #define PIN_PHOTO_SENSOR A0 void setup() ( Serial.begin(9600); pinMode(PIN_LED, OUTPUT); ) void loop() ( int val = analogRead(PIN_PHOTO_SENSOR); Serial.println(val); int ledPower = map(val, 0, 1023, 0, 255); // Konvertējiet iegūto vērtību PWM signāla līmenī. Jo zemāka ir apgaismojuma vērtība, jo mazāk enerģijas mums jāpiegādā LED, izmantojot PWM. analogWrite(PIN_LED, ledPower) ; // Mainīt spilgtumu)

Citas savienojuma metodes gadījumā, kurā signāls no analogās pieslēgvietas ir proporcionāls apgaismojuma pakāpei, jums būs papildus "jāapgriež" vērtība, atņemot to no maksimālā:

Int val = 1023 – analogRead(PIN_PHOTO_RESISTOR);

Gaismas sensora ķēde, izmantojot fotorezistoru un releju

Skiču piemēri darbam ar relejiem ir sniegti rakstā par releju programmēšanu Arduino. Šajā gadījumā mums nav jāveic sarežģītas kustības: pēc “tumsas” noteikšanas mēs vienkārši ieslēdzam releju un tā tapai piemērojam atbilstošo vērtību.

#define PIN_RELAY 10 #define PIN_PHOTO_SENSOR A0 void setup() ( pinMode(PIN_RELAY, OUTPUT); digitalWrite(PIN_RELAY, HIGH); ) void loop() ( int val = analogRead(PIN_PHOTO_SENSOR); if (val< 300) { // Светло, выключаем реле digitalWrite(PIN_RELAY, HIGH); } else { // Темновато, включаем лампочку digitalWrite(PIN_RELAY, LOW); } }

Secinājums

Projekti, kuros izmanto gaismas sensoru, kura pamatā ir fotorezistors, ir diezgan vienkārši un efektīvi. Jūs varat īstenot daudz interesantu projektu, un aprīkojuma izmaksas nebūs augstas. Fotorezistors ir savienots, izmantojot sprieguma dalītāja ķēdi ar papildu pretestību. Sensors ir savienots ar analogo portu, lai izmērītu dažādus gaismas līmeņus, vai ar digitālo, ja mums rūp tikai tumsa. Skicē mēs vienkārši nolasām datus no analogā (vai digitālā) porta un izlemjam, kā reaģēt uz izmaiņām. Cerēsim, ka tagad jūsu projektos parādīsies tik vienkāršas “acis”.

Nākamajam projektam mēs izmantosim fotorezistoru. Un mēs apsvērsim nakts gaismas ieviešanu guļamistabai, kas automātiski ieslēgsies, kad ir tumšs, un izslēgsies, kad kļūs gaišs.

Fotorezistora pretestība ir atkarīga no gaismas, kas uz to krīt. Izmantojot fotorezistoru kopā ar parasto 4,7 kOhm rezistoru, mēs iegūstam sprieguma dalītāju, kurā spriegums, kas iet caur fotorezistoru, mainās atkarībā no gaismas līmeņa.

Mēs pieliekam spriegumu no dalītāja uz Arduino ADC ieeju. Tur mēs salīdzinām iegūto vērtību ar noteiktu slieksni un ieslēdzam vai izslēdzam lampu.

Dalītāja shēmas shēma ir parādīta zemāk. Palielinoties apgaismojumam, fotorezistora pretestība samazinās un attiecīgi palielinās spriegums pie dalītāja izejas (un ADC ieejas). Kad apgaismojums samazinās, viss notiek otrādi.

Zemāk esošajā fotoattēlā parādīta samontētā shēma uz maizes dēļa. Spriegumi 0V un 5V tiek ņemti no Arduino. Pin A0 tiek izmantots kā ADC ieeja.

Zemāk ir Arduino skice. Šajā apmācībā mēs vienkārši ieslēdzam un izslēdzam LED, kas ir iebūvēts Arduino platē. 13. kājiņai var pieslēgt spilgtāku LED (izmantojot ~220 omu rezistoru). Ja pievienojat jaudīgāku slodzi, piemēram, kvēlspuldzi, tad tas jāpievieno caur releju vai tiristoru.

Programmas kodā ir komentētas sadaļas, tās tiek izmantotas atkļūdošanai. Būs iespējams kontrolēt ADC vērtību (no 0 līdz 1024). Tāpat ir jāmaina koda vērtība 500 (ieslēgšanās un izslēgšanas slieksnis) uz to, kuru atlasāt eksperimentāli, mainot apgaismojumu.

/* ** Nakts gaisma ** ** www.hobbytronics.co.uk */ int sensorPin = A0; // iestatiet ievades posmu ADC unsigned int sensorValue = 0; // fotorezistora digitālā vērtība void setup() ( pinMode(13, OUTPUT); Serial.begin(9600); // sākt sērijas datu izvadi (testēšanai) void loop() ( sensorValue = analogRead(sensorPin); // nolasīt vērtību no fotorezistora if(sensorValue<500) digitalWrite(13, HIGH); // включаем else digitalWrite(13, LOW); // выключаем // Для отладки раскомментируйте нижеследующие строки //Serial.print(sensorValue, DEC); // вывод данных с фоторезистора (0-1024) //Serial.println(""); // возврат каретки //delay(500); }