|
PID Subsystem using direct PWM ouput
I am using a PID subsystem to control our arm. When I start the command to setToSetpoint(setpoint), the PID subsystem actually accesses the PWM port directly, and as I have already made an instance of that PWM port for teleop, I get a NullPointerException for a used PWM port. This stops our code, and is basically detrimental to all our PID controllers. Its worth noting that all of our motor objects are outside of the PID classes, mostly for organization. I am using custom methods to control those motors. These custom commands are perfectly functional, and are not the problem (We use them in teleop). How can I make it so that the PID subsystem does not "reach" into the other portions of the code, and just give the output. Thats it. Is there a workaround for this, or is this not common? I have had very little luck with PID control systems and I am getting fed up with how it has been implemented in the wpilibj libraries. Maybe making my own algorithm might work better.
__________________
All opinions are my own.
|