blob: 2b0bfb1f1be0966cd301809a217eb7ef02346b16 [file] [log] [blame]
brians343bc112013-02-10 01:53:46 +00001package aos.control_loops;
2
brians343bc112013-02-10 01:53:46 +00003interface ControlLoop {
4 queue goal;
5 queue position;
6 queue output;
Austin Schuh5ae4efd2015-02-15 23:34:22 -08007 queue status;
brians343bc112013-02-10 01:53:46 +00008};
9
10message Goal {
11 double goal;
12};
13
14message Position {
15 double position;
16};
17
18message Output {
Austin Schuhdc1c84a2013-02-23 16:33:10 -080019 double voltage;
brians343bc112013-02-10 01:53:46 +000020};
21
22message Status {
23 bool done;
24};
25
26// Single Input Single Output control loop.
27queue_group SISO {
28 implements ControlLoop;
29
30 queue Goal goal;
31 queue Position position;
32 queue Output output;
33 queue Status status;
34};