PID programming help

We are using EasyC and are trying to have our two motors on the left arm match the encoder value of the encoder on the right arm. The left arm runs a little faster than the right. Do we first need to set up floating point variables and get the encoders value? Is there a good reference guide on the PID function block?

Hi Roel,

Sorry you are having this issue. Since this is a question about easyC I suggest you contact Intelitek Support here -Support - Intelitek

Also, I have moved your question to the public forum so other users can help.

Let me know if you have any further questions,


I would suggest putting more cross bars, more rubber bands on the slow side, and more designing to reduce friction. Programming is always the most difficult way to balance lift.

You do PID in easy c just like how you would do it anywhere else. Create lists of variables and write your controllers. You can let one side match up to the other side. Or you can do the freeze+balance lift trick. When you are not pressing buttons, record the last sensor values from both sides, and let both sides hit that targe. Go search AURA’s PID guide and Jpearman’s sample PID controller. Understand the basic concepts and start applying them based on your needs. Don’t forget your three limits on integral!