summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xusv_driver.py4
-rwxr-xr-xusv_scheduler.py60
2 files changed, 64 insertions, 0 deletions
diff --git a/usv_driver.py b/usv_driver.py
index bdf8656..4ff52ea 100755
--- a/usv_driver.py
+++ b/usv_driver.py
@@ -8,7 +8,11 @@ class Usv(object):
def __init__(self, device, baudrate, json_file):
self._serial_port = serial.Serial(device,
baudrate=baudrate,
+<<<<<<< HEAD
timeout=0.8)
+=======
+ timeout=10)
+>>>>>>> e3494d280fd6e2db591ea40c4365cdf18524fbdc
# force a clean prompt
#self._serial_port.write(b"\r")
diff --git a/usv_scheduler.py b/usv_scheduler.py
index 95accaf..ff99818 100755
--- a/usv_scheduler.py
+++ b/usv_scheduler.py
@@ -1,4 +1,10 @@
#!/usr/bin/env python3
+<<<<<<< HEAD
+=======
+
+from time import sleep
+
+>>>>>>> e3494d280fd6e2db591ea40c4365cdf18524fbdc
from apscheduler.schedulers.background import BlockingScheduler
from usv_driver import Usv
from urllib.request import urlopen
@@ -9,7 +15,12 @@ import argparse
import logging
from time import sleep
+<<<<<<< HEAD
INTERVAL=24 # execution takes about 6s
+=======
+INTERVAL=14 # execution takes about 6s
+
+>>>>>>> e3494d280fd6e2db591ea40c4365cdf18524fbdc
parser = argparse.ArgumentParser()
parser.add_argument('--url', help='URL')
@@ -18,16 +29,40 @@ parser.add_argument('--baud', help='Serial baudrate', default='600')
parser.add_argument('--param', help='Parameter JSON file', default='./usv_param.json')
args = parser.parse_args(sys.argv[1:])
+<<<<<<< HEAD
logging.basicConfig(level=logging.DEBUG,
filename='log/usv_scheduler.log',
format='%(asctime)s %(message)s',
datefmt='%Y-%m-%d %H:%M:%S')
+=======
+#scheduler = BlockingScheduler(timezone="Europe/Berlin")
+
+db_client = InfluxDBClient(host=args.host,
+ port=args.port,
+ database=args.db)
+>>>>>>> e3494d280fd6e2db591ea40c4365cdf18524fbdc
+
+logging.basicConfig(level=logging.ERROR, filename='log/usv_scheduler.log')
usv = Usv(args.serial, int(args.baud), args.param)
+<<<<<<< HEAD
+=======
+usv_lock = False
+
+#@scheduler.scheduled_job('interval', seconds=INTERVAL)
+>>>>>>> e3494d280fd6e2db591ea40c4365cdf18524fbdc
def timed_job():
+ global usv_lock
+
+ if usv_lock:
+ logging.info("JOB CURRENTLY LOCKED")
+ return
+
+ usv_lock = True
parameters = usv.get_parameters()
data = []
for name in parameters:
+<<<<<<< HEAD
line = Line('usv_parameters',
{'name': name, 'id': 'LI????VA' },
@@ -50,3 +85,28 @@ while True:
timed_job()
sleep(INTERVAL)
+=======
+ data.append({
+ 'measurement': 'usv_parameters',
+ 'tags': {
+ 'name': name,
+ 'id': 'LI????VA',
+ },
+ 'fields': {'value': parameters[name]}
+ });
+ print("insert: %s" % ",".join("%s=%s" % \
+ (name,parameters[name]) for name in parameters))
+
+ try:
+ db_client.write_points(data)
+ except Exception as e:
+ logging.error("%s" % e)
+
+ usv_lock = False
+
+while True:
+ timed_job()
+ sleep(24)
+
+#scheduler.start()
+>>>>>>> e3494d280fd6e2db591ea40c4365cdf18524fbdc