Pingzeit ins ThingSpeak schreiben

Python auf Einplatinencomputer wie Raspberry Pi, Banana Pi / Python für Micro-Controller
Antworten
Bandicot
User
Beiträge: 6
Registriert: Samstag 18. November 2017, 19:38

Samstag 18. November 2017, 20:09

Hallo

da ich in letzter Zeit immer wieder Netzausfälle habe und wenn die Techniker der Telekom da sind oder aus der ferne messen dieser Fehler nicht auftritt möchte ich regelmäßige Pingzeiten zu Google aufzeichnen um evtl. Auffälligkeiten der ausfälle zu erfahren. Speichern möchte ich diese Zeiten auf dem ThingSpeak Server.

Mein erstes Problem ist nun, wie bekomme ich die Antwort von Ping aufgedröselt, so dass ich nur den reinen Zeitwert habe ?
Und wie schreibe ich das am besten ins ThingSpeak.

Hardware ist ein Raspberry 3

Wenn mir jemand mit Beispielen unter die Arme greifen könnte wäre ich dankbar.
narpfel
User
Beiträge: 183
Registriert: Freitag 20. Oktober 2017, 16:10

Sonntag 19. November 2017, 10:20

Moin,

was hast du denn schon versucht? Hast du dir die Dokumentation vom `subprocess`-Modul und die Methoden von `str`-Objekten und/oder reguläre Ausdrücke angeguckt?

Für die ThingSpeak-Anbindung scheint es eine Bibliothek zu geben.
Bandicot
User
Beiträge: 6
Registriert: Samstag 18. November 2017, 19:38

Sonntag 19. November 2017, 10:34

Hab mir bis jetzt fping installiert. Mit dem Befehl fping -C1 -q google.com erhalte ich eine Ausgabe mit der Adresse:Laufzeit in ms.
Für die Variable zum schreiben ins Thingspeak brauch ich aber nur den Wert der Laufzeit. Die Bibliothek hab ich installiert und ich denke, dass ich es hinbekomme sobald ich den reinen Zeitwert habe. Aber daran scheitert es
Was sind str Objekte ?
__deets__
User
Beiträge: 2673
Registriert: Mittwoch 14. Oktober 2015, 14:29

Sonntag 19. November 2017, 10:42

Die Frage offenbart große Unkenntnis in Python. Das ist nicht verwerflich, aber dadurch empfiehlt sich das durcharbeiten der ersten paar Kapitel des Python Tutorials. Das klärt über grundlegenden Datentypen & Programmstrukturen auf.
Bandicot
User
Beiträge: 6
Registriert: Samstag 18. November 2017, 19:38

Sonntag 19. November 2017, 10:49

Ja, da hast du wohl Recht. Bis jetzt hab ich mich mit abändern von Codes aus dem Netz rumgeschlagen :K
Aber nichts desto Trotz sind eben Foren auch für solche Unwissenden da :o
Vielleicht kann mir ja doch eine der Wissenden nen Tipp geben wie ich den reinen Zahlenwert übergeben kann
__deets__
User
Beiträge: 2673
Registriert: Mittwoch 14. Oktober 2015, 14:29

Sonntag 19. November 2017, 11:16

Hier wird üblicherweise Hilfe zur Selbsthilfe vermittelt. Dazu sollten eigene versuche (ob aus dem Netz gezogen & angepasst oder ganz alleine erstellt ist egal) gezeigt werden, mit konkreten Fragen & Fehlermeldungen.

Programmieraufträge werden eher nicht angenommen. Zumindest nicht für lau.
Bandicot
User
Beiträge: 6
Registriert: Samstag 18. November 2017, 19:38

Sonntag 19. November 2017, 12:26

Eben diese Hilfestellung bräuchte ich.
Mit welchen Befehlen könnte ich denn die Pingausgabe aufdröseln ?
Programmieren möchte ich das schon selbst. Werte ins ThingSpeak zu schreiebn funktioniert schon über die ThingSpeak Bibliothek aber den Wert, der geschrieben werden sol bekomm ich nicht hin.
__deets__
User
Beiträge: 2673
Registriert: Mittwoch 14. Oktober 2015, 14:29

Sonntag 19. November 2017, 12:51

Wurde doch schon gesagt. Modul subprocess.
Bandicot
User
Beiträge: 6
Registriert: Samstag 18. November 2017, 19:38

Sonntag 19. November 2017, 15:09

OK
Danke für die Anregung und auch ein wenig fürs Kopfwaschen.
Sollte eben ein schnelles Projekt werden weil diese permanenten Ausfälle nerven.
Mit subprocess konnte ich das Problem lösen und die Daten purzeln ins ThingSpeak.

https://thingspeak.com/channels/368016/ ... &update=15

Nen kleinen Denkfehler hatte ich dennoch. Wenn das Internet ausfällt kann ich ja auch keine Daten an Thingspeak senden :twisted:

Werde die Daten nun lokal in eine Datei speichern und mit Excel visualisieren.
Was für Möglichkeiten der Visualisierung gibts evtl. noch für den Raspi selbst ?

Also erst mal Danke und schönes Restwochenende
__deets__
User
Beiträge: 2673
Registriert: Mittwoch 14. Oktober 2015, 14:29

Sonntag 19. November 2017, 15:19

Kannst du Thingspeak nicht auf dem pi laufen lassen? Und wenn du mit thingspeak eine gute visualisierung hinbekommst, dann kannst du ja deine Textdatei mit einem zweiten Skript da rein pumpen. Wenn Netz da ist. Ansonsten gibt es viele Möglichkeiten- bokeh, matplotlib, rddtool. Was da jetzt am geeignetsten ist - wühl dich mal durch die Galerien, da siehst was geht, und was vielleicht ein geeigneter Plot ist.
Bandicot
User
Beiträge: 6
Registriert: Samstag 18. November 2017, 19:38

Sonntag 19. November 2017, 15:27

ThinkSpeak auf dem Pi ? Mhh, muss ich mich mal belesen. das mit dem Updaten von ThinkSpeak über eine csv Datei hatte ich mir auch schon überlegt.
Erst mal läufts und ne csv läuft auch schon voll.

Nun ist erst mal WE :mrgreen:
Antworten