Abstract
The SOLI project sought to demonstrate the feasibility of a self-contained autonomous modular robot capable of independent and collaborative action for use in the variable mission set environment of space.
The final design of the SOLI robot consisted of modules in
the shape of an equilateral triangle with sides of 8 inches and thickness of
14mm. The two halves of the equilateral triangle enclosure are held together by
3 snap fits. Internal to this module are 3 DC encoded motors, 3 micro stepper
motors, a lithium-ion battery, solar management unit, and printable circuit
board (PCB) that incorporates the control system and is driven by an ESP32.
External to the enclosure are two solar cells on the upward face of each
triangular module, a rack and pinon system driven by the micro-stepper motors,
an omni-wheel with integrated active gear, and a passive elliptical gear.
This design allows for independent motion of each module with the omni-wheel design, collaborative motion and task management through folding enabled by the active/passive gear design, self-assembling with the networking capabilities of the ESP32 and rack and pinion design, and reliable and independent power generation with the integrated solar cells.

Tony Farrand
Power Electronics
Jalani Eanochs
Control System
Gracie Kreissler
Design and Geometry
Nick Martin
Manufacturing and Assembly
Introduction
We sought to develop an inexpensive, lightweight, low footprint rover that could be mass deployed and configurable to perform various tasks. Rover’s such as Curiosity are outfitted with several different tools and pieces of equipment, however, what if it needed to perform a new task? An entirely new rover would need to be sent to perform that task. Instead, our vision is that a single module or small fleet of modules carrying the necessary equipment could be added to the existing fleet of modules to perform new tasks. If geographic boundaries are too much for individual rovers, then they can combine to overcome obstacles using collaborative motion. If one unit malfunctions, another can seamlessly replace it with minimal or no specialization for the replacement module.
Educational Concepts
While exploring the content of our project, keep an eye out for educational concept identifiers at the beginning of paragraphs. These represent the highest yield educational concepts from our project for those looking to dive deeper into this project’s complexities or learn how to replicate it. These concepts are broken down into Beginner, Intermediate, and Advanced levels.
Design
Method
Beginning the design process, we looked for inspiration from sources that had accomplished various facets of what we sought to do. Our first inspiration was MORI [7] a modular folding robot. From MORI we determined that a triangular geometry was best suited for collaborative motion applications. However, different from MORI, we knew that we wanted each module to be controlled internally and to communicate with each other, as well as to be self-powered, eliminating the need for centralized control and power as with MORI. We also found a robotic arm that contained a detachable hand capable of performing tasks independently from the arm [5]. Here we got the idea for independent motion and autonomous tasking. From these inspirations and objectives, we developed our design criteria.
Design Criteria
We complied our design criteria into four governing themes for SOLI:
- Scalable
- Lightweight
- Self-Powered
- Autonomous
Scalable: Both in operation and production.
- Operationally, this meant that we needed to design a connection mechanism that did not place and maximum or minimum on the number of modules that could be connected.
- Production wise this meant that we needed to design a rover from parts and manufacturing methods that were readily and commercially available.
- This component consisted of limiting both the weight and volume of each individual module. Previous space rovers were of a completely different scale than our intended size, so we took our frame of reference from our predecessors. For this project we limited ourselves to rover module less than 5 pounds and with a foot print less than 1 square foot.
Self-Powered: Enabling full modularity.
- Due to the intended mass deployment of these modules, 100% continuity of operation was not necessary for each module. Instead we set our goal at 2 hours of continuous operation for each full earth’s day of charge.
Autonomous: Allowing flexibility and interchangability.
- In order to prevent a single failure from causing significant mission failure, SOLI must be designed such that each unit and think for itself without relying on external input. This also allows for any unit to take up that tasking of another if the need arises. For the extent of this project we defined autonomy as the ability for each unit to move independently, that is without being connected to or recieving input from another module.
System Decomposition
Power Electronics
Power electronics in a robot/rover are responsible for efficiently managing and controlling the electrical power that drives the robot’s various components, including motors, sensors, and control systems. Inefficient power conversion and battery mismanagement can cause excessive heat buildup, potentially damaging critical components and leading to system failure.

(Beginner) This is a 5V 60mA Solar Cell. When two cells are wired in parallel, their currents combine (120mA) while the voltage remains constant. The power generated by the solar cells is used to run the robot’s components, such as motors, sensors, and control circuits, while also charging the onboard battery. With two cells in parallel, it takes 9 hours (on Earth) to fully charge a Soli Module.

(Intermediate) This is a DFRobot Solar Manager 5v V1, which utilizes trickle charge and discharge circuits efficiently manages the charging and discharging process for the system. This device regulates the voltage and ensures that the battery is safely trickle charged when sunlight is available.

This is a Makerhawk 1100mAh 3.7V lithium iron phosphate (LiFePO4) Battery. Lithium iron phosphate was chosen because the manufacturing process allows for flatter battery housing. The onboard BMS offers additional protections from overcharge, and overdischarging conditions. The battery stores the energy generated during the day, allowing the robot to continue operating during low light conditions or when additional power is required.
Control System
The control system of a robotic or other mechatronic system is the component that is responsible for maintaining and controlling the electromechanical or mechanical components of a system. It is designed to offer some degree of automatic response to outside stimuli and, for more complicated systems, provide an abstracted method of control for a user or set of users.
In control system design, it is often helpful for both the user and designer to characterize the roles of the control system into high-level and technical descriptions. In this way, the functionality of the system is kept in accordance with the usage of the system. Without this distinction, a well-designed system can be incredibly challenging for an outside user.
Because Soli is designed to be a self-contained, transversal, modular rover, Soli’s control system must accomplish the following high-level tasks:
1) The control system must provide a user-friendly interface that allows for full control and monitoring of the modules on-board the module.
2) The control system must be able to internally handle the communication protocols between the auxiliary modules and the command module.
3) Closely related to item 2), the control system must have some systematic means of relaying information between the user and the auxiliary modules. This information includes both status data and commands from the user.
4) The control system must possess low-level automatic monitoring capabilities such as battery life monitoring and position monitoring. This allows the system to avoid issues such as sudden power loss.
5) The control system must have some means of monitoring and keeping track of its spatial location, as well as the spatial location of the auxiliary modules relative to itself.
(Advanced) These tasks translate to the following technical specifications for the system.
1) Communication to the computer host via WiFi/TCP (handled by command module only)
— The following will be reported to the computer host:
1a) Position of command and auxiliary modules by odometry
1b) Status of modules (battery life, orientation, bearing)
1c) Battery life of all modules
1d) Current command issued to each module
1e) Will serve an HTML webpage that can be used to send commands and monitor the system.
2) Communication from the computer host via WiFi/TCP (handled by command module only)
— The following will be received from the computer host
2a) Three subsets of commands: positioning, modular, and administrative
2ai) Positioning – Gives the location of where the selected module should be
2aii) Modular – Module-specific commands
2aiii) Administrative – Commands related to power management and downtime management
3) The system will provide precise control of the motors
Given the orientation of the wheels, a moveset will be written for the system that will allow for precise movement in a specified direction.
4) The system will determine and remember its position in space
Given a starting point and the number of steps traveled in a certain direction, the control system will be able to track its position in space. Furthermore, it will store these locations in memory.
5) The system will be able to determine battery life and manage power consumption.
This will be done by potentially turning off some subsystems or limiting the usage of subsystems.
6) The system will be able to time downtime sessions.
Depending on the hardware used, this can be done using a watchdog timer.
7) The system will contain an advanced moveset that will be used as modules are interconnected.
Over the course of the semester, technical requirements 1 through 3 were accomplished with good effect.

With the understanding of the control system’s objectives covered, the hardware and programming of the system can now be discussed.
(Intermediate) One of the most critical qualities of a control system is real time response. Thus, complicated operating systems tend not to be used since they do not guarantee a response in real time to outside stimuli. Instead, micro controllers and programmable logic controllers (PLC) are used since they are designed to simply follow instructions.
(Intermediate) For Soli, the ESP32-S3 micro controller is used because of its wireless capabilities and quick clock speed of 240 MHz. It also features a simple file management system that is useful for storing and serving website files. The finished model would ideally use a Beetle ESP32-S3 because of its Small size, but for the final presentation, Soli used an Arduino Nano ESP32.


To provide movement, DC motors with N50 rotary encoders were used. DC motors were preferred over steppers for motion since they provided more torque in a smaller form factor. DC motors are also simpler to control and rotate faster than steppers. The direction of the motors are controlled using L9110 motor drivers.
For folding, PM08 stepper motors are used. These motors were not connected directly to the micro-controller, but were instead actuated using the ULN2003N Darlington transistor array IC.
For bearing measurement, the QMC5883L magnetometer is used. For orientation and acceleration measurement, the MPU6050 is used.
Since the form factor of the hardware is designed to be small, there are only around 10 pins broken out for usage. So, to extend the number of pins, the PCF8574 I/O pin expanders were used to extend the number of pins for the microcontroller.
(Advanced)

Considering the software/firmware side of the project, the microcontroller firmware is written in C++. The codebase features a custom General Server class that handles the incoming and outgoing HTTP requests and serves the main website. For the website, the prototype was originally written in the Angular.js framework and later translated to HTML/CSS/JS for compatibility with HTTP.
(Advanced)

In order for a user to use the website, he must first connect to the ESP32-Access-Point and type in the IP address of the ESP32 into any browser window. From here, the server will send over the webpage to the user.
Querying from the client-side is done purely using Event Streams. Even though this method tends to be clunky, for simple applications where not much data is being transferred, this is the preferred method.

Kinetics
(Intermediate) Individual unit motion was achieved through the use of an omni-wheel driven by a DC encoded motor. The sparse commerical omni-wheel market pushed us to design our own 3D printable omni-wheel in house. Due to our selection of an equalaterial triangle geomentry, we designed the mini wheels on the omni-wheel to have a 60 degree offset from the direction of motion of the larger wheel in order to match the interior angle of an equalaterial triangle corner. This allows for a least one omni-wheel to be free spinning when primary motion being driven by another motor. This single design consideration made motion feasible given the power of the motors and our energey efficiency constraints. Due to the omni-wheels being 3D printed with PLA, a grove was placed in each mini wheel to fit an o-ring which allowed for surface traction and movement.


(Advanced) Collaorative motion among units is designed to occur from the folding action between units. To conserve both cost, space, and weight, the same DC encoded motors that drive individual motion were used to drive collaborative motion. This was accomplished by intergrating a gear into the drive shaft of the omni-wheel. This drive shaft would then mesh with a passive gear of the adjoining module, allowing for folding. Folding action is driven by two set of motors and gears, one from each module. To minimize the size of the active drive shaft gear, the meshing of the active and passive gears could not occur in the center of the gap between adjoining modules. Therefore the passive gear was designed to be eliptical to ensure suitable meshing of the active and passive gear teeth through the entirity of the folding range.

Design & Manufacturing
3D manufacturing was utilized throughout the housing design process. Due to its ability to rapidly prototype and refine complex geometries that traditional manufacturing methods would struggle to achieve, 3-D prints were also utilized in the Final Prototype.
The use of Bamboo 3D printers was particularly crucial during the design phase, as they offered higher print fidelity and the ability to print using a variety of materials. This included the Transparent PETG filament that was utilized in the final design.


(Intermediate) Iterative design was crucial in developing elliptical gears, snap fit enclosures, and shaft matings for the robot, allowing for continuous refinement of their geometry and functionality. Through multiple design cycles, adjustments were made to optimize gear dimensions, tooth profiles, and alignment for smooth operation. This process involved testing various prototypes, identifying areas for improvement, and adjusting the CAD models accordingly.
Design Alternatives
(Intermediate) Motor:
- The three main drive motors for SOLI had 3 contenders: a Servo Motor, a Stepper Motor, and an encoded DC Motor.
- The servo motor was desired for its power and efficiency, however, given the 3 axises of motion available to SOLI, movement protocols would have been too inefficient given the servos inability to reverse direction.
- The stepper motor was desired for the precise control that was possible, which was particularly attractive for the folding/collaborative motion aspect of SOLI. However, the power modulation that would have been necessary for a stepper motor was too space and energy limiting.
- The encoded DC motor was the selected option due to it being a good middle ground between the other two. It provided close to the power and efficiency of a servo, but the encoded nature of the motor allowed for more precise control. This did come at the cost of slightly more weight and larger footprint than either of the other options, but with preferable geometry for our module.
Control Chip:
- The brain of SOLI was one of the harded design choices for this project. But ultimately the choice came down to the ESP32-Micro or the Bettle.
- The bettle was ultimately chosen as the prefered design choice due to its lower footprint and shockingly similiar capabilities to the ESP32-Micro. However, for the purposes of rapid prototyping and testing of the networking, server, and motion protocols, the ESP32-Micro was used throughout the course of this project.
Mobility:
- When considering mobility options for the triangular module, several alternatives were evaluated, including normal wheels, omni-wheels, and tracks. Each option presents distinct benefits and drawbacks that impact scalability, manufacturing feasibility, and overall performance.
- Normal wheels are the simplest and most intuitive choice, offering ease of design, scalability, and cost-effective manufacturing. They can be 3D modeled quickly and are versatile across various applications. However, they are less suited to Soli’s geometry. In this configuration, when one wheel is active, the other two remain stationary. This misalignment of direction vectors creates significant friction, as the wheels do not roll in unison, resulting in energy inefficiency and reduced performance.
- Omni-wheels provide a more advanced solution by incorporating miniature rollers within the wheel assembly, allowing inactive wheels to roll freely. This design significantly reduces friction and energy dissipation, making it a more efficient option for Soli. However, omni-wheels have notable challenges. They are difficult to scale and manufacture, particularly because many manufacturers do not produce small-sized omni-wheels. Additionally, their intricate assembly, involving multiple components, makes them less intuitive and harder to maintain compared to standard wheels.
Geometry:
- Soli’s geometry plays a pivotal role in these design considerations. As one of the most fundamental and scalable shapes, the triangle provides a versatile foundation for constructing various structures. Its simplicity makes it ideal for modular designs, allowing for easy replication and scalability. However, the triangular geometry also presents unique challenges for rover mobility. The angular configuration complicates the alignment of wheels, and requires advanced motor control of each wheel to ensure smooth and efficient motion.
(Beginner) Latching Mechanism:
- When looking at latching mechanisms between units we considered magnets and the rack and pinion system.
- Magnets were desirable due to their small footprint and inherient stability. However, they faced the drawback of being bipolar, not allowing for significant control of stability when inbetween mode of attraction or repulsion. This made maintaining multi-unit attraction through a fold impossible.
- The rack and pinion system was chosen due to its stability through during folding and the need to only apply power to the system when engaging. However, it does face the drawback of place more motors within the unit, increasing weight, computational power requirements, and chances of mechanical failure.
Ultimately, each design alternative must balance performance, manufacturability, and compatibility with Soli’s geometry, making the selection process dependent on specific application needs and design constraints.
Experimental Methods and Testing
Prior to the final prototype, the experimentation and testing took place in two groups: the integration of the controls and power electronics and the design and manufacturing processes.
Controls and Power Electronics:
(Advanced) Once parts and resources were determined the initial iteration of the control code was writen in C++. Upon recieving power electronics parts, a larger scale crude prototype was built to begin testing the code and power electronics. The iterative process for this system consisted of scaling down the large scale model and integrating the SOLI specifc components as they arrived, replacing the readily available scavenged parts. During this process several PCBs were attempted, but none successfully, resulting in the final prototype configured through a breadboard.

Design and Manufacturing:
Due to our rapid prototyping approach to this project, we heavily utilized 3D printing. However, due to the small scale and complex geometry of SOLI, this resulted in several iteration over the course of many weeks until the housing and wheels were ready for integration with the controls and power electronics systems. Some of the failures and solutions are described below:
- (Intermediate) Tolerancing: The CAD was initially designed with tolerances as low as 0.01mm, which work great for the CAD model, but were no feasbile for the 0.4mm nozzle of the BambuLab 3D printer that we utilized. Through the course of many interations, we found that for the tolerances between components to work, they needed to be at least 25% of the nozzle diameter. Tighter tolerances, down to 0.05mm, could be managed by cutting the wall print speed for the prints. This realization led to several iteration of many different components including: snap fit enclosures, omni-wheel connects, drive shaft, motor enclosures, solar manager stantions, and more. Resin 3D printing was attempted to solve the tolerancing issues, however, the smaller print beds, excess time, and materials available for this made it an unattractive option.
- (Intermediate) Supports: Due to the size and geometry of the SOLI module, unsupported flat prints were not possible. Orienting the modules vertical proved to no be feasible as it generated nearly double this filament use and print time because support a vertical structure requires significant supports from both sides. Print time and filament use was optimized by placing each module at a 45 degree angle and increaing the infill to 20%. This minimized the support generation due to only needing support from one side and fewer overal supports due to the greater internal struction of the module. Incereased wall thickness also supported fewer necessary supports, however, the trade off proved insignificant in print time and filament use and only complicated tolerancing.



Results and Discussion
Power Electronics
(Intermediate) By combining the Solar Cells, Solar Manager, and Rechargeable Battery, a fully charged Soli module can function autonomously for up to 3 hours in complete darkness. On Earth, It takes about 9 hours for a full charge. Additionally, the Battery operates under 2 sets of protection circuits, and is insulated in order to protect other critical control circuits. Throughout extensive testing, no circuits or motors malfunctioned due to thermal loading.
Control System
(Advanced) Each individual SOLI module is capable of acting as either a command or auxiliary module with the networking capabilities of the control chip. Motion is controled for a swarm of modules via the server based on the control module. Each unit recieves compass and accelerometer data which enables a moderate degree of location certainty through basic inertial navigation.
Kinetics
(Beginner) All motors in the robot were carefully selected to handle their respective loads without stalling. Additionally, The wheels were coated with a rubber, allowing them to maintain a firm grip on various surfaces and prevent slippage. This combination of properly sized motors and optimized wheel traction ensured that the robot could move smoothly and maintain control, even under challenging conditions.
Design & Manufacturing
(Intermediate) Snap fits were successfully used to assemble components, allowing for quick and secure assembly without the need for additional fasteners. The gears mesh seamlessly, with interlocking teeth ensuring efficient power transmission and precise movement across the robot’s mechanisms. The housing effectively protects the electronics, shielding them from external debris and securing them to avoid any potential short circuits. Additionally, the battery and solar panels are securely mounted, preventing movement and ensuring stable power delivery throughout the robot’s operation. This integrated design ensures all components function harmoniously, with each part securely in place for optimal performance and durability. The final prototype was 8 inches on each side, and 14mm in thickness
Conclusions and Future Work
(Advanced) The integration of a Printed Circuit Board (PCB) into the control and power electronic systems would greatly enhance a Soli module’s performance and reliability. The PCB would serve as a streamlined platform for optimizing power distribution, sensor integration, and actuator control, allowing for more efficient routing of electrical signals and reducing the overall size of a module.
(Advanced) Developing multi-unit movement protocols enables independent and coordinated movement across different segments. This would allow Soli rovers to adapt their form and function based on the task at hand, such as navigating challenging terrains or performing specialized tasks.
(Intermediate) Machining highly precise gears will be explored to enhance the mechanical efficiency and accuracy of the compact robot. These precision gears will improve power transmission, reducing friction and wear, and ensuring smoother, more reliable movement. This advancement will be crucial for optimizing energy use and enabling more precise control over the robot’s movements.
References
1.[1] J. Berre, F. Geiskopf, L. Rubbert, and P. Renaud, “Origami-inspired design of a deployable wheel,” in Mechanisms and Machine Science, pp. 114–126, 2020. https://doi.org/10.1007/978-3-030-60076-1_11
2.[2] R. J. Lang, S. Magleby, and L. Howell, “Single degree-of-freedom rigidly foldable cut origami flashers,” ASME Journal of Mechanisms and Robotics, vol. 8, no. 3, p. 031005, Jun. 2016. https://doi.org/10.1115/1.4032102
3.[3] X. Zhang, R. Nie, and Y. Chen, et al., “Deployable structures: Structural design and static/dynamic analysis,” Journal of Elasticity, vol. 146, no. 2, pp. 199–235, 2021. https://doi.org/10.1007/s10659-021-09860-6
4.[4] L. Datashvili, “Foldability of hinged-rod systems applicable to deployable space structures,” CEAS Space Journal, vol. 5, no. 2, pp. 157–168, 2013. https://doi.org/10.1007/s12567-013-0052-7
5.[5] Z. Iqbal, M. Pozzi, D. Prattichizzo, and G. Salvietti, “Detachable robotic grippers for human-robot collaboration,” National Center for Biotechnology Information. [Online]. Available: https://pmc.ncbi.nlm.nih.gov/articles/PMC8247652/
6.[6] E. Ackerman, “EPFL LASA,” IEEE Spectrum. [Online]. Available: https://spectrum.ieee.org/epfl-lasa
7.[7] C. H. Blake and J. Paik, “More: A modular origami robot,” IEEE Xplore, 2019. [Online]. Available: https://ieeexplore.ieee.org/document/7907345
Powered By EmbedPress