This directory has information for building your own Sawppy the Rover. Some of the tools required are listed in the tools list.
All Sawppy information is shared freely. Those who wish to support this project may choose to purchase certain parts via Amazon affiliate links. (This does not increase your purchase price.)
General overview of 3D-printed rover parts.
Details:
- Servo accessories
- Steering knuckle
- Fixed knuckle
- Wheel
- Wheel hub
- Corner Steering Joints
- Suspension Bogie Joints
- Suspension Rocker Joints
- Main Body Box Corners
- Differential
- M3 Nut Installation Tool
- Turnbuckles are used to connect both sides of rocker-bogie suspension together, see the end of this document. The two connection endpoints need to accomodate M3 fasteners as used in the rover, and the distance between connection endpoints should be roughly 5cm - 7.5cm. Example: Hobbypark 16617 is seen in the assembly pictures.
- "608" Bearings are widespread. It's the type used in products like rollerblades, skateboards, and scooters. Since Sawppy does not run bearings at high speeds or put heavy loads on them, expensive industrial strength 608 bearings are unnecessary. Shop around for inexpensive alternatives, they'll probably suffice for a hobbyist rover.
- M3 Heat Set Inserts give metal threads for 3D-printed parts which are more durable than threads tapped into printed plastic. Sawppy's default design is sized for these inserts on my printer, and reportedly works well with these inserts as well.
- Purchased Parts List
For an overview of the construction technique used here, combining aluminum extrusion beams with 3D printed connectors plus using design-specific M3 nut installation tools, please see this article on Hackaday.com.
If any part of the assembly instructions are unclear, consult the CAD file to see how parts are supposed to fit together.
- Servo Actuator Module
- Wheel Drive Modules
- Suspension Pivot Joints
- Main Rover Body
- Suspension Differential
- Suspension Bogie
- Suspension Rocker and final assembly
Once all the wheels are attached to the suspension via M3x16mm bolts, your Sawppy will be mechanically complete!
A bare-bones Sawppy build will have the following electronic components:
- A 2-cell lithium polymer battery. (Visible in pictures is a 30C 5200mAh RC monster truck battery)
- A power switch
- Because the battery can deliver up to 150A and nothing on the rover can tolerate more than a few amps, a 10A fuse to protect against short circuits.
- A volt meter to monitor battery voltage.
- A voltage regulator to convert battery power to 5V.
- A Raspberry Pi 3 powered by 5V regulator output, either via micro USB port or GPIO voltage pins.
- A USB cable connecting Raspberry Pi 3 to serial bus translator board.
- Ten serial bus servos connected in parallel to the translator board.
Optional components visible in some Sawppy pictures:
- A USB webcam.
- Google AIY Vision kit.
- A dual-band wireless router for greater range and access to 5GHz band.
There are many different options to control a Sawppy rover.
For driving Sawppy like a remote controlled vehicle (a.k.a. 'teleoperation') using a web browser-based control interface, Sawppy can borrow software from SGVHAK Rover. See instructions to modify SGVHAK Rover software to Sawppy.
Rover builders who prefer a more traditional remote control unit can draw from Marco Walther's implementation.
For experiments in autonomous operation using ROS, please see Rhys Mainwaring's Curio rover project. This is a completely different rover control software stack built on ROS Melodic, including support for RViz visualization and Gazebo simulation, plus a way to extract useful odometry data from servo position reports that are only accurate in a ~240 arc out of 360 degrees.
As an alternative to Raspberry Pi based wireless control, there is now an option to build Sawppy as a wired control rover. This avoids wireless communication issues in crowded environments (like a Maker Faire) and can be kept as a backup option. Alternatively, it allows interfacing with anything that can communicate with an Arduino. Code for Arduino sketch is under the arduino_sawppy directory.
Here's a wiring diagram contributed by Martin