Open El1zabethS opened 1 year ago
video useful for drivetrain tuning and system optimization
So i have a question, but i cant answer it on my own because im not sure which branch is tied to this issue,
are we using position control on the neos in most recent attempt to control the arm. i see a link to that in your most recent comment. in that chief delphi thread someone links this : https://codedocs.revrobotics.com/java/com/revrobotics/sparkmaxpidcontroller#setReference(double,com.revrobotics.CANSparkMax.ControlType,int,double)
apparently we can use position mode, you might already be using this but im not sure, gonna look through codebase to see if i see SetReference() using a position signature.
added the branch (feat#97-feedForward)
also i don't believe we are using position mode, i will take a look
I also think I have some other ideas of implementation, as well as the fact that it wants the position in radians, so i need to see what "position" we pass into it. and i think i have an idea of how to offset feedforward so we can still keep our standardized method of positions
If you need to you can use degreesToRadians()
Thanks for linking the branch!
^^^ above link:
Despite being ctre, it explains the math behind "arm feed forward" which gives a deeper understanding of how it works. It also enables us to implement it better because we understand it lol, its a short but insightful read (just the gravity offset arm part)
FeedForward takes current inputs to the arm (whether that be static inputs from things like gravity, or updating inputs like voltage to the motor) and calculates where the arm is GOING to be.
Feedforward will be useful for preventing drift in systems like: