Datenübertragung über Netzwerk vorbereitet
This commit is contained in:
parent
658806446e
commit
7f0a0f280b
8
TODO
8
TODO
|
@ -14,3 +14,11 @@ Aufgaben- und Planungs- und Ideenliste
|
|||
Rechtecke mit SNR (Signal/Noise)
|
||||
|
||||
- Sea wave recorder (siehe Steamrock)
|
||||
|
||||
- Datenübertragung über Ethernet
|
||||
Achtung: Fast Packets
|
||||
- SeaSmart
|
||||
NMEA2000 in NMEA0183 gekapselt
|
||||
- Yacht Devices ASCII Raw Protokoll
|
||||
https://www.yachtd.com/downloads/ydnr02.pdf
|
||||
- Actisense?
|
||||
|
|
|
@ -19,6 +19,11 @@ interface = can0
|
|||
enabled = false
|
||||
port = /dev/ttyV1
|
||||
|
||||
[network]
|
||||
enabled = false
|
||||
address = 127.0.0.1
|
||||
port = 10110
|
||||
|
||||
[bme280]
|
||||
enabled = false
|
||||
port = 1
|
||||
|
|
21
obp60v.py
21
obp60v.py
|
@ -92,6 +92,7 @@ from gi.repository import GLib, Gtk, Gdk, Rsvg
|
|||
import cairo
|
||||
import math
|
||||
import threading
|
||||
import socket
|
||||
import can
|
||||
import serial
|
||||
import smbus2
|
||||
|
@ -256,6 +257,15 @@ def rxd_gps(devname, devspeed):
|
|||
print(msg.fields)
|
||||
ser.close()
|
||||
|
||||
def rxd_network(address, port):
|
||||
# WIP Daten über Netzwerk empfangen
|
||||
# Wir verwenden UDP. Ein verlorenes Paket tut uns nicht weh.
|
||||
sock = socket.socket()
|
||||
sock.connect((address, port))
|
||||
while not shutdown:
|
||||
time.sleep(0.5)
|
||||
sock.close()
|
||||
|
||||
def datareader(cfg, history):
|
||||
"""
|
||||
Daten zu fest definierten Zeitpunkten lesen
|
||||
|
@ -669,6 +679,11 @@ if __name__ == "__main__":
|
|||
if cfg['gps']:
|
||||
cfg['gps_port'] = config.get('gps', 'port')
|
||||
|
||||
cfg['network'] = config.getboolean('network', 'enabled')
|
||||
if cfg['network']:
|
||||
cfg['net_addr'] = config.get('network', 'address')
|
||||
cfg['net_port'] = config.get('network', 'port')
|
||||
|
||||
cfg['bme280'] = config.getboolean('bme280', 'enabled')
|
||||
if cfg['bme280']:
|
||||
cfg['bme280_port'] = config.getint('bme280', 'port')
|
||||
|
@ -696,6 +711,10 @@ if __name__ == "__main__":
|
|||
print("GPS enabled (local)")
|
||||
t_rxd_gps = threading.Thread(target=rxd_gps, args=(cfg['gps_port'],))
|
||||
t_rxd_gps.start()
|
||||
if cfg['network']:
|
||||
print("Networking enabled")
|
||||
t_rxd_net = threading.Thread(target=rxd_network, args=(cfg['net_port'],cfg['net_addr']))
|
||||
t_rxd_net.start()
|
||||
if not cfg['simulation']:
|
||||
if cfg['bme280']:
|
||||
t_data = threading.Thread(target=datareader, args=(cfg, history))
|
||||
|
@ -712,6 +731,8 @@ if __name__ == "__main__":
|
|||
t_rxd_0183.join()
|
||||
if cfg['gps']:
|
||||
t_rxd_gps.join()
|
||||
if cfg['net']:
|
||||
t_rxd_net.join()
|
||||
if not cfg['simulation'] and cfg['bme280']:
|
||||
t_data.join()
|
||||
print("Another fine product of the Sirius Cybernetics Corporation.")
|
||||
|
|
Loading…
Reference in New Issue