41103C 26/27
Documentation for 41103C 1/3 for the 2026/2027 Vex V5 Season Override
Loading...
Searching...
No Matches
odom.hpp
1#pragma once
2#include "api.h"
3#include "helpers.hpp"
4#include "main.h"
5
6extern std::atomic<float> HorizontalWheelPosition;
7extern std::atomic<float> VerticalWheelPosition;
8
9const float verticalOdomOffsetInches = 1.9375f;
10const float horizontalOdomOffsetInches = 0.0f;
11
12const float inverseOffset = 1.0f / (verticalOdomOffsetInches + horizontalOdomOffsetInches);
13
14const float radiusLeftIn = 2.0f;
15const float radiusRightIn = 2.0f;
16const float radiusBackIn = 2.0f;
17
18const float circLeftIn = radiusLeftIn * radiusLeftIn * PI;
19const float circRightIn = radiusRightIn * radiusRightIn * PI;
20const float circBackIn = radiusBackIn * radiusBackIn * PI;
21
22const float inv2Pi = 1.0f / (2.0f * PI);
23const float deg2rad = PI / 180.0f;
24const float convertFactor = /* 2 * PI / 130.0f */ 1.0f;
25
26void odomCalcPos(void);
27void odomCalcPos2(void);
28void odomGetPos(void);
29void odomReset(void);
30void brainScreenManager(void);
31
32extern std::atomic<float> globalHeading;
33extern std::atomic<float> globalHeadingAtLastReset;
34extern float prevGlobalHeading;
35
36extern float lastLeft;
37extern float lastRight;
38extern float lastBack;
39
40extern std::atomic<float> globalXIn;
41extern std::atomic<float> globalYIn;
42extern std::atomic<float> lastGlobalXIn;
43extern std::atomic<float> lastGlobalYIn;
44
45extern std::atomic<float> leftAtLastReset;
46extern std::atomic<float> rightAtLastReset;
47
48extern std::atomic<float> odomLeftPosRads;
49extern std::atomic<float> odomRightPosRads;
50extern std::atomic<float> odomBackPosRads;
51
52extern std::atomic<int> dist;