Franky 1.0.0
A High-Level Motion API for Franka
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
joint_velocity_waypoint_motion.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <franka/robot_state.h>
4
5#include <atomic>
6#include <optional>
7#include <ruckig/ruckig.hpp>
8
11
12namespace franky {
13
19class JointVelocityWaypointMotion : public VelocityWaypointMotion<franka::JointVelocities, Vector7d> {
20 public:
28 const std::vector<VelocityWaypoint<Vector7d>> &waypoints,
29 const RelativeDynamicsFactor &relative_dynamics_factor = 1.0);
30
31 protected:
32 void checkWaypoint(const VelocityWaypoint<Vector7d> &waypoint) const override;
33
35 const RobotState &robot_state, const std::optional<franka::JointVelocities> &previous_command,
36 ruckig::InputParameter<7> &input_parameter) override;
37
38 void setNewWaypoint(
39 const RobotState &robot_state, const std::optional<franka::JointVelocities> &previous_command,
40 const VelocityWaypoint<Vector7d> &new_waypoint, ruckig::InputParameter<7> &input_parameter) override;
41
42 [[nodiscard]] std::tuple<Vector7d, Vector7d, Vector7d> getAbsoluteInputLimits() const override;
43
44 [[nodiscard]] franka::JointVelocities getControlSignal(
45 const RobotState &robot_state, const franka::Duration &time_step,
46 const std::optional<franka::JointVelocities> &previous_command,
47 const ruckig::InputParameter<7> &input_parameter) override;
48
49 [[nodiscard]] std::tuple<Vector7d, Vector7d, Vector7d> getDesiredState(const RobotState &robot_state) const override;
50};
51
52} // namespace franky
Joint velocity waypoint motion.
Definition joint_velocity_waypoint_motion.hpp:19
std::tuple< Vector7d, Vector7d, Vector7d > getDesiredState(const RobotState &robot_state) const override
Definition joint_velocity_waypoint_motion.cpp:51
franka::JointVelocities getControlSignal(const RobotState &robot_state, const franka::Duration &time_step, const std::optional< franka::JointVelocities > &previous_command, const ruckig::InputParameter< 7 > &input_parameter) override
Definition joint_velocity_waypoint_motion.cpp:31
std::tuple< Vector7d, Vector7d, Vector7d > getAbsoluteInputLimits() const override
Definition joint_velocity_waypoint_motion.cpp:46
void initWaypointMotion(const RobotState &robot_state, const std::optional< franka::JointVelocities > &previous_command, ruckig::InputParameter< 7 > &input_parameter) override
Definition joint_velocity_waypoint_motion.cpp:20
void checkWaypoint(const VelocityWaypoint< Vector7d > &waypoint) const override
Definition joint_velocity_waypoint_motion.cpp:11
void setNewWaypoint(const RobotState &robot_state, const std::optional< franka::JointVelocities > &previous_command, const VelocityWaypoint< Vector7d > &new_waypoint, ruckig::InputParameter< 7 > &input_parameter) override
Definition joint_velocity_waypoint_motion.cpp:37
Relative dynamics factors.
Definition relative_dynamics_factor.hpp:13
A motion following multiple positional waypoints in a time-optimal way. Works with arbitrary initial ...
Definition velocity_waypoint_motion.hpp:28
Definition dynamics_limit.cpp:8
Full state of the robot.
Definition robot_state.hpp:20
A waypoint with a target and optional parameters.
Definition waypoint_motion.hpp:33