Subsystem | Name | NetID | Section |
---|---|---|---|
Software | Soham Manjrekar | sohammm2 | ECE 110 |
Aryan Damani | anishks2 | ECE 120 | |
Hongbo Zheng | hongboz2 | ECE 120 |
Project Proposal - Autonomous Code
Introduction
Statement of Purpose
Write code for a Raspberry Pi that will enable a robot to move via teleoperated and autonomous control. Our goal as a group is to complement the robot designed to carry a load internally to it's designated drop point. This project will be useful because we believe if we can write code that can be applied to a robot in general we can make our code open source for people who want to accomplish similar projects in the future and collaborate to improve our code. Furthermore, automation is a vastly increasing industry and this project is just another step towards that future.
Background Research
Software
Python, shouldn’t need third party, comes onboard a Ras Pi
Ardupilot
ArduPilot is an open source, unmanned vehicle Autopilot Software Suite, capable of controlling autonomous vehicles
OpenCV
Use OpenCV for computer vision using feed from camera to guide around obstacles
We looked at other autonomous or semi autonomous robots that people did as projects and wanted to make an easier software solution that is widely applicable
Design Details
Block Diagram / Flow Chart
System Overview
Raspberry Pi: Will use the Raspberry Pi to compile our code and test to see if our code recognizes what the camera sees
Camera: We are working on autonomous control so we need a camera to give our code the input it needs so that we can tell a vehicle how to react.
BOM
Raspberry Pi 3b+ ($35)
With OS, or give us an SD card as well
Pi Camera Module v2(25$)
Better quality video and less CPU load than webcam because it uses gpu.
Possible Challenges.
Coding, we have to learn coding on Raspberry Pi from scratch. We may have to browse a lot of online resources to write commands for the car to move.
Debugging, this is our first time working in python and many of us haven't used a Raspberry Pi before so if we face any issues with our code it’ll be somewhat of a nightmare :).
Testing, since most of us are off campus, it is difficult for us to test if our python code is working properly for the car motors (Is the car moving as we expected).
References
Babich, N., 2020. What Is Computer Vision & How Does It Work? An Introduction | Adobe XD Ideas. [online] Ideas. Available at: <https://xd.adobe.com/ideas/principles/emerging-technology/what-is-computer-vision-how-does-it-work/#:~:text=The%20concept%20of%20computer%20vision%20is%20based%20on%20teaching%20computers,results%20through%20special%20software%20algorithms.> [Accessed 16 September 2020].
Monk, Simon. "Computer Vision With The Raspberry Pi". O’Reilly Media, 2020, https://www.oreilly.com/content/raspberry-pi-cookbook-computer-vision/.
Landoni, Boris. "Computer Vision With Raspberry Pi And The Camera Pi Module - Open Electronics". Open Electronics, 2020, https://www.open-electronics.org/computer-vision-with-raspberry-pi-and-the-camera-pi-module/.
Wade, Bob. “How Do RC Cars Work? Science Behind Remote Controlled Vehicles”. RCReboot, 2020, https://rcreboot.com/how-rc-cars-work/