Talaan ng mga Nilalaman:

UCL-lloT-Panlabas-ilaw na na-trigger ng Sunrise / sundown .: 6 Mga Hakbang
UCL-lloT-Panlabas-ilaw na na-trigger ng Sunrise / sundown .: 6 Mga Hakbang

Video: UCL-lloT-Panlabas-ilaw na na-trigger ng Sunrise / sundown .: 6 Mga Hakbang

Video: UCL-lloT-Panlabas-ilaw na na-trigger ng Sunrise / sundown .: 6 Mga Hakbang
Video: How Doctor Strange Came Back From The Dead! (Full Story) 2024, Nobyembre
Anonim
UCL-lloT-Panlabas-ilaw na na-trigger ng Pagsikat ng araw / paglubog ng araw
UCL-lloT-Panlabas-ilaw na na-trigger ng Pagsikat ng araw / paglubog ng araw

Kamusta sa lahat! Sa kaunting trabaho, ilang bahagi at code na pinagsama ko sa itinuturo na ito na ipapakita sa iyo mula simula hanggang wakasan nang eksakto kung paano makagawa ng ilaw sa labas. Ang ideya ay nagmula sa aking ama, na sa tag-araw ay dapat na manu-manong lumabas at magbago kapag ang ilaw ay nagsimula. Sa mabilis na pagbabago ng paglubog ng araw at pagsikat ng mga oras sa buong taon, tinanong niya kung makakahanap ako ng isang awtomatikong paraan upang magawa ito. At kaya narito kami. Isang medyo maliit na proyekto.

Hakbang 1: Listahan ng IO at Ano ang Kakailanganin mo

Listahan ng IO at Ano ang Kakailanganin Mo
Listahan ng IO at Ano ang Kakailanganin Mo
Listahan ng IO at Ano ang Kakailanganin Mo
Listahan ng IO at Ano ang Kakailanganin Mo
Listahan ng IO at Ano ang Kakailanganin mo
Listahan ng IO at Ano ang Kakailanganin mo

Arduino MEGA 2560. Ito ang ginamit ko kahit papaano, alam ko na madali kang makakagamit ng iba.

DS3231 at ito ay library. (https://rinkydinkelectronics.com/library.php?id=73… Mahalagang malaman na ang mga pin na itinakda para sa SDA at SCL ay magkakaiba depende sa kung aling Arduino ang iyong ginagamit.

I052116 IR Infrared Motion Detector Sensor Module. Ang partikular na modyul na ito ay maaaring ipagpalit para sa iyong sensor na pinili, matapat na opsyonal ito sa buong bagay.

Hakbang 2: Flowchart

Flowchart
Flowchart

Tulad ng nakikita sa simpleng flowchart, ang karamihan sa mabibigat na nakakataas ay naninirahan sa Node-Red. Sa medyo simpleng mga node, ang ideya ay mula sa Node-Red maabot mo ang isang website na alam kung anong oras ang paglubog at pagsikat ng araw. Kapag mayroon ito, magpapadala ito ng impormasyon sa Arduino na nagsasabi dito. Mula sa Arduino makakakuha kami ng isang senyas na eksaktong nagpapahiwatig kapag ang mga ilaw ay aktwal na nakabukas, upang maaari mong suriin mula sa iyong bahay kapag nasunog ang mga ilaw. Mula din sa Arduino makakakuha kami ng impormasyon na ang proximity sensor ay naaktibo., na may ilaw na nakabukas para sa x dami ng oras.

Hakbang 3: Fritzing

Fritzing
Fritzing

Kung ihahambing sa iba pang mga proyekto ang paglalagay ng kable ay medyo simple dito. Ang kailangan mong magkaroon ng kamalayan ay kakailanganin mo ang isang WIFI module upang manatiling nakikipag-ugnay sa Node-Red server, o makakuha ng isang itapon na computer upang ma-host ang Node-Red server sa na konektado sa Arduino. Hindi ipinakita sa larawan ang koneksyon sa pagitan ng Arduino at Laptop, at humihingi ako ng paumanhin muna para sa hindi magandang larawan ng Fritzing!

Hakbang 4: Pag-coding

Coding
Coding
Coding
Coding

Kung mayroong isang bagay na nahanap ko na kasama ang Firmata (para sa Arduino na komunikasyon sa Node-Red), ang library ng DS3231 at higit pa, maraming mga naka-load na aklatan. Tulad ng na-publish, ang pag-coding ay hindi pa tapos, kaya kasama ang pseudo-code.

Kasama sa silid-aklatan mula sa DS3231 ay mga preset na pin para sa bawat isa sa mga board ng Arduino, at sa kaso ng Mega ito ay pin 20 at 21 dahil sila ang mga SDA at SCL na pin sa mega. Kapag na-hook up, masasabi ang orasan nang eksakto kung anong araw ito, at kung ano ang dapat na subaybayan nito. Ang nahanap kong mas madaling magtrabaho pagdating upang subaybayan ang mga numero, ay ang paggamit ng int sa halip na string. Kaya kung ano ang nagawa ko ay ang pag-convert ko ng mga numero sa isang string sa int, ngunit bilang int ay hindi maaaring gamitin: upang paghiwalayin ang isang orasan, nagpasya akong gumawa ng iba pa. Sa halip na magtrabaho nang maraming oras, gagana kami may minuto. Maraming minuto. Kung ang relo ay 13:21 halimbawa, magkakaroon ako ng unang dalawang digit na pinaghiwalay at nag-time na may animnapung. Nasa 801 minuto kami ngayon, tulad ng 13 beses 60 ay katumbas ng 780 at idinagdag mo ang huling 21 minuto. Kung sinabi ng aming Node-Red na lumulubog ang araw sa 16:58 (sa kaso ng taglamig), nakukuha namin ang mga panlabas na ilaw upang buksan sa pagitan ng 1018 minuto at isang paunang natukoy na oras ng pagsasara, na magiging 1380 (23:00). Kung ang aming timer ay nasa pagitan ng mga iyon, ang mga ilaw ay bubuksan. Ang matematika sa itaas ay pangunahing ang buong programa, nang walang mga hakbang sa pagkuha ng Node-Red upang kumonekta sa Arduino at makipag-usap. Mayroon ding isang sensor na tinitiyak na ang mga ilaw ay nakabukas (Nakaraan sun-down, gayon pa man) ay gagamitin, ngunit kung hindi man iyon ang buong programa sa itaas.

Hakbang 5: Node-Red

Node-Red
Node-Red
Node-Red
Node-Red
Node-Red
Node-Red
Node-Red
Node-Red

Hindi isang partikular na malaking daloy, hindi na kailangan ito sa kasong ito. Ang unang 2 mga hilera ng mga node ay ang malaking bahagi ng programa. Gamit ang isang pagpapaandar na GET, kinukuha namin ang todays na tinataya sa kung paano ang araw ay susikat at papalubog. Mula doon gumagamit kami ng isang tagapili ng CSS upang makuha ang aming tukoy na impormasyon, na karaniwang na-access sa isang website na "Suriin ang Mga Elemento" sa isang firefox tulad ng ipinahiwatig sa mga larawan. Tandaan, na hindi lahat ng mga website ay gumagana sa ganitong paraan at ang isang ginamit ko ay nangyayari na gumagana nang perpekto sa ganitong paraan. Mula doon magsusulat ito ng impormasyon sa pin 13 sapagkat iyon ang itinalaga ko ito, kahit na ang pagsusuri ay hindi pa ididikta kung ang isang pin na nakakakuha sa iba't ibang oras ay magagawa. Tulad ng inilarawan sa bahagi ng pag-coding, ang impormasyon ay magmumula sa Arduino hanggang sa Node-Red, kung saan ipahiwatig nito sa isang naa-access na website kung saan madali itong suriin. Kakailanganin mo ang Firmata para dito kung nais mong gamitin ang mga function ng Arduino nakuha sa pamamagitan ng node-red-node-arduino library sa Node-Red. Bagaman hindi pa ganap na na-set up, at maa-update ito kapag natapos ko ang proyekto, na-attach ko ang code para sa Node-Red Flow sa isang dokumento sa teksto para sa madaling pag-access.

Hakbang 6: Pag-deploy at Paggamit

Pag-deploy at Paggamit
Pag-deploy at Paggamit

At upang tapusin ang aming itinuro, ay ang praktikal na bahagi nito. Sa ilang mga bahay na may ganitong antas ng awtomatikong ilaw, isang buong taon na solusyon ay malugod na tinatanggap ng maraming mga may-ari ng bahay. Upang aktwal na ikonekta ito sa mga lampara gamit ang elektrisidad na hindi isang Arduino, hindi ko inirerekumenda na gawin ito sa iyong sarili maliban kung alam mo mismo kung ano ang iyong ginagawa. Sa paglipas ng proyekto, kukunin ko ang gawaing ito sa tulong ng isang elektrisista upang matiyak lamang. Ang pag-iilaw ng iyong daanan sa pamamagitan ng sensor o mahigpit na pag-iingat ng oras, inirerekumenda kong buuin mo ang nagawa ko na kung ikaw ibig sabihin talagang gamitin ito upang magamit nang lampas sa yugto ng pagsubok na ito ay kasalukuyang nasa. Karamihan sa aking problema sa proyekto ay mahigpit na nasa bahagi ng Node-Red hanggang Arduino, at inaasahan kong napaliwanag ko nang malinaw hangga't maaari kung paano iyon tapos na

Inirerekumendang: