blob: 9a5bb53ebc836d3c74e7b568dcd8829d557a2856 [file] [log] [blame]
Austin Schuh2314c812018-12-21 13:42:33 +11001package(default_visibility = ["//visibility:public"])
Comran Morshed41ed7c22015-11-04 21:03:37 +00002
Campbell Crowley9c3ecfd2015-12-31 17:04:30 -08003genrule(
Austin Schuh2314c812018-12-21 13:42:33 +11004 name = "genrule_drivetrain",
5 outs = [
6 "drivetrain_dog_motor_plant.h",
7 "drivetrain_dog_motor_plant.cc",
8 "kalman_drivetrain_motor_plant.h",
9 "kalman_drivetrain_motor_plant.cc",
10 ],
11 cmd = "$(location //y2014_bot3/control_loops/python:drivetrain) $(OUTS)",
Philipp Schraderdada1072020-11-24 11:34:46 -080012 target_compatible_with = ["@platforms//os:linux"],
Austin Schuh2314c812018-12-21 13:42:33 +110013 tools = [
14 "//y2014_bot3/control_loops/python:drivetrain",
15 ],
16 visibility = ["//visibility:private"],
Adam Snaider83eae562016-09-10 16:47:33 -070017)
18
19genrule(
Austin Schuh2314c812018-12-21 13:42:33 +110020 name = "genrule_polydrivetrain",
21 outs = [
22 "polydrivetrain_dog_motor_plant.h",
23 "polydrivetrain_dog_motor_plant.cc",
24 "polydrivetrain_cim_plant.h",
25 "polydrivetrain_cim_plant.cc",
Austin Schuh74425152018-12-21 11:37:14 +110026 "hybrid_velocity_drivetrain.h",
27 "hybrid_velocity_drivetrain.cc",
Austin Schuh2314c812018-12-21 13:42:33 +110028 ],
29 cmd = "$(location //y2014_bot3/control_loops/python:polydrivetrain) $(OUTS)",
Philipp Schraderdada1072020-11-24 11:34:46 -080030 target_compatible_with = ["@platforms//os:linux"],
Austin Schuh2314c812018-12-21 13:42:33 +110031 tools = [
32 "//y2014_bot3/control_loops/python:polydrivetrain",
33 ],
34 visibility = ["//visibility:private"],
Campbell Crowley9c3ecfd2015-12-31 17:04:30 -080035)
36
Comran Morshed41ed7c22015-11-04 21:03:37 +000037cc_library(
Austin Schuh2314c812018-12-21 13:42:33 +110038 name = "polydrivetrain_plants",
39 srcs = [
40 "drivetrain_dog_motor_plant.cc",
Austin Schuh74425152018-12-21 11:37:14 +110041 "hybrid_velocity_drivetrain.cc",
Austin Schuh2314c812018-12-21 13:42:33 +110042 "kalman_drivetrain_motor_plant.cc",
43 "polydrivetrain_dog_motor_plant.cc",
44 ],
45 hdrs = [
46 "drivetrain_dog_motor_plant.h",
Austin Schuh74425152018-12-21 11:37:14 +110047 "hybrid_velocity_drivetrain.h",
Austin Schuh2314c812018-12-21 13:42:33 +110048 "kalman_drivetrain_motor_plant.h",
49 "polydrivetrain_dog_motor_plant.h",
50 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080051 target_compatible_with = ["@platforms//os:linux"],
Austin Schuh2314c812018-12-21 13:42:33 +110052 deps = [
Austin Schuh74425152018-12-21 11:37:14 +110053 "//frc971/control_loops:hybrid_state_feedback_loop",
Austin Schuh2314c812018-12-21 13:42:33 +110054 "//frc971/control_loops:state_feedback_loop",
55 ],
Comran Morshed41ed7c22015-11-04 21:03:37 +000056)
57
Adam Snaider83eae562016-09-10 16:47:33 -070058cc_library(
Austin Schuh2314c812018-12-21 13:42:33 +110059 name = "drivetrain_base",
60 srcs = [
61 "drivetrain_base.cc",
62 ],
63 hdrs = [
64 "drivetrain_base.h",
65 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080066 target_compatible_with = ["@platforms//os:linux"],
Austin Schuh2314c812018-12-21 13:42:33 +110067 deps = [
68 ":polydrivetrain_plants",
69 "//frc971:shifter_hall_effect",
70 "//frc971/control_loops/drivetrain:drivetrain_config",
71 ],
Comran Morshed41ed7c22015-11-04 21:03:37 +000072)
73
74cc_binary(
Austin Schuh2314c812018-12-21 13:42:33 +110075 name = "drivetrain",
76 srcs = [
77 "drivetrain_main.cc",
78 ],
Philipp Schraderdada1072020-11-24 11:34:46 -080079 target_compatible_with = ["@platforms//os:linux"],
Austin Schuh2314c812018-12-21 13:42:33 +110080 deps = [
81 ":drivetrain_base",
82 "//aos:init",
Alex Perrycb7da4b2019-08-28 19:35:56 -070083 "//aos/events:shm_event_loop",
Austin Schuh2314c812018-12-21 13:42:33 +110084 "//frc971/control_loops/drivetrain:drivetrain_lib",
85 ],
Comran Morshed41ed7c22015-11-04 21:03:37 +000086)