DU Build-A-Bot Project

The Concept

In the ever-evolving landscape of robotics and human-robot interaction (HRI), researchers continually seek innovative approaches to understand how humans perceive and interact with robots. Traditional methods often involve building physical robots for in-lab studies, which can be costly and time-consuming. The DU Want to Build-A-Bot? (Build-A-Bot) project is reversing this approach through an online platform for active participatory robot design.

I have been the student lead on the Build-A-Bot project throughout my time as a Masters student, going back to when I was an undergraduate student. I've been the main contributor to the codebase throughout, and have led more than 30 students throughout the lifetime of the project.

Key Design Goals

We develeoped a set of design goals that would drive the creation and use of the platform.

Unity Platform

At the core of Build-A-Bot lies a 3D Unity application, deployed on the web using WebGL. The Unity platform provides an interactive 3D character creation interface for building robot designs, developed using Unity. The Unity platform underwent significant development iterations, enhancing features such as intuitive part manipulation, improved camera controls, and performance optimizations.

The Unity robot design platform.
The Unity robot design platform.

3D Modeling and Sound Design

To support diverse robot designs, custom 3D models were created, balancing simplicity for web deployment with realism for accurate representation. Additionally, sound elements were incorporated to enhance user experience, with background music creating an immersive atmosphere and sound effects providing feedback during interactions.

Website Development

The Build-A-Bot website serves as the gateway to the platform, developed using the MEAN software stack (MongoDB, Express.js, Angular, and Node.js). The frontend underwent two major iterations, with a focus on enhancing user experience and flow from initial page access to robot design. I led the development of both iterations of the site, working with other students to implement the designs created for the platform.

Backend and Database

The backend, implemented using Express.js and MongoDB, supports user authentication and data collection on robot designs. Various data points, including user actions, part usage, and design complexities, are stored to enable machine learning analysis. Additionally, the backend supports the storage of final design images and 3D models for further exploration and potential integration with machine learning models.

The DU Want to Build-A-Bot? Project represents a significant step forward in HRI research, leveraging the power of online platforms and machine learning to understand and enhance human perception of robots. By democratizing robot design and fostering collaboration, Build-A-Bot opens new avenues for innovation and discovery in the field of robotics, as a novel research tool for collecting robot designs for research.

Check out the platform here!

dubuildabot.com