Talaan ng mga Nilalaman:
- Mga gamit
- Hakbang 1: I-set up ang Iyong Router (opsyonal, Ngunit Payo)
- Hakbang 2: Code
- Hakbang 3: Hardware (beta)
- Hakbang 4: Outlook / Mga Sanggunian
Video: [15min] Weasley Clock / Who Is Home Indicator - Batay sa TR-064 (beta): 4 Hakbang (na may Mga Larawan)
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:12
UPDATE: Tingnan ang hakbang 3.
Mahabang kwento (TL; DR sa ibaba): Ilang oras ang nakalipas nagsulat ako ng isang maliit na bash-script sa aking computer na mag-scan sa network para sa mga nakarehistrong aparato at ihambing ang kanilang mga hostname laban sa isang listahan na may mga nauugnay na pangalan. Sa tuwing mag-log in o lalabas ang isang aparato sa network makakakuha ako ng isang abiso. Tulad nito Gusto ko ng isang ideya kung sino ang nasa bahay (hindi lamang kung minsan ay masarap malaman kung sino ang nasa bahay upang tanungin sila kung nais nilang sumali sa isang pagkain o tulad, ngunit maaari rin itong makatulong na maiwasan mo ang mga hindi magandang kalagayan). Ang problema, ang pamamaraang ito ay hindi masyadong maaasahan. Sa kasamaang palad ang ilang mga aparato ay hindi tumugon sa mga ping (hal. Mga smartphone) at tila pumunta sa ilang mode na pag-save ng kuryente sa gayon ay hindi maaasahan na matutukoy sa mga utos tulad ng nmap. Sinubukan kong mapagtagumpayan ito sa pamamagitan ng paghingi ng hindi bababa sa 10 mga negatibo bago sa wakas ay inihayag na umalis ang aparato sa network. Ang lahat sa lahat ng ito ay nagtrabaho, ngunit mabagal, hindi maaasahan at hindi masyadong maayos. Gayundin nais kong masuri kung sino ang nasa bahay, nang hindi binubuksan ang aking computer. Kaya't nakahiga ako sa mga ESP8266 na ito - at nais kong laruin sa kanila. Ngunit hindi ko nais na bumuo ng 10.120.124.812th istasyon ng panahon na nakabatay sa ESP o tulad (bakit mo nais na subaybayan ang panahon sa iyong crappy ± 2 ° C thermometer kung maaari mo lamang bisitahin ang ilang website pa rin?). Kaya't ang plano ay ginawa. Sa kasamaang palad lumalabas na ang ESP ay tila hindi nasangkapan upang maayos na ping (na kung saan ay masamang magsimula, tandaan?) Pabayaan mag-isa ang isang buong-blown na pag-scan ng network. Isinasaalang-alang ko ang pagsusulat ng ilang silid-aklatan para doon - ngunit dahil ang aking C ++ ay napakaliit, ito ang aking unang proyekto sa ESP at hindi ako isang henyo sa mga bagay sa network alinman sa aking pag-aalis ng ideyang iyon. Matapos gumawa ng ilang pagsasaliksik, nalaman ko, na ang aking Ang router (tatak Fritz! Box) ay talagang mayroong isang API! YAY !!!! Ang protocol ay tinatawag na TR-064. Ang nasabing isang nakasisiglang pangalan, tama? Paggawa ng ilang pagsasaliksik sa bagay na ito, nakakita ako ng isang (sa halip malaswa) na dokumentasyon sa online. Tumagal ako ng kaunting oras upang maisagawa ito. Maaari akong mag-post ng higit na madaling maturo sa mga susunod na araw (at kung paano makipag-usap sa / pagsubok sa API na ito gamit ang isang addon ng browser). Kapag naintindihan ko ang API, sinimulan kong gamitin ito mula sa aking ESP. Mahabang kwento: Nakuha ko ang isang solusyon ng pato-tape-at-wd40 na tumatakbo at ginagawa ang gusto ko (pag-query sa API para sa mga nakakonektang aparato, ihambing ang mga ito sa isang listahan ng mga MAC-address at paglipat ng mga LED nang naaayon). Ngunit nais ko ng mas matibay at kakayahang umangkop na solusyon at ang API na ito ay may mas maraming inaalok (maaari mong baguhin ang mga setting (i-on / i-off ang wifi, palitan ang password, buksan / isara ang wifi ng bisita, palitan ang lakas ng signal), i-restart ang router, i-query ang bilis ng koneksyon,…) - kaya't nagpasya akong lumikha ng isang unibersal na TR-064 library! TL; DR; Device na nagpapahiwatig sa pamamagitan ng mga LED na kasalukuyang nasa bahay. Gumagana nang mahusay, wala pang mahusay na pabahay (hey - napansin ang beta sa pamagat?). Gumagamit ng SOAP-protocol upang makipag-usap sa router. Isinulat ang Arduino library upang maganap iyon. Kinakailangan na kaalaman • Pangunahing kaalaman sa Arduino / ESP • Kung nagtipon ka ng isang halimbawa ng Blink sa iyong ESP, magiging maayos ka! • Kung hindi, maaari mong sundin ang unang dalawang mga hakbang ng itinuturo na ito • Maaaring maghinang madaling gamitin, kung nais mong iwanan ang yugto ng breadboard • Ang ilang 3D na pagdidisenyo ng isang / o gawaing kahoy ay maaaring maging madaling gamiting para sa isang link sa proyekto sa pabahayGithub [https://github.com/Aypac/Arduino-TR-064-SOAP-Library] para sa mabilis na sanggunian.
Mga gamit
- ESP8266 o ESP32 sa Development-Board o sa iba pang programmer (2 ~ 6 €)
- USB cable na umaangkop sa programmer
- Power adapter (hal. USB o baterya ~ 2 €)
- Ilang mga LED at resistor (~ 1 €)
- (Casing)
=> Sa paligid ng 4-6 € para sa isang minimal na disenyo. Nangangahulugan iyon para sa akin, na maaari kong madaling mag-hang ng ilang sa paligid ng bahay. Kung tamad ka, maaari mo ring gamitin ang isang development-board na may kasamang LED (tingnan ang hakbang 4 para sa karagdagang detalye).
Hakbang 1: I-set up ang Iyong Router (opsyonal, Ngunit Payo)
Ang protokol ay idinisenyo bilang isang pangkalahatang proteksyon para sa mga router, ngunit alam ko lamang na (karamihan) Fritz! Ang mga router ng kahon (napaka-karaniwang hindi bababa sa Europa) ay gumagamit nito. Hindi alam ang tungkol sa iba pang mga tatak. Kaya ipalagay ko, na gumagamit ka ng isang Fritz! Box. Kung magagawa mo ang gawaing ito (o nabigo na gawin ito) sa anumang iba pang mga router, Masaya kong idagdag ito sa itinuro na ito (marahil ay magsimula pa rin ng isang maikling listahan ng pagiging tugma?).
Ang hakbang na ito ay hindi kinakailangan, maaari mo ring gamitin ang iyong admin account, ngunit hindi maipapayo para sa mga halatang kadahilanan (maaaring maharang o makuha mula sa iyong ESP, maaari mong aksidenteng baguhin ang mga bagay na hindi mo nais, …) - kaya't ako payuhan kang gawin ito
Gayunpaman, narito na tayo:
- Mag-log in sa iyong Fritz! Box sa pamamagitan ng pag-type ng fritz.box sa url-bar ng iyong paboritong browser.
- Hanapin ang pahina para sa paglikha ng isang bagong FRITZ! Box user (kailangan mong magkaroon ng advanced na dapat nasa ilalim ng System, kung hindi mo ito mahahanap, subukang i-update ang iyong aparato).
- Lumikha ng isang bagong account tulad ng nakikita mo sa larawan (gamit ang ibang pangalan / password ng gumagamit!).
- Pag-logout
Hakbang 2: Code
-
Maaari kang makakuha ng silid-aklatan mula sa Github.
- Sa mga halimbawang makikita mo ang isang file na tinatawag na home-indicator.ino, na ang code para sa proyektong ito. Ilagay ang mga halimbawa ng folder sa iyong folder ng home arduino IDE na proyekto at ang iba pang folder sa folder ng mga aklatan sa parehong folder ng home project.
- (Re) Simulan mo ang IDE.
- Buksan ang home-indicator.ino sa IDE at ipasok ang iyong mga setting. Dapat itong maging halata kung ano ang pupunta kung saan. Kung mayroon kang anumang mga katanungan, ipaalam sa akin!
- Maaari mo na itong ipunin at ilipat ito sa iyong ESP!
Hakbang 3: Hardware (beta)
Yeah … Ito ang hakbang, kung saan kailangan ko pang magtrabaho pa. Ngunit sa palagay ko mayroong sapat na materyal sa web upang malaman ang isang bagay:) Ang pag-setup tulad ng sa mga larawan ay isang diode lamang na may ~ 100Ohm risistor na naka-wire sa GPIO {5, 4, 0, 2}, na kung saan ay ang D1, Ang D2, D3, D4 (sa pagkakasunud-sunod na iyon) mga pin ng aking board ng MCU ESP8266 at ang maliit na orange cable na kumukuha ng mga cathode sa GND (minarkahang G sa aking board). Kung tamad ka, magagawa mo ang nakikita mo sa pangalawang imahe. Gumamit lamang ng isang development-board na may kasamang LED's (tulad ng "ESP-202", tingnan ang mga larawan - mga 3.50-5.00 € kasama ang pagpapadala). Maaari mo lamang itong mai-hook sa kapangyarihan ng USB o gamitin ang kasama na baterya pack, gumuhit ng isang interface sa isang piraso ng papel at idikit ito sa dingding. Tapos na. Para sa tukoy na board na ito, ang mga port ay:
int userPins [numUser] = {5, 4, 2, 14, 16};
mula sa itaas hanggang sa ibaba.
Hakbang 4: Outlook / Mga Sanggunian
Ito ang plano ko pa rin: 1. Paggawa ng isang magandang pabahay (malinaw naman) 2. Pagdaragdag ng isang magandang GUI para sa pamamahala ng mga gumagamit / LEDs / MAC / kilalang mga aparato 3. Pagpapabuti ng silid-aklatan (tingnan ang Github para doon) 4. Ayusin: minsan ang LEDs matamlay na reaksyon (tumatagal ng kaunti hanggang sa sila ay patayin, pagkatapos ng kaliwa ng isang aparato) nang walang malinaw na dahilan 5. I-hook ang bagay sa pasilyo at marahil ng ilang higit pa sa paligid ng bahay Gusto kong makakuha ng ilang mga input mula sa iyo! At tulad ng dati, napasasaya ko talaga na makita ang iba na nagtatayo ng tae na naisip mo, kaya mangyaring maglaan ng minuto upang magkomento at mag-post ng mga larawan!:):) Ang ilan pang mga sanggunian ay mai-link ko ang ilang mga bagay dito, na maaaring makatulong sa iyo: • Sanggunian sa TR-064 • Ang ilang tao ay nagkakagulo gamit ang shell at TR-064 (mahusay na makuha ang API) • Harry Potter Wikipedia: Pagpasok sa Weasley Clock • Ang ilang mga lalaki ay nagtatayo ng isang maganda, ngunit kumplikadong Weasly Clock * _ * Ito ay batay sa isang app para sa iyong telepono na kukuha ng iyong lokasyon. Kung ikaw ay nasa ilang mga paunang natukoy na lugar, ang naaayon na ilaw sa orasan ay bubuksan. Para sa akin na masyadong kumplikado at kailangan sa maraming lugar kung saan ito maaaring masira / mabigo: • Kailangang panatilihing napapanahon ang mga app • Kailangang gamitin ng bawat isa ang mga app na ito • At maging okay sa epekto sa privacy • Gumagana lamang ang app sa internet koneksyon • Kailangan mong gumamit ng isang intermediate server para sa interface ng komunikasyon (maliban kung nais mong i-set-up ka bilang server at buksan ka ng network ng bahay para sa labas ng trapiko - oo, isa pang hindi ligtas na aparato ng IOT na direktang konektado sa internet!) • Ang intermediate service ay maaaring mag-offline isang araw / baguhin ang API nito, •… Kailangan mo ng mas maraming software. Ang mas maraming software ay nangangahulugang maraming mga lugar upang makagawa ng isang error;) Ngunit, gumawa sila ng isang kamangha-manghang trabaho at kung nais mong gumawa ng isang bagay tulad nito, magtungo sa kanilang site, napakahusay nito!
Inirerekumendang:
Oras ng Lokasyon na 'Weasley' Na May 4 na Kamay: 11 Mga Hakbang (na may Mga Larawan)
Ang Clock ng Lokasyon ng 'Weasley' Na May 4 na Kamay: Kaya, sa isang Raspberry Pi na kanina pa nagsisipa, nais kong makahanap ng isang magandang proyekto na magpapahintulot sa akin na magamit ito nang husto. Natagpuan ko ang mahusay na Maituturo na Bumuo ng Iyong Sariling Weasley na Clock na Lokasyon ni ppeters0502 at naisip
Paano Mag-disassemble ng isang Computer Na May Madaling Hakbang at Mga Larawan: 13 Hakbang (na may Mga Larawan)
Paano Mag-disassemble ng isang Computer Na May Madaling Mga Hakbang at Larawan: Ito ay isang tagubilin tungkol sa kung paano i-disassemble ang isang PC. Karamihan sa mga pangunahing sangkap ay modular at madaling matanggal. Gayunpaman mahalaga na maging maayos ka tungkol dito. Makakatulong ito upang maiwasan ka sa pagkawala ng mga bahagi, at sa paggawa din ng muling pagsasama
Ang Laser Pointer na naka-mount sa spectacle para sa Mga Taong May Mga Kapansanan sa Locomotor: 9 Mga Hakbang (na may Mga Larawan)
Ang Laser Pointer na naka-mount sa spectacle para sa Mga Taong May Kapansanan sa Locomotor: Ang mga taong may malubhang mga kapansanan sa lokomotor tulad ng mga sanhi ng cerebral palsy ay madalas na may mga kumplikadong pangangailangan sa komunikasyon. Maaaring kailanganin silang gumamit ng mga board na may alpabeto o karaniwang ginagamit na mga salitang nakalimbag sa kanila upang makatulong sa komunikasyon. Gayunpaman, marami
Pag-hack sa TV Tuner upang Basahin ang Mga Larawan sa Daigdig Mula sa Mga Satellite: 7 Mga Hakbang (na may Mga Larawan)
Pag-hack sa TV Tuner upang Basahin ang Mga Larawan sa Daigdig Mula sa Mga Satellite: Mayroong maraming mga satellite sa itaas ng aming mga ulo. Alam mo ba, na ang paggamit lamang ng Iyong computer, TV Tuner at simpleng DIY antena Maaari mong matanggap ang mga pagpapadala mula sa kanila? Halimbawa ng mga real time na larawan ng mundo. Ipapakita ko sa iyo kung paano. Kakailanganin mo ang: - 2 w
Bumuo ng isang Tunay na Bell-striking Clock para sa Iyong PC at isang Fire Extinguisher-Striking Clock .: 3 Mga Hakbang (na may Mga Larawan)
Bumuo ng isang Real Bell-striking Clock para sa Iyong PC at isang Fire Extinguisher-Striking Clock .: Isang tanso na kampanilya, isang maliit na relay ng maraming mga bagay at isang tunay na kampana ay maaaring hampasin ang oras sa iyong desktop. Kahit na ang proyektong ito ay tumatakbo sa Windows at Mac Ang OS X din, nag-idecide ako upang mai-install ang Ubuntu Linux sa isang PC na nakita ko sa basurahan at ginagawa iyon: Hindi ko kailanman