-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathAgentTask.proto
117 lines (102 loc) · 3.58 KB
/
AgentTask.proto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
syntax = "proto2";
package llsf_msgs;
import "Team.proto";
import "ProductColor.proto";
option java_package = "org.robocup_logistics.llsf_msgs";
option java_outer_classname = "AgentTasksProtos";
message AgentTask {
enum CompType {
COMP_ID = 8000; // COMPONENT 8000 is Simulation
MSG_TYPE = 502;
}
// 0: None
// 1XX: Parsing Error
// 2XX: Execution Error
// 22X: Internal Error
// 3XX: Calculation Error
enum ErrorCode {
NO_ERROR = 0;
UNKNOWN = 1;
WRONG_TEAM = 101;
WRONG_ROBOT = 102;
INVALID_TARGET = 103;
TASK_NOT_SUPPORTED = 104;
NOT_AT_POSITION = 105;
UNABLE_TO_MOVE_TO_TARGET = 201;
NO_WORKPIECE_FOUND = 202;
MPS_NOT_FOUND = 203;
WORKPIECE_SENSOR_DISAGREEMENT = 204;
ABORTED_DUE_TO_UNEXPECTED_COLLISION = 205;
GRASPING_FAILED = 206;
WORKPIECE_ALREADY_IN_GRIPPER = 207;
NO_WORKPIECE_IN_GRIPPER = 208;
MACHINE_POINT_OCCUPIED = 209;
INTERNAL_ERROR = 220;
NO_PATH_FOUND = 300;
}
// general infos
required Team team_color = 1; // Color of the team
required uint32 task_id = 2; // identifier for the tasks
required uint32 robot_id = 3;
// Tasks
optional Move move = 4;
optional Retrieve retrieve = 5;
optional Deliver deliver = 6;
optional BufferStation buffer = 7;
optional ExploreWaypoint explore_machine = 8;
// additional info for the refbox
optional WorkpieceDescription workpiece_description = 9;
optional uint32 order_id = 10;
// flags and result of the current task
optional bool cancel_task = 11; // cancels current task
optional bool pause_task =
12; // if true current task is paused, if false again task is continued
optional bool successful = 13; // was the task finished successful?
optional bool canceled =
14; // the task was successfully canceled from the agent
optional uint32 error_code = 15; // only set if failure, error codes defined in ErrorCode enum
}
// Move robot to stated waypoint
message Move {
required string waypoint =
1; // can be a zone or a machine (default is input side of a machine)
optional string machine_point =
2; // can be used to specify the point of the machine (input, output)
}
// Get a workpiece at the given station and hold the product in the gripper
message Retrieve {
required string machine_id = 1; // name of the machine
required string machine_point =
2; // valid machine-points: input, output, shelf
}
// Deliver the holding product to the given station
message Deliver {
required string machine_id = 1; // name of the machine
required string machine_point = 2; // valid machine-points: input, slide
}
// Get product from shelf and place it immediately afterwards on the conveyor
message BufferStation {
required string machine_id =
1; // machine-id because need to know if CS1 or CS2
required uint32 shelf_number =
2; // only for old-gripper, valid shelf-numbers: 1, 2, 3
}
// Move to the given machine (if position already detected), else move to given
// waypoint (=zone on the playing field)
message ExploreWaypoint {
required string machine_id = 1; // name of the machine
required string machine_point = 2; // valid machine-points: input, output
required string waypoint = 3;
}
message WorkpieceDescription {
enum CompType {
COMP_ID = 8000;
MSG_TYPE = 510;
}
required BaseColor base_color =
3; // description fo the current workpiece the robot has gripped
repeated RingColor ring_colors =
4; // description fo the current workpiece the robot has gripped
optional CapColor cap_color =
5; // description fo the current workpiece the robot has gripped
}