StockBot

StockBot

StockBot is a robotic delivery system. Users can request items using a web app. The requested items are sorted into a tray by a Kinova Gen3 robotic arm. The tray of items is then picked up, transported, and delivered to the user by a Fetch Mobile Manipulator mobile robot.

StockBot was the final project of my Robotics Master's program. I worked together on a team with four other engineering students to develop a business case, perform user research, design a system, and program the robots.

Project Overview Presentation

Project GitHub

My Contributions

Kinova Gen3 Robotic Arm Grasping

I implemented the pick-and-place functionality on the Kinova Gen3 robotic arm using Python and OpenCV to detect ArUco fiducial markers.

Kinova Grasping GitHub Repo

Fetch Mobile Manipulator Grasping

My teammate and I developed the autonomous grasping feature for the Fetch Mobile Manipulator robot using Python, C++, ROS, MoveIt, OctoMap, PCL, and a depth camera.

Fetch Grasping GitHub Repo

Web Application

I created a web interface for our system using Python, Flask, and SQLite on the backend with HTML and CSS on the frontend. The interface enables users to request items for delivery and initiate item returns.

Web Application GitHub Repo

User Research

My teammates and I performed user research to identify user needs and evaluate the usability of our prototype. Based on our research and user feedback, we updated our prototype to improve its usability and functionality.

Other Components

Fetch Mobile Manipulator Autonomous Navigation

My teammate implemented the autonomous navigation of the Fetch Mobile Manipulator using the ROS navigation stack for path planning, an Intel RealSense T265 Tracking Camera for SLAM, and ArUco fiducial markers for position recalibration. I helped debug the ArUco marker detection code.

Gallery

Presentations

Milestone 3

A review of the technical details of our project.

Final Presentation

A review of our project, including the business, user research, design, and technical components.

The Team

The StockBot team (C4RT) consisted of (LTR) Daniel Azúa, me (James Muir), Sulaiman Al-Akbari, Yifei Fang, and Annan Li.