How to convert a remote controlled car into a Donkey Car

A "Donkey Car" is a self-driving car in miniature format, a remote-controlled car that is trained to be able to complete a course independently. The Open Workshop "Donkey Training" will take place within the context of the AI theme weeks, where visitors can use artificial intelligence to train a robo car to drive autonomously. We have put together a step-by-step guide for you on how this works exactly.

| | |

Donkeys are among the earliest domesticated pack animals, they are stubborn but very child-friendly and yet the word “donkey” has a negative connotation. The founders of “Donkey Car” found the perfect name for a self-driving toy car. Donkey is an open source project of a group of volunteers who share a common enthusiasm for self-driving cars – and want to build them themselves. For this purpose they provide material and instructions or organize races to improve themselves continuously. The community is growing, the fans worldwide are getting more and more. The Ars Electronica Center already has a number of fans of these little robocars, and we want to pass on this knowledge in the Machine Learning Studio.

The Open Workshop “Donkey Training” will take place as part of the AI Theme Weeks, focussing collectively on one topic until February 2. With the help of artificial intelligence we teach a robot car to drive autonomously in less than three hours. After we have generated the data that will enable the car – or rather the artificial intelligence – to master the course, we transfer this “knowledge” to the autopilot and check whether the car actually follows our trained instructions.

But how does this work exactly? How do you train a conventional remote-controlled car to become a self-driving Donkey Car? We have summarised in advance the most important steps for you:

1. The Basis

The basis for a Donkey Car is a standard remote controlled car. However, Donkey Cars recommends to use one of four models from the manufacturer Exceed. These offer the best prerequisites for the conversion to a Donkey Car. In addition, they are supported by the community and are fully compatible. They are available via Amazon, on the website you can find exact shopping lists. The platform also offers Donkey Kits, which contain everything you need for a Donkey Car.

“You can buy all parts for about 250 USD on Amazon and it takes about two hours to assemble everything,” promises Donkey Car.

A standard remote controlled car. Credit: Ars Electronica / Magdalena Sick-Leitner

2. The Conversion

In addition to the remote-controlled car, a Raspberry Pi computer is required, a single-board computer in credit card format, which is equipped with a wide-angle camera to record image data. Also needed is the deep learning library “Donkey”, which is provided by Donkey Car. It is essentially based on the Python programming language.

Supplementing the remote controlled car with a Raspberry Pi. Credit: Ars Electronica / Magdalena Sick-Leitner

The individual components must then be assembled correctly, for which Donkey Car also provides numerous instructions, such as these:

3. The Expansion

Our so-called techtrainers, a mixture of the professions of technician and infotrainer, explain technologies such as the self-driving model cars to visitors in the Machine Learning Studio. At the same time, however, they also work on new solutions, as in the case of the donkey cars: the vehicles are constantly being further developed and fine-tuned, they are fitted with new, 3D-printed panels or their battery life is extended by installing an external power bank.

Techtrainers at Machine Learning Studio. Credit: Ars Electronica / Martin Hieslmair

4. The Controller

The donkey cars at the Machine Learning Studio are controlled by a standard PS3 controller, but alternatively you could use an app or any other joystick. You connect to Raspberry Pi via SSH, an encrypted network connection, and open a kind of “folder” to start Python. Python in turn connects via Bluetooth to the Playstation controller to control the robot car remotely.

Connecting the Raspberry Pi with a PS3-Controller. Credit: Ars Electronica / Magdalena Sick-Leitner

5. The Collecting of Data

Afterwards we navigate the Robocar through the course to record data. In terms of handling, nothing changes compared to driving a conventional remote-controlled car. The required data collected while driving are photos on the one hand, and information on speed and wheel deflection on the other. The better the data, or the more precisely you follow the desired course, the better the donkey car will subsequently be able to cover the route on its own.

Driving with the Donkey Car to collect data. Credit: Ars Electronica / Magdalena Sick-Leitner

6. The Transfer of Data

The AI “decides” when it has collected enough data. Approximately after 10,000 photos or a driving time of 15 minutes, one can assume that the information is sufficient to train the AI. Driving too fast is not helpful, because then the photos become blurred – the photos have a very rough resolution. It is better to drive more precisely and therefore slower. Then the data is transferred to a more powerful computer to start the training. The computing power of the Raspberry Pi is too low for this purpose.

Collecting the Data. Credit: Ars Electronica / Magdalena Sick-Leitner

7. The Training

The training is performed in the above mentioned open source program based on Python, provided by Donkey Car. The training is done in epochs, the goal is to reduce the error rate until a constant curve is achieved. The end of the training is reached when no more significant change can be made.

The Training of the Donkey Car. Credit: Ars Electronica / Magdalena Sick-Leitner

8. The Driving

After completing the training, the Donkey Car is able to run the course on its own. One could collect data while driving and continue training afterwards. Driving works because the system requests pictures from the camera and constantly compares them with the stored data. This explains why the Robocar is a bit bumpy at the beginning and gets “better” over time, but without training in between: The data request works faster. By the way, a marked route isn’t mandatory: The Donkey Car could also be trained to drive around objects like chairs or cones.

The Donkey Car is mastering the parcours. Credit: Ars Electronica / Robert Bauernhansl

Train self-driving cars, produce music using AI algorithms, experience a computer piano that can record and precisely reproduce pieces played by human pianists, or learn more about a neural network that composes music à la Beatles. From January 14 to February 2, 2020, the Ars Electronica Center will be devoting itself to the topic of “Artificial Intelligence – the Revolution behind the Hype” with expert discussions, special guided tours, workshops and deep-space presentations. The entire program: https://ars.electronica.art/center/en/theme-artificial-intelligence/.

To learn more about Ars Electronica, follow us on FacebookTwitterInstagram et al., subscribe to our newsletter, and check us out online at https://ars.electronica.art/news/en/.