-
Notifications
You must be signed in to change notification settings - Fork 611
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[wpilib] Adding torque input classes to PhysicsSim classes (Fly, DC, Elev, Arm, DriveTrain) #7157
base: main
Are you sure you want to change the base?
[wpilib] Adding torque input classes to PhysicsSim classes (Fly, DC, Elev, Arm, DriveTrain) #7157
Conversation
/format |
So at this point I have the Java written for all of the sim classes new and old. I'm still doing some fine tuning of the DifferentialDriveTrainSim classes. I need some feedback before I can really continue on in any meaningful way. @PeterJohnson, @calcmogul, @ThadHouse, @sciencewhiz or all and/or others at the top level of wpilibj and wpimath any feedback would be appreciated and of course is welcome, but please don't feel like I'm rushing anyone. Status updates like this help my thought process and organization. Things I know I need to do.
Things that are ready for checking/feedback. - I'm going to thank anyone that provides feedback in advance. I know this PR is a biggie. |
Addresses Issue #7130
I have PR #7021 waiting for merging. So I'm starting with the
FlywheelSim
class. I'm also planning on a PR forElevatorSim
andSingleJointedArmSim
in line with PR#7021 that I plan on implementing here instead unless these need to be separate.I've also added units class overloads to each sim and LinearSystemId
Requested Guidance/Feedback
I marked it with a TODO comment in the affected classes.
Examples: DCMotorSimBase for base class, DCMotorSim for voltage control, DCMotorSimTorque for torque control
EDIT and Update
Left to do
I would like to use PR #7168 here for DCMotors resistance unit.
At this point I’ve finished the basics for the non drivetrain classes. I still have some documentation cleanup to do. I’m sure questions, corrections, and changes will abound.
DCMotorType will be named DCMotor. It’s just a temporary name while I focus on one Sim at a time without breaking all of them.
Other than that I’m more than ready to move on to the drivetrain sim. I’d like to integrate the odometry class into this but it may not be necessary. Question on the sim. I know the pose information is part of the calculation, but should the getPose methods be removed as this would be a concern for the geometry class. I'm only thinking this way because someone wanting to use this class may want to model it closely to the real setup in their user code.
Also I’m assuming there is no way or no easy way to use or create a linear plant for mecanum or swerve.
Currently still working on Java. I’d like to get an affirmative go ahead after I finish the drivetrain and tests in Java before I create the C++