Satura rādītājs:

[15 min] Vīzlija pulkstenis / indikators, kas ir mājās - pamatojoties uz TR -064 (beta): 4 soļi (ar attēliem)
[15 min] Vīzlija pulkstenis / indikators, kas ir mājās - pamatojoties uz TR -064 (beta): 4 soļi (ar attēliem)

Video: [15 min] Vīzlija pulkstenis / indikators, kas ir mājās - pamatojoties uz TR -064 (beta): 4 soļi (ar attēliem)

Video: [15 min] Vīzlija pulkstenis / indikators, kas ir mājās - pamatojoties uz TR -064 (beta): 4 soļi (ar attēliem)
Video: 15 MIN OLDSKOOL THE PRODIGY MIX, 1ST 4 E,P's ("91-93") 2024, Novembris
Anonim
Image
Image
[15 min] Vizlija pulkstenis / indikators, kas ir mājās - pamatojoties uz TR -064 (beta)
[15 min] Vizlija pulkstenis / indikators, kas ir mājās - pamatojoties uz TR -064 (beta)

ATJAUNINĀT: skatiet 3. darbību.

Garš stāsts (TL; DR zemāk): Pirms kāda laika es savā datorā uzrakstīju nelielu bash-skriptu, kas tīklā meklēja reģistrētās ierīces un salīdzināja to resursdatoru nosaukumus ar sarakstu ar saistītiem nosaukumiem. Katru reizi, kad ierīce piesakās vai iziet no tīkla, es saņemu paziņojumu. Tādā veidā man būtu ideja par to, kas ir mājās (ir ne tikai jauki zināt, kas ir mājās, lai pajautātu viņiem, vai viņi vēlas pievienoties maltītei vai tamlīdzīgi, bet tas var arī palīdzēt izvairīties no neērtām situācijām). Problēma ir tā, ka šī metode nav ļoti uzticama. Diemžēl dažas ierīces neatbild uz pingiem (piemēram, viedtālruņi) un šķiet, ka tās nonāk kādā enerģijas taupīšanas režīmā, tāpēc tās nevar droši noteikt, izmantojot tādas komandas kā nmap. Es mēģināju to pārvarēt, pieprasot vismaz 10 negatīvus, pirms beidzot paziņoju, ka ierīce pamet tīklu. Kopumā tas strādāja, bet lēnām, neuzticami un ne pārāk jauki. Arī es gribēju, lai varētu pārbaudīt, kas ir mājās, neatverot datoru. Tātad man bija šie ESP8266, kas gulēja apkārt - un gribēju ar viņiem spēlēties. Bet es negribēju izveidot 10.120.124.812. ESP balstītu laika staciju vai tamlīdzīgu (kāpēc jūs vēlaties uzraudzīt laika apstākļus ar savu niecīgo ± 2 ° C termometru, kad vienalga varat vienkārši apmeklēt kādu vietni?). Tātad plāns tika izstrādāts. Diemžēl izrādās, ka ESP, šķiet, nav aprīkots, lai pareizi pingētu (kas sākumā bija slikti, atcerieties?), Nemaz nerunājot par pilnīgu tīkla skenēšanu. Es domāju par to uzrakstīt kādu bibliotēku, bet, tā kā mans C ++ ir ļoti ierobežots, šis ir mans pirmais ESP projekts, un es arī neesmu ģēnijs ar tīkla lietām, tāpēc es šo ideju atmetu. Pēc kāda pētījuma es uzzināju, ka mans maršrutētājam (zīmolam Fritz! Box) faktiski ir API! YAY !!!! Protokolu sauc par TR-064. Šāds iedvesmojošs nosaukums, vai ne? Veicot dažus pētījumus par šo jautājumu, es tiešsaistē atradu (diezgan traku) dokumentāciju. Pagāja zināms laiks, lai to atrisinātu. Nākamajās dienās es varētu publicēt praktiskāku pamācību (un to, kā sazināties ar šo API, izmantojot pārlūkprogrammas papildinājumu). Kad es sapratu API, es sāku to izmantot no sava ESP. Īss stāsts: es saņēmu duck-tape-and-wd40 risinājumu un darīju to, ko vēlējos (vaicājot API pievienotajām ierīcēm, salīdzinot tās ar MAC adrešu sarakstu un attiecīgi pārslēdzot gaismas diodes). Bet es gribēju stabilāku un elastīgs risinājums, un šai API ir vēl daudz ko piedāvāt (varat mainīt iestatījumus (ieslēgt/izslēgt wifi, mainīt paroli, atvērt/aizvērt viesu wifi, mainīt signāla jaudu), restartēt maršrutētāju, noskaidrot savienojuma ātrumu,…) - tāpēc es nolēmu izveidot universālu bibliotēku TR -064! TL; DR; Ierīce, kas caur gaismas diodēm norāda, kurš šobrīd ir mājās. Strādā lieliski, vēl nav lielisku mājokļu (hei - pamanījāt beta versiju nosaukumā?). Saziņai ar maršrutētāju izmanto SOAP protokolu. Uzrakstīja Arduino bibliotēku, lai tas notiktu. Nepieciešamās zināšanas • Arduino/ESP pamatzināšanas • Ja ar savu ESP apkopojāt Blink piemēru, jums viss būs kārtībā! • Ja nē, varat izpildīt šīs instrukcijas pirmos divus soļus. noderēs, ja vēlaties iziet no maizes dēļa posma. • Daži 3D projektēšanas un/vai kokapstrādes darbi var noderēt mājokļaGithub projekta saitei [https://github.com/Aypac/Arduino-TR-064-SOAP-Library] ātrai uzziņai.

Piegādes

  • ESP8266 vai ESP32 attīstības padomē vai ar citu programmētāju (2 ~ 6 €)
  • USB kabelis, kas piemērots programmētājam
  • Strāvas adapteris (piemēram, USB vai akumulators ~ 2 €)
  • Dažas gaismas diodes un rezistori (~ 1 €)
  • (Apvalks)

=> Ap 4-6 € par minimālu dizainu. Man tas nozīmē, ka es varu viegli pakārt dažus pa māju. Ja esat slinks, varat izmantot arī izstrādes paneli ar iekļautām gaismas diodēm (sīkāku informāciju skatiet 4. solī).

1. darbība: iestatiet maršrutētāju (pēc izvēles, bet ieteicams)

Iestatiet maršrutētāju (pēc izvēles, bet ieteicams)
Iestatiet maršrutētāju (pēc izvēles, bet ieteicams)
Iestatiet maršrutētāju (pēc izvēles, bet ieteicams)
Iestatiet maršrutētāju (pēc izvēles, bet ieteicams)

Protokols tika izstrādāts kā vispārējs maršrutētāju protokols, taču es zinu tikai to, ka (lielākā daļa) Fritz! Box maršrutētāju (vismaz Eiropā ļoti bieži) to izmanto. Nezinu par citiem zīmoliem. Tāpēc es pieņemu, ka jūs izmantojat Fritz! Box. Ja jūs varat veikt šo darbu (vai neizdoties) ar jebkuru citu maršrutētāju, es labprāt to pievienotu šai pamācībai (varbūt pat sākt īsu saderības sarakstu?).

Šis solis nav nepieciešams, jūs varat arī vienkārši izmantot savu administratora kontu, taču acīmredzamu iemeslu dēļ tas nav ieteicams (iespējams, pārtverta vai izvilkta no jūsu ESP, jūs varat nejauši mainīt lietas, kuras nevēlaties…) - tāpēc es ieteiktu jums to darīt.

Jebkurā gadījumā, mēs ejam:

  1. Piesakieties savā Fritz! Box, ierakstot fritz.box iecienītākās pārlūkprogrammas URL joslā.
  2. Atrodiet lapu jauna FRITZ! Box lietotāja izveidei (jums jābūt progresīvam, tam jābūt sadaļā Sistēma, ja nevarat to atrast, mēģiniet atjaunināt savu ierīci).
  3. Izveidojiet jaunu kontu, kā redzams attēlā (izmantojot citu lietotājvārdu/paroli!).
  4. Izlogoties.

2. darbība: kods

Image
Image
Aparatūra (beta)
Aparatūra (beta)
  1. Jūs varat iegūt bibliotēku no Github.

  2. Piemēros jūs atradīsit failu ar nosaukumu home-indic.ino, kas ir šī projekta kods. Ievietojiet piemēru mapi arduino IDE projekta mājas mapē un otru mapi bibliotēkas mapē tajā pašā projekta mājas mapē.
  3. (Atkārtoti) sāciet IDE.
  4. IDE atveriet mājas indikatoru.ino un ievadiet iestatījumus. Vajadzētu būt pilnīgi skaidram, kas kur iet. Ja jums ir kādi jautājumi, dariet man zināmu!
  5. Tagad jūs varat to apkopot un pārsūtīt uz savu ESP!

3. darbība. Aparatūra (beta)

Aparatūra (beta)
Aparatūra (beta)
Aparatūra (beta)
Aparatūra (beta)
Aparatūra (beta)
Aparatūra (beta)

Jā… Šis ir solis, kurā man vēl ir jāstrādā. Bet es domāju, ka tīmeklī ir pietiekami daudz materiāla, lai kaut ko izdomātu:) Iestatījumi, kā parādīts attēlos, ir tikai diode ar ~ 100 omu rezistoru, kas savienots ar GPIO {5, 4, 0, 2}, kas ir D1, D2, D3, D4 (šādā secībā) manas MCU ESP8266 plāksnes tapas un mazais oranžais kabelis, kas ved katodus uz GND (uz mana dēļa atzīmēts G). Ja esat slinks, varat darīt to, ko redzat otrajā attēlā. Vienkārši izmantojiet izstrādes paneli ar iekļautām gaismas diodēm (piemēram, "ESP-202", skatiet attēlus-aptuveni 3,50-5,00 €, ieskaitot piegādi). Pēc tam varat to vienkārši pieslēgt USB barošanai vai izmantot komplektā iekļauto akumulatoru, uzzīmēt saskarni uz papīra lapas un pielīmēt pie sienas. Gatavs. Šai īpašajai padomei ir šādas ostas:

int userPins [numUser] = {5, 4, 2, 14, 16};

no augšas uz leju.

4. darbība. Outlook/atsauces

To es joprojām plānoju: 1. Izveidot jauku mājokli (acīmredzot) 2. Jauka GUI pievienošana lietotāju/LED/MAC/zināmu ierīču pārvaldībai 3. Bibliotēkas uzlabošana (skat. Github) 4. Labojums: dažreiz gaismas diodes bez redzama iemesla reaģēt lēni (paiet nedaudz laika, līdz tie izslēdzas, pēc tam, kad ierīce ir atstāta). Un, kā vienmēr, man ir patiess prieks redzēt, ka citi veido sūdus, kurus esat izdomājis, tāpēc, lūdzu, veltiet laiku, lai komentētu un ievietotu attēlus!:):) Vēl dažas atsaucesIesaistīšu šeit dažus materiālus, kas varētu jums palīdzēt: • TR-064 atsauce • Kāds puisis, kas sajaucas ar apvalku un TR-064 (labi, lai saprastu API) • Harija Potera Vikipēdija: Vīzlija pulksteņa ieraksts • Daži puiši veido skaistu, bet sarežģītu Weasly pulksteni*_*Tas ir balstīts uz jūsu tālruņa lietotni, kas nosaka jūsu atrašanās vietu. Ja atrodaties noteiktos iepriekš noteiktos apgabalos, iedegsies atbilstošā lampiņa. Man tas bija pārāk sarežģīti un bija daudzās vietās, kur tā varēja salūzt/neizdoties. savienojums • Sakaru savienošanai jāizmanto starpposma serveris (ja vien nevēlaties iestatīt jūs kā serveri un atvērt mājas tīklu ārējai satiksmei - jā, vēl viena nedroša IOT ierīce, kas ir tieši savienota ar internetu!) starppakalpojums kādu dienu var kļūt bezsaistē/mainīt API, •… Jums nepieciešama papildu programmatūra. Vairāk programmatūras nozīmē vairāk vietu, kur kļūdīties;) Bet viņi paveica pārsteidzošu darbu, un, ja vēlaties kaut ko darīt, dodieties uz viņu vietni, tas ir patiešām lieliski!

Ieteicams: