Starting Small For Sawppy Evolution
I've decided to tackle the challenge of designing two different Sawppy variants in order to address the needs of different types of aspiring rover builders. However, I am optimistic it would not require twice the amount of work. Despite their different sizes, ideally they would be more alike than different.
As stated earlier, they will both be six-wheel drive, four-wheel steering robot chassis with rocker-bogie suspensions. I want to explore ways to redesign the suspension components in order to move them away from having to cut metal shafts and e-clip slots, preferably in a way that can be scaled up and down to address both rover sizes.
For rover articulation, I'm moving away from serial bus servos. And by doing so, the motors used for six wheel drive can be different from the motors used to perform four corner wheel steering. Building an electrical architecture that can be scaled to both rovers should also make it easier for people who are already trying to build Sawppy variants at different scales.
I expect to experiment with the following types of wheel drive motors, and possibly more to be added later:
- Brushed DC gearmotors (pioneer: Marco Walther's Sawppy.)
- Stepper motors (multiple requests.)
- Serial bus servos (for those that want to reuse hardware from Sawppy V1)
And the following types of steering actuators, again with more potential additions later:
- Commodity remote control hobby servos.
- Serial bus servos. (V1 compatibility.)
- Stepper motors (require something to sense position. Precedent: homing switches on 3D printers.)
- Brushed DC gearmotors (also require position sensing of some sort.)
This is not an exhaustive list, they are just the starting point I want to keep in mind as I rework the software side of the system. I want to be able to use the same code base for both rovers' control software. Hardware interfaces will be code modules that can be swapped out easily to match the type of motors and actuators used. Rover dimensions will be parameters that can be changed to match the physical chassis size. The code should preferably run on either identical microcontroller hardware or in the same family. For example, the current Sawppy running adapted SGVHAK rover software uses a Raspberry Pi 3. Perhaps the smaller Sawppy will run the same code but on a Raspberry Pi Zero to reduce cost. These and other venues are yet to be explored.
I've decided to start with the smaller rover for the following reasons:
- Smaller rover's smaller parts are faster to print, so I can iterate through mechanical designs faster.
- If I start simpler and cheaper with the smaller rover, I expect it will be easier to scale up to something more complex and expensive for the larger rover rather than doing the reverse.
And the first step for a small rover is to decide on what actuators I will use for it.