Autonomous Snowplow Machine Using AI-generated Object Recognition Skills

by Lawrence Park in Workshop > Electric Vehicles

1410 Views, 14 Favorites, 0 Comments

Autonomous Snowplow Machine Using AI-generated Object Recognition Skills

KakaoTalk_20231231_222840287_08.jpg

My name is Lawrence Park and I am currently a student studying in Fryeburg Academy, Maine. What I made is autonomous snowplow machine using Raspberry Pi, Arduino and 3D Printing. Because I often experience a harsh snowy weather back at my school, I have decided to make a snowplow machine to drive around at my school.

Supplies

  • Raspberry Pi
  • wife dongle
  • Arduino uno
  • RC Car (Needs to be pretty big to go through the snow)
  • Webcam
  • wife router
  • Computer or a Laptop ( any devices that can do the coding)
  • 3D Pen
  • 3D Printing Machine
  • Portable Battery

Designing

KakaoTalk_20231231_222840287_10.jpg

First, if you want to build the machine, you need to find a goal. My goal for this project was to create the snowplow machine and coding it to clean up the snow in certain area using object recognition skills. I also had to 3D design the drill-shaped block to push the snow away.

Breaking Down the RC Car

KakaoTalk_20231231_222840287_06.jpg
KakaoTalk_20231231_222840287_07.jpg

I used a RC Car as the main body of the machine. I first found the RC Car that I was not using and took the lid off. Then, I cut the wires off from the previous and replaced it with my arduino uno. Now we can control the motors in RC car from my computer.

Coding With Raspberry Pi

After putting in the arduino, I had to move on to the next step, which was setting up the machine with Raspberry Pi. First, I had to connect the arduino with my computer using a usb cable. After that, install the raspbian os. Now, open terminal and run sudo apt-get update and sudo apt-get update. Then, install vncserver and Arduino ide. For the purpose of operating the machine remotely, I had to set up a wifi connection with constant ip address. This is when I needed a wifi router to connect to pi. This will be crucial for communication and control.

Image Learning and Testing

KakaoTalk_20231231_222840287_18.jpg
KakaoTalk_20231231_222840287_05.jpg
KakaoTalk_20231231_222840287_17.jpg

Before I start the image learning, I had to install a webcam on the main body, using my 3D pen. I decided to put the webcam a little higher than the machine so that way, the main body won't block the webcam vision. After installing the camera, I had to install an OpenCV to start the deep learning. In this model, I utilized deep learning techniques like object detection, which makes the camera ( the snowplow machine) to recognize miniature stop signs. I took multiple pictures of the stop sign and made the machine to deep-learn them. Now the machine knows that when it sees a certain stop sign infront of itself, it will slow down and turn around to its next route. After the deep-learning process, I tested out the program to see if the machine learned a sufficient amount of data.


Final Step

KakaoTalk_20231231_222840287_09.jpg
KakaoTalk_20231231_222840287_14.jpg
KakaoTalk_20231231_222840287_11.jpg
KakaoTalk_20231231_222840287_26.jpg
KakaoTalk_20231231_222840287_25.jpg

After these steps, now I have to just test out outside the field and see if its working. After I make sure it clearly works, I have to put on the actual snowplow drill and see if it really works! I also added some additional pictures for you guys so maybe the steps get more clear. Thank you if you like this project!