![]() |
RobWorkProject
20.10.1-
|
URRTDE class provides a control interface for the UR Robots using RTDE. More...
#include <URRTDE.hpp>
Public Types | |
| typedef rw::core::Ptr< URRTDE > | Ptr |
Public Member Functions | |
| URRTDE (std::string robot_ip, std::vector< std::string > variables={}) | |
| bool | reconnect () |
| bool | isConnected () |
| void | stopRobot () |
| bool | reuploadScript () |
| bool | sendCustomScriptFunction (const std::string &function_name, const std::string &script) |
| bool | sendCustomScriptFile (const std::string &file_path) |
| bool | moveJ (const rw::math::Q &q, double speed, double acceleration) |
| Move to joint configuration (linear in joint-space) More... | |
| bool | moveJ (const rw::trajectory::QPath &q_path) |
| Move to each joint configuration specified in a QPath. More... | |
| bool | moveJ_IK (const rw::math::Transform3D<> &pose, double speed, double acceleration) |
| Move to pose (linear in joint-space) More... | |
| bool | moveL (const rw::math::Transform3D<> &pose, double speed, double acceleration) |
| Move to position (linear in tool-space) More... | |
| bool | moveL (const rw::trajectory::Transform3DPath &pose_path) |
| Move to each pose specified in a Transform3DPath. More... | |
| bool | moveL_FK (const rw::math::Q &q, double speed, double acceleration) |
| Move to position (linear in tool-space) More... | |
| bool | speedJ (const rw::math::Q &qd, double acceleration, double time=0.0) |
| Joint speed - Accelerate linearly in joint space and continue with constant joint speed. More... | |
| bool | speedL (const rw::math::Q &xd, double acceleration, double time=0.0) |
| Tool speed - Accelerate linearly in Cartesian space and continue with constant tool speed. The time t is optional;. More... | |
| bool | servoJ (const rw::math::Q &q, double speed, double acceleration, double time, double lookahead_time, double gain) |
| Servo to position (linear in joint-space) More... | |
| bool | servoStop () |
| bool | speedStop () |
| bool | forceMode (const rw::math::Transform3D<> &task_frame, const rw::math::Q &selection_vector, const rw::math::Wrench6D<> &wrench, int type, const rw::math::Q &limits) |
| Set robot to be controlled in force mode. More... | |
| bool | forceModeStop () |
| bool | zeroFtSensor () |
| bool | setStandardDigitalOut (std::uint8_t output_id, bool signal_level) |
| bool | setToolDigitalOut (std::uint8_t output_id, bool signal_level) |
| bool | setPayload (double mass, const std::vector< double > &cog={}) |
| bool | teachMode () |
| bool | endTeachMode () |
| bool | forceModeSetDamping (double damping) |
| bool | forceModeSetGainScaling (double scaling) |
| bool | setSpeedSlider (double speed) |
| bool | setAnalogOutputVoltage (std::uint8_t output_id, double voltage_ratio) |
| bool | setAnalogOutputCurrent (std::uint8_t output_id, double current_ratio) |
| bool | isProgramRunning () |
| double | getTimestamp () |
| rw::math::Q | getTargetQ () |
| rw::math::Q | getTargetQd () |
| rw::math::Q | getTargetQdd () |
| rw::math::Q | getTargetCurrent () |
| rw::math::Q | getTargetMoment () |
| rw::math::Q | getActualQ () |
| rw::math::Q | getActualQd () |
| rw::math::Q | getActualCurrent () |
| rw::math::Q | getJointControlOutput () |
| rw::math::Transform3D | getActualTCPPose () |
| rw::math::Q | getActualTCPSpeed () |
| rw::math::Wrench6D | getActualTCPForce () |
| rw::math::Transform3D | getTargetTCPPose () |
| rw::math::Q | getTargetTCPSpeed () |
| uint64_t | getActualDigitalInputBits () |
| rw::math::Q | getJointTemperatures () |
| double | getActualExecutionTime () |
| int32_t | getRobotMode () |
| uint32_t | getRobotStatus () |
| std::vector< int32_t > | getJointMode () |
| int32_t | getSafetyMode () |
| rw::math::Q | getActualToolAccelerometer () |
| double | getSpeedScaling () |
| double | getTargetSpeedFraction () |
| double | getActualMomentum () |
| double | getActualMainVoltage () |
| double | getActualRobotVoltage () |
| double | getActualRobotCurrent () |
| rw::math::Q | getActualJointVoltage () |
| uint64_t | getActualDigitalOutputBits () |
| uint32_t | getRuntimeState () |
| double | getStandardAnalogInput0 () |
| double | getStandardAnalogInput1 () |
| double | getStandardAnalogOutput0 () |
| double | getStandardAnalogOutput1 () |
URRTDE class provides a control interface for the UR Robots using RTDE.
| bool endTeachMode | ( | ) |
| bool forceMode | ( | const rw::math::Transform3D<> & | task_frame, |
| const rw::math::Q & | selection_vector, | ||
| const rw::math::Wrench6D<> & | wrench, | ||
| int | type, | ||
| const rw::math::Q & | limits | ||
| ) |
Set robot to be controlled in force mode.
| task_frame | A Transform3D pose that defines the force frame relative to the base frame. |
| selection_vector | A 6d Q vector of 0s and 1s. 1 means that the robot will be compliant in the corresponding axis of the task frame |
| wrench | The forces/torques the robot will apply to its environment. The robot adjusts its position along/about compliant axis in order to achieve the specified force/torque. Values have no effect for non-compliant axes |
| type | An integer [1;3] specifying how the robot interprets the force frame. 1: The force frame is transformed in a way such that its y-axis is aligned with a vector pointing from the robot tcp towards the origin of the force frame. 2: The force frame is not transformed. 3: The force frame is transformed in a way such that its x-axis is the projection of the robot tcp velocity vector onto the x-y plane of the force frame. |
| limits | (Float) 6d Q vector. For compliant axes, these values are the maximum allowed tcp speed along/about the axis. For non-compliant axes, these values are the maximum allowed deviation along/about an axis between the actual tcp position and the one set by the program. |
| bool forceModeSetDamping | ( | double | damping | ) |
| bool forceModeSetGainScaling | ( | double | scaling | ) |
| bool forceModeStop | ( | ) |
| rw::math::Q getActualCurrent | ( | ) |
| uint64_t getActualDigitalInputBits | ( | ) |
| uint64_t getActualDigitalOutputBits | ( | ) |
| double getActualExecutionTime | ( | ) |
| rw::math::Q getActualJointVoltage | ( | ) |
| double getActualMainVoltage | ( | ) |
| double getActualMomentum | ( | ) |
| rw::math::Q getActualQ | ( | ) |
| rw::math::Q getActualQd | ( | ) |
| double getActualRobotCurrent | ( | ) |
| double getActualRobotVoltage | ( | ) |
| rw::math::Wrench6D getActualTCPForce | ( | ) |
| rw::math::Transform3D getActualTCPPose | ( | ) |
| rw::math::Q getActualTCPSpeed | ( | ) |
| rw::math::Q getActualToolAccelerometer | ( | ) |
| rw::math::Q getJointControlOutput | ( | ) |
| std::vector< int32_t > getJointMode | ( | ) |
| rw::math::Q getJointTemperatures | ( | ) |
| int32_t getRobotMode | ( | ) |
| uint32_t getRobotStatus | ( | ) |
| uint32_t getRuntimeState | ( | ) |
| int32_t getSafetyMode | ( | ) |
| double getSpeedScaling | ( | ) |
| double getStandardAnalogInput0 | ( | ) |
| double getStandardAnalogInput1 | ( | ) |
| double getStandardAnalogOutput0 | ( | ) |
| double getStandardAnalogOutput1 | ( | ) |
| rw::math::Q getTargetCurrent | ( | ) |
| rw::math::Q getTargetMoment | ( | ) |
| rw::math::Q getTargetQ | ( | ) |
| rw::math::Q getTargetQd | ( | ) |
| rw::math::Q getTargetQdd | ( | ) |
| double getTargetSpeedFraction | ( | ) |
| rw::math::Transform3D getTargetTCPPose | ( | ) |
| rw::math::Q getTargetTCPSpeed | ( | ) |
| double getTimestamp | ( | ) |
| bool isConnected | ( | ) |
| bool isProgramRunning | ( | ) |
| bool moveJ | ( | const rw::math::Q & | q, |
| double | speed, | ||
| double | acceleration | ||
| ) |
Move to joint configuration (linear in joint-space)
| q | joint positions |
| speed | joint speed of leading axis [rad/s] |
| acceleration | joint acceleration of leading axis [rad/s^2] |
| bool moveJ | ( | const rw::trajectory::QPath & | q_path | ) |
Move to each joint configuration specified in a QPath.
| q_path | with joint configurations that includes acceleration, speed and blend for each configuration |
| bool moveJ_IK | ( | const rw::math::Transform3D<> & | pose, |
| double | speed, | ||
| double | acceleration | ||
| ) |
Move to pose (linear in joint-space)
| pose | target pose as Transform3D |
| speed | joint speed of leading axis [rad/s] |
| acceleration | joint acceleration of leading axis [rad/s^2] |
| bool moveL | ( | const rw::math::Transform3D<> & | pose, |
| double | speed, | ||
| double | acceleration | ||
| ) |
Move to position (linear in tool-space)
| pose | target pose |
| speed | tool speed [m/s] |
| acceleration | tool acceleration [m/s^2] |
| bool moveL | ( | const rw::trajectory::Transform3DPath & | pose_path | ) |
Move to each pose specified in a Transform3DPath.
| path | with tool poses specified as Transform3D |
| bool moveL_FK | ( | const rw::math::Q & | q, |
| double | speed, | ||
| double | acceleration | ||
| ) |
Move to position (linear in tool-space)
| q | joint positions |
| speed | tool speed [m/s] |
| acceleration | tool acceleration [m/s^2] |
| bool reconnect | ( | ) |
| bool reuploadScript | ( | ) |
| bool sendCustomScriptFile | ( | const std::string & | file_path | ) |
| bool sendCustomScriptFunction | ( | const std::string & | function_name, |
| const std::string & | script | ||
| ) |
| bool servoJ | ( | const rw::math::Q & | q, |
| double | speed, | ||
| double | acceleration, | ||
| double | time, | ||
| double | lookahead_time, | ||
| double | gain | ||
| ) |
Servo to position (linear in joint-space)
| q | joint positions [rad] |
| speed | NOT used in current version |
| acceleration | NOT used in current version |
| time | time where the command is controlling the robot. The function is blocking for time t [S] |
| lookahead_time | time [S], range [0.03,0.2] smoothens the trajectory with this lookahead time |
| gain | proportional gain for following target position, range [100,2000] |
| bool servoStop | ( | ) |
| bool setAnalogOutputCurrent | ( | std::uint8_t | output_id, |
| double | current_ratio | ||
| ) |
| bool setAnalogOutputVoltage | ( | std::uint8_t | output_id, |
| double | voltage_ratio | ||
| ) |
| bool setPayload | ( | double | mass, |
| const std::vector< double > & | cog = {} |
||
| ) |
| bool setSpeedSlider | ( | double | speed | ) |
| bool setStandardDigitalOut | ( | std::uint8_t | output_id, |
| bool | signal_level | ||
| ) |
| bool setToolDigitalOut | ( | std::uint8_t | output_id, |
| bool | signal_level | ||
| ) |
| bool speedJ | ( | const rw::math::Q & | qd, |
| double | acceleration, | ||
| double | time = 0.0 |
||
| ) |
Joint speed - Accelerate linearly in joint space and continue with constant joint speed.
| qd | joint speeds [rad/s] |
| acceleration | joint acceleration [rad/s^2] (of leading axis) |
| time | time [s] before the function returns (optional) |
| bool speedL | ( | const rw::math::Q & | xd, |
| double | acceleration, | ||
| double | time = 0.0 |
||
| ) |
Tool speed - Accelerate linearly in Cartesian space and continue with constant tool speed. The time t is optional;.
| xd | tool speed [m/s] (spatial vector) |
| acceleration | tool position acceleration [m/s^2] |
| time | time [s] before the function returns (optional) |
| bool speedStop | ( | ) |
| void stopRobot | ( | ) |
| bool teachMode | ( | ) |
| bool zeroFtSensor | ( | ) |
1.8.17