VEXPro 3-CIM Ball Shifter encoder?

We’re looking at the Grayhill 63R series encoders for our VEXPro 3-CIM ball shifters.

Question what “Pulses per revolution” should we get? 256, 128, or 64? What are you using? Any issues with the high PPR? Will the new control system behave differently than the old?

Thanks!

  • Mr. Van
    Coach, Robodox

New and old system will handle the 256 no problem, get the most resolution you can.

The control system should be fine with all three resolutions.

That said, the 256 ppr encoders we have generate much noisier signals than the 64’s. This becomes an issue if you’re using PD control (specifically the d). The issue goes away if you use a low pass filter or turn on the FPGA’s moving average feature (I think we averaged 4 or 8 samples).

The new control system has a much higher digital sample rate then the cRIO. This means that it can handle even higher resolution encoders, or have less noise in velocity measurements. However, due to phase error in the encoder, you will still want to use 1x decoding or 4x decoding with 4 sample averaging for velocity measurements.

We are almost done building our practice chassis and we have included encoders for the first time. We ordered the Grayhill 63R series 256 encoders.

The 4 sample averaging is a great suggestion that we will implement. I presume this is just reading the encoder in teleopPeriodic() and keeping a running average of the last n samples.

Can you elaborate on the 1x decoding or 4x decoding?

All of the decoding happens in hardware in the FPGA, including the rolling sample average. All you need to do is configure the encoder object in your code to use 1x decoding or 4x decoding with 4 sample averaging as Joe suggests.

In Labview, this happens in Begin.vi when you call the Encoder Open block. In C++ or Java, these are either parameters for the Encoder object constructor method, or have corresponding set methods to be called after instantiation.

We are trying to source the wire and connector for the Grayhill 63r encoder (5pins) and the best/most appropriate way to connect this.

Anyone have an answer?

Are the encoders in stock now?