Franky  0.9.1
A High-Level Motion API for Franka
joint_waypoint_motion.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include <atomic>
4 #include <optional>
5 #include <ruckig/ruckig.hpp>
6 
7 #include <franka/robot_state.h>
8 
9 #include "franky/joint_state.hpp"
11 
12 namespace franky {
13 
19 class JointWaypointMotion : public WaypointMotion<franka::JointPositions, JointState> {
20  public:
24  explicit JointWaypointMotion(const std::vector<Waypoint<JointState>> &waypoints);
25 
30  explicit JointWaypointMotion(const std::vector<Waypoint<JointState>> &waypoints, Params params);
31 
32  protected:
33 
34  void initWaypointMotion(
35  const franka::RobotState &robot_state,
36  const std::optional<franka::JointPositions> &previous_command,
37  ruckig::InputParameter<7> &input_parameter) override;
38 
39  void setNewWaypoint(
40  const franka::RobotState &robot_state,
41  const std::optional<franka::JointPositions> &previous_command,
42  const Waypoint<JointState> &new_waypoint,
43  ruckig::InputParameter<7> &input_parameter) override;
44 
45  [[nodiscard]] std::tuple<Vector7d, Vector7d, Vector7d> getAbsoluteInputLimits() const override;
46 
48  const ruckig::InputParameter<7> &input_parameter) const override;
49 };
50 
51 } // namespace franky
Joint waypoint motion.
Definition: joint_waypoint_motion.hpp:19
void initWaypointMotion(const franka::RobotState &robot_state, const std::optional< franka::JointPositions > &previous_command, ruckig::InputParameter< 7 > &input_parameter) override
Definition: joint_waypoint_motion.cpp:15
void setNewWaypoint(const franka::RobotState &robot_state, const std::optional< franka::JointPositions > &previous_command, const Waypoint< JointState > &new_waypoint, ruckig::InputParameter< 7 > &input_parameter) override
Definition: joint_waypoint_motion.cpp:32
std::tuple< Vector7d, Vector7d, Vector7d > getAbsoluteInputLimits() const override
Definition: joint_waypoint_motion.cpp:45
franka::JointPositions getControlSignal(const ruckig::InputParameter< 7 > &input_parameter) const override
Definition: joint_waypoint_motion.cpp:27
JointWaypointMotion(const std::vector< Waypoint< JointState >> &waypoints)
Definition: joint_waypoint_motion.cpp:9
A motion following multiple waypoints in a time-optimal way. Works with arbitrary initial conditions.
Definition: waypoint_motion.hpp:51
Definition: gripper.cpp:3
@ JointPositions
Definition: control_signal_type.hpp:11
A waypoint with a target and optional parameters.
Definition: waypoint_motion.hpp:34