summaryrefslogtreecommitdiff
path: root/usv_scheduler.py
diff options
context:
space:
mode:
Diffstat (limited to 'usv_scheduler.py')
-rwxr-xr-xusv_scheduler.py50
1 files changed, 46 insertions, 4 deletions
diff --git a/usv_scheduler.py b/usv_scheduler.py
index 09bcf2b..ff99818 100755
--- a/usv_scheduler.py
+++ b/usv_scheduler.py
@@ -1,39 +1,56 @@
#!/usr/bin/env python3
+<<<<<<< HEAD
+=======
from time import sleep
+>>>>>>> e3494d280fd6e2db591ea40c4365cdf18524fbdc
from apscheduler.schedulers.background import BlockingScheduler
from usv_driver import Usv
-from influxdb import InfluxDBClient
+from urllib.request import urlopen
+from pyinflux.client import Line
import sys
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('--host', help='Database host', default='localhost')
-parser.add_argument('--port', help='Database port', default='8086')
-parser.add_argument('--db', help='Database name', default='test')
+parser.add_argument('--url', help='URL')
parser.add_argument('--serial', help='Serial port', default='/dev/ttyU0')
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
@@ -45,6 +62,30 @@ def timed_job():
parameters = usv.get_parameters()
data = []
for name in parameters:
+<<<<<<< HEAD
+
+ line = Line('usv_parameters',
+ {'name': name, 'id': 'LI????VA' },
+ {'value': parameters[name]})
+ data.append(line)
+ logging.info("insert: {}".format(",".join(
+ "{}={}".format(name,parameters[name]) for name in parameters)))
+
+ try:
+ post_data = '\n'.join(map(str, data))
+ logging.info("urlopen begin: {}".format(post_data))
+ with urlopen(args.url, post_data.encode('utf-8')) as fh:
+ logging.info(fh.read().decode('utf-8'))
+ logging.info("urlopen done")
+
+ except Exception as e:
+ logging.error("Errr while trying to insert", e)
+
+while True:
+ timed_job()
+ sleep(INTERVAL)
+
+=======
data.append({
'measurement': 'usv_parameters',
'tags': {
@@ -68,3 +109,4 @@ while True:
sleep(24)
#scheduler.start()
+>>>>>>> e3494d280fd6e2db591ea40c4365cdf18524fbdc