Motor Controller Temporal Resolution

In Aerial Assist, the Lake Monsters used an electric catapult. Instead of a physical stop, we had software monitor the position of the catapult arm and apply full reverse power when the desired release point was reached. We struggled with repeatability. Sometime after the end of the season it dawned on us that we could not achieve the 1-millisecond accuracy of braking that we needed because the PWM input to the Talons has an input rate of (as I recall) about 4 milliseconds. This means it could take anywhere up to 4 milliseconds for the Talon to “notice” that the input signal has changed. This resulted in an uncertainty of release angle of about 2 degrees which was more than enough to spoil our longer shots.

For the future, we were wondering about the resolution when controlling a Jaguar or the new Talon SRX using CAN. Does anyone have any idea how quickly these devices will respond to a CAN motor command?

Thanks!

Michael Goldsmith
2635 Lead Mentor

In labview, it looks like it will be updated at 20ms (10 for the Talon SRX) if I’m reading the code correctly. You may be able to set this yourself in code. WRT the repeatability you were seeing, can you explain the setup (PWM/CAN) and programming language you were using?

I believe all the speed controllers update at 5ms except for the legacy Victor, which was at 10ms. If you look at the diagram of the various motor control Open nodes, you’ll see them us 1x, 2x, or 4x as their period multiplier. This is in 5ms increments.

Greg McKaskle

For anyone confused at home, adciv gave the update rate for CAN on the roboRIO, (ie how often the roboRIO will send a new command) and Greg gave the update rate for PWM on the roboRIO. On the cRIO, by default, only the jaguar used 5ms for PWM.

Michael, what kind of sensor did you use for the catapult position? Correct me if I’m wrong, but if you could get the catapult to stop at the right position, it wouldn’t matter what the temporal resolution is, right?

Thanks Joe. I was in the middle of fact-checking when you posted this.

I’m curious of the speed of your shooter or the length of the arm that would give you a 2 degree variation over a few ms.