View Single Post
  #6   Spotlight this post!  
Unread 31-03-2012, 22:09
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,087
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: Curve Driving Generator


This is not a 3D problem. It's a problem in a 2D flat plane, and a skid-steer vehicle has only 2 degrees of freedom (rotation and fwd/reverse translation) in that plane.

To execute a smooth* path from an arbitrary point A (starting with heading angle Alpha) to point B (ending with heading angle Beta) the vehicle's instantaneous translation and/or rotation rates must continuously change over time in order to follow that path and arrive at the destination with the proper heading.

So the problem is:

1) given the starting and ending points and headings, what criteria are to be used to define the desired path? smoothest* curve? Shortest distance* ? Shortest time? radius of curvature* never less than some specified minimum value?

2) how to compute the curve defined by those specifications

3) how to use the curve to determine the required instantaneous vehicle rotation and translation at any point along the curve

4) how to use the answer to #3 to determine the left and right wheel speeds (for skid steer) at each point along the curve

5) is the path to be computed once (at the start) and then executed to completion without feedback, or is the path periodically re-computed to minimize accumulated drift errors

For a subset of the possible starting and ending points and headings, it is possible, as explained in earlier posts in this thread, to compute a cubic polynomial which defines a smooth path. For a given vehicle forward speed, this polynomial can be used to determine the required instantaneous vehicle rotation rate at each point along the path.

In another earlier post, dbeckwith suggested a Bezier curve. I believe the instantaneous vehicle rotation rate for a given vehicle forward speed can also be computed from the parametric Bezier equations, but I haven't actually done it yet.

The bottom line here is that the OP stated a problem without much context and asked that the discussion be limited to "how" and not "why". It makes for an interesting academic discussion, but I suspect that if we had greater insight into what was trying to be accomplished the solution might be different.



*notes:

smooth path: perhaps for esthetic reasons? the OP did not specify why

shortest distance: rotate-in-place at point A, drive straight to point B, rotate-in-place. probably not what the OP would consider a "smooth" curve

limited minimum radius of curvature: many skid-steer vehicles don't like a small turning radius. they hop and jerk.



Last edited by Ether : 31-03-2012 at 22:11.