ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
PI control is a completely valid way of doing control if you can get the response you're looking for without the derivative term. Given I see the word "arduino" I'm guessing you're working with hobbyist hardware. Even with cheaper but reasonable pro hardware, the derivative term of a controller can be finicky because small amounts of noise or interpolation errors can mess with the derivative estimate. You'd want either (or both) a high resolution encoder and a high gearing ratio. I'd think that reducing from 100hz to 50hz could make it worse, though since you have more measurements to work with from the encoder, the encoder error will look less bad since you have a longer sampling duration.
If you find that the derivative term results in bad behavior, setting it to 0 is reasonable. Work on your integral term though, that should help you out a bunch.