Friday, June 20, 2014

AVC: SHARC FSV, "Troubled Child"

Troubled Child, 1st Place in Doping and Crowd Favorite

Update: The SHARC FSV team Jeep, "Troubled Child," won Doping Class! And we were given the Crowd Favorite award! Wow! Yeehaw! Everyone on the team is super happy! Read on for details and video.

Congrats to all the other teams. I mean all of them. It's no small feat just to have something you can show up with. Anything beyond that is icing.


Major thanks to Sparkfun for putting on an amazing event, better than ever. Thanks to the guys who serenaded us with a hilarious song about the robot Jeep. And thanks for all the help from everyone and special thanks to Atmel for letting us troubleshoot inside the trailer once we overheated ourselves sitting in the Jeep. So, let's talk about that Jeep, safety first.

Third turn, Photo by Alicia Gibb, CC-BY-SA

Safety

The SHARC Full Size Vehicle team knew from the beginning safety had to be the highest priority. The SHARC FSV has a number of safety features.
  • A human driver is always in control of throttle, ignition, gear shift, and brake and watches for any issues.
  • The vehicle runs the course at very slow speeds
  • A Failsafe brake actuator is engaged before and after run or if the emergency stop button is pressed.
  • Only steering is autonomously controlled during the run. When the steering servo is disabled, the driver has full steering control.
  • A human team member monitors system status, position and heading estimates, and more, watching for any problems.
  • External human spotter with voice radio link to the Jeep.
  • An Emergency stop button is in easy reach of driver and passenger. It disables the steering servo and restores steering control to the driver and applies the brake.
  • The vehicle employs visual and auditory warning signals when operating.
  • The main controller hardware and software is AVC-proven in Data Bus in 2012 when it precisely navigated the course for a 3rd place finish.
  • We use a high precision, industrial-grade GPS with 60cm accuracy.
  • Our team is comprised of experienced roboticists / technologists / successful AVC veterans.
  • We use pre-flight and post-flight checklists
  • Testing showed very consistent results.

Video Proof

Here's footage of the 3rd and final run from inside the cockpit synchronized with a GoPro on the bumper. I'm in the driver's seat and George is in the passenger seat. Scott is taking the footage from the back seat. We all have our seat belts on.


You'll notice at the start we go through a pre-flight checklist to ensure that we are consistent and safe, that all the safety features are enabled, and that the robot will actually go when we press the go button. :)

Here's some footage Ted took of our first run.


Vehicle

"Troubled Child" in Ouray, 2002.
The vehicle is my 1986 Jeep Grand Wagoneer, "Troubled Child," customized to tour back roads and four wheel drive trails in Colorado and Utah.

The Jeep features a 360 cid V8, 4" lift, 33" tires, locking differentials, and a number of other modifications tailored for exploring the backcountry. (More about Troubled Child)

The truck is also easy to work on (and under) and a simple, old-school design that lent itself well to temporary robotic conversion. All the modifications are easily reversible.

Controller

MCU, Power, Toggle, etc.
Data Bus is my 1/10th scale rover robot and its code and hardware were race proven in 2012 when it took 3rd place in the AVC. The Jeep uses the same brains as Data Bus: an mbed microcontroller on a Bot Thoughts RoverBaseboard.

The code base is the same as well, with just a few customization specific to the Jeep. Everything else was user-configurable. For example, steering and path following worked as soon as I entered in track width, wheel base, and a few other parameters.

You can find the code used in the Jeep right here on github.

GPS

We're using a Hemisphere Crescent A100 high precision, industrial grade GPS with 60cm accuracy thanks to WAAS correction. This is the sort of GPS used in agriculture, shipping, and more. The GPS runs at 10Hz and is powered by a dedicated NiMH battery.

Steering

Steering and brake
We had to create our own steering servo from scratch. We elected a large, high torque DC motor and a chain drive configuration to turn the steering wheel. The Jeep has power steering and so the motor has no trouble turning the wheel even with the vehicle stopped.

Position feedback from a potentiometer is taken directly from the Jeep's steering box shaft to maximize accuracy. An Arduino Pro Mini reads a servo signal to determine the target position, reads the steering potentiometer, and then drives the steering motor until it reaches the target point. We've set up a configurable control loop to ensure stability and position hold. Motor speed slows as the wheel gets closer to its target. Here's the code on github.

Brake

Article: Stop That Robot Jeep

We use a fail-safe brake actuator that can also be controlled by the MCU when the robot is armed to begin its run, or after the run completes. When power to the robotic systems by the emergency switch or main switch, the brake actuator will depress the brake.

Onboard Air Compressor
A heavy duty aluminum channel forms the frame, bolted to the driver seat. A long throw pneumatic piston is driven by a regulated on-board air compressor and reserve tank to depress the brake pedal and engage the vehicle's brakes. The system is designed to allow human brake application any time the brake actuator is disengaged.

Auditory and Visual Warnings

We use an amber flasher and back up beeper to indicate the robot computer is powered and ready to arm. A loud horn, controlled by the microcontroller, announces when the brake system is about to be deactivated.

Team

The SHARC Full Size Vehicle Team team consists of experienced technologists and robotics hobbyists including three successful, veteran AVC competitors.

Steven Gentner is the founder of the RoboRealm machine vision software company and a machine vision expert, with background at the University of Southern California, Los Angeles participating in the groundbreaking Mercury Project and Robotic Telegarden systems; holds an M.S. in Computer Science and went on develop some of the first Internet controlled mobile robots which lead to the development of RoboRealm.

Dr. Scott Harris is a 2-time AVC winner in 2010 and 2011; authors the Cheap Science blog; has a professional background in applied mathematics, electronics, and programming; and holds a Ph.D. and M.A. in Aerospace and Mechanical Engineering from Princeton; M.S. Aeronautics and Astronautics from Stanford and B.S. in Engineering and Applied Science from the California Institute of Technology. He currently runs his own research and development consultancy, that provides expertise in areas such as electro-optics, laser beam control and propagation, atmospheric optics and aero optics, custom electronics design and development, and technical program management.

Richard Howlett is the VP of Engineering for the Nilar battery company and a leading expert in Bi-Polar NiMH technology and hold patents within his respective fields. With over 14 year of experience in the advanced vehicle engineering industry including alternative fuels, electric, hybrid electric, and fuel cell vehicle research, Richard chairs the Battery Testing Standards Committee under the Vehicle Battery Steering Committee for SAE International. He also spent 7 years with Hewlett Packard designing state of the art HP and Intel Micro Processors and support chip sets, that variants can be found in today's high performance computers. Richard received his BSEE and MSEE from Texas Tech University with a focus on controls and system modeling. He enjoys electronics and robotics hobbies, as you may have guessed.

Ted Meyers, one of our AVC veterans, studied computer science at Washington State University and worked as an engineer for Northrop Grumman since graduation.  The past three years he has entered his own autonomous vehicle, Daisy Rover, in the Sparkfun AVC.  Daisy Rover can brag that it has successfully completed the AVC course!

George Mitsuoka is the Founder and Organizer of SHARC: Greater Denver Area Robotics and member, organizer and Chief Irritant of the SHARC Full-Size Vehicle Team. George has a degree in Computer Science from MIT and more than 25 years of industry experience at companies including Apple, HP, Northrop, Panasonic, and Yahoo! He has been building robots for more than 10 years, has mentored 5 FIRST Robotics Competition Teams in the Denver Area, and is the Technical Editor of Robot Magazine. George has received a Certificate of Completion with Highest Distinction for Udacity CS373: Programming a Robotic Car taught by Sebastian Thrun. For his day job, George designs high-power energy storage systems for ground vehicles, ships, and electric grid applications.

Mike Peel is a robotics hobbyist who has worked in the computer, electronics, and avionics industries for 38 years and is a veteran of the USAF. Projects supported include USAF B52 Offensive Avionics suite, NASA Space Shuttle Flight Computer, NASA Shuttle Training Aircraft simulation avionics suite. Mike is currently working for Lockheed Martin as a Staff Electrical Engineer developing and operating the NASA Orion Multi-Purpose Crew Vehicle avionics test laboratory. His other hobbies include fishing and hiking.

Michael Shimniok is the owner of "Troubled Child" and has turned almost every bolt on the vehicle while refitting it for four-wheeling. His Sparkfun AVC robot, Data Bus, placed 3rd in 2012 thanks in no small part to participation in Udacity CS373: Programming a Robotic Car. A former FIRST mentor, Michael is also author and creator of the Bot Thoughts blog. He enjoys mechanical, electronic and software disciplines and is a bit of a jack of all trades with too many hobbies. He has been a professional IT geek since 1993 and is currently employed by Lockheed Martin. He earned a B.S. in Computer Engineering from the University of Arizona and an M.S. in Systems Engineering from The George Washington University.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.