“The two biggest challenges with this project is: 1) Getting your kids more interested in the project over their video games. 2) Convincing your child’s science teacher they did most of the work for the school science fair”
Before I start delving into the technical rigors of building a self-driving car. I want to talk about kids. As parents, we want our kids to be excited about things we get excited about. When I thought up this project, I realized it was above what a fifth grader could do. A self-driving car involves a multitude of technical subjects: Advanced calculus, statistics, probability, linear algebra, deep learning, machine learning, electronics, computer science, telemetry, data science, mechanics, physics,…These are subjects kids are not expected to be good at. But, I thought to myself “It’s about the Journey…”.
As a parent, I want to expose my kids to STEM (Science, Technology, Engineering, Math). This project is STEM³, meaning, it’s several factors above what is typically taught in grade school level STEM curriculum. So how do you incorporate this into a child’s STEM education without frustrating your child and yourself in the process?
Divide things up into simpler lessons
So when my child and I started thinking about building a self-driving car, we started small. We converted a radio controlled car into a self driving robot using the following components:
- Raspberry Pi 3 microcomputer.
- Arduino Microcontroller
- OpenCV computer vision software.
- Chassis of an old RC car.
- Electric 9V Motor
We then said, “What are the major components that a self-driving car would need”. What we listed were:
- A Motor
- A computer
- A camera
Doing our research into companies like Waymo, Google, Volvo, Tesla among others who are investing millions into autonomous technology, we began learning that among these pioneering companies are a community of tinkerers who are using open source code and open hardware to build autonomous RC cars. Many of whom are blogging about it. To learn more about these communities, I recommend the blog series. Becoming Human AI.
With then focused on specific topics, that children could research and learn about.
- For the Motor: Pulse Width Modification.
- For the Steering: Controlling sweeper servo moters.
- For the Computer: Programming Raspberry PI with Python.
- For the Camera: Using OpenCV for image processing.
School Science Fair Skepticism
When we attended my child’s science fair, we had spent weeks going over Pulse Width Modification, which is a way to control an electronic motor speed and building a sweeper motor for our prototype RC autonomous car. We stuck on a Raspberry PI 3 computer which is basically a very cheep microcomputer that you can program and load up with an open source software package called OpenCV. OpenCV can detect images from a camera be recognize what that object is at least detect things in an image. When we were done our science fair project looked like this:
We spent weeks putting this together, and I made certain my child understood each component in the car and had the knowledge to talk about it. What I quickly noticed was among the baking soda volcanoes, and the dyed flower petal experiments, was a lot of skepticism that a fifth grader could put something like a “self driving robot”-thingy together.
My child put the poster together and did all the calculations as I stood by and asked “So what can you include from those findings?” The scientific method, which is the most important tool in science, was reiterated throughout the experiment:
- What are observations?
- What is your hypothesis?
- What methodology did you use?
- What is your experiment?
- What were you conclusions (what did you learn)?
This is what needs to be the basis for a child’s work in STEM projects in order for him or her to learn from the successes and failures of doing science and technology.
The picture above is my child’s science fair poster. We worked pretty hard on it. But my child did all of analysis and calculations and took all of the notes and typed it up. I gave him a test to make certain that he understood everything. The goal wasn’t to win (he didn’t) it was to get him interested in science and technology and show him that there are others that are excited as well…And many people were!