// Definition of ABB sensor interface V1.1
//
// messages of type EgmRobot are sent out from the robot controller
// messages of type EgmSensor are sent to the robot controller
//
syntax = "proto2";
package abb.egm;
message EgmHeader
{
optional uint32 seqno = 1; // sequence number (to be able to find lost messages)
optional uint32 tm = 2; // controller send time stamp in ms
enum MessageType {
MSGTYPE_UNDEFINED = 0;
MSGTYPE_COMMAND = 1; // for future use
MSGTYPE_DATA = 2; // sent by robot controller
MSGTYPE_CORRECTION = 3; // sent by sensor for position guidance
MSGTYPE_PATH_CORRECTION = 4; // sent by sensor for path correction
}
optional MessageType mtype = 3 [default = MSGTYPE_UNDEFINED];
}
message EgmCartesian // Cartesian position in mm
{
required double x = 1;
required double y = 2;
required double z = 3;
}
// If you have pose input, i.e. not joint input, you can choose to send orientation data as quaternion or as Euler angles.
// If both are sent, Euler angles have higher priority.
message EgmQuaternion // Quaternion orientation
{
required double u0 = 1;
required double u1 = 2;
required double u2 = 3;
required double u3 = 4;
}
message EgmEuler // Euler angle orientation in degrees
{
required double x = 1;
required double y = 2;
required double z = 3;
}
message EgmClock // Time in seconds and microseconds since 1 Jan 1970
{
required uint64 sec = 1;
required uint64 usec = 2;
}
message EgmPose // Pose (i.e. cartesian position and Quaternion orientation) relative to the correction frame defined by EGMActPose
{
optional EgmCartesian pos = 1;
optional EgmQuaternion orient = 2;
optional EgmEuler euler = 3;
}
message EgmCartesianSpeed // Array of 6 speed reference values in mm/s or degrees/s
{
repeated double value = 1;
}
message EgmJoints // Array of 6 joint values for TCP robot in degrees
{
repeated double joints = 1;
}
message EgmExternalJoints // Array of 6 joint values for additional axis, in degrees for rotating axis, in mm for linear axis
{
repeated double joints = 1;
}
message EgmPlanned // Planned position for robot (joints or cartesian) and additional axis (array of 6 values)
{ // Is used for position streaming (source: controller) and position guidance (source: sensor)
optional EgmJoints joints = 1;
optional EgmPose cartesian = 2;
optional EgmJoints externalJoints = 3;
optional EgmClock time = 4;
}
message EgmSpeedRef // Speed reference values for robot (joint or cartesian) and additional axis (array of 6 values)
{
optional EgmJoints joints = 1;
optional EgmCartesianSpeed cartesians = 2;
optional EgmJoints externalJoints = 3;
}
message EgmPathCorr // Cartesian path correction and measurment age
{
required EgmCartesian pos = 1; // Sensor measurement (x, y, z) relative the sensor tool coordinate system
required uint32 age = 2; // Sensor measurement age in ms
}
message EgmFeedBack // Feed back position, i.e. actual measured position for robot (joints or cartesian) and additional axis (array of 6 values)
{
optional EgmJoints joints = 1;
optional EgmPose cartesian = 2;
optional EgmJoints externalJoints = 3;
optional EgmClock time = 4;
}
message EgmMotorState // Motor state
{
enum MotorStateType {
MOTORS_UNDEFINED = 0;
MOTORS_ON = 1;
MOTORS_OFF = 2;
}
required MotorStateType state = 1;
}
message EgmMCIState // EGM state
{
enum MCIStateType
{
MCI_UNDEFINED = 0;
MCI_ERROR = 1;
MCI_STOPPED = 2;
MCI_RUNNING = 3;
}
required MCIStateType state = 1 [default = MCI_UNDEFINED];
}
message EgmRapidCtrlExecState // RAPID execution state
{
enum RapidCtrlExecStateType {
RAPID_UNDEFINED = 0;
RAPID_STOPPED = 1;
RAPID_RUNNING = 2;
};
required RapidCtrlExecStateType state = 1 [default = RAPID_UNDEFINED];
}
message EgmTestSignals // Test signals
{
repeated double signals = 1;
}
message EgmMeasuredForce // Array of 6 force values for a robot
{
optional bool fcActive = 1;
repeated double force = 2;
}
message EgmCollisionInfo // Array of collision info values for a robot
{
optional bool collsionTriggered = 1;
repeated double collDetQuota = 2;
}
message EgmRAPIDdata // message format robot controller outbound
{
optional bool digVal = 1;
repeated double dnum = 2;
}
// Robot controller outbound message, sent from the controller to the sensor during position guidance and position streaming
message EgmRobot
{
optional EgmHeader header = 1;
optional EgmFeedBack feedBack = 2;
optional EgmPlanned planned = 3;
optional EgmMotorState motorState = 4;
optional EgmMCIState mciState = 5;
optional bool mciConvergenceMet = 6;
optional EgmTestSignals testSignals = 7;
optional EgmRapidCtrlExecState rapidExecState = 8;
optional EgmMeasuredForce measuredForce = 9;
optional double utilizationRate=10;
optional uint32 moveIndex=11;
optional EgmCollisionInfo CollisionInfo = 12;
optional EgmRAPIDdata RAPIDfromRobot = 13;
}
// Robot controller inbound message, sent from sensor to the controller during position guidance
message EgmSensor
{
optional EgmHeader header = 1;
optional EgmPlanned planned = 2;
optional EgmSpeedRef speedRef = 3;
optional EgmRAPIDdata RAPIDtoRobot = 4;
}
// Robot controller inbound message, sent from sensor during path correction
message EgmSensorPathCorr
{
optional EgmHeader header = 1;
optional EgmPathCorr pathCorr = 2;
}
没有合适的资源?快使用搜索试试~ 我知道了~
ABB机器人EGM控制模块开发(附完整仿真源码+保姆级讲解)
共632个文件
cc:252个
h:249个
proto:60个
16 下载量 15 浏览量
2023-11-02
15:40:45
上传
评论
收藏 15.59MB RAR 举报
温馨提示
ABB机器人EGM控制模块开发(附完整仿真源码+保姆级讲解)
资源推荐
资源详情
资源评论
收起资源包目录
ABB机器人EGM控制模块开发(附完整仿真源码+保姆级讲解) (632个子文件)
bad_utf8_string 3B
build.bat 32B
descriptor.pb.cc 600KB
egm.pb.cc 272KB
descriptor.cc 244KB
descriptor_unittest.cc 243KB
test_util.cc 180KB
cpp_message.cc 137KB
type.pb.cc 126KB
js_generator.cc 120KB
map_test.cc 109KB
parser_unittest.cc 103KB
message_differencer_unittest.cc 94KB
test_util_lite.cc 89KB
wrappers.pb.cc 88KB
plugin.pb.cc 88KB
generated_message_reflection.cc 86KB
protostream_objectwriter_test.cc 85KB
strutil.cc 80KB
map_test_util.cc 75KB
cpp_unittest.cc 74KB
api.pb.cc 72KB
extension_set.cc 72KB
parser.cc 72KB
text_format.cc 66KB
command_line_interface.cc 66KB
command_line_interface_unittest.cc 64KB
message_differencer.cc 61KB
struct.pb.cc 59KB
text_format_unittest.cc 57KB
python_generator.cc 53KB
objectivec_helpers.cc 53KB
extension_set_unittest.cc 52KB
java_message.cc 52KB
arena_unittest.cc 50KB
coded_stream_unittest.cc 49KB
wire_format_unittest.cc 46KB
repeated_field_unittest.cc 46KB
java_message_field.cc 44KB
wire_format.cc 42KB
protostream_objectwriter.cc 42KB
cpp_message_field.cc 41KB
generated_message_reflection_unittest.cc 41KB
protostream_objectsource.cc 40KB
cpp_string_field.cc 39KB
cpp_file.cc 39KB
java_message_lite.cc 38KB
tokenizer.cc 37KB
tokenizer_unittest.cc 37KB
java_string_field.cc 35KB
java_enum_field.cc 35KB
php_generator.cc 35KB
java_enum_field_lite.cc 34KB
javanano_primitive_field.cc 34KB
java_message_field_lite.cc 33KB
protostream_objectsource_test.cc 32KB
java_primitive_field_lite.cc 32KB
java_string_field_lite.cc 31KB
java_map_field_lite.cc 31KB
strutil_unittest.cc 31KB
zero_copy_stream_unittest.cc 30KB
dynamic_message.cc 30KB
java_primitive_field.cc 30KB
extension_set_heavy.cc 30KB
java_map_field.cc 29KB
repeated_field_reflection_unittest.cc 29KB
java_lazy_message_field.cc 27KB
coded_stream.cc 27KB
proto_writer.cc 27KB
field_mask_util_test.cc 27KB
wire_format_lite.cc 26KB
java_message_builder.cc 26KB
json_stream_parser.cc 26KB
lite_unittest.cc 26KB
java_lazy_message_field_lite.cc 25KB
java_file.cc 25KB
json_stream_parser_test.cc 25KB
java_helpers.cc 25KB
stringpiece_unittest.cc 25KB
structurally_valid.cc 24KB
objectivec_message.cc 24KB
type_traits_unittest.cc 24KB
cpp_helpers.cc 23KB
descriptor_database_unittest.cc 23KB
no_field_presence_test.cc 23KB
unknown_field_set_unittest.cc 22KB
javanano_message.cc 21KB
objectivec_file.cc 21KB
person.pb.cc 21KB
person.pb.cc 21KB
field_comparator_test.cc 21KB
default_value_objectwriter.cc 20KB
javanano_helpers.cc 19KB
csharp_helpers.cc 19KB
cpp_enum_field.cc 19KB
csharp_message.cc 18KB
descriptor_database.cc 18KB
field_mask_util.cc 18KB
message_unittest.cc 18KB
javanano_enum_field.cc 18KB
共 632 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7
资源评论
DaShengRen
- 粉丝: 625
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 论文(最终)_20240430235101.pdf
- 基于python编写的Keras深度学习框架开发,利用卷积神经网络CNN,快速识别图片并进行分类
- 最全空间计量实证方法(空间杜宾模型和检验以及结果解释文档).txt
- 5uonly.apk
- 蓝桥杯Python组的历年真题
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 前端开发技术实验报告:内含4四实验&实验报告
- Highlight Plus v20.0.1
- 林周瑜-论文.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功