Donkeycar is minimalist and modular self driving library for Python. It is developed for hobbyists and students with a focus on allowing fast experimentation and easy community contributions.
- Make an RC car drive its self.
- Compete in self driving races like DIY Robocars
- Experiment with autopilots, mapping computer vision and neural networks.
- Log sensor data. (images, user inputs, sensor readings)
- Drive your car via a web or game controller.
- Leverage community contributed driving data.
- Use existing CAD models for design upgrades.
After building a Donkey2 you can turn on your car and go to http://localhost:8887 to drive.
The donkey car is controlled by running a sequence of events
#Define a vehicle to take and record pictures 10 times per second.
import time
from donkeycar import Vehicle
from donkeycar.parts.cv import CvCam
from donkeycar.parts.datastore_v2 import TubWriter
V = Vehicle()
IMAGE_W = 160
IMAGE_H = 120
IMAGE_DEPTH = 3
#Add a camera part
cam = CvCam(image_w=IMAGE_W, image_h=IMAGE_H, image_d=IMAGE_DEPTH)
V.add(cam, outputs=['image'], threaded=True)
#warmup camera
while cam.run() is None:
time.sleep(1)
#add tub part to record images
tub = TubWriter(path='./dat', inputs=['image'], types=['image_array'])
V.add(tub, inputs=['image'], outputs=['num_records'])
#start the drive loop at 10 Hz
V.start(rate_hz=10)
See home page, docs or join the Discord server to learn more.