Guest post: Office Robot-Interns (a How-to Guide)

Guest Post written by Gizem Orbey, Development and Operations @Rapleaf

Last summer, now full-time Rapleafer Alex P. was but an intern with a dream. He wanted to keep working on Rapleaf projects when he returned to school in the fall. But how could he make his presence felt in the office while he was away?

By robot, of course. Alex built a prototype robot avatar using Legos, Arduino and a disassembled remote-control car. A couple of months ago, the project was advanced using the iRobot platform. An improved Version 2.0 featuring TokBox was built during Rapleaf’s quarterly hack-a-thon Hackleaf last week, when Emma and Steve from the engineering and biz ops teams joined forces with Alex to add some final touches. Here’s how they did it:

(photo courtesy of Owen McGrath and Instagram)

Robot 1.0
Alex programmed a Roomba vacuum using iRobot’s pre-built platform for relaying directional commands, to allow users to navigate the robot around the office from their computers. Then he mounted an EPC laptop screen on top and looped in Skype on auto-answer to give the robot 2-way video and audio capabilities. He used a battery from a remote-control helicopter and parts from an old DSL modem to get the laptop and iRobot to charge on the same power source.

Robot 1.0 was…endearing. It made it’s way around the office, delighting Rapleafers with its futuristic whirrs. But it was a little clumsy, and the screen was placed too low to the ground, which made it challenging to interact with the robot effectively.

Robot 2.0- Ronak

For smoother audio and video control, Emma, Alex and Steve replaced Skype with TokBox’s basic embed. They wrote a web server using python and twisted, and created a simple user interface on an html page to relay commands to Ronak’s static ip: stop, go forward, go forward and turn right, go forward and turn left, pivot left, pivot right, and reverse, based on different arrow keystrokes.

Next, they retrofitted all the on-board power systems to make the robot able to charge back up simply by parking in a special docking station. They also added a deadman’s switch, to ensure the robot stops moving if the person controlling it cuts out. Finally, they pulled apart some server cabinets for metal and built a stand for the EPC screen on top of the Robot.

The robot was named after another intern, Ronak, because of alliteration and some common personality traits. Now our interns have a way to attend meetings and stay a part of the office culture while they’re away. And Rapleaf has an intern that can see over the table at meetings AND not eat all of its food out of the fridge. Everyone wins.

Here’s the code in case you want to build one of these for your office

Next steps for the robot include a self-mounting protocol that allows the robot to find its own way back to the charging station. Next next step: opposable thumbs.