staubli_driver_ros2
main
ROS2 control driver for Staubli robots
Loading...
Searching...
No Matches
staubli_robot_driver
include
staubli_robot_driver
types.hpp
Go to the documentation of this file.
1
// Copyright 2025 ICUBE Laboratory, University of Strasbourg
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
// http://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14
//
15
// Author: Thibault Poignonec (thibault.poignonec@gmail.fr)
16
17
#ifndef STAUBLI_ROBOT_DRIVER__TYPES_HPP_
18
#define STAUBLI_ROBOT_DRIVER__TYPES_HPP_
19
20
namespace
staubli_robot_driver
{
21
25
enum class
MessageType
:
uint8_t
{
26
INVALID
= 0x00,
27
ROBOT_STATE
= 0x01,
28
ROBOT_COMMAND
= 0x02,
29
DIAGNOSTIC_DATA
= 0x03
30
};
31
35
enum class
CommandType
:
uint8_t
{
36
INVALID
= 0x00,
37
STOP
= 0x01,
38
JOINT_POSITION
= 0x02,
39
JOINT_VELOCITY
= 0x03,
40
JOINT_TORQUE
= 0x04,
41
// Used by VAL3 server, not valid command to send to robot
42
DECELERATION_JOINT_POSITION
= 0x0A,
43
DECELERATION_JOINT_VELOCITY
= 0x0B
44
};
45
49
enum class
OperationMode
:
uint8_t
{
50
UNKNOWN
= 0x00,
51
MANUAL
= 0x01,
52
AUTOMATIC
= 0x02,
53
REMOTE
= 0x03
54
};
55
56
// /**
57
// * @brief Operation mode statuses
58
// */
59
// enum class OperationModeStatus : uint8_t {
60
// UNKNOWN = 0x00,
61
// PROGRAMMED_MOTION = 0x01,
62
// CONNECTION_MOTION = 0x02,
63
// HOLDING_POSITION = 0x03,
64
// MANUAL_JOINT_JOG = 0x04,
65
// MANUAL_FRAME_JOG = 0x05,
66
// MANUAL_TOOL_JOG = 0x06,
67
// MANUAL_POINT_JOG = 0x07
68
// };
69
70
74
enum class
SafetyStatus
:
uint8_t
{
75
NO_SAFETY_STOP
= 0x00,
76
WAIT_FOR_RESTART
= 0x01,
77
SS1
= 0x02,
78
SS2
= 0x03,
79
WAIT_FOR_WMS
= 0x04
80
};
81
85
enum class
StatusFlag
:
uint16_t
{
86
POWER_ON
= 0x0001,
87
BRAKES_RELEASED
= 0x0002,
88
MOTION_POSSIBLE
= 0x0004,
89
IN_MOTION
= 0x0008,
90
ERROR_STATE
= 0x0010,
91
ESTOP_PRESSED
= 0x0020,
92
};
93
97
enum class
ValidFieldFlag
:
uint16_t
{
98
JOINT_POSITIONS
= 0x0001,
99
JOINT_VELOCITIES
= 0x0002,
100
JOINT_TORQUES
= 0x0004,
101
FT_SENSOR
= 0x0008,
102
DIGITAL_INPUTS
= 0x0010,
103
ANALOG_INPUTS
= 0x0020,
104
};
105
106
}
// namespace staubli_robot_driver
107
108
#endif
// STAUBLI_ROBOT_DRIVER__TYPES_HPP_
staubli_robot_driver::RealTimeSocketInterface
Bilateral real-time socket interface for pub/sub communication.
Definition
real_time_socket_interface.hpp:39
staubli_robot_driver
Definition
messages.hpp:23
staubli_robot_driver::ValidFieldFlag
ValidFieldFlag
Valid fields (bit masks)
Definition
types.hpp:97
staubli_robot_driver::ValidFieldFlag::DIGITAL_INPUTS
@ DIGITAL_INPUTS
staubli_robot_driver::ValidFieldFlag::JOINT_POSITIONS
@ JOINT_POSITIONS
staubli_robot_driver::ValidFieldFlag::JOINT_VELOCITIES
@ JOINT_VELOCITIES
staubli_robot_driver::ValidFieldFlag::JOINT_TORQUES
@ JOINT_TORQUES
staubli_robot_driver::ValidFieldFlag::FT_SENSOR
@ FT_SENSOR
staubli_robot_driver::ValidFieldFlag::ANALOG_INPUTS
@ ANALOG_INPUTS
staubli_robot_driver::OperationMode
OperationMode
Operation modes.
Definition
types.hpp:49
staubli_robot_driver::OperationMode::AUTOMATIC
@ AUTOMATIC
staubli_robot_driver::OperationMode::REMOTE
@ REMOTE
staubli_robot_driver::OperationMode::UNKNOWN
@ UNKNOWN
staubli_robot_driver::OperationMode::MANUAL
@ MANUAL
staubli_robot_driver::CommandType
CommandType
Command types.
Definition
types.hpp:35
staubli_robot_driver::CommandType::JOINT_VELOCITY
@ JOINT_VELOCITY
staubli_robot_driver::CommandType::STOP
@ STOP
staubli_robot_driver::CommandType::JOINT_TORQUE
@ JOINT_TORQUE
staubli_robot_driver::CommandType::DECELERATION_JOINT_VELOCITY
@ DECELERATION_JOINT_VELOCITY
staubli_robot_driver::CommandType::DECELERATION_JOINT_POSITION
@ DECELERATION_JOINT_POSITION
staubli_robot_driver::CommandType::JOINT_POSITION
@ JOINT_POSITION
staubli_robot_driver::MessageType
MessageType
Message types for communication.
Definition
types.hpp:25
staubli_robot_driver::MessageType::DIAGNOSTIC_DATA
@ DIAGNOSTIC_DATA
staubli_robot_driver::MessageType::ROBOT_STATE
@ ROBOT_STATE
staubli_robot_driver::MessageType::ROBOT_COMMAND
@ ROBOT_COMMAND
staubli_robot_driver::MessageType::INVALID
@ INVALID
staubli_robot_driver::SafetyStatus
SafetyStatus
Safety status.
Definition
types.hpp:74
staubli_robot_driver::SafetyStatus::NO_SAFETY_STOP
@ NO_SAFETY_STOP
staubli_robot_driver::SafetyStatus::WAIT_FOR_RESTART
@ WAIT_FOR_RESTART
staubli_robot_driver::SafetyStatus::SS2
@ SS2
staubli_robot_driver::SafetyStatus::SS1
@ SS1
staubli_robot_driver::SafetyStatus::WAIT_FOR_WMS
@ WAIT_FOR_WMS
staubli_robot_driver::StatusFlag
StatusFlag
Status flag (bit masks)
Definition
types.hpp:85
staubli_robot_driver::StatusFlag::IN_MOTION
@ IN_MOTION
staubli_robot_driver::StatusFlag::ERROR_STATE
@ ERROR_STATE
staubli_robot_driver::StatusFlag::POWER_ON
@ POWER_ON
staubli_robot_driver::StatusFlag::MOTION_POSSIBLE
@ MOTION_POSSIBLE
staubli_robot_driver::StatusFlag::BRAKES_RELEASED
@ BRAKES_RELEASED
staubli_robot_driver::StatusFlag::ESTOP_PRESSED
@ ESTOP_PRESSED
Generated by
1.9.8