RIT VEXU Core API
Toggle main menu visibility
Loading...
Searching...
No Matches
odometry_3wheel.h
1
#pragma once
2
#include "core/subsystems/custom_encoder.h"
3
#include "core/subsystems/odometry/odometry_base.h"
4
#include "core/subsystems/tank_drive.h"
5
32
class
Odometry3Wheel
:
public
OdometryBase
{
33
public
:
38
typedef
struct
{
39
double
wheelbase_dist
;
40
double
off_axis_center_dist
;
41
double
wheel_diam
;
42
43
}
odometry3wheel_cfg_t
;
44
54
Odometry3Wheel
(
CustomEncoder
&lside_fwd,
CustomEncoder
&rside_fwd,
CustomEncoder
&off_axis,
odometry3wheel_cfg_t
&cfg,
55
bool
is_async =
true
);
56
63
Pose2d
update
()
override
;
64
73
void
tune
(vex::controller &con,
TankDrive
&drive);
74
75
private
:
88
static
Pose2d
calculate_new_pos(
double
lside_delta_deg,
double
rside_delta_deg,
double
offax_delta_deg,
89
Pose2d
old_pos,
odometry3wheel_cfg_t
cfg);
90
91
CustomEncoder
&lside_fwd, &rside_fwd, &off_axis;
92
odometry3wheel_cfg_t
&cfg;
93
};
CustomEncoder
Definition
custom_encoder.h:8
Odometry3Wheel::update
Pose2d update() override
Definition
odometry_3wheel.cpp:15
Odometry3Wheel::Odometry3Wheel
Odometry3Wheel(CustomEncoder &lside_fwd, CustomEncoder &rside_fwd, CustomEncoder &off_axis, odometry3wheel_cfg_t &cfg, bool is_async=true)
Definition
odometry_3wheel.cpp:4
Odometry3Wheel::tune
void tune(vex::controller &con, TankDrive &drive)
Definition
odometry_3wheel.cpp:131
OdometryBase::OdometryBase
OdometryBase(bool is_async)
Definition
odometry_base.cpp:8
Pose2d
Definition
pose2d.h:24
TankDrive
Definition
tank_drive.h:23
Odometry3Wheel::odometry3wheel_cfg_t
Definition
odometry_3wheel.h:38
Odometry3Wheel::odometry3wheel_cfg_t::wheel_diam
double wheel_diam
Definition
odometry_3wheel.h:41
Odometry3Wheel::odometry3wheel_cfg_t::wheelbase_dist
double wheelbase_dist
Definition
odometry_3wheel.h:39
Odometry3Wheel::odometry3wheel_cfg_t::off_axis_center_dist
double off_axis_center_dist
Definition
odometry_3wheel.h:40
include
core
subsystems
odometry
odometry_3wheel.h
Generated by
1.17.0