2024-Robot
Robot code for 2024 FRC season by Argos, FRC team #1756
Loading...
Searching...
No Matches
control_loops.h
Go to the documentation of this file.
1
4
5#pragma once
6
7#include <ctre/phoenix6/signals/SpnEnums.hpp>
8
9#include "units/angular_acceleration.h"
10#include "units/angular_velocity.h"
11
12namespace controlLoop {
13 namespace comp_bot {
14 namespace drive {
15 struct rotate {
16 constexpr static double kP = 137;
17 constexpr static double kI = 0.0;
18 constexpr static double kD = 0.0;
19 constexpr static double kS = 0.0;
20 constexpr static double kV = 0.0;
21 constexpr static double kA = 0.0;
22 constexpr static double kG = 0.0;
23 constexpr static int gravityType = ctre::phoenix6::signals::GravityTypeValue::Elevator_Static;
24 }; // namespace rotate
25 struct drive {
26 constexpr static double kP = 0.3;
27 constexpr static double kI = 0.0;
28 constexpr static double kD = 0.0;
29 constexpr static double kS = 0.0;
30 constexpr static double kV = 0.1241;
31 constexpr static double kA = 0.0;
32 constexpr static double kG = 0.0;
33 constexpr static int gravityType = ctre::phoenix6::signals::GravityTypeValue::Elevator_Static;
34 }; // namespace drive
36 constexpr static double kP = 1.0;
37 constexpr static double kI = 0.0;
38 constexpr static double kD = 0.15;
39 }; // namespace linear_follower
41 constexpr static double kP = 1.0;
42 constexpr static double kI = 0.00;
43 constexpr static double kD = 0.05;
44 constexpr static auto angularVelocity = units::degrees_per_second_t{360};
45 constexpr static auto angularAcceleration = units::degrees_per_second_squared_t{360};
46 }; // namespace rotational_follower
47 } // namespace drive
48 namespace climber {
49 struct climber {
50 constexpr static double kP = 1.0;
51 constexpr static double kI = 0.0;
52 constexpr static double kD = 0.0;
53 constexpr static double kS = 0.0;
54 constexpr static double kV = 0.0;
55 constexpr static double kA = 0.0;
56 constexpr static double kG = 0.24;
57 constexpr static int gravityType = ctre::phoenix6::signals::GravityTypeValue::Elevator_Static;
58 };
59 } // namespace climber
60 namespace elevator {
61 struct lift {
62 constexpr static double kP = 2.1;
63 constexpr static double kI = 0.0;
64 constexpr static double kD = 0.04;
65 constexpr static double kS = 0.0;
66 constexpr static double kV = 0.0;
67 constexpr static double kA = 0.0;
68 constexpr static double kG = 0.4;
69 constexpr static int gravityType = ctre::phoenix6::signals::GravityTypeValue::Elevator_Static;
70 };
71 struct carriage {
72 constexpr static double kP = 75;
73 constexpr static double kI = 0.0;
74 constexpr static double kD = 0.0;
75 constexpr static double kS = 0.0;
76 constexpr static double kV = 0.0;
77 constexpr static double kA = 0.0;
78 constexpr static double kG = -0.45;
79 constexpr static int gravityType = ctre::phoenix6::signals::GravityTypeValue::Arm_Cosine;
80 };
81 } // namespace elevator
82 namespace shooter {
83 struct shoot {
84 constexpr static double kP = 0.5;
85 constexpr static double kI = 0.0;
86 constexpr static double kD = 0.0;
87 constexpr static double kV = 0.12;
88 };
89 } // namespace shooter
90 } // namespace comp_bot
91 namespace practice_bot {
98 namespace climber {
100 } // namespace climber
101 namespace elevator {
104 } // namespace elevator
105 namespace shooter {
107 } // namespace shooter
108 } // namespace practice_bot
109} // namespace controlLoop
Definition control_loops.h:12
Definition control_loops.h:49
static constexpr double kA
Definition control_loops.h:55
static constexpr int gravityType
Definition control_loops.h:57
static constexpr double kI
Definition control_loops.h:51
static constexpr double kP
Definition control_loops.h:50
static constexpr double kS
Definition control_loops.h:53
static constexpr double kV
Definition control_loops.h:54
static constexpr double kG
Definition control_loops.h:56
static constexpr double kD
Definition control_loops.h:52
Definition control_loops.h:25
static constexpr int gravityType
Definition control_loops.h:33
static constexpr double kD
Definition control_loops.h:28
static constexpr double kA
Definition control_loops.h:31
static constexpr double kV
Definition control_loops.h:30
static constexpr double kP
Definition control_loops.h:26
static constexpr double kS
Definition control_loops.h:29
static constexpr double kG
Definition control_loops.h:32
static constexpr double kI
Definition control_loops.h:27
static constexpr double kP
Definition control_loops.h:36
static constexpr double kD
Definition control_loops.h:38
static constexpr double kI
Definition control_loops.h:37
Definition control_loops.h:15
static constexpr double kG
Definition control_loops.h:22
static constexpr double kA
Definition control_loops.h:21
static constexpr double kP
Definition control_loops.h:16
static constexpr double kS
Definition control_loops.h:19
static constexpr int gravityType
Definition control_loops.h:23
static constexpr double kV
Definition control_loops.h:20
static constexpr double kI
Definition control_loops.h:17
static constexpr double kD
Definition control_loops.h:18
static constexpr auto angularAcceleration
Definition control_loops.h:45
static constexpr double kP
Definition control_loops.h:41
static constexpr auto angularVelocity
Definition control_loops.h:44
static constexpr double kD
Definition control_loops.h:43
static constexpr double kI
Definition control_loops.h:42
Definition control_loops.h:71
static constexpr int gravityType
Definition control_loops.h:79
static constexpr double kA
Definition control_loops.h:77
static constexpr double kS
Definition control_loops.h:75
static constexpr double kI
Definition control_loops.h:73
static constexpr double kP
Definition control_loops.h:72
static constexpr double kD
Definition control_loops.h:74
static constexpr double kG
Definition control_loops.h:78
static constexpr double kV
Definition control_loops.h:76
Definition control_loops.h:61
static constexpr double kD
Definition control_loops.h:64
static constexpr double kG
Definition control_loops.h:68
static constexpr double kS
Definition control_loops.h:65
static constexpr int gravityType
Definition control_loops.h:69
static constexpr double kA
Definition control_loops.h:67
static constexpr double kP
Definition control_loops.h:62
static constexpr double kI
Definition control_loops.h:63
static constexpr double kV
Definition control_loops.h:66
Definition control_loops.h:83
static constexpr double kD
Definition control_loops.h:86
static constexpr double kP
Definition control_loops.h:84
static constexpr double kV
Definition control_loops.h:87
static constexpr double kI
Definition control_loops.h:85