![]() |
Re: PID control loop/Encoder question
Quote:
|
Re: PID control loop/Encoder question
I would recommend using the quadrature. If you are not powering the motors and you are pushed, you will have no idea what direction you are moving.
Plus it's really easy. It's as simple as saying: When A goes high, if B is low you are going one direction, and if B is high you are going the other direction. If you have A hooked up to an interrupt (which you will), you can assume that A has just risen so you just have to read B. |
Re: PID control loop/Encoder question
If you are using feedback to control the speed of the drive motors (wheels) then you absolutely MUST know which direction the wheels are turning
feedback must have a direction - thats WHY you are using feedback, to see what your wheels are actually doing - you already know what you want them to do and what you are telling them to do. If your bot is going slow, or has stopped, and your PID loop tells it to slow down a little more, and it overshoots and starts going backwards a little - then you speed magnitude will be increaseing, but you will be going backwards - so your PID loop will keep telling the motors to reverse harder and harder (since you thought you were going forwards) and the bot will go backwards faster and faster. your feedback sensors must tell you the direction of rotation. |
Re: PID control loop/Encoder question
Okay - I am convinced quadrature is the way to go.
Thanks, |
| All times are GMT -5. The time now is 15:21. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi