1#ifndef OF_JOINTINTEGRATOR_HPP
2#define OF_JOINTINTEGRATOR_HPP
26 m_cfg(config), m_current_angle(0 * rad)
32 m_current_angle = std::clamp(current_angle, m_cfg.min_angle, m_cfg.max_angle);
38 if (std::abs(input_ratio) < m_cfg.deadzone)
45 Units::Angle delta = input_ratio * m_cfg.max_speed * m_cfg.dt;
48 m_current_angle += delta;
51 m_current_angle = std::clamp(m_current_angle, m_cfg.min_angle, m_cfg.max_angle);
53 return m_current_angle;
Units::Angle step(float input_ratio)
定义 JointSetpointGenerator.hpp:35
void set_current(const Units::Angle current_angle)
定义 JointSetpointGenerator.hpp:30
Units::Angle get_target() const
定义 JointSetpointGenerator.hpp:56
Solver(const Config &config)
定义 JointSetpointGenerator.hpp:24
定义 JointSetpointGenerator.hpp:9
quantity< radian, float > Angle
定义 Units.hpp:32
quantity< milli< second >, float > Time
定义 Units.hpp:50
quantity< radian/second, float > AngularVelocity
定义 Units.hpp:35
定义 JointSetpointGenerator.hpp:13
float deadzone
定义 JointSetpointGenerator.hpp:18
Units::Angle min_angle
定义 JointSetpointGenerator.hpp:14
Units::Time dt
定义 JointSetpointGenerator.hpp:17
Units::Angle max_angle
定义 JointSetpointGenerator.hpp:15
Units::AngularVelocity max_speed
定义 JointSetpointGenerator.hpp:16