MyRobotLab is an open-source, Java-based robot operating system used to build highly intelligent, custom robots. It is famously used as the “brain” software for InMoov, the world’s first open-source, 3D-printed life-size humanoid robot. How MyRobotLab Works
Instead of writing monolithic code, MyRobotLab operates on a service-based modular architecture. Think of your robot as a collection of standalone apps or services (e.g., vision, voice, motor control) that all pass messages to each other seamlessly.
The Runtime Service: The core conductor that manages, initializes, and links all other active services together.
Cross-Platform Compatibility: Runs anywhere Java runs, including Windows, Mac, Linux, and single-board computers like the Raspberry Pi.
Jython Scripting: While written in Java, you can script, automate, and control your robot’s logic using Python 2.7 via integrated Jython. Smart AI Services Available
You do not need to write AI from scratch. You simply initialize pre-built smart services:
Natural Language Processing (ProgramAB): Uses AIML (Artificial Intelligence Markup Language) to give your robot an interactive chatbot personality.
Computer Vision (OpenCV): Allows your robot to recognize faces, track moving targets, read QR codes, and isolate colors.
Speech & Hearing (WebkitSpeechRecognition & MarySpeech): Leverages Google Chrome engines and deep learning text-to-speech to let your robot listen to spoken commands and verbally respond. Basic Setup Workflow
Prepare Dependencies: Install Java 11 (or newer) and the Arduino IDE on your host computer.
Flash Hardware: Upload the MRLComm.ino firmware (found inside MyRobotLab) to your Arduino. This maps your microcontroller’s pins directly to the software.
Launch the System: Download and extract the MyRobotLab Repository. Run myrobotlab.bat (Windows) or myrobotlab.sh (Linux/Mac) to automatically install dependencies and pull up the WebGUI.
Link the Components: Build your control loop via the WebGUI or paste a tracking script into the Python service to tie your hardware to an AI service. A Simple Python Control Example
The following snippet initializes an automated pan-and-tilt tracking system by linking a webcam directly to two hardware servos via an Arduino:
# Create and start the master tracking service tracker = Runtime.createAndStart(“tracker”, “Tracking”) tracker.setSerialPort(“COM3”) # Point to your connected Arduino tracker.setXServoPin(3) # Pan servo pin tracker.setYServoPin(11) # Tilt servo pin tracker.setCameraIndex(0) # Select attached webcam # Initialize the automated AI tracking logic tracker.initTracking() tracker.trackLKPoint() # Directs servos to follow visual points Use code with caution. Quick questions if you have time: Which specific part of MyRobotLab interests you most? What target hardware are you planning to use? chatbot – MyRobotLab
1. create a new directory.. lets call it “c:\mrl” 2. download the following file http://mrl-bucket-01.s3.amazonaws.com/myrobotlab. MyRobotLab HOWTO Start MyRobotLab – InMoov
Leave a Reply