I am needing to know what encoders do we need to buy to put them on the drive train and how would be connect them and program them be have never used them before.

Describe your drivetrain in detail (e.g. mecanum or H drive or skidsteer, what gearboxes, etc etc) and what you want the encoders to do for you.

As @Ether said, more details would be appreciated. I programmed the encoders for my team this year but my experience is limited.

we have the gearbox drive train with the AM14U2 Drive System. (We only use one motor on each side if that helps)

What do you use for speed control (talons, victors, jaguars) and what kind of wheels do you have?


and the regular kit weals (tile)

My team uses jaguars, but the code might be similar. What language do you program in?


What our electrical team did was they wired optical encoders onto the axel and into the jag. Inside of the DriveTrain subsystem, I called a method on each of the jags to inform them that they have encoders. That portion of code looked like this:

rightFront.setPercentMode(CANJaguar.kQuadEncoder, encoderCounts);

Below that, I enabled encoder control on each of the jags:


I was then able to use the encoders in other programs.

I wouldn’t know without looking at the javadocs, but if I were to make an educated guess I would say that setting up encoders would be similar to this but with talons instead of jaguars.

ok what kind of encoders did you get and how did you attach them.

What do you plan to use the encoders for? Making sure both wheels turn at the same speed or are you using it for finding out how far you have driven?

We used optical encoders, I’d have to ask the electrical folks for more details. I’m working on incorporating them into autonomous mode.

both but mainly distance.

These are the encoders our team purchased http://www.andymark.com/product-p/am-0180.htm and they are working extremely well for us. One thing we want to try is wiring them directly up to our talons (You can only do this if you have the talon SRX’s).

If you cant wire them up to the talons then wire them up to the roboRIO, our team accomplished this by cutting up 2 unneeded PWM cables. We wired the cables like so:

(This image is not mine, I just found it online)

Then we programmed them link this

	Encoder encoderleft; //Declare the encoders so they are accessible in all methods 
	Encoder encoderright;

	public void robotInit() {
		encoderleft = new Encoder(0, 1); //Initalize the encoder, A channel is plugged into DIO 0, B channel DIO 1.
		encoderright = new Encoder(2, 3);

		encoderleft.setDistancePerPulse(0.11); //did some math to calculate that for 1 pulse the robot moved 0.11 of an inch (Will be different for other robots) 

	public void autonomousPeriodic() {
		double distance = (encoderleft.getDistance() + encoderright.getDistance()) /2; //Find the distance robot has travled based off of the average of the 2 encoders. 

		//Code to make your robot move off of the encoder values here

The encoders should be connected to DIOs, not PWM ports!

Yes, I agree, that diagram can be misleading out of context. The “PWM” in the diagram refers to the use of PWM cable/connectors.

In context (i.e. on the web page where the diagram came from) it explicitly says to connect the cable to DIO ports.

is there any reason why i wouldnt get an accurate reading from the encoders?

To avoid having two separate conversations about two unrelated questions in the same thread, it would be best if you started a new thread if your question is not related to the OP’s question; and provide more detail about the problem you are experiencing.

Does that encoder work with the 2015 KOP chassis gearboxes? The video tutorial on the item page shows a different gearbox, so I just want to make sure it works with the KOP one.

We should have added encoders a while ago before bag & tag, but since we didn’t we will be adding them during the 6-hour robot access period the week of our first district event. Currently our autonomous modes are based on a timer which isn’t very accurate or predictable.