`_)
18 | * Contributors: gavanderhoorn
19 |
20 | 0.5.0 (2021-01-21)
21 | ------------------
22 | * Initial release
23 | * Contributors: Jon Tjerngren
24 |
--------------------------------------------------------------------------------
/abb_rapid_msgs/msg/ExtJoint.msg:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this message definition, is to represent the
4 | # RAPID data type "extjoint" (position of external joints).
5 | #
6 | # Note:
7 | # Please see the "Technical reference manual - RAPID Instructions,
8 | # Functions and Data types" for more details.
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Message fields
13 | #-------------------------------------------------------------------------------
14 | # The position of the external logical axis "a"-"f",
15 | # expressed in degrees or mm (depending on the type of axis).
16 | float32 eax_a
17 | float32 eax_b
18 | float32 eax_c
19 | float32 eax_d
20 | float32 eax_e
21 | float32 eax_f
22 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/TriggerWithResultCode.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to allow triggering a service
4 | # where the response includes both a numerical result code and a human
5 | # readable message.
6 | #-------------------------------------------------------------------------------
7 |
8 | #-------------------------------------------------------------------------------
9 | # Service request fields (none)
10 | #-------------------------------------------------------------------------------
11 |
12 | ---
13 |
14 | #-------------------------------------------------------------------------------
15 | # Service response fields
16 | #-------------------------------------------------------------------------------
17 | # Service success/failure indicator.
18 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
19 | uint16 result_code
20 |
21 | # Informational, e.g. for error messages
22 | string message
23 |
--------------------------------------------------------------------------------
/abb_rapid_sm_addin_msgs/msg/EGMSettings.msg:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this message definition, is to represent the custom RAPID
4 | # data type "EGMSettings" from the RobotWare "StateMachine Add-In".
5 | #-------------------------------------------------------------------------------
6 |
7 | #-------------------------------------------------------------------------------
8 | # Message fields
9 | #-------------------------------------------------------------------------------
10 | # Indicator for if EGM motions are allowed to start.
11 | bool allow_egm_motions
12 |
13 | # Indicator for if RAPID tasks should be synced before starting EGM motions
14 | # (only used in multi robot systems).
15 | bool use_presync
16 |
17 | # Settings for EGMSetupUC instructions.
18 | EGMSetupSettings setup_uc
19 |
20 | # Settings for EGMAct instructions.
21 | EGMActivateSettings activate
22 |
23 | # Settings for EGMRun instructions.
24 | EGMRunSettings run
25 |
26 | # Settings for EGMStop instructions.
27 | EGMStopSettings stop
28 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/GetIOSignal.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to get the
4 | # value of an IO-signal defined in an ABB robot controller system.
5 | #-------------------------------------------------------------------------------
6 |
7 | #-------------------------------------------------------------------------------
8 | # Service request fields
9 | #-------------------------------------------------------------------------------
10 | # Name of the targeted IO-signal.
11 | string signal
12 |
13 | ---
14 |
15 | #-------------------------------------------------------------------------------
16 | # Service response fields
17 | #-------------------------------------------------------------------------------
18 | # Value of the IO-signal.
19 | string value
20 |
21 | # Service success/failure indicator.
22 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
23 | uint16 result_code
24 |
25 | # Status message (empty if service succeeded).
26 | string message
27 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/SetIOSignal.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to set the
4 | # value of an IO-signal defined in an ABB robot controller system.
5 | #-------------------------------------------------------------------------------
6 |
7 | #-------------------------------------------------------------------------------
8 | # Service request fields
9 | #-------------------------------------------------------------------------------
10 | # Name of the targeted IO-signal.
11 | string signal
12 |
13 | # New value for the IO-signal.
14 | string value
15 |
16 | ---
17 |
18 | #-------------------------------------------------------------------------------
19 | # Service response fields
20 | #-------------------------------------------------------------------------------
21 | # Service success/failure indicator.
22 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
23 | uint16 result_code
24 |
25 | # Status message (empty if service succeeded).
26 | string message
27 |
--------------------------------------------------------------------------------
/abb_rapid_sm_addin_msgs/msg/EGMRunSettings.msg:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this message definition, is to represent the custom RAPID
4 | # data type "EGMRunSettings" from the RobotWare "StateMachine Add-In".
5 | #
6 | # Note:
7 | # "EGMRunSettings" are for example used with the RAPID EGM instructions
8 | # "EGMRunJoint" and "EGMRunPose".
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Message fields
13 | #-------------------------------------------------------------------------------
14 | # Condition time [s] for how long an EGM motion's convergence criteria must be
15 | # fulfilled before the motion is considered to be finished.
16 | float32 cond_time
17 |
18 | # Ramp in time [s].
19 | float32 ramp_in_time
20 |
21 | # Static offset applied on top of the EGM references
22 | # (only used in EGM pose mode).
23 | abb_rapid_msgs/Pose offset
24 |
25 | # Position correction gain for the EGM controller.
26 | float32 pos_corr_gain
27 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/GetRAPIDBool.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to get the value
4 | # of a RAPID 'bool' symbol (e.g. a variable) defined in an ABB robot
5 | # controller system.
6 | #-------------------------------------------------------------------------------
7 |
8 | #-------------------------------------------------------------------------------
9 | # Service request fields
10 | #-------------------------------------------------------------------------------
11 | # Path to the targeted RAPID symbol.
12 | RAPIDSymbolPath path
13 |
14 | ---
15 |
16 | #-------------------------------------------------------------------------------
17 | # Service response fields
18 | #-------------------------------------------------------------------------------
19 | # Value of the RAPID symbol.
20 | bool value
21 |
22 | # Service success/failure indicator.
23 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
24 | uint16 result_code
25 |
26 | # Status message (empty if service succeeded).
27 | string message
28 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/GetRAPIDNum.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to get the value
4 | # of a RAPID 'num' symbol (e.g. a variable) defined in an ABB robot controller
5 | # system.
6 | #-------------------------------------------------------------------------------
7 |
8 | #-------------------------------------------------------------------------------
9 | # Service request fields
10 | #-------------------------------------------------------------------------------
11 | # Path to the targeted RAPID symbol.
12 | RAPIDSymbolPath path
13 |
14 | ---
15 |
16 | #-------------------------------------------------------------------------------
17 | # Service response fields
18 | #-------------------------------------------------------------------------------
19 | # Value of the RAPID symbol.
20 | float32 value
21 |
22 | # Service success/failure indicator.
23 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
24 | uint16 result_code
25 |
26 | # Status message (empty if service succeeded).
27 | string message
28 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/GetRAPIDDnum.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to get the value
4 | # of a RAPID 'dnum' symbol (e.g. a variable) defined in an ABB robot
5 | # controller system.
6 | #-------------------------------------------------------------------------------
7 |
8 | #-------------------------------------------------------------------------------
9 | # Service request fields
10 | #-------------------------------------------------------------------------------
11 | # Path to the targeted RAPID symbol.
12 | RAPIDSymbolPath path
13 |
14 | ---
15 |
16 | #-------------------------------------------------------------------------------
17 | # Service response fields
18 | #-------------------------------------------------------------------------------
19 | # Value of the RAPID symbol.
20 | float64 value
21 |
22 | # Service success/failure indicator.
23 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
24 | uint16 result_code
25 |
26 | # Status message (empty if service succeeded).
27 | string message
28 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/GetRAPIDString.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to get the value
4 | # of a RAPID 'string' symbol (e.g. a variable) defined in an ABB robot
5 | # controller system.
6 | #-------------------------------------------------------------------------------
7 |
8 | #-------------------------------------------------------------------------------
9 | # Service request fields
10 | #-------------------------------------------------------------------------------
11 | # Path to the targeted RAPID symbol.
12 | RAPIDSymbolPath path
13 |
14 | ---
15 |
16 | #-------------------------------------------------------------------------------
17 | # Service response fields
18 | #-------------------------------------------------------------------------------
19 | # Value of the RAPID symbol.
20 | string value
21 |
22 | # Service success/failure indicator.
23 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
24 | uint16 result_code
25 |
26 | # Status message (empty if service succeeded).
27 | string message
28 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/SetRAPIDBool.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to set the value
4 | # of a RAPID 'bool' symbol (e.g. a variable) defined in an ABB robot
5 | # controller system.
6 | #-------------------------------------------------------------------------------
7 |
8 | #-------------------------------------------------------------------------------
9 | # Service request fields
10 | #-------------------------------------------------------------------------------
11 | # Path to the targeted RAPID symbol.
12 | RAPIDSymbolPath path
13 |
14 | # New value of the RAPID symbol.
15 | bool value
16 |
17 | ---
18 |
19 | #-------------------------------------------------------------------------------
20 | # Service response fields
21 | #-------------------------------------------------------------------------------
22 | # Service success/failure indicator.
23 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
24 | uint16 result_code
25 |
26 | # Status message (empty if service succeeded).
27 | string message
28 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/SetRAPIDNum.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to set the value
4 | # of a RAPID 'num' symbol (e.g. a variable) defined in an ABB robot controller
5 | # system.
6 | #-------------------------------------------------------------------------------
7 |
8 | #-------------------------------------------------------------------------------
9 | # Service request fields
10 | #-------------------------------------------------------------------------------
11 | # Path to the targeted RAPID symbol.
12 | RAPIDSymbolPath path
13 |
14 | # New value of the RAPID symbol.
15 | float32 value
16 |
17 | ---
18 |
19 | #-------------------------------------------------------------------------------
20 | # Service response fields
21 | #-------------------------------------------------------------------------------
22 | # Service success/failure indicator.
23 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
24 | uint16 result_code
25 |
26 | # Status message (empty if service succeeded).
27 | string message
28 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/SetRAPIDDnum.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to set the value
4 | # of a RAPID 'dnum' symbol (e.g. a variable) defined in an ABB robot
5 | # controller system.
6 | #-------------------------------------------------------------------------------
7 |
8 | #-------------------------------------------------------------------------------
9 | # Service request fields
10 | #-------------------------------------------------------------------------------
11 | # Path to the targeted RAPID symbol.
12 | RAPIDSymbolPath path
13 |
14 | # New value of the RAPID symbol.
15 | float64 value
16 |
17 | ---
18 |
19 | #-------------------------------------------------------------------------------
20 | # Service response fields
21 | #-------------------------------------------------------------------------------
22 | # Service success/failure indicator.
23 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
24 | uint16 result_code
25 |
26 | # Status message (empty if service succeeded).
27 | string message
28 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/SetRAPIDString.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to set the value
4 | # of a RAPID 'string' symbol (e.g. a variable) defined in an ABB robot
5 | # controller system.
6 | #-------------------------------------------------------------------------------
7 |
8 | #-------------------------------------------------------------------------------
9 | # Service request fields
10 | #-------------------------------------------------------------------------------
11 | # Path to the targeted RAPID symbol.
12 | RAPIDSymbolPath path
13 |
14 | # New value of the RAPID symbol.
15 | string value
16 |
17 | ---
18 |
19 | #-------------------------------------------------------------------------------
20 | # Service response fields
21 | #-------------------------------------------------------------------------------
22 | # Service success/failure indicator.
23 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
24 | uint16 result_code
25 |
26 | # Status message (empty if service succeeded).
27 | string message
28 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/SetSpeedRatio.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to set the
4 | # speed ratio for an ABB robot controller system's RAPID motions
5 | # (e.g. MoveAbsJ and MoveL).
6 | #
7 | # Note:
8 | # The speed ratio must be an integer in the range [0, 100] (i.e. inclusive).
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Service request fields
13 | #-------------------------------------------------------------------------------
14 | # New speed ratio.
15 | uint8 speed_ratio
16 |
17 | ---
18 |
19 | #-------------------------------------------------------------------------------
20 | # Service response fields
21 | #-------------------------------------------------------------------------------
22 | # Service success/failure indicator.
23 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
24 | uint16 result_code
25 |
26 | # Status message (empty if service succeeded).
27 | string message
28 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/GetRobotControllerDescription.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to get a
4 | # (partial) description of an ABB robot controller system.
5 | #
6 | # Note:
7 | # The description will be returned in a Google Protocol Buffer text format.
8 | #-------------------------------------------------------------------------------
9 |
10 | #-------------------------------------------------------------------------------
11 | # Service request fields
12 | #-------------------------------------------------------------------------------
13 |
14 | ---
15 |
16 | #-------------------------------------------------------------------------------
17 | # Service response fields
18 | #-------------------------------------------------------------------------------
19 | # Description of the robot controller system.
20 | string description
21 |
22 | # Service success/failure indicator.
23 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
24 | uint16 result_code
25 |
26 | # Status message (empty if service succeeded).
27 | string message
28 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/GetSpeedRatio.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to get the
4 | # speed ratio for an ABB robot controller system's RAPID motions
5 | # (e.g. MoveAbsJ and MoveL).
6 | #
7 | # Note:
8 | # The speed ratio will be an integer in the range [0, 100] (i.e. inclusive).
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Service request fields
13 | #-------------------------------------------------------------------------------
14 |
15 | ---
16 |
17 | #-------------------------------------------------------------------------------
18 | # Service response fields
19 | #-------------------------------------------------------------------------------
20 | # Speed ratio.
21 | uint8 speed_ratio
22 |
23 | # Service success/failure indicator.
24 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
25 | uint16 result_code
26 |
27 | # Status message (empty if service succeeded).
28 | string message
29 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/GetFileContents.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to get the
4 | # contents of a file existing in an ABB robot controller system.
5 | #
6 | # Note:
7 | # The file is assumed to be located in the system's home directory.
8 | #-------------------------------------------------------------------------------
9 |
10 | #-------------------------------------------------------------------------------
11 | # Service request fields
12 | #-------------------------------------------------------------------------------
13 | # Filename (including file extension) of the targeted file.
14 | string filename
15 |
16 | ---
17 |
18 | #-------------------------------------------------------------------------------
19 | # Service response fields
20 | #-------------------------------------------------------------------------------
21 | # Contents of the file.
22 | string contents
23 |
24 | # Service success/failure indicator.
25 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
26 | uint16 result_code
27 |
28 | # Status message (empty if service succeeded).
29 | string message
30 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/GetRAPIDSymbol.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to get the value
4 | # of a RAPID symbol (e.g. a variable) defined in an ABB robot controller
5 | # system.
6 | #
7 | # Note:
8 | # The RAPID symbol's value will be returned in raw text format.
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Service request fields
13 | #-------------------------------------------------------------------------------
14 | # Path to the targeted RAPID symbol.
15 | RAPIDSymbolPath path
16 |
17 | ---
18 |
19 | #-------------------------------------------------------------------------------
20 | # Service response fields
21 | #-------------------------------------------------------------------------------
22 | # Value (in raw text format) of the RAPID symbol.
23 | string value
24 |
25 | # Service success/failure indicator.
26 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
27 | uint16 result_code
28 |
29 | # Status message (empty if service succeeded).
30 | string message
31 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/SetRAPIDSymbol.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to set the value
4 | # of a RAPID symbol (e.g. a variable) defined in an ABB robot controller
5 | # system.
6 | #
7 | # Note:
8 | # The RAPID symbol's new value must be in raw text format.
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Service request fields
13 | #-------------------------------------------------------------------------------
14 | # Path to the targeted RAPID symbol.
15 | RAPIDSymbolPath path
16 |
17 | # New value (in raw text format) for the RAPID symbol.
18 | string value
19 |
20 | ---
21 |
22 | #-------------------------------------------------------------------------------
23 | # Service response fields
24 | #-------------------------------------------------------------------------------
25 | # Service success/failure indicator.
26 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
27 | uint16 result_code
28 |
29 | # Status message (empty if service succeeded).
30 | string message
31 |
--------------------------------------------------------------------------------
/abb_robot_msgs/msg/RAPIDTaskState.msg:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this message definition, is to represent a subset of states
4 | # of a RAPID task defined in an ABB robot controller system.
5 | #-------------------------------------------------------------------------------
6 |
7 | #-------------------------------------------------------------------------------
8 | # Enumerations
9 | #-------------------------------------------------------------------------------
10 | # RAPID execution states:
11 | uint8 EXECUTION_STATE_UNKNOWN = 1
12 | uint8 EXECUTION_STATE_READY = 2
13 | uint8 EXECUTION_STATE_STOPPED = 3
14 | uint8 EXECUTION_STATE_STARTED = 4
15 | uint8 EXECUTION_STATE_UNINITIALIZED = 5
16 |
17 | #-------------------------------------------------------------------------------
18 | # Message fields
19 | #-------------------------------------------------------------------------------
20 | # The RAPID task's name.
21 | string name
22 |
23 | # The RAPID task's activated/deactivated status.
24 | bool activated
25 |
26 | # The RAPID task's execution state.
27 | uint8 execution_state
28 |
29 | # The RAPID task is a motion task.
30 | bool motion_task
31 |
--------------------------------------------------------------------------------
/abb_rapid_msgs/msg/ToolData.msg:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this message definition, is to represent the
4 | # RAPID data type "tooldata" (tool data).
5 | #
6 | # Note:
7 | # Please see the "Technical reference manual - RAPID Instructions,
8 | # Functions and Data types" for more details.
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Message fields
13 | #-------------------------------------------------------------------------------
14 | # Defines whether or not the robot is holding the tool:
15 | # - TRUE: The robot is holding the tool.
16 | # - FALSE: The robot is not holding the tool, that is, a stationary tool.
17 | bool robhold
18 |
19 | # The tool coordinate system, that is:
20 | # - The position of the TCP (x, y and z) in mm,
21 | # expressed in the wrist coordinate system (tool0).
22 | # - The orientation of the tool coordinate system,
23 | # expressed in the wrist coordinate system.
24 | Pose tframe
25 |
26 | # The load of the tool (if robot held tool).
27 | # The load of the gripper holding the work object (if stationary tool).
28 | LoadData tload
29 |
--------------------------------------------------------------------------------
/abb_robot_msgs/srv/SetFileContents.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to set the
4 | # contents of a file in an ABB robot controller system.
5 | #
6 | # Note:
7 | # The file will be placed in the system's home directory. If the file
8 | # doesn't exist, then it will be created, otherwise it will be overwritten.
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Service request fields
13 | #-------------------------------------------------------------------------------
14 | # Filename (including file extension) for the file in the system.
15 | string filename
16 |
17 | # New contents for the file.
18 | string contents
19 |
20 | ---
21 |
22 | #-------------------------------------------------------------------------------
23 | # Service response fields
24 | #-------------------------------------------------------------------------------
25 | # Service success/failure indicator.
26 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
27 | uint16 result_code
28 |
29 | # Status message (empty if service succeeded).
30 | string message
31 |
--------------------------------------------------------------------------------
/abb_rapid_sm_addin_msgs/srv/GetEGMSettings.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to get the value
4 | # of a predefined RAPID variable of the custom RAPID data type "EGMSettings".
5 | #
6 | # Note:
7 | # This variable is defined in each RAPID motion task, in ABB robot controller
8 | # systems, that are using the RobotWare "StateMachine Add-In".
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Service request fields
13 | #-------------------------------------------------------------------------------
14 | # The RAPID task, where the variable exists.
15 | string task
16 |
17 | ---
18 |
19 | #-------------------------------------------------------------------------------
20 | # Service response fields
21 | #-------------------------------------------------------------------------------
22 | # The settings used for RAPID EGM instructions.
23 | EGMSettings settings
24 |
25 | # Service success/failure indicator.
26 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
27 | uint16 result_code
28 |
29 | # Status message (empty if service succeeded).
30 | string message
31 |
--------------------------------------------------------------------------------
/abb_rapid_sm_addin_msgs/srv/SetEGMSettings.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to set the value
4 | # of a predefined RAPID variable of the custom RAPID data type "EGMSettings".
5 | #
6 | # Note:
7 | # This variable is defined in each RAPID motion task, in ABB robot controller
8 | # systems, that are using the RobotWare "StateMachine Add-In".
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Service request fields
13 | #-------------------------------------------------------------------------------
14 | # The RAPID task, where the variable exists.
15 | string task
16 |
17 | # New settings to use for RAPID EGM instructions.
18 | EGMSettings settings
19 |
20 | ---
21 |
22 | #-------------------------------------------------------------------------------
23 | # Service response fields
24 | #-------------------------------------------------------------------------------
25 | # Service success/failure indicator.
26 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
27 | uint16 result_code
28 |
29 | # Status message (empty if service succeeded).
30 | string message
31 |
--------------------------------------------------------------------------------
/abb_rapid_sm_addin_msgs/srv/SetRAPIDRoutine.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to set the value
4 | # of a predefined RAPID variable for specifying a custom RAPID routine to run.
5 | #
6 | # Note:
7 | # This variable is defined in each RAPID motion task, in ABB robot
8 | # controller systems, that are using the RobotWare "StateMachine Add-In".
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Service request fields
13 | #-------------------------------------------------------------------------------
14 | # The RAPID task that runs the "StateMachine Add-In" instance.
15 | string task
16 |
17 | # Desired custom RAPID routine to run.
18 | string routine
19 |
20 | ---
21 |
22 | #-------------------------------------------------------------------------------
23 | # Service response fields
24 | #-------------------------------------------------------------------------------
25 | # Service success/failure indicator.
26 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
27 | uint16 result_code
28 |
29 | # Status message (empty if service succeeded).
30 | string message
31 |
--------------------------------------------------------------------------------
/abb_rapid_msgs/msg/LoadData.msg:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this message definition, is to represent the
4 | # RAPID data type "loaddata" (load data).
5 | #
6 | # Note:
7 | # Please see the "Technical reference manual - RAPID Instructions,
8 | # Functions and Data types" for more details.
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Message fields
13 | #-------------------------------------------------------------------------------
14 | # The mass (weight) of the load in kg.
15 | float32 mass
16 |
17 | # The center of gravity of the payload, expressed in mm,
18 | # in the tool coordinate system if the robot is holding the tool.
19 | #
20 | # If a stationary tool is used then the center of gravity for the payload
21 | # held by the gripper is expressed in the object frame of the work object
22 | # coordinate system moved by the robot.
23 | Pos cog
24 |
25 | # The orientation of the axes of moment.
26 | #
27 | # These are the principal axes of the payload
28 | # moment of inertia with origin in cog.
29 | #
30 | # If the robot is holding the tool, the axes of moment
31 | # are expressed in the tool coordinate system.
32 | Orient aom
33 |
34 | # The moment of inertia of the load around the x-, y- and z-axis,
35 | # expressed in kgm^2.
36 | float32 ix
37 | float32 iy
38 | float32 iz
39 |
--------------------------------------------------------------------------------
/abb_rapid_sm_addin_msgs/msg/EGMActivateSettings.msg:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this message definition, is to represent the custom RAPID
4 | # data type "EGMActivateSettings" from the RobotWare "StateMachine Add-In".
5 | #
6 | # Note:
7 | # "EGMActivateSettings" are for example used with the RAPID EGM instructions
8 | # "EGMActJoint" and "EGMActPose".
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Message fields
13 | #-------------------------------------------------------------------------------
14 | # Tool to use for EGM motions.
15 | abb_rapid_msgs/ToolData tool
16 |
17 | # Work object to use for EGM motions.
18 | abb_rapid_msgs/WObjData wobj
19 |
20 | # Correction frame to use for EGM motions (only used in EGM pose mode).
21 | abb_rapid_msgs/Pose correction_frame
22 |
23 | # Sensor frame to use for EGM motions (only used in EGM pose mode).
24 | abb_rapid_msgs/Pose sensor_frame
25 |
26 | # Condition threshold value [deg or mm] for when an EGM motion's convergence
27 | # criteria is considered to be fulfilled.
28 | float32 cond_min_max
29 |
30 | # Low pass filter bandwidth [Hz] for the EGM controller.
31 | float32 lp_filter
32 |
33 | # Sample rate [ms] for the EGM communication.
34 | uint8 sample_rate
35 |
36 | # Maximum admitted joint speed [deg/s].
37 | float32 max_speed_deviation
38 |
--------------------------------------------------------------------------------
/.github/workflows/ci_focal.yml:
--------------------------------------------------------------------------------
1 | name: CI - Ubuntu Focal
2 |
3 | on:
4 | # direct pushes to protected branches are not supported
5 | pull_request:
6 | # run every day, at 6am UTC
7 | schedule:
8 | - cron: '0 6 * * *'
9 | # allow manually starting this workflow
10 | workflow_dispatch:
11 |
12 | jobs:
13 | industrial_ci:
14 | name: ROS Noetic (${{ matrix.ros_repo }})
15 | runs-on: ubuntu-20.04
16 |
17 | strategy:
18 | matrix:
19 | ros_distro: [ noetic ]
20 | ros_repo: [ main, testing ]
21 |
22 | env:
23 | CCACHE_DIR: "${{ github.workspace }}/.ccache"
24 |
25 | steps:
26 | - name: Fetch repository
27 | uses: actions/checkout@v3
28 |
29 | - name: ccache cache
30 | uses: actions/cache@v3
31 | with:
32 | path: ${{ env.CCACHE_DIR }}
33 | # we always want the ccache cache to be persisted, as we cannot easily
34 | # determine whether dependencies have changed, and ccache will manage
35 | # updating the cache for us. Adding 'run_id' to the key will force an
36 | # upload at the end of the job.
37 | key: ccache-${{ matrix.ros_distro }}-${{ matrix.ros_repo }}-${{github.run_id}}
38 | restore-keys: |
39 | ccache-${{ matrix.ros_distro }}-${{ matrix.ros_repo }}
40 |
41 | - name: Run industrial_ci
42 | uses: ros-industrial/industrial_ci@master
43 | env:
44 | ROS_DISTRO: ${{ matrix.ros_distro }}
45 | ROS_REPO: ${{ matrix.ros_repo }}
46 |
--------------------------------------------------------------------------------
/.github/workflows/ci_bionic.yml:
--------------------------------------------------------------------------------
1 | name: CI - Ubuntu Bionic
2 |
3 | on:
4 | # direct pushes to protected branches are not supported
5 | pull_request:
6 | # run every day, at 6am UTC
7 | schedule:
8 | - cron: '0 6 * * *'
9 | # allow manually starting this workflow
10 | workflow_dispatch:
11 |
12 | jobs:
13 | industrial_ci:
14 | name: ROS Melodic (${{ matrix.ros_repo }})
15 | runs-on: ubuntu-20.04
16 |
17 | strategy:
18 | matrix:
19 | ros_distro: [ melodic ]
20 | ros_repo: [ main, testing ]
21 |
22 | env:
23 | CCACHE_DIR: "${{ github.workspace }}/.ccache"
24 |
25 | steps:
26 | - name: Fetch repository
27 | uses: actions/checkout@v3
28 |
29 | - name: ccache cache
30 | uses: actions/cache@v3
31 | with:
32 | path: ${{ env.CCACHE_DIR }}
33 | # we always want the ccache cache to be persisted, as we cannot easily
34 | # determine whether dependencies have changed, and ccache will manage
35 | # updating the cache for us. Adding 'run_id' to the key will force an
36 | # upload at the end of the job.
37 | key: ccache-${{ matrix.ros_distro }}-${{ matrix.ros_repo }}-${{github.run_id}}
38 | restore-keys: |
39 | ccache-${{ matrix.ros_distro }}-${{ matrix.ros_repo }}
40 |
41 | - name: Run industrial_ci
42 | uses: ros-industrial/industrial_ci@master
43 | env:
44 | ROS_DISTRO: ${{ matrix.ros_distro }}
45 | ROS_REPO: ${{ matrix.ros_repo }}
46 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2020, ABB Schweiz AG
2 | All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with
5 | or without modification, are permitted provided that
6 | the following conditions are met:
7 |
8 | * Redistributions of source code must retain the
9 | above copyright notice, this list of conditions
10 | and the following disclaimer.
11 | * Redistributions in binary form must reproduce the
12 | above copyright notice, this list of conditions
13 | and the following disclaimer in the documentation
14 | and/or other materials provided with the
15 | distribution.
16 | * Neither the name of ABB nor the names of its
17 | contributors may be used to endorse or promote
18 | products derived from this software without
19 | specific prior written permission.
20 |
21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
25 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
27 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
30 | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 |
--------------------------------------------------------------------------------
/abb_egm_msgs/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2020, ABB Schweiz AG
2 | All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with
5 | or without modification, are permitted provided that
6 | the following conditions are met:
7 |
8 | * Redistributions of source code must retain the
9 | above copyright notice, this list of conditions
10 | and the following disclaimer.
11 | * Redistributions in binary form must reproduce the
12 | above copyright notice, this list of conditions
13 | and the following disclaimer in the documentation
14 | and/or other materials provided with the
15 | distribution.
16 | * Neither the name of ABB nor the names of its
17 | contributors may be used to endorse or promote
18 | products derived from this software without
19 | specific prior written permission.
20 |
21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
25 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
27 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
30 | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 |
--------------------------------------------------------------------------------
/abb_rapid_msgs/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2020, ABB Schweiz AG
2 | All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with
5 | or without modification, are permitted provided that
6 | the following conditions are met:
7 |
8 | * Redistributions of source code must retain the
9 | above copyright notice, this list of conditions
10 | and the following disclaimer.
11 | * Redistributions in binary form must reproduce the
12 | above copyright notice, this list of conditions
13 | and the following disclaimer in the documentation
14 | and/or other materials provided with the
15 | distribution.
16 | * Neither the name of ABB nor the names of its
17 | contributors may be used to endorse or promote
18 | products derived from this software without
19 | specific prior written permission.
20 |
21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
25 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
27 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
30 | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 |
--------------------------------------------------------------------------------
/abb_robot_msgs/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2020, ABB Schweiz AG
2 | All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with
5 | or without modification, are permitted provided that
6 | the following conditions are met:
7 |
8 | * Redistributions of source code must retain the
9 | above copyright notice, this list of conditions
10 | and the following disclaimer.
11 | * Redistributions in binary form must reproduce the
12 | above copyright notice, this list of conditions
13 | and the following disclaimer in the documentation
14 | and/or other materials provided with the
15 | distribution.
16 | * Neither the name of ABB nor the names of its
17 | contributors may be used to endorse or promote
18 | products derived from this software without
19 | specific prior written permission.
20 |
21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
25 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
27 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
30 | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 |
--------------------------------------------------------------------------------
/abb_rapid_sm_addin_msgs/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2020, ABB Schweiz AG
2 | All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with
5 | or without modification, are permitted provided that
6 | the following conditions are met:
7 |
8 | * Redistributions of source code must retain the
9 | above copyright notice, this list of conditions
10 | and the following disclaimer.
11 | * Redistributions in binary form must reproduce the
12 | above copyright notice, this list of conditions
13 | and the following disclaimer in the documentation
14 | and/or other materials provided with the
15 | distribution.
16 | * Neither the name of ABB nor the names of its
17 | contributors may be used to endorse or promote
18 | products derived from this software without
19 | specific prior written permission.
20 |
21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
25 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
27 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
30 | THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 |
--------------------------------------------------------------------------------
/abb_rapid_msgs/msg/ConfData.msg:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this message definition, is to represent the
4 | # RAPID data type "confdata" (robot configuration data).
5 | #
6 | # Note:
7 | # Please see the "Technical reference manual - RAPID Instructions,
8 | # Functions and Data types" for more details.
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Message fields
13 | #-------------------------------------------------------------------------------
14 | # Rotating axis:
15 | # - The current quadrant of axis 1, 4 and 6,
16 | # expressed as a positive or negative integer.
17 | # Linear axis:
18 | # - The current meter interval of axis 1, 4 and 6,
19 | # expressed as a positive or negative integer.
20 | float32 cf1
21 | float32 cf4
22 | float32 cf6
23 |
24 | # Rotating axis:
25 | # - For serial link robots, the current robot configuration,
26 | # expressed as an integer in the range from 0 to 7.
27 | # - For SCARA robots, the current robot configuration,
28 | # expressed as an integer in the range from 0 to 1.
29 | # - For 7-axis robots, the current robot configuration,
30 | # expressed as an integer in the range from 0 to 7.
31 | # - For paint robots, the current quadrant of axis 5,
32 | # expressed as a positive or negative integer.
33 | # - For other robots, using the current quadrant of axis 2,
34 | # expressed as a positive or negative integer.
35 | # Linear axis:
36 | # - The current meter interval of axis 2,
37 | # expressed as a positive or negative integer.
38 | float32 cfx
39 |
--------------------------------------------------------------------------------
/abb_rapid_msgs/msg/RobTarget.msg:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this message definition, is to represent the
4 | # RAPID data type "robtarget" (position data).
5 | #
6 | # Note:
7 | # Please see the "Technical reference manual - RAPID Instructions,
8 | # Functions and Data types" for more details.
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Message fields
13 | #-------------------------------------------------------------------------------
14 | # The position (x, y, and z) of the tool center point expressed in mm.
15 | #
16 | # The position is specified in relation to the current object coordinate system,
17 | # including program displacement.
18 | #
19 | # If no work object is specified then this is the world coordinate system.
20 | Pos trans
21 |
22 | # The orientation of the tool, expressed in the
23 | # form of a quaternion (q1, q2, q3, and q4).
24 | #
25 | # The orientation is specified in relation to the current
26 | # object coordinate system including program displacement.
27 | #
28 | # If no work object is specified then this is the world coordinate system.
29 | Orient rot
30 |
31 | # The axis configuration of the robot (cf1, cf4, cf6, and cfx).
32 | #
33 | # This is defined in the form of the current quarter
34 | # revolution of axis 1, axis 4, and axis 6.
35 | #
36 | # The first positive quarter revolution 0 to 90 degrees is defined as 0.
37 | #
38 | # The meaning of the component cfx is dependent on robot type.
39 | ConfData robconf
40 |
41 | # The position of the additional axes.
42 | ExtJoint extax
43 |
--------------------------------------------------------------------------------
/abb_rapid_msgs/msg/WObjData.msg:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this message definition, is to represent the
4 | # RAPID data type "wobjdata" (work object data).
5 | #
6 | # Note:
7 | # Please see the "Technical reference manual - RAPID Instructions,
8 | # Functions and Data types" for more details.
9 | #-------------------------------------------------------------------------------
10 |
11 | #-------------------------------------------------------------------------------
12 | # Message fields
13 | #-------------------------------------------------------------------------------
14 | # Defines whether or not the robot in the actual
15 | # program task is holding the work object:
16 | # - TRUE: The robot is holding the work object,
17 | # i.e. using a stationary tool.
18 | # - FALSE: The robot is not holding the work object,
19 | # i.e. the robot is holding the tool.
20 | bool robhold
21 |
22 | # Defines whether or not a fixed user coordinate system is used:
23 | # - TRUE: Fixed user coordinate system.
24 | # - FALSE: Movable user coordinate system,
25 | # i.e. coordinated external axes are used.
26 | # Also to be used in a MultiMove system in
27 | # semicoordinated or synchronized coordinated mode.
28 | bool ufprog
29 |
30 | # The mechanical unit with which the robot movements are coordinated.
31 | #
32 | # Only specified in the case of movable user
33 | # coordinate systems (ufprog is FALSE).
34 | string ufmec
35 |
36 | # The user coordinate system, i.e. the position
37 | # of the current work surface or fixture.
38 | Pose uframe
39 |
40 | # The object coordinate system, i.e. the position
41 | # of the current work object.
42 | Pose oframe
43 |
--------------------------------------------------------------------------------
/abb_egm_msgs/msg/EGMChannelState.msg:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this message definition, is to represent a subset of states
4 | # of an EGM communication channel. I.e. a channel between an EGM client,
5 | # in an ABB robot controller system, and an external EGM server.
6 | #-------------------------------------------------------------------------------
7 |
8 | #-------------------------------------------------------------------------------
9 | # Enumerations
10 | #-------------------------------------------------------------------------------
11 | # EGM client states:
12 | uint8 EGM_UNDEFINED = 1
13 | uint8 EGM_ERROR = 2
14 | uint8 EGM_STOPPED = 3
15 | uint8 EGM_RUNNING = 4
16 |
17 | # Motor states:
18 | uint8 MOTORS_UNDEFINED = 1
19 | uint8 MOTORS_ON = 2
20 | uint8 MOTORS_OFF = 3
21 |
22 | # RAPID states:
23 | uint8 RAPID_UNDEFINED = 1
24 | uint8 RAPID_STOPPED = 2
25 | uint8 RAPID_RUNNING = 3
26 |
27 | #-------------------------------------------------------------------------------
28 | # Message fields
29 | #-------------------------------------------------------------------------------
30 | # The EGM channel's name.
31 | string name
32 |
33 | # The EGM channel's active/inactive status.
34 | bool active
35 |
36 | # Indicator for if the EGM convergence criteria is currently fulfilled or not.
37 | bool egm_convergence_met
38 |
39 | # EGM client state.
40 | uint8 egm_client_state
41 |
42 | # Motor state.
43 | uint8 motor_state
44 |
45 | # RAPID execution state.
46 | uint8 rapid_execution_state
47 |
48 | # Utilization rate of the connected mechanical unit.
49 | #
50 | # An utilization rate > 100 mean that EGM motion references are
51 | # too aggressive and should be reduced.
52 | float64 utilization_rate
53 |
--------------------------------------------------------------------------------
/abb_rapid_msgs/README.md:
--------------------------------------------------------------------------------
1 | # abb_rapid_msgs
2 |
3 | [](https://opensource.org/licenses/BSD-3-Clause)
4 | [](http://rosindustrial.org/news/2016/10/7/better-supporting-a-growing-ros-industrial-software-platform)
5 |
6 | **Please note that this package has not been productized, and that academia is the intended audience.**\
7 | **The package is provided "as-is", and as such no more than limited support can be expected.**
8 |
9 | ## Overview
10 |
11 | ROS message definitions representing complex `RAPID` data structures.
12 |
13 | Please see [abb_robot_driver_interfaces](https://github.com/ros-industrial/abb_robot_driver_interfaces) for more details.
14 |
15 | ## Acknowledgements
16 |
17 | ### ROSIN Project
18 |
19 |
20 |
21 |
22 |
23 | The core development has been made within the European Union's Horizon 2020 project: ROSIN - ROS-Industrial Quality-Assured Robot Software Components (see http://rosin-project.eu for more info).
24 |
25 |
26 | The ROSIN project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement no. 732287.
27 |
28 |
29 | *The opinions expressed here reflects only the author's view and reflects in no way the European Commission's opinions. The European Commission is not responsible for any use that may be made of the contained information.*
30 |
31 | ### Special Thanks
32 |
33 | Special thanks to [gavanderhoorn](https://github.com/gavanderhoorn) for guidance with open-source practices and conventions.
34 |
--------------------------------------------------------------------------------
/abb_robot_msgs/README.md:
--------------------------------------------------------------------------------
1 | # abb_robot_msgs
2 |
3 | [](https://opensource.org/licenses/BSD-3-Clause)
4 | [](http://rosindustrial.org/news/2016/10/7/better-supporting-a-growing-ros-industrial-software-platform)
5 |
6 | **Please note that this package has not been productized, and that academia is the intended audience.**\
7 | **The package is provided "as-is", and as such no more than limited support can be expected.**
8 |
9 | ## Overview
10 |
11 | ROS message and service definitions representing basic interaction with ABB robots.
12 |
13 | Please see [abb_robot_driver_interfaces](https://github.com/ros-industrial/abb_robot_driver_interfaces) for more details.
14 |
15 | ## Acknowledgements
16 |
17 | ### ROSIN Project
18 |
19 |
20 |
21 |
22 |
23 | The core development has been made within the European Union's Horizon 2020 project: ROSIN - ROS-Industrial Quality-Assured Robot Software Components (see http://rosin-project.eu for more info).
24 |
25 |
26 | The ROSIN project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement no. 732287.
27 |
28 |
29 | *The opinions expressed here reflects only the author's view and reflects in no way the European Commission's opinions. The European Commission is not responsible for any use that may be made of the contained information.*
30 |
31 | ### Special Thanks
32 |
33 | Special thanks to [gavanderhoorn](https://github.com/gavanderhoorn) for guidance with open-source practices and conventions.
34 |
--------------------------------------------------------------------------------
/abb_egm_msgs/README.md:
--------------------------------------------------------------------------------
1 | # abb_egm_msgs
2 |
3 | [](https://opensource.org/licenses/BSD-3-Clause)
4 | [](http://rosindustrial.org/news/2016/10/7/better-supporting-a-growing-ros-industrial-software-platform)
5 |
6 | **Please note that this package has not been productized, and that academia is the intended audience.**\
7 | **The package is provided "as-is", and as such no more than limited support can be expected.**
8 |
9 | ## Overview
10 |
11 | ROS message definitions representing data related to *Externally Guided Motion* (`EGM`) communication channels.
12 |
13 | Please see [abb_robot_driver_interfaces](https://github.com/ros-industrial/abb_robot_driver_interfaces) for more details.
14 |
15 | ## Acknowledgements
16 |
17 | ### ROSIN Project
18 |
19 |
20 |
21 |
22 |
23 | The core development has been made within the European Union's Horizon 2020 project: ROSIN - ROS-Industrial Quality-Assured Robot Software Components (see http://rosin-project.eu for more info).
24 |
25 |
26 | The ROSIN project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement no. 732287.
27 |
28 |
29 | *The opinions expressed here reflects only the author's view and reflects in no way the European Commission's opinions. The European Commission is not responsible for any use that may be made of the contained information.*
30 |
31 | ### Special Thanks
32 |
33 | Special thanks to [gavanderhoorn](https://github.com/gavanderhoorn) for guidance with open-source practices and conventions.
34 |
--------------------------------------------------------------------------------
/abb_rapid_sm_addin_msgs/msg/StateMachineState.msg:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this message definition, is to represent the state of an
4 | # instance of the RobotWare "StateMachine Add-In"'s RAPID implementation.
5 | #-------------------------------------------------------------------------------
6 |
7 | #-------------------------------------------------------------------------------
8 | # Enumerations
9 | #-------------------------------------------------------------------------------
10 | # Possible "StateMachine Add-In" RAPID states:
11 | #
12 | # Note: These enumeration values differ from the RAPID implementation
13 | # values to avoid conflict with default values in ROS messages.
14 | uint8 SM_STATE_UNKNOWN = 1
15 | uint8 SM_STATE_IDLE = 2
16 | uint8 SM_STATE_INITIALIZE = 3
17 | uint8 SM_STATE_RUN_RAPID_ROUTINE = 4
18 | uint8 SM_STATE_RUN_EGM_ROUTINE = 5
19 |
20 | # Possible "StateMachine Add-In" RAPID EGM actions:
21 | #
22 | # Note: These enumeration values differ from the RAPID implementation
23 | # values to avoid conflict with default values in ROS messages.
24 | uint8 EGM_ACTION_UNKNOWN = 1
25 | uint8 EGM_ACTION_NONE = 2
26 | uint8 EGM_ACTION_RUN_JOINT = 3
27 | uint8 EGM_ACTION_RUN_POSE = 4
28 | uint8 EGM_ACTION_STOP = 5
29 | uint8 EGM_ACTION_START_STREAM = 6
30 | uint8 EGM_ACTION_STOP_STREAM = 7
31 |
32 | #-------------------------------------------------------------------------------
33 | # Message fields
34 | #-------------------------------------------------------------------------------
35 | # The RAPID task that runs the "StateMachine Add-In" instance.
36 | string rapid_task
37 |
38 | # The "StateMachine Add-In" instance's current state.
39 | uint8 sm_state
40 |
41 | # The "StateMachine Add-In" instance's current EGM action
42 | # (only used if the RobotWare EGM option is present).
43 | uint8 egm_action
44 |
--------------------------------------------------------------------------------
/abb_rapid_sm_addin_msgs/README.md:
--------------------------------------------------------------------------------
1 | # abb_rapid_sm_addin_msgs
2 |
3 | [](https://opensource.org/licenses/BSD-3-Clause)
4 | [](http://rosindustrial.org/news/2016/10/7/better-supporting-a-growing-ros-industrial-software-platform)
5 |
6 | **Please note that this package has not been productized, and that academia is the intended audience.**\
7 | **The package is provided "as-is", and as such no more than limited support can be expected.**
8 |
9 | ## Overview
10 |
11 | ROS message and service definitions representing interaction with `RAPID` program instances of the `RobotWare` [StateMachine Add-In](https://robotapps.robotstudio.com/#/viewApp/c163de01-792e-4892-a290-37dbe050b6e1).
12 |
13 | Please see [abb_robot_driver_interfaces](https://github.com/ros-industrial/abb_robot_driver_interfaces) for more details.
14 |
15 | ## Acknowledgements
16 |
17 | ### ROSIN Project
18 |
19 |
20 |
21 |
22 |
23 | The core development has been made within the European Union's Horizon 2020 project: ROSIN - ROS-Industrial Quality-Assured Robot Software Components (see http://rosin-project.eu for more info).
24 |
25 |
26 | The ROSIN project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement no. 732287.
27 |
28 |
29 | *The opinions expressed here reflects only the author's view and reflects in no way the European Commission's opinions. The European Commission is not responsible for any use that may be made of the contained information.*
30 |
31 | ### Special Thanks
32 |
33 | Special thanks to [gavanderhoorn](https://github.com/gavanderhoorn) for guidance with open-source practices and conventions.
34 |
--------------------------------------------------------------------------------
/abb_robot_msgs/msg/ServiceResponses.msg:
--------------------------------------------------------------------------------
1 | # result codes are 16 bit unsigned
2 |
3 | # Generic OK
4 | string SUCCESS=""
5 | uint16 RC_SUCCESS=1
6 |
7 | # Generic failure message
8 | string FAILED="Service failed (e.g. timeout or resource not found, see the DEBUG log for details)"
9 | uint16 RC_FAILED=2
10 |
11 | # The server's underlying communication interface is busy
12 | string SERVER_IS_BUSY="Server is busy"
13 | uint16 RC_SERVER_IS_BUSY=1001
14 |
15 | # Filename field is empty in service request
16 | string EMPTY_FILENAME="Filename is empty"
17 | uint16 RC_EMPTY_FILENAME=2001
18 |
19 | # Signal name field is empty in service request
20 | string EMPTY_SIGNAL_NAME="Signal name is empty"
21 | uint16 RC_EMPTY_SIGNAL_NAME=2002
22 |
23 | # RAPID task name field is empty in service request
24 | string EMPTY_RAPID_TASK_NAME="RAPID task name is empty"
25 | uint16 RC_EMPTY_RAPID_TASK_NAME=2003
26 |
27 | # RAPID module name field is empty in service request
28 | string EMPTY_RAPID_MODULE_NAME="RAPID module name is empty"
29 | uint16 RC_EMPTY_RAPID_MODULE_NAME=2004
30 |
31 | # RAPID symbol name field is empty in service request
32 | string EMPTY_RAPID_SYMBOL_NAME="RAPID symbol name is empty"
33 | uint16 RC_EMPTY_RAPID_SYMBOL_NAME=2005
34 |
35 | # Robot controller is not in auto mode
36 | string NOT_IN_AUTO_MODE="Robot controller is not in AUTO mode"
37 | uint16 RC_NOT_IN_AUTO_MODE=3001
38 |
39 | # The motors are off
40 | string MOTORS_ARE_OFF="Motors are off"
41 | uint16 RC_MOTORS_ARE_OFF=3002
42 |
43 | # The motors are on
44 | string MOTORS_ARE_ON="Motors are on"
45 | uint16 RC_MOTORS_ARE_ON=3003
46 |
47 | # RAPID has not been stopped
48 | string RAPID_NOT_STOPPED="RAPID has not been stopped"
49 | uint16 RC_RAPID_NOT_STOPPED=3004
50 |
51 | # RAPID is not running
52 | string RAPID_NOT_RUNNING="RAPID is not running"
53 | uint16 RC_RAPID_NOT_RUNNING=3005
54 |
55 | # RobotWare StateMachine Add-In runtime state is missing
56 | string SM_RUNTIME_STATES_MISSING="No runtime states received for any StateMachine Add-In instance"
57 | uint16 RC_SM_RUNTIME_STATES_MISSING=4001
58 |
59 | # RobotWare StateMachine Add-In-instances do not know RAPID task
60 | string SM_UNKNOWN_RAPID_TASK="RAPID task not found among known StateMachine Add-In instances"
61 | uint16 RC_SM_UNKNOWN_RAPID_TASK=4002
62 |
63 | # RobotWare StateMachine Add-In instance has not been initialized
64 | string SM_UNINITIALIZED="StateMachine Add-In instance has not been initialized"
65 | uint16 RC_SM_UNINITIALIZED=4003
66 |
--------------------------------------------------------------------------------
/abb_rapid_sm_addin_msgs/srv/SetSGCommand.srv:
--------------------------------------------------------------------------------
1 | #-------------------------------------------------------------------------------
2 | # Description:
3 | # The purpose of this service definition, is to define a way to set the values
4 | # of predefined RAPID variables for commanding a SmartGripper tool.
5 | #
6 | # Note:
7 | # These variables are defined in each RAPID motion task, in ABB robot
8 | # controller systems, that are using the RobotWare "StateMachine Add-In"
9 | # together with a SmartGripper tool.
10 | #-------------------------------------------------------------------------------
11 |
12 | #-------------------------------------------------------------------------------
13 | # Enumerations
14 | #-------------------------------------------------------------------------------
15 | # Supported "StateMachine Add-In" SmartGripper commands:
16 | #
17 | # Note: These enumeration values differ from the RAPID implementation
18 | # values to avoid conflict with default values in ROS messages.
19 | uint8 SG_COMMAND_UNKNOWN = 1
20 | uint8 SG_COMMAND_NONE = 2
21 | uint8 SG_COMMAND_INITIALIZE = 3
22 | uint8 SG_COMMAND_CALIBRATE = 4
23 | uint8 SG_COMMAND_MOVE_TO = 5
24 | uint8 SG_COMMAND_GRIP_IN = 6
25 | uint8 SG_COMMAND_GRIP_OUT = 7
26 | uint8 SG_COMMAND_BLOW_ON_1 = 8
27 | uint8 SG_COMMAND_BLOW_ON_2 = 9
28 | uint8 SG_COMMAND_BLOW_OFF_1 = 10
29 | uint8 SG_COMMAND_BLOW_OFF_2 = 11
30 | uint8 SG_COMMAND_VACUUM_ON_1 = 12
31 | uint8 SG_COMMAND_VACUUM_ON_2 = 13
32 | uint8 SG_COMMAND_VACUUM_OFF_1 = 14
33 | uint8 SG_COMMAND_VACUUM_OFF_2 = 15
34 |
35 | #-------------------------------------------------------------------------------
36 | # Service request fields
37 | #-------------------------------------------------------------------------------
38 | # The RAPID task that runs the "StateMachine Add-In" instance.
39 | string task
40 |
41 | # Desired SmartGripper command.
42 | uint8 command
43 |
44 | # Desired target position [mm] (only used for the 'SG_COMMAND_MOVE_TO' command).
45 | float32 target_position
46 |
47 | ---
48 |
49 | #-------------------------------------------------------------------------------
50 | # Service response fields
51 | #-------------------------------------------------------------------------------
52 | # Service success/failure indicator.
53 | # Refer to 'abb_robot_msgs/ServiceResponses' for defined error codes.
54 | uint16 result_code
55 |
56 | # Status message (empty if service succeeded).
57 | string message
58 |
--------------------------------------------------------------------------------
/abb_egm_msgs/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0.2)
2 |
3 | ########################################################################################################################
4 | # Metadata
5 | ########################################################################################################################
6 | # Read the package manifest.
7 | file(READ "${CMAKE_CURRENT_SOURCE_DIR}/package.xml" package_xml_str)
8 |
9 | # Extract project name.
10 | if(NOT package_xml_str MATCHES "([A-Za-z0-9_]+)")
11 | message(FATAL_ERROR "Could not parse project name from package manifest (aborting)")
12 | else()
13 | set(extracted_name ${CMAKE_MATCH_1})
14 | endif()
15 |
16 | # Extract project version.
17 | if(NOT package_xml_str MATCHES "([0-9]+.[0-9]+.[0-9]+)")
18 | message(FATAL_ERROR "Could not parse project version from package manifest (aborting)")
19 | else()
20 | set(extracted_version ${CMAKE_MATCH_1})
21 | endif()
22 |
23 | ########################################################################################################################
24 | # CMake project
25 | ########################################################################################################################
26 | project(${extracted_name} VERSION ${extracted_version})
27 |
28 | #===========================================================
29 | # Dependencies
30 | #===========================================================
31 | #-----------------------------
32 | # Catkin packages
33 | #-----------------------------
34 | find_package(catkin
35 | REQUIRED COMPONENTS
36 | message_generation
37 | std_msgs
38 | )
39 |
40 | #===========================================================
41 | # Generate ROS interfaces
42 | #===========================================================
43 | add_message_files(
44 | FILES
45 | EGMChannelState.msg
46 | EGMState.msg
47 | )
48 |
49 | generate_messages(
50 | DEPENDENCIES
51 | std_msgs
52 | )
53 |
54 | #===========================================================
55 | # Catkin package specific configurations
56 | #===========================================================
57 | catkin_package(
58 | CATKIN_DEPENDS
59 | message_runtime
60 | std_msgs
61 | )
62 |
63 | #===========================================================
64 | # Install additional files
65 | #===========================================================
66 | install(
67 | FILES
68 | LICENSE
69 | README.md
70 | DESTINATION
71 | ${CATKIN_PACKAGE_SHARE_DESTINATION}
72 | )
73 |
--------------------------------------------------------------------------------
/abb_rapid_msgs/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0.2)
2 |
3 | ########################################################################################################################
4 | # Metadata
5 | ########################################################################################################################
6 | # Read the package manifest.
7 | file(READ "${CMAKE_CURRENT_SOURCE_DIR}/package.xml" package_xml_str)
8 |
9 | # Extract project name.
10 | if(NOT package_xml_str MATCHES "([A-Za-z0-9_]+)")
11 | message(FATAL_ERROR "Could not parse project name from package manifest (aborting)")
12 | else()
13 | set(extracted_name ${CMAKE_MATCH_1})
14 | endif()
15 |
16 | # Extract project version.
17 | if(NOT package_xml_str MATCHES "([0-9]+.[0-9]+.[0-9]+)")
18 | message(FATAL_ERROR "Could not parse project version from package manifest (aborting)")
19 | else()
20 | set(extracted_version ${CMAKE_MATCH_1})
21 | endif()
22 |
23 | ########################################################################################################################
24 | # CMake project
25 | ########################################################################################################################
26 | project(${extracted_name} VERSION ${extracted_version})
27 |
28 | #===========================================================
29 | # Dependencies
30 | #===========================================================
31 | #-----------------------------
32 | # Catkin packages
33 | #-----------------------------
34 | find_package(catkin
35 | REQUIRED COMPONENTS
36 | message_generation
37 | )
38 |
39 | #===========================================================
40 | # Generate ROS interfaces
41 | #===========================================================
42 | add_message_files(
43 | FILES
44 | ConfData.msg
45 | ExtJoint.msg
46 | JointTarget.msg
47 | LoadData.msg
48 | Orient.msg
49 | Pos.msg
50 | Pose.msg
51 | RobJoint.msg
52 | RobTarget.msg
53 | ToolData.msg
54 | WObjData.msg
55 | )
56 |
57 | generate_messages()
58 |
59 | #===========================================================
60 | # Catkin package specific configurations
61 | #===========================================================
62 | catkin_package(
63 | CATKIN_DEPENDS
64 | message_runtime
65 | )
66 |
67 | #===========================================================
68 | # Install additional files
69 | #===========================================================
70 | install(
71 | FILES
72 | LICENSE
73 | README.md
74 | DESTINATION
75 | ${CATKIN_PACKAGE_SHARE_DESTINATION}
76 | )
77 |
--------------------------------------------------------------------------------
/abb_rapid_sm_addin_msgs/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0.2)
2 |
3 | ########################################################################################################################
4 | # Metadata
5 | ########################################################################################################################
6 | # Read the package manifest.
7 | file(READ "${CMAKE_CURRENT_SOURCE_DIR}/package.xml" package_xml_str)
8 |
9 | # Extract project name.
10 | if(NOT package_xml_str MATCHES "([A-Za-z0-9_]+)")
11 | message(FATAL_ERROR "Could not parse project name from package manifest (aborting)")
12 | else()
13 | set(extracted_name ${CMAKE_MATCH_1})
14 | endif()
15 |
16 | # Extract project version.
17 | if(NOT package_xml_str MATCHES "([0-9]+.[0-9]+.[0-9]+)")
18 | message(FATAL_ERROR "Could not parse project version from package manifest (aborting)")
19 | else()
20 | set(extracted_version ${CMAKE_MATCH_1})
21 | endif()
22 |
23 | ########################################################################################################################
24 | # CMake project
25 | ########################################################################################################################
26 | project(${extracted_name} VERSION ${extracted_version})
27 |
28 | #===========================================================
29 | # Dependencies
30 | #===========================================================
31 | #-----------------------------
32 | # Catkin packages
33 | #-----------------------------
34 | find_package(catkin
35 | REQUIRED COMPONENTS
36 | abb_rapid_msgs
37 | message_generation
38 | std_msgs
39 | )
40 |
41 | #===========================================================
42 | # Generate ROS interfaces
43 | #===========================================================
44 | add_message_files(
45 | FILES
46 | EGMActivateSettings.msg
47 | EGMRunSettings.msg
48 | EGMSettings.msg
49 | EGMSetupSettings.msg
50 | EGMStopSettings.msg
51 | RuntimeState.msg
52 | StateMachineState.msg
53 | )
54 |
55 | add_service_files(
56 | FILES
57 | GetEGMSettings.srv
58 | SetEGMSettings.srv
59 | SetRAPIDRoutine.srv
60 | SetSGCommand.srv
61 | )
62 |
63 | generate_messages(
64 | DEPENDENCIES
65 | abb_rapid_msgs
66 | std_msgs
67 | )
68 |
69 | #===========================================================
70 | # Catkin package specific configurations
71 | #===========================================================
72 | catkin_package(
73 | CATKIN_DEPENDS
74 | abb_rapid_msgs
75 | message_runtime
76 | std_msgs
77 | )
78 |
79 | #===========================================================
80 | # Install additional files
81 | #===========================================================
82 | install(
83 | FILES
84 | LICENSE
85 | README.md
86 | DESTINATION
87 | ${CATKIN_PACKAGE_SHARE_DESTINATION}
88 | )
89 |
--------------------------------------------------------------------------------
/abb_robot_msgs/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.0.2)
2 |
3 | ########################################################################################################################
4 | # Metadata
5 | ########################################################################################################################
6 | # Read the package manifest.
7 | file(READ "${CMAKE_CURRENT_SOURCE_DIR}/package.xml" package_xml_str)
8 |
9 | # Extract project name.
10 | if(NOT package_xml_str MATCHES "([A-Za-z0-9_]+)")
11 | message(FATAL_ERROR "Could not parse project name from package manifest (aborting)")
12 | else()
13 | set(extracted_name ${CMAKE_MATCH_1})
14 | endif()
15 |
16 | # Extract project version.
17 | if(NOT package_xml_str MATCHES "([0-9]+.[0-9]+.[0-9]+)")
18 | message(FATAL_ERROR "Could not parse project version from package manifest (aborting)")
19 | else()
20 | set(extracted_version ${CMAKE_MATCH_1})
21 | endif()
22 |
23 | ########################################################################################################################
24 | # CMake project
25 | ########################################################################################################################
26 | project(${extracted_name} VERSION ${extracted_version})
27 |
28 | #===========================================================
29 | # Dependencies
30 | #===========================================================
31 | #-----------------------------
32 | # Catkin packages
33 | #-----------------------------
34 | find_package(catkin
35 | REQUIRED COMPONENTS
36 | message_generation
37 | std_msgs
38 | )
39 |
40 | #===========================================================
41 | # Generate ROS interfaces
42 | #===========================================================
43 | add_message_files(
44 | FILES
45 | MechanicalUnitState.msg
46 | RAPIDSymbolPath.msg
47 | RAPIDTaskState.msg
48 | ServiceResponses.msg
49 | SystemState.msg
50 | )
51 |
52 | add_service_files(
53 | FILES
54 | GetFileContents.srv
55 | GetIOSignal.srv
56 | GetRAPIDBool.srv
57 | GetRAPIDDnum.srv
58 | GetRAPIDNum.srv
59 | GetRAPIDString.srv
60 | GetRAPIDSymbol.srv
61 | GetRobotControllerDescription.srv
62 | GetSpeedRatio.srv
63 | SetFileContents.srv
64 | SetIOSignal.srv
65 | SetRAPIDBool.srv
66 | SetRAPIDDnum.srv
67 | SetRAPIDNum.srv
68 | SetRAPIDString.srv
69 | SetRAPIDSymbol.srv
70 | SetSpeedRatio.srv
71 | TriggerWithResultCode.srv
72 | )
73 |
74 | generate_messages(
75 | DEPENDENCIES
76 | std_msgs
77 | )
78 |
79 | #===========================================================
80 | # Catkin package specific configurations
81 | #===========================================================
82 | catkin_package(
83 | CATKIN_DEPENDS
84 | message_runtime
85 | std_msgs
86 | )
87 |
88 | #===========================================================
89 | # Install additional files
90 | #===========================================================
91 | install(
92 | FILES
93 | LICENSE
94 | README.md
95 | DESTINATION
96 | ${CATKIN_PACKAGE_SHARE_DESTINATION}
97 | )
98 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # abb_robot_driver_interfaces
2 |
3 | 
4 | 
5 | [](http://github.com/ros-industrial/abb_robot_driver_interfaces/issues)
6 |
7 | [](https://opensource.org/licenses/BSD-3-Clause)
8 |
9 | [](http://rosindustrial.org/news/2016/10/7/better-supporting-a-growing-ros-industrial-software-platform)
10 |
11 | **Please note that the included packages have not been productized, and that academia is the intended audience.**\
12 | **The packages are provided "as-is", and as such no more than limited support can be expected.**
13 |
14 | ## Overview
15 |
16 | ROS packages with ROS message and service definitions, intended for use with [abb_robot_driver](https://github.com/ros-industrial/abb_robot_driver).
17 |
18 | The included packages are briefly described in the following table:
19 |
20 | | Package | Description |
21 | | --- | --- |
22 | | [abb_robot_msgs](abb_robot_msgs) | ROS message and service definitions representing basic interaction with ABB robots:
- Reading system states (*e.g. motors on/off and if auto/manual mode is active*).
- Starting and stopping `RAPID` program execution.
- Reading and writing of `RAPID` data symbols (*e.g. variables and constants*).
- Reading and writing of IO-signals.
- And more.
|
23 | | [abb_rapid_msgs](abb_rapid_msgs) | ROS message definitions representing complex `RAPID` data structures:
- `loaddata`.
- `tooldata`.
- `wobjdata`.
- `jointtarget`.
- `robtarget`.
- And more.
|
24 | | [abb_egm_msgs](abb_egm_msgs) | ROS message definitions representing data related to *Externally Guided Motion* (`EGM`) communication channels. |
25 | | [abb_rapid_sm_addin_msgs](abb_rapid_sm_addin_msgs) | ROS message and service definitions representing interaction with `RAPID` program instances of the `RobotWare` [StateMachine Add-In](https://robotapps.robotstudio.com/#/viewApp/c163de01-792e-4892-a290-37dbe050b6e1):
- Reading runtime states of the `RAPID` program instances (*i.e. the state machines*).
- Starting and stopping `EGM` communication sessions.
- Reading and writing of `EGM` `RAPID` settings.
- Opening/closing `SmartGripper` fingers.
- And more.
|
26 |
27 | Please see [abb_robot_driver](https://github.com/ros-industrial/abb_robot_driver) for more details.
28 |
29 | ## Acknowledgements
30 |
31 | ### ROSIN Project
32 |
33 |
34 |
35 |
36 |
37 | The core development has been made within the European Union's Horizon 2020 project: ROSIN - ROS-Industrial Quality-Assured Robot Software Components (see http://rosin-project.eu for more info).
38 |
39 |
40 | The ROSIN project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement no. 732287.
41 |
42 |
43 | *The opinions expressed here reflects only the author's view and reflects in no way the European Commission's opinions. The European Commission is not responsible for any use that may be made of the contained information.*
44 |
45 | ### Special Thanks
46 |
47 | Special thanks to [gavanderhoorn](https://github.com/gavanderhoorn) for guidance with open-source practices and conventions.
48 |
--------------------------------------------------------------------------------