Hello,
This year my team decided that we would like to program the robot drive, and arm control using CANJaguars. We wanted to do this last year, however the CANJags weren't fully implemented yet.
So, before I begin programming i have a few questions.
1) We are using mecanum wheels for our drive train, My assumption after looking through the CANJaguar code is that all I need to do is set the control mode to kSpeed, and then set m_maxoutput to the physical max RPM of our slowest motor.
2) Does the CANJaguar class automatically use feedback from the encoders to correct its speed using PID? I'm assuming again that i would first need to set the speed reference to kSpeedRef_QuadEncoder, and then set the P, I, and D.
3) When the CANJag is set to KSpeed, the source code comments say the constructor will automatically set the speed reference to the quad encoder, but i don't see where in the constructor it does that.
4) I have some qualms about using the jags internal PID loop because of what was said on this thread
http://www.chiefdelphi.com/forums/sh...t=90508&page=2 however it looks like they were using java. Can anyone confirm whether this is also happening with c++?
Finally, we are also going to be using an arm for our manipulator. I am planning on using potentiometers to determine position.
5) The CANJaguar class has a ConfigPotentiometerTurns(UINT16 turns) function, but the pots i was planning on using only turn 340 degrees(slightly less than 1 turn). Should I just use a 1, and then set soft position limits? For this I'm again assuming that the CANJaguar will automatically use feedback from the potentiometers and use PID to control the arms position.
6) Not really about CAN, but does anyone know if the potentiometers must be 10k, as per the jaguar manual, or is it possible to use other values?
If someone could answer these questions, or confirm/disconfirm my assumptions it would be a huge help! I've read through the CanJaguar source, and understand what each function does, however when I actually look at the functions I'm having trouble following how they are doing what they say they are doing.