Sadržaj:

Raspberry Pi ruter za ponovno pokretanje: 3 koraka
Raspberry Pi ruter za ponovno pokretanje: 3 koraka

Video: Raspberry Pi ruter za ponovno pokretanje: 3 koraka

Video: Raspberry Pi ruter za ponovno pokretanje: 3 koraka
Video: Превратите свой Raspberry Pi Pico в ПЛК Mitsubishi FX1N 2024, Novembar
Anonim
Raspberry Pi ruter za ponovno pokretanje
Raspberry Pi ruter za ponovno pokretanje
Raspberry Pi ruter za ponovno pokretanje
Raspberry Pi ruter za ponovno pokretanje

Jeste li ikada primijetili da više niste povezani s internetom?

Je li frustrirajuće ustati ujutro i morati 'ponovno pokrenuti' usmjerivač kako biste vratili internet?

Pa, ovo mi se dešavalo češće nego što brinem da se to dogodi.

Ranije ove godine otišao sam van grada na 3 sedmice i prvog dana moj router se isključio s interneta! To je značilo da nemam veze sa stvarima u svojoj kući na koje se oslanjam da ću ih povremeno „provjeravati“- npr. Nest termostat, Arlo kamere … Budući da nisam bio kod kuće, nisam mogao ponovo pokrenuti ruter. Zaista nisam htio gnjaviti susjedu da prođe moj sigurnosni sistem, a zatim pronađe moj usmjerivač i ponovo ga pokrene. Pomislio sam i da pozovem elektroenergetsku kompaniju i da im isključim struju oko 5 minuta - moj S. O. nisam odobrio..:(Kad sam se vratio, počeo sam tražiti dobro rješenje, ali nisam mogao pronaći ništa dovoljno opsežno za ono što mi je trebalo. U početku sam upravo kupio digitalni vremenski razvodnik i namjestio ga da isključi ruter u 2:00 ujutro na 5 minuta. Nažalost, nekoliko jutara nisam imao internet - pregled dnevnika usmjerivača za te dane pokazao je da se internet 'prekinuo' oko 4:00 ujutro i da se moj usmjerivač neće povezati ako ga ponovo ne pokrenem.

S obzirom na to da je Raspberry Pi bio u dodatnom položaju i da ima malo python vještine, odlučio sam pogledati kako bi to moglo pomoći u mojoj dilemi i došao sam do ovog rješenja.

Testirao sam ga i instalirao i zasad je dobro!

U osnovi, Raspberry Pi provjerava internetsku vezu svake 2 minute putem 'pinga' na 2 različite web stranice. Sve dok barem jedan od njih odgovori, svi smo dobri. Ako nema vraćenih "pingova", Pi isključuje napajanje unutarnjem USB koncentratoru što zauzvrat uzrokuje da Iot Power Relay isključi ruter. Nakon 2 minute, Pi uključuje unutrašnje USB čvorište uzrokujući da Iot Power Relay uključi ruter. Zatim čeka 4 minute prije nego što nastavi s 2 -minutnom provjerom internetske veze.

Također sam morao uzeti u obzir da je možda došlo do prekida u radu u mom području, a internet će neko vrijeme biti u prekidu - rijetko, ali događa se (barem u mom području …) i nisam želio da se usmjerivač ponovo pokreće svakih 6 na 8 minuta pa sam stavio zastavicu koja bi u ovom slučaju odložila sljedeće ponovno pokretanje za 1 sat.

Supplies

Lista opreme:

  1. Iot Power Relej za Raspberry Pi (na slici gore)
  2. USB 2.0 A konektor s vijčanim terminalnim blokom (ako namjeravate sami izraditi USB -> kabel za napajanje, također na slici gore)
  3. Kabel s 2 ili više provodnih žica ili starim / dodatnim USB kabelom koji možete koristiti. Koristio sam stari stereo phono utikač i odrezao utikače.
  4. Raspberry Pi Model 3+ (mogli biste koristiti model 4 i kontrolirati pojedinačne portove - ja koristim model 3)

Mogu zaraditi malu proviziju za odobrenje, preporuku, svjedočenje i/ili povezivanje sa bilo kojim od gore navedenih proizvoda.

Korak 1: Izgradite i povežite hardver

Izgradite i povežite hardver
Izgradite i povežite hardver

Izgradio sam svoj kabel za spajanje Pi na relej napajanja.

Koristio sam USB vijčani priključni blok s 2 žice spojene na + i gnd utore. Trebali biste ih moći vidjeti na konektoru. Pogledajte sliku sa crvenim (+) i bijelim (-) strelicama do utora.

Drugi kraj sam spojio na relej za napajanje. Zeleni dio sa strane releja za napajanje jednostavno se izvlači, a zatim možete umetnuti žice u utore i čvrsto ih zašrafiti. Pogledajte sliku sa crvenim (+) i bijelim (-) strelicama do žica.

Napomena: ako koristite postojeći USB kabel, obično ćete imati 4 žice na drugom kraju - crvena je (+5v), a crna je (-) uzemljenje. Njih 2 ćete koristiti samo za relej napajanja.

Za testiranje, priključio sam stolnu lampu na jednu od utičnica s oznakom 'normalno isključeno'. To se kontrolira USB napajanjem. Uključio sam Raspberry Pi u utičnicu „uvijek uključeno“i uključio ga te uključio za sljedeći korak.

Korak 2: Instalirajte softver

Postavite Pi:

Postoji nekoliko web stranica koje će vas uputiti u postavljanje vašeg RPi po prvi put ako je potrebno.

Life Hacker

Raspberry Pi Org

Ja sam svoj postavio 'bez glave' i za povezivanje koristim VNC. Gore navedene veze pokazuju kako to učiniti.

Postavljanje softvera:

  1. Instalirajte uhubctl (pogledajte https://github.com/mvp/uhubctl) koji će se koristiti za isključivanje i uključivanje USB čvorišta.
  2. Preuzmite i instalirajte softver koji sam napisao sa svoje stranice GitHub: softver za ponovno pokretanje RPi Router.
  3. Postavite i registrirajte internet-monitor.service ako želite pokrenuti ovu uslugu kao servis pri pokretanju Raspberry Pi.

Korak 3: Detalji testiranja i rada

Glavni program python, rpi-internet-monitor.py može se izvoditi s 1 ili 2 parametra za otklanjanje grešaka i testiranje.

Otvorite terminalsku sesiju u mapi u koju ste unijeli kôd i izvršite sljedeću naredbu:

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

Napomena - ovo će odštampati informacije o otklanjanju grešaka i ugasiti i uključiti lampicu jer će se testirati ako nije povezan na internet. Možete samo koristiti -debug i vidjeti poruke. Ne možete koristiti samo -test, to mora biti drugi parametar nakon -debug.

Možete promijeniti KONSTANTE u gornjem dijelu programa u bilo koje vrijednosti koje želite. Prvi skup se izvodi sa skupom parametara -test, drugi skup će se koristiti u svim ostalim slučajevima.

Postavio sam uslugu koja će ovo pokrenuti pri pokretanju, tako da uvijek radi na mom Raspberry Pi.

Otvorite internet-monitor.service i uredite linije ExecStart i WorkingDirectory sa svojim punim putovima do python koda. Sačuvajte datoteku.

Kopirajte datoteku u folder systemd/system:

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

Testirajte da li se usluga pokreće bez grešaka:

: ~/Documents/RebootRouter $ sudo systemctl pokrenite internet-monitor.service

Omogućite uslugu da se pokrene u vrijeme pokretanja:

: ~/Documents/RebootRouter $ sudo systemctl enable internet-monitor.service

Ako je sve u redu, sada možete sve spojiti i isključiti Iot Power Relej, isključiti lampu, spojiti usmjerivač i ponovo uključiti Power Relay. Vaš bi se usmjerivač trebao ponovno pokrenuti i sada nadzire internet.

Napravio sam još jedan test nakon što sam sve spojio - isključio sam internet kabel na zidu i čekao; naravno ruter se isključio pa uključio. Ostao je uključen i nakon otprilike 10 minuta, ponovno sam spojio kabel na zid i imao internet - do sada je dobro radio….:)

Preporučuje se: