By Scott Simmie

 

Want to win a scale model car race?

Normally you’d pimp your ride, slam the throttle to the max, and do your best at the steering control to overtake any opponents while staying on the track.

Now imagine a race where no one is controlling the car remotely. Where, in fact, the car is driving itself  – using sensors and algorithms to detect the course, avoid obstacles, and look continuously for the most efficient path to the finish line.

That’s the concept of F1TENTH, a regular competition held at major robotics conferences. The latest contest was carried out in Detroit at IROS 2023, the International Conference on Intelligent Robots and Systems. The contest brings together researchers, engineers, and autonomous systems enthusiasts.

“It’s about Formula racing, but on a smaller scale – and it’s autonomous,” explains Hongrui (Billy) Zheng, a University of Pennsylvania PhD in electrical engineering, and a key organizer of the F1TENTH series.

And what does it take to win?

“I would say 90 per cent software, and 10 per cent hardware,” says Zheng.

And that means it’s more about brainpower than horsepower.

Before we dive in, check out one of the cars below:

F1tenth

A LEVEL PLAYING FIELD

 

To keep things truly competitive, all teams begin with the same basic platform. They can either build that platform, based on the build guides at F1TENTH.org, or purchase the platform. The price of the vehicle, which this year incorporated a 2D LiDAR unit (which makes up the bulk of the cost), is about $2500-$2800 US.

“I would say 60 per cent is spent on the LiDAR,” says Zheng. “Some teams use a camera only, and that drives it down to around $1000.”

So it’s a lot more accessible – and a lot safer – than real Formula 1. And instead of high octane fuel, the teams are more concerned with powerful algorithms.

Once again, the basic Open-source Robot Operating System autonomy and obstacle avoidance software is part of the basic package that all teams start out with. But just as real F1 teams work together to extract every ounce of performance, so too do the F1TENTH teams, which usually represent universities but are occasionally sponsored by companies. At this year’s competition six of the nine teams were from universities.

The F1TENTH organization says there are four pillars to its overall mission. Here they are, taken directly:

1. Build – We designed and maintain the F1TENTH Autonomous Vehicle System, a powerful and versatile open-source platform for autonomous systems research and education.

2. Learn – We create courses that teach the foundations of autonomy but also emphasize the analytical skills to recognize and reason about situations with moral content in the design of autonomous.

3. Race – We bring our international community together by holding a number of autonomous race car competitions each year where teams from all around the world gather to compete.

4. Research – Our platform is powerful and versatile enough to be used for a variety of research that includes and is not limited to autonomous racing, reinforcement learning, robotics, communication systems, and much more.

In other words, there are real-world applications to all of this. Plus, for engineers, it’s not that difficult to dive in.

“The entire project is Open Source,” explains competitor Po-Jen Wang, a computer engineer from the University of California Santa Cruz. “It uses a Jetson Xavier (for compute). And for perception it uses a Hokuyo 2D LiDAR. Some people will mount a camera for computer vision. You can make it by yourself – it’s very easy to make.”

The following video provides a good introduction to the competition. In actual races, a piece of cardboard – sometimes modified for aerodynamics – is affixed to the rear of the car. These are to aid other vehicles on the track with obstacle avoidance.

 

PIMP THAT RIDE

 

Okay. So you’ve got your basic build, along with the basic ROS software.

Now it’s time to get to work. Engineers will add or modify algorithms for obstacle avoidance, acceleration, braking – as well as for determining the most efficient and optimal path. Depending on their approach, some teams will plot waypoints for the specific course.

Of course, like a real F1 race, a lot of modifications take place once teams are at the track. But in the case of F1tenth, those alterations tend to be code (though we’ll get to mechanical changes in a moment). Of course, scrolling through endless lines of programming isn’t the most efficient way to detect and eliminate bugs or improve efficiency. This is particularly true since multiple types of software are involved.

“There is software for SLAM (Simultaneous Localization and Mapping) for the mapping part, there’s software for localisation, there’s software for basic tracking if you give it a waypoint,” says organizer Billy Zheng. “Some of the basic drivers are found in a repository on Github.

“Most of the good teams are very consistent, and most of the consistent ones use mappingand localisation. The second place winner this year was using a reactive method – you just drop it and it will work.”

With all those moving parts, many teams use a dashboard that displays multiple parameters in real-time as the car moves down the track. This allows them to more rapidly nail down areas where performance can be optimised.

“The good teams usually have a better visualisation setup, so it’s easier to debug what’s going on,” adds Zheng. “The good teams are using Foxglove – a spinoff from an autonomous driving company that created a dashboard for ROS.”

To get a better idea of what the engineers are seeing trackside, here’s a look at Foxglove in action during F1TENTH.

MECHANICALS

 

Though it’s 90 per cent about code, that’s not all.

“Some modify their vehicles in different ways, maybe make it more aerodynamic, change the wheels,” explains competitor Tejas Agarwal, a graduate of uPenn with a Masters in Robotics. Agarwal and Po-Jen Wang were both contracted by Japanese self-driving software company/foundation Autoware.

(As it turned out, Wang and Agarwal placed second and third, respectively.)

The wheels on the stock vehicles are more suited to pavement and dirt rather than indoors tracks, so wheels are a common modification. But this year’s winning team, from Université Laval, took it further.

“We lowered the centre of mass as much as possible, changed the wheels, and changed our motor for better control,” says Laval team leader Jean-Michel Fortin, a PhD student in computer science specialising in robotics.

Of course, they weren’t allowed to increase the power of the motor in order to keep things on an even playing field. But they wanted one that offered greater control at lower speeds.

“Usually at low speeds the (stock) motor is bad, so we changed that for a sensor equipped motor,” says Fortin.

“We also replaced our suspension because it was too soft. As soon as we were braking our LiDAR wasn’t seeing what it should. For the software part, we tuned everything to the maximum that we could. We also optimised the race line to make sure the race line that we predict is as close to what the car can do as possible.”

And it paid off. The Laval team, pictured below, was clearly in a celebratory mood after winning (Jean-Michel Fortin in centre). Following is second-place winner Po-Jen Wang, third-place winner Tejas Agarwal and organizer Billy Zheng.

 

Laval F1tenth
Po-Jen F1tenth
Billy F1tenth

INDRO’S TAKE

 

Competitions – particularly ones like this one – are highly useful. They foster collaborative teams and encourage innovative thinking. Plus, they’re just plain fun.

“F1TENTH is a tremendous initiative and a really great challenge for young engineers and autonomy enthusiasts,” says InDro Robotics CEO Philip Reece. “Those participating today could well be leaders in the autonomy sector tomorrow. We congratulate all who took part, with a special nod to the top three. Well done!”

Is there a similar engineering challenge you think is worth some words from us? Feel free to contact InDro’s Chief of Content Scott Simmie here.

And, if you’re a competitor beginning a job search, feel free to drop us a line with your resume here. InDro Robotics is Canada’s leading R&D aerial and ground robotics company and in a current phase of scaling. We’re always on the lookout to expand our talented and diverse engineering team.