blob: 629c95742c8b81ef1f8b7a2546faac152d9470c5 [file] [log] [blame]
Brian Silverman7a7c24d2018-09-01 17:49:09 -07001load("//aos/build:queues.bzl", "queue_library")
Comran Morshed9a9948c2016-01-16 15:58:04 +00002
3genrule(
Brian Silverman7a7c24d2018-09-01 17:49:09 -07004 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 //y2016/control_loops/python:drivetrain) $(OUTS)",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070012 tools = [
13 "//y2016/control_loops/python:drivetrain",
14 ],
Comran Morshed9a9948c2016-01-16 15:58:04 +000015)
16
17genrule(
Brian Silverman7a7c24d2018-09-01 17:49:09 -070018 name = "genrule_polydrivetrain",
19 outs = [
20 "polydrivetrain_dog_motor_plant.h",
21 "polydrivetrain_dog_motor_plant.cc",
22 "polydrivetrain_cim_plant.h",
23 "polydrivetrain_cim_plant.cc",
Austin Schuh74425152018-12-21 11:37:14 +110024 "hybrid_velocity_drivetrain.h",
25 "hybrid_velocity_drivetrain.cc",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070026 ],
27 cmd = "$(location //y2016/control_loops/python:polydrivetrain) $(OUTS)",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070028 tools = [
29 "//y2016/control_loops/python:polydrivetrain",
30 ],
Comran Morshed9a9948c2016-01-16 15:58:04 +000031)
32
33cc_library(
Brian Silverman7a7c24d2018-09-01 17:49:09 -070034 name = "polydrivetrain_plants",
35 srcs = [
36 "drivetrain_dog_motor_plant.cc",
Austin Schuh74425152018-12-21 11:37:14 +110037 "hybrid_velocity_drivetrain.cc",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070038 "kalman_drivetrain_motor_plant.cc",
39 "polydrivetrain_dog_motor_plant.cc",
40 ],
41 hdrs = [
42 "drivetrain_dog_motor_plant.h",
Austin Schuh74425152018-12-21 11:37:14 +110043 "hybrid_velocity_drivetrain.h",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070044 "kalman_drivetrain_motor_plant.h",
45 "polydrivetrain_dog_motor_plant.h",
46 ],
Austin Schuh74425152018-12-21 11:37:14 +110047 visibility = ["//visibility:public"],
Brian Silverman7a7c24d2018-09-01 17:49:09 -070048 deps = [
Austin Schuh74425152018-12-21 11:37:14 +110049 "//frc971/control_loops:hybrid_state_feedback_loop",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070050 "//frc971/control_loops:state_feedback_loop",
51 ],
Comran Morshed9a9948c2016-01-16 15:58:04 +000052)
53
54cc_library(
Brian Silverman7a7c24d2018-09-01 17:49:09 -070055 name = "drivetrain_base",
56 srcs = [
57 "drivetrain_base.cc",
58 ],
59 hdrs = [
60 "drivetrain_base.h",
61 ],
Austin Schuh74425152018-12-21 11:37:14 +110062 visibility = ["//visibility:public"],
Brian Silverman7a7c24d2018-09-01 17:49:09 -070063 deps = [
64 ":polydrivetrain_plants",
65 "//frc971:shifter_hall_effect",
66 "//frc971/control_loops/drivetrain:drivetrain_config",
67 "//y2016:constants",
68 ],
Comran Morshed9a9948c2016-01-16 15:58:04 +000069)
70
71cc_binary(
Brian Silverman7a7c24d2018-09-01 17:49:09 -070072 name = "drivetrain",
73 srcs = [
74 "drivetrain_main.cc",
75 ],
Austin Schuh74425152018-12-21 11:37:14 +110076 visibility = ["//visibility:public"],
Brian Silverman7a7c24d2018-09-01 17:49:09 -070077 deps = [
78 ":drivetrain_base",
John Park398c74a2018-10-20 21:17:39 -070079 "//aos:init",
Brian Silverman7a7c24d2018-09-01 17:49:09 -070080 "//frc971/control_loops/drivetrain:drivetrain_lib",
81 ],
Comran Morshed9a9948c2016-01-16 15:58:04 +000082)