Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wrong differential steering behavior #20

Open
cammace opened this issue May 6, 2017 · 2 comments
Open

Wrong differential steering behavior #20

cammace opened this issue May 6, 2017 · 2 comments

Comments

@cammace
Copy link
Collaborator

cammace commented May 6, 2017

As mentioned on Wikipedia,

If both the wheels are driven in the same direction and speed, the robot will go in a straight line. If both wheels are turned with equal speed in opposite directions, as is clear from the diagram shown, the robot will rotate about the central point of the axis

You are currently only turning on one side of the wheels to turn instead of reversing the other side.

@zugaldia
Copy link
Owner

zugaldia commented May 7, 2017

@cammace Thanks. We actually had that behavior in the past but #16 changed it to correct a few issues of the implementation at the time.

What I'd like to see is an abstract WheelsBehavior interface (or similar name) that developers could easily override, while providing 2-3 default implementations, including the one you link to.

@hsalameh
Copy link
Collaborator

hsalameh commented May 7, 2017

@zugaldia @cammace in #16 I only changed it such that if you press UP+LEFT or UP+RIGHT simultaneously, it will rotate that side at a lower speed than the other side to get the wide turn effect. But if you only press LEFT or RIGHT, without the UP arrow, it still works as before by reversing the other side. So basically it is still working as described in that wikipedia link @cammace mentioned.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants