-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathclaw.proto
88 lines (82 loc) · 1.86 KB
/
claw.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
syntax = "proto3";
package lebai.claw;
import "google/protobuf/empty.proto";
import "cmp.proto";
enum Address {
// 目标开度
AMPLITUDE = 0;
// 目标力度
FORCE = 1;
// 上传电压数字
VOLTAGE = 2;
// 上传激光测距
DISTANCE = 3;
// 接收DO指令
DO = 4;
// 当前开度
ACTUAL_AMPLITUDE = 5;
// 当前力度(已弃用)
ACTUAL_FORCE = 6;
// 当前负载重量(已弃用)
WEIGHT = 7;
// 强制初始化手爪
INIT = 8;
// 手爪状态标识符
FLAG = 9;
// 手爪错误标识符
ERROR = 10;
// 禁用自动初始化
DISABLE_INIT = 90;
// 保存理论行程
SAVE_TRAVEL = 91;
}
message Claw {
// 力度
double force = 1;
// 开度
double amplitude = 2;
// 负载重量(已弃用)
double weight = 3;
// 开度是否稳定
bool hold_on = 4 [json_name = "hold_on"];
}
message InitClawRequest {
// 强制
bool force = 1;
}
message SetClawRequest {
// 力度
optional double force = 1;
// 开度
optional double amplitude = 2;
}
message SetClawAoRequest {
Address address = 1;
double value = 2;
}
message GetClawAiRequest {
Address address = 1;
}
message GetClawAiResponse {
double value = 2;
}
message WaitClawAiRequest {
Address address = 1;
double value = 2;
cmp.Relation relation = 3;
}
// 手爪相关服务
service ClawService {
// 初始化手爪
rpc InitClaw(InitClawRequest) returns (google.protobuf.Empty);
// 设置手爪数据
rpc SetClaw(SetClawRequest) returns (google.protobuf.Empty);
// 获取手爪幅度是否稳定
rpc GetClaw(google.protobuf.Empty) returns (Claw);
// 设置手爪指定数据
rpc SetClawAo(SetClawAoRequest) returns (google.protobuf.Empty);
// 读取手爪指定数据
rpc GetClawAi(GetClawAiRequest) returns (GetClawAiResponse);
// 等待手爪指定数据
rpc WaitClawAi(WaitClawAiRequest) returns (google.protobuf.Empty);
}