When you’re a teenager new to the sensations of driving, it seems counterintuitive to “turn into the skid”, but once you’ve got a few winters of driving under your belt, you’re drifting like a pro. We learn by experience, and as it turns out, so does this fully autonomous power-sliding rally truck.
Figuring out how to handle friction-optional roadways is entirely the point of the AutoRally project at Georgia Tech, which puts a seriously teched-up 1/5 scale rally truck through its paces on an outdoor dirt track. Equipped with high-precision IMU, high-resolution GPS, dual front-facing cameras, and Hall-effect sensors on each wheel sampled at 70 Hz, the on-board Quad-core i7 knows exactly where the vehicle is and what the relationship between it and the track is at all times. There’s no external sensing or computing – everything needed to run the track is in the 21 kg truck. The video below shows how the truck navigates the oval track on its own with one simple goal – keep the target speed as close to 8 meters per second as possible. The truck handles the red Georgia clay like a boss, dealing not only with differing surface conditions but also with bright-to-dark lighting transitions. So far the truck only appears to handle an oval track, but our bet is that a more complex track is the next step for the platform.
While we really like the ride-on scale of this autonomous chase vehicle, other than that there haven’t been too many non-corporate self-driving vehicle hacks around here lately. Let’s hope that AutoRally is an indication that the hackers haven’t ceded the field to Google entirely. Why let them have all the fun?
Thanks for the tip, [irrenhaus]
Pretty cool, and although I am currently passing a control course, the vocabulary of optimal control is still a a book with seven seals for me.
I wonder how well that works with more complex tracks. Follow up video?!?
http://www.rctech.net/forum/attachments/florida-racing/506770d1254852943-ss-raceway-tampa-large-scale-rc-car-track.jpg
We need to see it!
That is interesting, the tire marks actually indicate the same information as the multiple path display did in the first video, darker is optimal, but you can see where less often sub-optimal paths were taken.
It took awhile to find a suitable image. Apparently rc racing is a larger sport than I thought! Glad you appreciate. :)
The important thing to take away from the image posted is how the rubber lain down indicates how vehicles “cut the corners.” Something the autonobot didn’t nor couldn’t do.
I don’t think that’s necessarily the case, it appears the robot was driving a course mapped with gps coordinates and trying to navigate that. If was running a more complex course (like the image posted) it’d need another map, but the software would probably find a “cut corner” path around the double-turns.
If the system didn’t have a local-map, or memory of the course from previous laps, it would be like any driver taking on an unfamiliar road.
If a self-driving car gets this technology, I’m not going to ride in one!
Better to be in one, than stuck helplessly to the front of one.
http://money.cnn.com/2016/05/19/technology/google-flypaper-car/
Hahaha! Google news give me that last week. Couldn’t stop laughing!
A little late for April’s Fools day as this definitely would make a bad situation so much worse.
The real question is how long is it going to take for it to learn to do doughnuts in the parking lot?
This…
“I’m sorry officer, I’ll dial back the aggressiveness of the control algorithm”.
Nah, the real question is when will the Tesla get “drift mode” as an update :D
Almost there…
https://www.youtube.com/watch?v=WNIDcT0Zdj4
Is that normal for drifting jerking the wheel left and right or does that PID need tuning?
To drift in a perfect circle like that, regular corrections would be needed.
I’d say it needs more tuning, those circles weren’t really perfect ones.
No PID here. A PID control system is an analog (or simulated analog) control system. From the video, this control system chooses the best of a large number of predicted outcomes, 60 times a second. But even if a PID system was used, the varying slippage (in two dimensions) of all four wheels would still likely result in a chaotic-looking response. This system would probably look a lot smoother if it was operating on a paved track.
Asphalt isn’t a “paved” surface?
Yes it is, but the track in the video is dirt.
Oh, I see – you’re talking about the DeLorean. Never mind the ‘paved’ bit. Still, a PID is NOT going to work here since a PID only implements a 2nd-order polynomial, while this clearly is higher order than that.
Point being that whatever control system was used in this case, it needs tuning.
The write up says it is controlled by a quad core i7 cpu. The linked article says “quad-core i7 computer with a Nvidia GTX 750ti GPU and 32 gigs of RAM”. The GPU does the heavy lifting of calculating/optimizing path trajectories, and the i7 does data collection and control, presumably.
I am quite sure an arduino would have been sufficient for this task.
Haha. No kill like overkill!
Not really overkill there…the i7 can’t calculate and evaluate that many paths in such short time. >2000 potential paths to choose, all recalculated 60 times per second. That’s a lot.
I’m not dissing the cool hardware at all if that’s what you thought. My comment was made in jest.
That said, calculating ‘2,560 different trajectory possibilities’ around 60Hz sounds like alot of computing, I’ll agree.
I feel that some of us here think that something could be whittled down a bit. I would be interested in seeing what happens at a sampling rate of 20Hz. Or when the computer only has 100 choices to make. I think if the truck had a lower center of gravity it wouldn’t lose control as often. I am quite impressed with the build.
I know that I wouldn’t be able to drift, except into a wall. :)
Your PID is instinct. ;)
Cool Autonomous NASCAR! I can see the fans now.
http://i.makeagif.com/media/8-20-2015/uKQBOF.gif
It’s only a matter of time before an autonomous race car wins the NASCAR championship.
One of the best “Kid, *this* is why you should do your maths homework.” examples I have seen.
I find it interesting to note that all these autonomous cars have a “safety” driver on board.
Despite the claims that a self driving a car is superior to a human driven care in terms of safety. They still rely on a carbon based life form with its feeble, fallible organic brain to decide when to hit the kill switch……
That’s because human beings, as a general rule, don’t suddenly lock up for no valid reason whatsoever.
You can’t honestly believe people don’t “lock up” …
Go watch some fails videos, and you can see people *stop moving* in the middle of the road when they realize a car is coming, or other people literally steer *into* an obstruction because they didn’t look away.
People suffer from target fixation, and often times the fight or flight instinct causes them to lock up. Not everyone… but many. Far too many.
DainBramage said ‘human beings, as a general rule, don’t…’
Of course you won’t get a random guy who got his license two months ago and put him as a safety driver in a self driving car.
These people must be trained. And this doesn’t only apply to self-driving cars, even regular, human controlled cars require a highly trained human during prototype/development phase. I’ve spent too much time in the passenger seat of a prototype with my uncle – a mechanical engineer working in vehicle development – being in the drivers seat. Fun things happen with those cars. Imagine, you’re just doing about 200kmh (greetings from Germany, btw) on the Autobahn, tuning the engine management, when the gearbox management decides to put you out of 7th into neutral. I dare to say no untrained driver would react properly to that.
I think the comfort is if you’re testing software that handles all the situations you’ve considered. A human is the only available backup system that *could perhaps* handle the situations you didn’t consider.
Once confidence in the software goes up (and enough cases *safety* driver causes a problem the software would have avoided) people won’t think twice about letting go.
That will change once an avoidable accident happens by someone incorrectly flipping that kill switch.
I can’t find the article right now, but i could swear i’ve read about exactly this happening with one of googles cars.
Back in the Vietnam War era, the F-111 fighter was designed with terrain-following flight control, which was used to keep the plane below the level where surface-to-air missiles were effective. The system was plagued with problems, but some studies indicated that most crashes were caused by the pilot overriding the computer.
The 1/5 scale truck that is the subject of this post most assuredly did not have a safety driver on board… Unless they’ve also been working on 1/5 scale mini-humans there at Georgia Tech!
This one did.
https://i.ytimg.com/vi/oXECRPpljSI/hqdefault.jpg
They are prototypes after all…and there’s the legal thing, somebody has to be responsible…
holy crap, small world. I go drinking with the guys that made this all the time
Now with code optimization and running on a rpi… because if all that hw is needed to turn twice…. Since a track have maybe not less than 20…. Other question is it eletric? Battery for all that calculation hw?
I’m not sure the need for cameras since it has pre-training and gps…. it knows always its position, and entire course..
Anyway good job, nice video to watch.
Note that the vehicle turns slightly right before taking the real turn left.
I don’t think it’s predicting far enough ahead to really choose the optimal path. If you look at the patterns of race drivers on an oval track, they stay on the outside of the track on the straightaways, then cut in to the inside at the beginning of the curves. This effectively increases the turn radius for a more stable path. This truck has not “learned” that trick. It appears to be trying to stay near the center of the track.
A good followup might be to flatten the track and see how the path is optimized over time, and try again with the low spot hugging inside the curve instead of the middle. It might hug the curve more on a larger radius or perhaps initial roughness pushed the optimal path more toward stability. Looks like fun!
Yeah give it a Bowtie path instead of a straight course + Camber and Toe Automated adjustment + Z axis for Jumping
Then we be of impress
https://i.imgur.com/7lmPfeV.gif
404 FYI
“Increase speed to 26 knots and recompute.”
Camber toe needs adjusting automate this, Then giving it a Z prediction aswell as that plane model axis add some Jumping
Then put wings on it and build a miniature Red Bull Air Race circuit. :)