By Grace Lam, Mokshith Voodarla, Nicholas Liu
How long does it take to program an office delivery robot? Apparently, less than seven weeks.
This summer, three NVIDIA high school interns, Team Electron, built a completely autonomous indoor delivery robot with a Turtlebot base and Jetson TX2. Simply message the robot to deliver anything from pens to pizza and it’ll bring it to you.
A Team with a Common Theme
All three interns were part of the FIRST Robotics Competition, where teams of high school students have a little less than two months to build and program a robot for a game challenge. Their experiences on high school robotics teams not only helped them tackle the technical challenges, but also the challenges that come with working on a team.
“Coming to NVIDIA, we all had something in common, a passion for robotics and AI, so it was easy to get along and work together towards our goal,” says Team Electron.
Building a Smart Robot
Place an object on top of the robot and it will identify it using its camera and a neural network-based classifier running on the onboard Jetson TX2. Their GoogLeNet-based image recognition neural network model was trained using DIGITS on a TITAN X GPU with the ImageNet dataset.
The neural network is deployed on the Jetson TX2 using TensorRT for increased efficiency during inference.
With the 360 degree RPLidar A1, a 2D laser range finder that can sense the distance of objects around it, the robot can perceive the environment and localize within a map. The map of the office is generated with Simultaneous Localization and Mapping (SLAM), which helps the robot drive autonomously.
The robot also runs a Slackbot program, which sits in the team’s Slack channel. It can receive delivery commands in an easy-to-understand chat style. A user types in a Slack channel with a command along the lines of “@deliveryrobot I would like to have a tasty salad,” and also specifies their location.
By delivering meals or office supplies on-demand, Electron can satisfy the needs of any busy (or lazy) NVIDIA employee.
Visit the GitHub repo here.