libstp
Robotics library for Botball
Loading...
Searching...
No Matches
characterize_drive.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <map>
4
#include <string>
5
#include <vector>
6
7
#include "
autotune/types.hpp
"
8
#include "
drive/drive.hpp
"
9
#include "
hal/odometry.hpp
"
10
11
namespace
libstp::autotune
12
{
29
class
DriveCharacterizer
30
{
31
public
:
36
DriveCharacterizer
(
drive::Drive
&
drive
,
odometry::IOdometry
&
odometry
);
37
46
[[nodiscard]]
AxisResult
characterizeAxis
(
const
std::string& axis,
47
const
CharacterizeConfig
& cfg)
const
;
48
56
[[nodiscard]] std::map<std::string, AxisResult>
57
characterize
(
const
std::vector<std::string>& axes,
58
const
CharacterizeConfig
& cfg)
const
;
59
60
private
:
62
void
brakeMotors()
const
;
63
64
drive::Drive
& drive_;
65
odometry::IOdometry
& odometry_;
66
};
67
68
}
// namespace libstp::autotune
libstp::autotune::DriveCharacterizer::characterizeAxis
AxisResult characterizeAxis(const std::string &axis, const CharacterizeConfig &cfg) const
Characterize a single axis.
libstp::autotune::DriveCharacterizer::characterize
std::map< std::string, AxisResult > characterize(const std::vector< std::string > &axes, const CharacterizeConfig &cfg) const
Characterize multiple axes in sequence.
libstp::autotune::DriveCharacterizer::DriveCharacterizer
DriveCharacterizer(drive::Drive &drive, odometry::IOdometry &odometry)
libstp::drive::Drive
Definition
drive.hpp:36
drive.hpp
types.hpp
odometry.hpp
libstp::autotune
Definition
auto_tuner.hpp:16
libstp::drive
Definition
drive.hpp:14
libstp::odometry
Definition
angle_utils.hpp:7
libstp::autotune::AxisResult
Measured physical limits for a single chassis axis.
Definition
types.hpp:19
libstp::autotune::CharacterizeConfig
Configuration for the DriveCharacterizer.
Definition
types.hpp:32
libstp::odometry::IOdometry
Definition
odometry.hpp:57
modules
libstp-autotune
include
autotune
characterize_drive.hpp
Generated by
1.15.0