KAIBot2

The Project

This project is called KAIBot2, a new LEGO AI robot (I made KaiBot last year). KAIBot2 is the new and improved version of the original. KAIBot2 is meant to be used as an interactive hands-on tool for K12 kids to learn the basics of robotics, coding, and artificial intelligence (AI). In this project, I built a LEGO AI robot that can move, talk, listen, and watch. It can greet people when it sees them, take voice commands, move and deliver things, even follow someone by recognizing their faces. It can also recognize and name objects, such as donuts and carrots, or stop walking when it sees a stop sign. The first phase to creating KAIBot2 was building it. I decided to use the instructions for a LEGO Mindstorms Robot Inventor called "Beta Rex" (a walking LEGO humanoid robot) to make its main structure, since Beta Rex is a rare LEGO robot which moves using legs. The LEGO Robot Inventor itself contains an intelligent hub. I then added the most important part of the robot, the AI Box, which acts as the brain of the robot and contains the CAIT toolbox. The AI Box contains a Raspberry Pi 4 and a SD card, which has the Raspberry Pi 4 OS and the CAIT (Cortic A.I. Toolkit) open-source software installed. The AI Box is connected to the home WIFI network, and communicates with the LEGO intelligent hub via Bluetooth. The CAIT toolbox is an SDK that is developed by Cortic Technology (which is still under further development, so I also served as an early tester), and CAIT provides a variety of AI functionalities that I can call as APIs within my code (e.g., face recognition, object detection). Further, I added sensor components, including a camera and a speaker. The second phase was to program all the functions of the LEGO robot using Python and tested them. I made many efforts to address potential configuration and connection issues, debug the codes and optimize my code structure (especially because Pi 4 is an edge device with limited real-time computational resources for AI). I showcased my project with a demo in which KAIBot2 greets me, follows me, recognizes a donut, grabs it, finds a specific person, walks and gives the donut to the specific person, based on the voice commands given. KAIBot2 stops moving when it sees a stop sign. In the future, I plan to further enhance KAIBot2's abilities, including supporting more types of sensors, such as temperature, laser and depth sensors, and integrating multiple robots and connecting them to smart home devices. I want to try them in a smart home setting. The fun is endless. Welcome to the wonderful world of LEGO Robots!

Advanced

About the team

  • Canada

Team members

  • Kai