Create the y2021_bot3 folder
It builds! yay
Change-Id: I732955c018ce2988de64486e2457e673efd2cbb8
diff --git a/y2021_bot3/constants.h b/y2021_bot3/constants.h
new file mode 100644
index 0000000..fa95550
--- /dev/null
+++ b/y2021_bot3/constants.h
@@ -0,0 +1,44 @@
+#ifndef Y2021_BOT3_CONSTANTS_H_
+#define Y2021_BOT3_CONSTANTS_H_
+
+#include <math.h>
+#include <stdint.h>
+
+#include <array>
+
+#include "frc971/constants.h"
+#include "frc971/control_loops/pose.h"
+#include "frc971/control_loops/static_zeroing_single_dof_profiled_subsystem.h"
+#include "y2021_bot3/control_loops/drivetrain/drivetrain_dog_motor_plant.h"
+
+namespace y2021_bot3 {
+namespace constants {
+
+struct Values {
+ static const int kZeroingSampleSize = 200;
+
+ static constexpr double kDrivetrainCyclesPerRevolution() { return 512.0; }
+ static constexpr double kDrivetrainEncoderCountsPerRevolution() {
+ return kDrivetrainCyclesPerRevolution() * 4;
+ }
+ static constexpr double kDrivetrainEncoderRatio() { return (24.0 / 52.0); }
+ static constexpr double kMaxDrivetrainEncoderPulsesPerSecond() {
+ return control_loops::drivetrain::kFreeSpeed / (2.0 * M_PI) *
+ control_loops::drivetrain::kHighOutputRatio /
+ constants::Values::kDrivetrainEncoderRatio() *
+ kDrivetrainEncoderCountsPerRevolution();
+ }
+};
+
+// Creates (once) a Values instance for ::aos::network::GetTeamNumber() and
+// returns a reference to it.
+const Values &GetValues();
+
+// Creates Values instances for each team number it is called with and returns
+// them.
+const Values &GetValuesForTeam(uint16_t team_number);
+
+} // namespace constants
+} // namespace y2021_bot3
+
+#endif // Y2021_BOT3_CONSTANTS_H_