blob: 64ec11b06a3d82a3140dc73e813dd527975322a1 [file] [log] [blame]
milind-u086d7262022-01-19 20:44:18 -08001#!/usr/bin/python3
2
3import sys
4from y2022.control_loops.python import drivetrain
5from frc971.control_loops.python import polydrivetrain
6
7import gflags
8import glog
9
10__author__ = 'Austin Schuh (austin.linux@gmail.com)'
11
12FLAGS = gflags.FLAGS
13
14try:
Ravago Jones5127ccc2022-07-31 16:32:45 -070015 gflags.DEFINE_bool('plot', False, 'If true, plot the loop response.')
milind-u086d7262022-01-19 20:44:18 -080016except gflags.DuplicateFlagError:
Ravago Jones5127ccc2022-07-31 16:32:45 -070017 pass
18
milind-u086d7262022-01-19 20:44:18 -080019
20def main(argv):
Ravago Jones5127ccc2022-07-31 16:32:45 -070021 if FLAGS.plot:
22 polydrivetrain.PlotPolyDrivetrainMotions(drivetrain.kDrivetrain)
James Kuszmauleeb98e92024-01-14 22:15:32 -080023 elif len(argv) != 10:
24 glog.fatal('Expected .h, .cc, and .json filenames')
Ravago Jones5127ccc2022-07-31 16:32:45 -070025 else:
James Kuszmauleeb98e92024-01-14 22:15:32 -080026 polydrivetrain.WritePolyDrivetrain(argv[1:4], argv[4:7], argv[7:10],
Ravago Jones5127ccc2022-07-31 16:32:45 -070027 'y2022', drivetrain.kDrivetrain)
28
milind-u086d7262022-01-19 20:44:18 -080029
30if __name__ == '__main__':
Ravago Jones5127ccc2022-07-31 16:32:45 -070031 argv = FLAGS(sys.argv)
32 glog.init()
33 sys.exit(main(argv))