Zoë2
A passively-steering planetary rover.
Background: Zoë1
Zoë is an autonomous field rover designed by CMU’s Robotics Institute for field experiments on Earth. After initial development for NASA’s Life in The Atacama initiative in 2003, the rover has been used in experiments for the past two decades, setting records for autonomous traversal and microbial discovery.
Zoë was the first passively-steered drive system. It provides similar performance to a rocker-bogie drive system while using fewer than half the actuators, saving mass and cost. A traditional rocker-bogie drive system (used on every Mars rover to date) requires 10 actuators: 1 for each of the 6 drive wheels, as well as a steering actuator in each corner. A passively steered rover like Zoë uses just four drive motors – one for each wheel. It achieves the suspension and steering it desires using clever control math based on roll and yaw encoder feedback.


⚙️ Mechanical
Chassis
Several constraints drove the mechanical design of the chassis. Compared to Zoë1, we desired to make the robot more portable, both in terms of mass and volume. The design must be resilient to the desert elements it will encounter, such as dust and heat. Ease of maintenence is critical in the event of errors in the field. Furthermore, reconfigurability is desired. The original Zoë was designed for a specific mission, and adapted further once it proved useful; Zoë2 will be designed from the ground-up with modularity in mind.
Gearbox
Zoë uses Kollmorgen stepper motors with Elmo motion controllers to drive its wheels. A custom designed harmonic earbox was evaluated for speed, torque, and power draw. Based on these results, we are currently designing a V2 gearbox, which will be more compact, lighter, and simpler to machine.
⚡ Firmware
Our drive motors and encoders are set up using the CANOpen network and connecting over USB via the Kvaser Leaf Light v2 driver. We are currently sending and receiving data over CAN using ROS2 Canopen. although this may change in the future due to issues with the package.
💻 Software
The software is currently built using ROS2 Iron Irwini on Ubuntu 22.04.
Control Stack
The controller is built using the Ros2 Control package. It directly implements equation 1 from Seegmiller and Wettergreen’s Control of a passively steered rover using 3-D kinematics. For a single axle, the command velocities of the right and left wheels are calculated as follows:
\[\begin{bmatrix}\tilde{v}_l\\\tilde{v}_r\end{bmatrix}=\begin{bmatrix}1\over cos(\tilde\theta) & -B\over 2\\1\over cos(\tilde\theta)&B\over 2\end{bmatrix}\begin{bmatrix}\tilde V\\\tilde\omega\end{bmatrix}+K_p\begin{bmatrix}-(\tilde\theta-\theta)\\\tilde\theta-\theta\end{bmatrix}\]Where
\[\tilde{\theta}_{front}=atan \left({L/2\over \tilde{R}}\right),\quad \tilde{\omega}={\tilde{V}\over \tilde{R}}\]
⏭️ Next Steps
Currently, the mechanical design is nearing completion, after which we will enter the manufacturing stage. After fabrication, build, and electronic integration, we will conduct driving tests to validate performance. Further work remains on the power system and sensor suite. These sensors will be essential and providing autonomy to the rover through a custom planner. For operator feedback, we will develop a GUI interface and joystick control mode. Once the full system is validated, we will throw the robot into the back of a pickup truck, drive to a desert out west, and conduct some field studies!
Acknowledgements
While plenty of work remains, many hands have already touched Zoë2 to help get it to this stage. Special thanks to everyone listed below.
- Evan Goldberg: Chassis/axle design
- Theo Bates, Ayush Garg, Eden Brunner: Gearbox design & manfuacturing
- Sophia Holland, Aragya Goyal: Motor testing, electronics, firmware
- Athilesh Arputham, Ajinkya Prabhu: Controller V1
- Morgan Mayborne, Janice Lee, Samaksh Judson: Planner V1
- Chuck Whittaker, Tim Angert: Technical Reviewing
- David Wettergreen, Srini Vijayarangan: Advising