blob: c48fa1479ed757d7c4fef676c599b447d7a1f223 [file] [log] [blame]
Comran Morshed9a9948c2016-01-16 15:58:04 +00001genrule(
Brian Silverman7a7c24d2018-09-01 17:49:09 -07002 name = "genrule_drivetrain",
3 outs = [
4 "drivetrain_dog_motor_plant.h",
5 "drivetrain_dog_motor_plant.cc",
James Kuszmauleeb98e92024-01-14 22:15:32 -08006 "drivetrain_dog_motor_plant.json",
Brian Silverman7a7c24d2018-09-01 17:49:09 -07007 "kalman_drivetrain_motor_plant.h",
8 "kalman_drivetrain_motor_plant.cc",
James Kuszmauleeb98e92024-01-14 22:15:32 -08009 "kalman_drivetrain_motor_plant.json",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070010 ],
11 cmd = "$(location //y2016/control_loops/python:drivetrain) $(OUTS)",
Philipp Schraderdada1072020-11-24 11:34:46 -080012 target_compatible_with = ["@platforms//os:linux"],
Brian Silverman7a7c24d2018-09-01 17:49:09 -070013 tools = [
14 "//y2016/control_loops/python:drivetrain",
15 ],
Comran Morshed9a9948c2016-01-16 15:58:04 +000016)
17
18genrule(
Brian Silverman7a7c24d2018-09-01 17:49:09 -070019 name = "genrule_polydrivetrain",
20 outs = [
21 "polydrivetrain_dog_motor_plant.h",
22 "polydrivetrain_dog_motor_plant.cc",
James Kuszmauleeb98e92024-01-14 22:15:32 -080023 "polydrivetrain_dog_motor_plant.json",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070024 "polydrivetrain_cim_plant.h",
25 "polydrivetrain_cim_plant.cc",
James Kuszmauleeb98e92024-01-14 22:15:32 -080026 "polydrivetrain_cim_plant.json",
Austin Schuh74425152018-12-21 11:37:14 +110027 "hybrid_velocity_drivetrain.h",
28 "hybrid_velocity_drivetrain.cc",
James Kuszmauleeb98e92024-01-14 22:15:32 -080029 "hybrid_velocity_drivetrain.json",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070030 ],
31 cmd = "$(location //y2016/control_loops/python:polydrivetrain) $(OUTS)",
Philipp Schraderdada1072020-11-24 11:34:46 -080032 target_compatible_with = ["@platforms//os:linux"],
Brian Silverman7a7c24d2018-09-01 17:49:09 -070033 tools = [
34 "//y2016/control_loops/python:polydrivetrain",
35 ],
Comran Morshed9a9948c2016-01-16 15:58:04 +000036)
37
38cc_library(
Brian Silverman7a7c24d2018-09-01 17:49:09 -070039 name = "polydrivetrain_plants",
40 srcs = [
41 "drivetrain_dog_motor_plant.cc",
Austin Schuh74425152018-12-21 11:37:14 +110042 "hybrid_velocity_drivetrain.cc",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070043 "kalman_drivetrain_motor_plant.cc",
44 "polydrivetrain_dog_motor_plant.cc",
45 ],
46 hdrs = [
47 "drivetrain_dog_motor_plant.h",
Austin Schuh74425152018-12-21 11:37:14 +110048 "hybrid_velocity_drivetrain.h",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070049 "kalman_drivetrain_motor_plant.h",
50 "polydrivetrain_dog_motor_plant.h",
51 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080052 target_compatible_with = ["@platforms//os:linux"],
Austin Schuh74425152018-12-21 11:37:14 +110053 visibility = ["//visibility:public"],
Brian Silverman7a7c24d2018-09-01 17:49:09 -070054 deps = [
Austin Schuh74425152018-12-21 11:37:14 +110055 "//frc971/control_loops:hybrid_state_feedback_loop",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070056 "//frc971/control_loops:state_feedback_loop",
57 ],
Comran Morshed9a9948c2016-01-16 15:58:04 +000058)
59
60cc_library(
Brian Silverman7a7c24d2018-09-01 17:49:09 -070061 name = "drivetrain_base",
62 srcs = [
63 "drivetrain_base.cc",
64 ],
65 hdrs = [
66 "drivetrain_base.h",
67 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080068 target_compatible_with = ["@platforms//os:linux"],
Austin Schuh74425152018-12-21 11:37:14 +110069 visibility = ["//visibility:public"],
Brian Silverman7a7c24d2018-09-01 17:49:09 -070070 deps = [
71 ":polydrivetrain_plants",
72 "//frc971:shifter_hall_effect",
73 "//frc971/control_loops/drivetrain:drivetrain_config",
74 "//y2016:constants",
75 ],
Comran Morshed9a9948c2016-01-16 15:58:04 +000076)
77
78cc_binary(
Brian Silverman7a7c24d2018-09-01 17:49:09 -070079 name = "drivetrain",
80 srcs = [
81 "drivetrain_main.cc",
82 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080083 target_compatible_with = ["@platforms//os:linux"],
Austin Schuh74425152018-12-21 11:37:14 +110084 visibility = ["//visibility:public"],
Brian Silverman7a7c24d2018-09-01 17:49:09 -070085 deps = [
86 ":drivetrain_base",
John Park398c74a2018-10-20 21:17:39 -070087 "//aos:init",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070088 "//frc971/control_loops/drivetrain:drivetrain_lib",
89 ],
Comran Morshed9a9948c2016-01-16 15:58:04 +000090)