Skip to content
/ EnviRobo Public

An autonomous object-collecting robot using a TI MSP432 board and the Raspberry Pi

Notifications You must be signed in to change notification settings

map34/EnviRobo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EnviRobo

The purpose of this project is to build an autonomous robot using a TI MSP432 board and the Raspberry Pi that is able to trap certain objects and move them to a desired location. Input data from digital distance sensors around the robot will help it navigate its environment, and a camera takes pictures for object recognition. The robot’s current actions are displayed on an OLED attached in the back, along with a compass to help with navigation and location. Servo motors are used to control the motion of the robot and the trapping mechanism. The two boards communicate through a UART connection, with the MSP432 asking for object recognition compass data from the Raspberry Pi. This device is designed to work within a defined environment for specific object recognition.

A Bluetooth Module RN42 BlueSMIRF is added for user to be able to switch modes from autonomous to manual and vice versa. A MATLAB GUI is developed to control the communication between EnviRobo and the user on a PC.

Top Level Diagram

Alt text

Code Organization

  • MSP432 Folder contains codes that are related to the control logic of the autonomous robot. The logic includes controlling the PWM signal and using distance sensor data for the robot movements. The codes are also responsible for receiving commands from the Raspberry Pi whenever an appropriate object is detected. The codes are all written in C and can be run inside the Code Composer Studio environment.

  • RPi Folder contains codes that are related to the image processing algorithms (Haar classifier for object recognition) and the serial communication establishment on the Raspberry Pi Side. The codes for RPi are all written in Python that includes OpenCV for image processing, the serial library for RS232 serial communication, and the PiCamera library to control the camera.

Code Reference

  • compass.py [inside RPi] is used for running the image capturing/ processing code and compass sensors that switch between Python 3 and Python 2 back and forth
  • msp_rasp_1.py [inside MSP432] is used for the actual object recognition as well as sending flags through UART to MSP432
  • main.c [inside MSP432] is used for running the robot control logic used on the MSP432 board

About

An autonomous object-collecting robot using a TI MSP432 board and the Raspberry Pi

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published