Inspiration
We want to get some hands on experience working with machine learning, so we bought an RC car, a raspberry pi, and a handful of other sensors, and began working to implement our ideas into a functioning autonomous RC car.
What it does
The car navigates through a marked off course using behavior cloning, an ultrasonic sensor, and TensorFlow. We have to drive the car around the desired courses a handful of times to collect enough information for it to drive on its own.
How we built it
We used a handful of libraries ranging from Tensorflow to RPIO.gpio to handle training our neural network and gauging the distance between the car and objects around it. We utilized the TensorFlow library to detect objects around the car and act accordingly.
Challenges we ran into
We spent a handful of hours just trying to get everything setup and working on the same network. A big problem we ran into was figuring out how we were going to take in data from our sensors while allowing the car to continue driving and perform actions. We ended up using threads to handle our tasks, though there's still plenty of room to improve how efficient the car is. Setting up OpenCV/TensorFlow and handling the objects that we detected was trivial before we actually started implementing our theories. After we got a decent idea of how we wanted it to be laid out, adding in our features became progressively easier.
Accomplishments that we're proud of
WE ACTUALLY GOT THE CAR TO STOP WHEN IT DETECTED AN OBJECT. We also used the ultrasonic sensor as a means for detecting when an object was within a certain range, but getting CV on the RC car was, and will continue to be, a game changer. We also managed to train our RC car on a track we laid on in tape.
What we learned
Neither of us had a deep understanding of what we were building; we just knew what we wanted to build. The communication barrier between two people that have ideas but no formal way to describe them proved to be an interesting challenge to overcome. It really forced the two of us to elaborate on the thoughts we had, and to be diligent in writing and saying comments about what was going on.
What's next for ARC
We keep building. Right now, ARC has two sensors. Our goal is to get as close as we can to recreating an autonomous car with a budget far less expensive than buying an actual car. Don't get too excited. You won't be able to hop in your aRC and let it take you to the store, but make you can find some other cool implementations for a car that needs no one but itself.
Built With
- keras
- machine-learning
- python
- raspberry-pi
- tensorflow
Log in or sign up for Devpost to join the conversation.