My capstone project involved designing and prototyping a “chef-bot” that selects and fetches ingredients from a pantry area. We modeled this project after a 2016 Amazon Picking Challenge and simulated some challenges that autonomous picking robots encounter in an unstructured warehouse setting.
The robot’s components consisted of a robotic arm, a sensor unit for the robot arm, a three omnidirectional wheeled rover, and the sensor module for the rover. Ti CC3220SF microcontrollers, running FreeRTOS, controlled each of the four components and used the MQTT protocol to communicate with each other.
Specifically, I developed the rover sensor module of the project. It determined the position of colored navigational markers using a PixyCam2 and detected obstacles using an IR sensor. I enabled communication between PixyCam2 and the MCU through SPI. The MCU acted as the master device that periodically sent commands to PixyCam2 and captured the sensor’s response. It also sampled the analog output of the IR sensor using an ADC and computed the distance in millimeters. The rover sensor module wirelessly transmitted all the data collected by it to other components in the system to aid navigation.