View Single Post
  #10   Spotlight this post!  
Unread 16-08-2014, 13:09
Jared's Avatar
Jared Jared is offline
Registered User
no team
Team Role: Programmer
 
Join Date: Aug 2013
Rookie Year: 2012
Location: Connecticut
Posts: 602
Jared has a reputation beyond reputeJared has a reputation beyond reputeJared has a reputation beyond reputeJared has a reputation beyond reputeJared has a reputation beyond reputeJared has a reputation beyond reputeJared has a reputation beyond reputeJared has a reputation beyond reputeJared has a reputation beyond reputeJared has a reputation beyond reputeJared has a reputation beyond repute
Re: paper: Driving a Robot — Fastest Path from A to B

Looks pretty cool.

That said, I don't agree. I have done a ton of work this summer with this sort of curve generation, and curve cannot be simplified to simple cubic curves. A trajectory can contain a large number of parametric quintic curves, which can have specified end headings, specified end heading derivatives, as well as (because they're parametric) dy/dt, which affects how sharp the curves are. If these are optimized, I believe it is faster to drive in a curve.

It is also not accurate to disregard robot acceleration.

I am also taking into account an actual robot's velocity, acceleration (both acceleration and deceleration, a robot can decelerate faster than it can accelerate), and jerk limits, as well as the actual speed the robot can take a turn at.

[url=https://imgflip.com/gif/b7pa0]
This path takes 1.77 seconds to drive, and travels 5 feet down and 5 feet to the left.

Using the same exact acceleration, velocity, and jerk limits as well as the same code to generate the path, I made this path:

[url=https://imgflip.com/gif/b7pex]

It takes 1.67 to drive, and ends up in the same location.

The straight path must do two 45 degree turns in addition to the straight line. This leaves .05 second for the robot to rotate 45 degrees. A 2 ft wide robot turns in a circle with a radius of 1 foot, so the distance the wheel must travel is 2*pi*1/4 = pi/2 feet = 1.571 feet in .05 seconds = 31 fps, with instantaneous acceleration. Not possible for a robot.

What if I do something like this? (Total distance 60 feet, average speed 5.5 feet per second)

To stop and turn at each waypoint would be really slow.

Last edited by Jared : 16-08-2014 at 13:23.
Reply With Quote