blob: 823005ec10c48536673f6a548ae1a4aacbbcb8d4 [file] [log] [blame]
brians343bc112013-02-10 01:53:46 +00001package aos.control_loops;
2
3interface IsDone {
4 bool done;
5};
6
7interface ControlLoop {
8 queue goal;
9 queue position;
10 queue output;
11 queue IsDone status;
12};
13
14message Goal {
15 double goal;
16};
17
18message Position {
19 double position;
20};
21
22message Output {
Austin Schuhdc1c84a2013-02-23 16:33:10 -080023 double voltage;
brians343bc112013-02-10 01:53:46 +000024};
25
26message Status {
27 bool done;
28};
29
30// Single Input Single Output control loop.
31queue_group SISO {
32 implements ControlLoop;
33
34 queue Goal goal;
35 queue Position position;
36 queue Output output;
37 queue Status status;
38};