README.md 2.21 KB
Newer Older
# donkeycar: a python self driving library
Will Roscoe's avatar
Will Roscoe committed

[![Build Status](https://travis-ci.org/wroscoe/donkey.svg?branch=dev)](https://travis-ci.org/wroscoe/donkey)
[![CodeCov](https://codecov.io/gh/wroscoe/donkey/branch/dev/graph/badge.svg)](https://codecov.io/gh/wroscoe/donkey/branch/dev)
joekickass's avatar
joekickass committed
[![PyPI version](https://badge.fury.io/py/donkeycar.svg)](https://badge.fury.io/py/donkeycar)
[![Py versions](https://img.shields.io/pypi/pyversions/donkeycar.svg)](https://img.shields.io/pypi/pyversions/donkeycar.svg)
Will Roscoe's avatar
Will Roscoe committed

Donkeycar is minimalist and modular self driving library for Python. It is
developed for hobbiests and students with a focus on allowing fast experimentation and easy
community contributions.
Will Roscoe's avatar
Will Roscoe committed

#### Quick Links
Will Roscoe's avatar
Will Roscoe committed
* [Donkeycar Updates & Examples](http://donkeycar.com)
Will Roscoe's avatar
Will Roscoe committed
* [Build instructions and Software documentation](http://docs.donkeycar.com)
Will Roscoe's avatar
Will Roscoe committed
* [Slack / Chat](https://donkey-slackin.herokuapp.com/)
Will Roscoe's avatar
Will Roscoe committed

Will Roscoe's avatar
Will Roscoe committed
![donkeycar](./docs/assets/build_hardware/donkey2.PNG)

#### Use Donkey if you want to:
Will Roscoe's avatar
Will Roscoe committed
* Make an RC car drive its self.
* Compete in self driving races like [DIY Robocars](http://diyrobocars.com)
Will Roscoe's avatar
Will Roscoe committed
* 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 controler.
* Leverage community contributed driving data.
Will Roscoe's avatar
Will Roscoe committed
* Use existing harsupport
supportdware CAD designs for upgrades.
### Getting driving.
Will Roscoe's avatar
Will Roscoe committed
After building a Donkey2 you can turn on your car and go to http://localhost:8887 to drive.
### Modify your cars behavior.
Will Roscoe's avatar
Will Roscoe committed
The donkey car is controlled by running a sequence of events
Will Roscoe's avatar
Will Roscoe committed
```python
#Define a vehicle to take and record pictures 10 times per second.
Will Roscoe's avatar
Will Roscoe committed
from donkeycar import Vehicle
from donkeycar.parts.camera import PiCamera
from donkeycar.parts.datastore import Tub


V = Vehicle()

#add a camera part
cam = PiCamera()
V.add(cam, outputs=['image'], threaded=True)

#add tub part to record images
Will Roscoe's avatar
Will Roscoe committed
tub = Tub(path='~/mycar/get_started',
          inputs=['image'],
Will Roscoe's avatar
Will Roscoe committed
          types=['image_array'])
V.add(tub, inputs=['image'])

#start the drive loop at 10 Hz
V.start(rate_hz=10)
See [home page](http://donkeycar.com), [docs](http://docs.donkeycar.com)
Will Roscoe's avatar
Will Roscoe committed
or join the [Slack channel](http://www.donkeycar.com/community.html) to learn more.