Satura rādītājs:

Raspberry Pi Reboot Router: 3 soļi
Raspberry Pi Reboot Router: 3 soļi

Video: Raspberry Pi Reboot Router: 3 soļi

Video: Raspberry Pi Reboot Router: 3 soļi
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Jūlijs
Anonim
Raspberry Pi pārstartēšanas maršrutētājs
Raspberry Pi pārstartēšanas maršrutētājs
Raspberry Pi pārstartēšanas maršrutētājs
Raspberry Pi pārstartēšanas maršrutētājs

Vai esat kādreiz pamanījuši, ka vairs neesat savienots ar internetu?

Vai ir apgrūtinoši piecelties no rīta un “restartēt” maršrutētāju, lai atgūtu internetu?

Nu, tas ir noticis ar mani biežāk, nekā man rūp, lai tas notiktu.

Šī gada sākumā es devos ārpus pilsētas uz 3 nedēļām, un pirmajā dienā maršrutētājs atvienojās no interneta! Tas nozīmēja, ka man nebija nekāda sakara ar manā mājā esošajām lietām, uz kurām es paļaujos, lai periodiski “reģistrētos”, piemēram, Nest termostats, Arlo kameras… Tā kā es nebiju mājās, es nevarēju restartēt maršrutētāju. Es tiešām negribēju apgrūtināt kaimiņu, lai tiktu garām manai drošības sistēmai un tad atrastu savu maršrutētāju un restartētu to. Es arī izdomāju piezvanīt elektroenerģijas uzņēmumam un likt viņiem apmēram uz 5 minūtēm pārtraukt manas mājas elektrību - mans S. O. neapstiprināja..:(Kad es atgriezos, es sāku meklēt labu risinājumu, bet nevarēju atrast neko pietiekami visaptverošu vajadzīgajam. Sākumā es tikko nopirku digitālo strāvas strāvas padevi un iestatīju, lai maršrutētājs tiktu izslēgts 2:00 naktī uz 5 minūtēm. Diemžēl pāris rītos man nebija interneta - to dienu maršrutētāju žurnālu pārskatīšana liecināja, ka internets “atvienojās” ap pulksten 4:00 un mans maršrutētājs nevarēs izveidot savienojumu, ja vien es to neatkārtošu.

Ņemot papildu Raspberry Pi un dažas pitona prasmes, es nolēmu izpētīt, kā tas varētu palīdzēt manai dilemmai, un es nāca klajā ar šo risinājumu.

Es to pārbaudīju un instalēju, un līdz šim viss ir kārtībā!

Būtībā Raspberry Pi pārbauda interneta savienojumu ik pēc 2 minūtēm, izmantojot “ping” 2 dažādām vietnēm. Kamēr vismaz viens no viņiem atbild, mums visiem ir labi. Ja netiek atgriezti “pingi”, Pi izslēdz barošanu iekšējam USB centrmezglam, kas savukārt liek Iot Power Relay izslēgt maršrutētāju. Pēc 2 minūtēm Pi ieslēdz iekšējo USB centrmezglu, liekot Iot Power Relay ieslēgt maršrutētāju. Pēc tam tas gaida 4 minūtes, pirms tiek atsākta 2 minūšu interneta savienojuma pārbaude.

Man arī bija jāapsver, ka varbūt manā apgabalā ir pārtraukums un internets kādu laiku nedarbosies - reti, bet tas notiek (vismaz manā apgabalā …), un es negribēju, lai maršrutētājs atsāktos ik pēc 6 līdz 8 minūtēm, tāpēc es ievietoju karodziņu, kas šajā gadījumā atliktu nākamo restartēšanu par 1 stundu.

Piegādes

Aprīkojuma saraksts:

  1. Iot jaudas relejs Raspberry Pi (attēlā iepriekš)
  2. USB 2.0 A skrūvju spaiļu bloka savienotājs (ja gatavojat izgatavot savu USB -> strāvas padeves kabeli, arī attēlā iepriekš)
  3. Kabelis ar 2 vai vairākiem vadošiem vadiem vai veco / papildu USB kabeli, ko varat izmantot. Es izmantoju veco stereo fonofona spraudņa kabeli un nogriezu kontaktdakšas.
  4. Raspberry Pi Model 3+ (jūs varētu izmantot 4. modeli un kontrolēt atsevišķus portus - es izmantoju 3. modeli)

Es varu nopelnīt nelielu komisiju par savu apstiprinājumu, ieteikumu, atsauksmi un/vai saiti uz visiem iepriekš uzskaitītajiem produktiem.

1. darbība: izveidojiet un pievienojiet aparatūru

Izveidojiet un pievienojiet aparatūru
Izveidojiet un pievienojiet aparatūru

Es izveidoju kabeli, lai savienotu Pi ar strāvas releju.

Es izmantoju USB skrūves spaiļu bloku ar 2 vadiem, kas savienoti ar + un gnd ligzdām. Jums vajadzētu redzēt tos savienotājā. Skatiet attēlu ar sarkanajām (+) un baltajām (-) bultiņām uz spraugām.

Es pievienoju otru galu strāvas relejam. Zaļā daļa strāvas releja sānos vienkārši izvelkas, un tad jūs varat ievietot vadus spraugās un pēc tam cieši pieskrūvēt. Skatiet attēlu ar sarkanajām (+) un baltajām (-) bultiņām pie vadiem.

Piezīme: ja izmantojat esošu USB kabeli, otrā galā parasti ir 4 vadi - sarkanais ir (+5v), bet melnais - (-) zemējums. Barošanas relejam izmantosit tikai šos 2.

Pārbaudei es pievienoju galda lampu vienai no kontaktligzdām, kas atzīmēta kā “normāli izslēgta”. To kontrolē USB barošanas stāvoklis. Es pievienoju Raspberry Pi kontaktligzdai “vienmēr ieslēgts”, pievienoju to un ieslēdzu nākamajam solim.

2. darbība: instalējiet programmatūru

Iestatiet Pi:

Ir dažas vietnes, kas vajadzības gadījumā palīdzēs jums pirmo reizi iestatīt RPi.

Dzīves hakeris

Raspberry Pi Org

Es iestatīju raktuvi bez galvas un izmantoju VNC, lai izveidotu savienojumu ar to. Iepriekš esošās saites parāda, kā to izdarīt.

Programmatūras iestatīšana:

  1. Instalējiet uhubctl (skatiet vietni https://github.com/mvp/uhubctl), kas tiks izmantots, lai izslēgtu un ieslēgtu USB centrmezglu.
  2. Lejupielādējiet un instalējiet programmatūru, ko uzrakstīju no savas GitHub lapas: programmatūra RPi Router Reboot.
  3. Iestatiet un reģistrējiet Internet-monitor.service, ja vēlaties to palaist kā pakalpojumu, kad tiek palaists Raspberry Pi.

3. darbība: testēšanas un darbības informācija

Galveno python programmu rpi-internet-monitor.py var palaist ar 1 vai 2 parametriem atkļūdošanas un testēšanas nolūkos.

Atveriet termināļa sesiju mapē, kurā ievietojat kodu, un izpildiet šādu komandu:

: ~/Dokumenti/RebootRouter $ python3 rpi-internet-monitor.py -debug -test

Piezīme - tas izdrukās atkļūdošanas informāciju un izslēgs un ieslēgs lampu, jo tiks pārbaudīts, vai nav izveidots savienojums ar internetu. Jūs varat vienkārši izmantot -debug un apskatīt ziņojumus. Jūs nevarat vienkārši izmantot -test, tam jābūt otrajam parametram pēc -debug.

Programmas augšdaļā esošos CONSTANTS varat mainīt uz jebkurām vērtībām, kas jums patīk. Pirmā kopa darbojas ar parametru -test, otrais komplekts tiks izmantots visos pārējos gadījumos.

Es iestatīju pakalpojumu, lai to palaistu sāknēšanas laikā, tāpēc tas vienmēr darbojas manā Raspberry Pi.

Atveriet Internet-monitor.service un rediģējiet ExecStart un WorkingDirectory rindas, norādot visus ceļus uz pitona kodu. Saglabājiet failu.

Kopējiet failu mapē systemd/system:

: ~/Dokumenti/RebootRouter $ sudo cp internet-monitor.service /etc/systemd/system/internet-monitor.service

Pārbaudiet, vai pakalpojums sākas bez kļūdām:

: ~/Dokumenti/RebootRouter $ sudo systemctl palaidiet Internet-monitor.service

Iespējot pakalpojuma palaišanu sāknēšanas laikā:

: ~/Dokumenti/RebootRouter $ sudo systemctl iespējo Internet-monitor.service

Ja viss iet labi, tagad varat visu salikt kopā un izslēgt Iot strāvas releju, atvienot lampu, savienot maršrutētāju un atkal ieslēgt strāvas releju. Jūsu maršrutētājam vajadzētu pārstartēties, un tagad tas uzrauga internetu.

Es izdarīju vēl vienu pārbaudi pēc tam, kad viss bija savienots - es atvienoju interneta kabeli pie sienas un gaidīju; Protams, maršrutētājs izslēdzās un pēc tam ieslēdzās. Tas palika ieslēgts, un pēc apmēram 10 minūtēm es atkal pievienoju kabeli pie sienas un man bija internets - līdz šim tas ir bijis kārtībā….:)

Ieteicams: