zijn we online?

Hallo iedereen

de reden waarom ik u vandaag een project wil presenteren met ons ESP32DevC-bord is niet erg prettig. Helaas zijn er aanbieders die beloven om landelijke gebieden te voorzien van snel internet, maar kan niet aan hun belofte. Aangezien we voornamelijk actief zijn in de online business, een verbinding storing betekent een gedwongen pauze voor ons, dit is erg vervelend.

Misschien hebben velen van jullie zich al afgevraagd waarom we moeilijk telefonisch bereikbaar zijn - nou, het antwoord moet nu duidelijk zijn.

Zodat we weten of we online zijn of niet, heb ik snel een ESP32 met RGB geconfigureerd die onze online status heeft weergegeven. Momenteel werkt mijn collega aan een blogpost over netwerkmonitoring met Nagios om downtime in te loggen. We zullen dit project binnenkort presenteren.

We hebben:

Eerst installeren we de Libary van pbecchi pbecchiDie ESP8266-Libary voor de ESP32, u ze vinden Hier.

Daarom nodigen we de ESP32_ping-master.zip Van Github Github en installeer ze zoals gewoonlijk in de Arduino IDE onder Sketch->Connect Library->. Zip-bibliotheek toevoegen... 

De bedrading:

ESP32 LED-module
GPIO26 G
GPIO27 R
Gnd Gnd

 

De code:

 

/*
 Auteur: pbecc
*/
#undef PROVA_ #include <Wifi.H> #include  "ping.h" de installatiefunctie wordt eenmaal uitgevoerd wanneer u op reset drukt of het bord van stroom zet Const Char Ssid[] = "AZ-DELIVERYrep";  uw netwerk SSID (naam) Const Char Wachtwoord[] = "19351384954612657685";       uw netwerkwachtwoord Void Setup() { Seriële.Beginnen(115200); Seriële.Afdrukken("Verbinden t");  pinMode(26, Output);  pinMode(27, Output);  digitalWrite(26, Lage);  digitalWrite(27, Lage); Seriële.println(Ssid); WiFi.mode(WIFI_STA); Wifi.Beginnen(Ssid, Wachtwoord); Terwijl (Wifi.Status() != WL_CONNECTED) { Vertraging(500); Seriële.Afdrukken("."); } Seriële.println("Pingadres: 192.0.43.10"); } Void Lus() { Int Ia[4] = { 192,0,43,10 }; Int  I. = 0; Terwijl (Seriële.Beschikbaar()) { Char C = Seriële.Lezen(); Vertraging(100);    Int  Val = 0; Terwijl (C != '.' &&  C != 10 && C!=255) { Als (C >= '0'&& C<='9') { Val = Val*10+(C-'0'); } C = Seriële.Lezen(); } Ia[I.++] =Val ; } Ipaddress Cor = Ipaddress(Ia[0], Ia[1], Ia[2], Ia[3]); Seriële.Printf("Ping: %d . %d. %d. %d ->", Ia[0], Ia[1], Ia[2], Ia[3]); Als (ping_start(Cor, 4, 0, 0, 2)){ Seriële.println("OK");   digitalWrite(27, Lage);   digitalWrite(26, Hoge); } Anders { Seriële.println("MISLUKT");  digitalWrite(26, Lage);    digitalWrite(27, Hoge); } Vertraging(10000); } Int readnu(Char S) { Char C = Seriële.Lezen(); Seriële.Afdrukken(C); Int Cijfer = 1,Val=0; Terwijl (C != S &&  C != 10&&C>0) { Als(C>'0') Val += Cijfer*(C - '0'); Cijfer *= 10; C=Seriële.Lezen(); Seriële.Afdrukken(Int(C)); } Seriële.println(Cijfer); Terug Cijfer; }

 

Tot de volgende post en wenst een leuke avond,

 

Albert Vu

Team AZ-Levering

 

Esp-32Projekte für anfänger

5 Kommentare

Dietmar K.

Dietmar K.

Hallo,
ich habe versucht Programm zum laufen zu bringen, ich bekomme aber immer Fehlermeldungen
error: stray ‘\240’ in programm
error: stray ‘\302’ in programm
usw
Was könnte dies sein?
Für Tipps wäre ich sehr dankbar.
Viele Grüße
Dietmar

Paddy

Paddy

Moin!

Könnt Ihr dieses Projekt noch weiter ausbauen und einen Anstoß oder gar eine Lösung bieten, wie man die Daten speichern und dann später auswerten kann?

Moritz S

Moritz S

Vielen Dank für die Kommentare :-)
Nagios kennen wir noch aus Zeiten, in denen wir in großen Rechenzentren gearbeitet haben, allein schon aus Nostalgiegründen möchten wir dieses Projekt umsetzten.
Die rot/grüne Led hängt im Unternehmen an einem sehr zentralen Ort und soll lediglich unseren Mitarbeiten signalisieren wann sie sich stressfrei um anderen Aufgaben zuwenden können.

Alex

Alex

Schnelle und einfacher kommt man nicht zu einer vollständigen Netzwerk und Serviceüberwachung – und die Hardware liegt bei Euch im Lager ;-)

https://www.heise.de/ct/ausgabe/2018-19-Raspi-ueberwacht-Server-und-Netzwerkdienste-mit-Check-MK-4147940.html

Ulf Kosack

Ulf Kosack

Wenn Ihr Euch ein Gefallen tun wollt, nehmt nicht mehr Nagios. Der Open-Source-Weg heißt Icinga (https://www.icinga.com/).

Viele Grüße
Ulf

Einen Kommentar hinterlassen

Alle Kommentare werden vor der Veröffentlichung moderiert