WILSON
An ai powered robot for autonomous beverage retrievaL
Featured at the November Austin Robotics & AI meetup
CAD model designed in SolidWorks and exported to URDF
Electrical components inside Wilson.
Wilson - AI powered drink retrieval robot
Gazebo simulation with Rviz live data vizualization of the navigation task
Workflow details of how Gemini completes the retrieval task using ros-mcp
Overview
Wilson is a robot designed to autonomously retrieve your beverage of choice from a mini-fridge. Built on a differential-drive base with a 4-DOF manipulator, Wilson runs on ROS 2 and was developed using Gazebo simulations to accelerate testing and deployment. At its core, the robot uses Gemini Live to handle low-latency, bi-directional voice communication and to intelligently decide when to invoke its navigation, perception, and manipulation tools to complete the given task. This allows you to simply say, “Wilson, can I have a Coke?” and Wilson will handle everything from planning to delivery. Wilson’s mechanical components and body were custom designed in SolidWorks and fabricated in-house (my guest bedroom) on a Bambu Labs A1 3D printer.
Simulation
In order to speed up the development process, I built a Gazebo simulation environment to develop and test each function of the robot before ever deploying to real hardware.
I created a low-fidelity model of my living room where the robot would be operating, to get the most realistic navigational behaviors within the simulation. I aladded a Gazebo model of a Coke can to test the perception capabilities and manipulation capabilities. I interacted with Gemini through the microphone on my computer just as I would the real robot.
I plan on realeasing more info soon about how you can set up and test the simulation on your own computer!
gemini and ros-mcp
You ask Wilson for an ice cold beverage of your choosing.
Gemini Live interprets the request and decides which tools Wilson should use with the ros-mcp-server.
Wilson plans a path to the mini-fridge with Nav2 tool.
Wilson sends a command to open the motorized mini fridge door.
RGB and depth cameras detect and localize the requested drink.
Wilson uses the MoveIt tool to plan and execute the grasp.
Wilson navigates back and delivers the beverage to you.
solidworks and urdf
Wilson was modeled using SolidWorks, and exported to URDF format via the SolidWorks URDF exporter plug-in.
The design philosophy was to create 3 main sections, the base, torso, and head. The base made use of tank tracks from an existing RC tank set, and contains the drive motors and battery pack, as well as support the arm. The torso contains the main computer, the Raspberry Pi 5, and 2 MCUs, as well as motor drivers and a DC buck convertor for the arm servos. Modular racks were designed to mount each of these components for easy maintenance and future upgrades. The head contains the RGB and depth cameras, the microphone, and the lidar. Each section has a vented backplate for cooling, which can be removed quickly with only 4 screws for easy maintenance.
Hardware
Differential-drive base with a 4-DOF manipulator.
Raspberry Pi 5 (8 GB) main computer.
Two Arduino Nano microcontrollers for motor and servo control.
LD-19 LiDAR for navigation and mapping.
ArduCam ToF camera for depth perception.
USB camera for visual recognition.
Custom soft 3D force sensor in the gripper developed by Axioforce.
Custom parallel gripper mechanism and body fully designed in SolidWorks and 3D-printed.
2 GA37-520 geared DC motors with encoders and L298 motor driver.
5 20 kg digital servos powered by a DC buck convertor
3S LiPo battery.