Kürzlich arbeite ich an der Auto-zu-X-Kommunikation und verwende zwei On-Board-Units (OBU). Es ist möglich, die GPS-Daten auf beiden Modulen mit GPS- und GPS-Clients zu lesen und zu überwachen. Außerdem kann ich die Netzwerkleistung mit iPerf messen. Um dies zu tun, agieren ein Gerät als ein Server und ein anderes als ein Client. Jetzt möchte ich diese zwei Geräte mit zwei verschiedenen Laptops verbinden und die Netzwerkleistung messen sowie die GPS-Daten außerhalb der OBUs lesen. Außerdem muss ich zwischen GPS-Daten und iPerf-Ausgabe synchronisieren, damit ich TPV (Zeit, Position, Geschwindigkeit), Durchsatz, Latenz usw. erkennen kann. Jetzt muss ich GPS- und iPerf-Daten synchronisieren, damit ich sie als Log-Datei speichern kann. file und verarbeiten Sie die Daten später. Kann mir jemand bei der Idee helfen, wie das geht? Ich habe bereits eine Lösung versucht, die ist - Zeitstempel sowohl GPS & Iperf Daten und speichern, um Protokolle. Ich habe eine zweite Lösung, GPS-Daten als iperf Payload zu senden, mit der Option -f. Ich würde gerne die zweite ausprobieren, aber nicht genau, wie das geht. Hilfe von jedem wird wirklich geschätzt.Benötigen Sie eine Lösung, um die von iPerf und GPS empfangenen Daten zu synchronisieren
Antwort
Sie erwähnen nicht, welche Skriptsprachen oder Programmiersprachen Ihnen vertraut sind. Es gibt viele Möglichkeiten, dies zu tun, von einem einfachen Python- oder Bash-Skript bis hin zu komplexeren C++ - Programmen.
Ich wollte nicht eine ganze Demo-Software für Sie nicht genau wissen, was Sie gesucht haben, aber ich konnte Teile davon sample c++ gpsd client nehmen und es so ändern, dass es auch iperf läuft und als csv (die Sie können dann zu einem Logger pipe oder wie Sie es tun möchten).
Sie können die Variable iperfCmd ändern, um den Befehl iperf zu ändern. Beispielsweise können Sie es in "-rey C" ändern, wenn Sie einen bidirektionalen Test ausführen möchten. Sehen Sie sich iperf --help an, was Sie brauchen, aber Sie müssen das Flag "-y C" für die CSV-Ausgabe beibehalten. Wenn Sie gpsd haben (und manchmal auch die notwendigen libgps-dev Bibliotheken), können Sie den Code als solche kompilieren:
g++ -Wall -std=c++14 -pedantic $(pkg-config --cflags --libs libgps) gpsd-iperf-example.cpp -o gpsd-iperf-example
Dann einfach laufen (Drücken Sie STRG-C zum Beenden):
gpsd-iperf-example servername
Unter der Annahme, gpsd ordnungsgemäß funktioniert, und Sie verwenden iperf v2, sollte die Ausgabe wie folgt aussehen:
07-05-2017 19:05:10,45.3XXXXX,-75.8XXXXX,192.168.2.36,40466,192.168.2.28,5001,4,0.0-10.0,286785536,228615722
07-05-2017 19:05:11,45.3XXXXX,-75.8XXXXX,192.168.2.36,40468,192.168.2.28,5001,4,0.0-10.0,328859648,261792317
07-05-2017 19:05:12,45.3XXXXX,-75.8XXXXX,192.168.2.36,40470,192.168.2.28,5001,4,0.0-10.0,293601280,234307789
Welche Sie weiter analysieren kann oder einfach die C++ Programm einzustellen. Nicht sicher, ob dies das war, was Sie gesucht haben, aber auch hier gibt es viele Möglichkeiten. Suchen Sie einfach nach Codeschnipsel und passen Sie sich an Ihre Bedürfnisse an.
- 1. Ungeordnete Liste Hilfe! Benötigen Sie eine Lösung
- 2. react.js und webpack 2, benötigen eine Lösung
- 3. Benötigen Sie eine XSL-Lösung zu implementieren, aber ein Problem
- 4. Benötigen Sie Hilfe, eine rekursive Lösung zu verstehen, um eine Liste umzukehren
- 5. Ändern Sie die empfangenen JSON-Daten von Forecast api service
- 6. Übertragen von empfangenen seriellen Daten
- 7. Android GPS, um die Entfernung zu überspringen?
- 8. Eine Cloud-Lösung zum Synchronisieren der App-Datenbank in Android
- 9. Benötigen Sie eine CSS-Lösung, um mit dem Bildlauf oben links zu bleiben (nicht Position: behoben)
- 10. Synchronisieren Sie Excel- und XML-Daten?
- 11. Benötigen Sie Hilfe, um Daten aus der Protokolldatei zu extrahieren
- 12. benötigen Lösung mit ngfor
- 13. iperf 2.0.5 TCP bidirektionale Testausgang aus, um
- 14. Benötigen Sie eine Audioanalysebibliothek, um Echtzeitrückmeldungen aus Audiodateien zu erstellen?
- 15. Eine Möglichkeit, Daten zu unterscheiden, wenn Sie db synchronisieren?
- 16. Formel benötigen, um die Zelle zu spalten
- 17. Benötigen Sie Ratschläge zum Synchronisieren von Daten zwischen iOS-Geräten in einer App?
- 18. Java: Lesen und Analysieren von GPS-Daten
- 19. Verwendung von Jquery aufgeschoben, um Animation und Ajax zu synchronisieren
- 20. Python UDP-Kommunikation mit Socket, überprüfen Sie die empfangenen Daten
- 21. Wie Daten zu synchronisieren, die von entfernten Teilen von seriellen Ports verbunden
- 22. Sie benötigen eine Datenbank aufzubauen, die hier übergibt Daten
- 23. Möchten Sie die empfangenen Daten über Sockets machen in React
- 24. Benötigen Sie Hilfe, um eine reaktionsfähige Fußzeile zu erstellen?
- 25. Benötigen Sie eine Datenbanktransaktion zum Lesen von Daten?
- 26. Benötigen Sie eine Regex, um nummerierte Zitate zu erfassen
- 27. Forcieren Sie MS Solver, um eine Lösung zu finden
- 28. icCube - Synchronisieren und Aktualisieren, um die Tabellen-Datenquelle [Fixed Periode]
- 29. Benötigen Sie Hilfe im folgenden, um die Ausführungszeit zu reduzieren
- 30. Benötigen Sie eine Site, um sich an /html.finds.html zu richten