summaryrefslogtreecommitdiff
path: root/digital
diff options
context:
space:
mode:
authorNicolas Schodet2008-04-15 00:15:07 +0200
committerNicolas Schodet2008-04-15 00:15:07 +0200
commita02bb25f1bd0e3bc4bd2150e8c3d2c81d8ccd715 (patch)
treec4d63fbafb0362496bb1678a27a3c2a0afb541d2 /digital
parentd3c8bf5e81f46d66ff0badcbcbf20a3d828a30eb (diff)
* digital/asserv/tools:
- added support for serial port.
Diffstat (limited to 'digital')
-rw-r--r--digital/asserv/tools/asserv.py4
-rw-r--r--digital/asserv/tools/step.py8
2 files changed, 11 insertions, 1 deletions
diff --git a/digital/asserv/tools/asserv.py b/digital/asserv/tools/asserv.py
index 0ccd8dcf..f5547a95 100644
--- a/digital/asserv/tools/asserv.py
+++ b/digital/asserv/tools/asserv.py
@@ -94,3 +94,7 @@ class Asserv:
def wait (self, cond = None):
self.proto.wait (cond)
+
+ def reset (self):
+ self.proto.send ('w')
+ self.proto.send ('z')
diff --git a/digital/asserv/tools/step.py b/digital/asserv/tools/step.py
index 498ce58f..238ba5a0 100644
--- a/digital/asserv/tools/step.py
+++ b/digital/asserv/tools/step.py
@@ -3,15 +3,21 @@ sys.path.append (sys.path[0] + '/../../../host/proto')
from asserv import Asserv
import popen_io
+import serial
import Gnuplot
def step (name, kp, ki, kd, plots):
- io = popen_io.PopenIO (sys.argv[1:])
+ if sys.argv[1] == '!':
+ io = popen_io.PopenIO (sys.argv[2:])
+ else:
+ io = serial.Serial (sys.argv[1])
a = Asserv (io, **{ name + 'kp': kp, name + 'ki': ki, name + 'kd': kd})
a.stats ('PW')
a.consign (name, 0x200)
a.wait (lambda: a.stats_count > 225 * 2)
list = a.get_stats ()
+ a.reset ()
+ a.wait (lambda: True)
g = Gnuplot.Gnuplot (persist = True)
g ('set data style lines')