From 38aa82a1a03efd53933957fece2e19567afbe6bd Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Sat, 12 May 2012 14:43:44 +0200 Subject: digital/asserv, digital/mimot: add blocking simulation --- digital/asserv/src/asserv/main.c | 15 +++++++++++++++ digital/asserv/tools/asserv/asserv.py | 7 +++++++ 2 files changed, 22 insertions(+) (limited to 'digital/asserv') diff --git a/digital/asserv/src/asserv/main.c b/digital/asserv/src/asserv/main.c index 4170288b..e8355fbd 100644 --- a/digital/asserv/src/asserv/main.c +++ b/digital/asserv/src/asserv/main.c @@ -302,6 +302,21 @@ proto_callback (uint8_t cmd, uint8_t size, uint8_t *args) output_set (output, v8_to_v16 (args[1], args[2])); control_state_set_mode (state, CS_MODE_NONE, 0); break; +#endif + case c ('b', 0): + /* Simulate a blocked state. */ + output_set (&output_left, 0); + output_set (&output_right, 0); + control_state_blocked (&cs_main.state); + break; +#if AC_ASSERV_AUX_NB + case c ('B', 1): + /* Simulate a blocked state on auxiliary motor. + * - b: aux index. */ + if (!auxp) { proto_send0 ('?'); return; } + output_set (output, 0); + control_state_blocked (state); + break; #endif case c ('c', 4): /* Add to position consign. diff --git a/digital/asserv/tools/asserv/asserv.py b/digital/asserv/tools/asserv/asserv.py index fb45c633..387bbbb4 100644 --- a/digital/asserv/tools/asserv/asserv.py +++ b/digital/asserv/tools/asserv/asserv.py @@ -177,6 +177,13 @@ class Proto: del self.stats_line return array + def block (self, w = None): + """Simulate blocking.""" + if w is None: + self.proto.send ('b') + else: + self.proto.send ('B', 'B', self._index[w]) + def consign (self, w, c): """Consign offset.""" if w == 't': -- cgit v1.2.3