The chassis we're using is precut with various slots and holes to allow mounting things to it. It's a fairly small chassis so we'll also use the optional raised platform to provide a bit more space. The CRICKIT and controller will go on that.
The chassis provides precut mounting holes on the sides for four microservo sized motors. However normal servos won't work for what this project needs, which is continuous turning motors. While there are DC motors in a microservo bodies, the CRICKIT can only drive 2. This design uses 4. Fortunately, continuous rotation microservos are available.
The servo mounting holes and the microservos accept M2.5 bolts. Nylon bolts worked nicely, are cheap and light weight.
Mount the servos so that all four have their output shafts nearest the ends of the chassis. It should look like the third photo.
The chassis being used has a optional (available separately) upper deck that comes in handy if you want to use a large battery pack (which is advised for motors). We'll put the CRICKIT and controller board on this platform with the battery below.
There was a fair bit of thought given to how this robot should move. The CRICKIT turtle project provided some inspiration. In the end a short leg was mounted on each servo. The servos come with a variety of horns, including a round disk. That provided the most surface area and support for the type of leg being used. One is mounted on each servo and secured with the included screw.
Legs were cut from corrugated cardboard with the corrugations running the length of the leg. 50mm (2in) long and 25mm (1 in) wide fit well. Each end was rounded using one of the servo disk horns to mark the curve. The legs will be be short enough so that they don't touch if they happen to point inward at the same time.
The cardboard legs are then hot glued onto the disks. If your environment has a lot of slippery floors (cushion flooring, hardwood, laminate, tile, etc) you may want to add some hot glue along the ends of the legs so that they'll grip a bit better.
Don't worry about the orientation of the legs; these are continuous rotation servos, so there's no limits or zero positions. Additionally, each motor will vary a bit so they won't always turn at the same rate. Far from being a problem, this gives the robot its quirky gait.
While you can mount a CRICKIT with double-sided foam tape, if you have a 3D printer (or can get something printed) it is really useful to to make a CRICKIT mounting base. This is the one by the Ruiz brothers of 3D Hangout fame which has some standout features:
- mounting slots
- notches for the cap-touch sensors, USB, and power
- various snap-in centers
- support for press/heat insertable threaded M3 inserts
For this project we use the insert with two mounting holes. These holes are the right distance apart to mount on the upper deck of the chassis: one at each end of the center slot. However, with a bolt through each mounting hole, the base sits slightly on top of the bolts securing the deck to its standoffs. This can be solved by cutting, grinding, or melting a slight notch where the bolt heads touch the mount. See the first picture. Depending on the M3 bolts you use to connect the mount to the deck, you might have to widen the holes slightly. See the second picture.
The final picture shows the mount, secured to the deck, with heat insertable M3 inserts in place. Now it's easy and mess free to swap out different CRICKIT/controller combos.
The servo wiring has to be secured; there's enough slack on the two rear ones that it'll cause a problem if they're left free to get caught up in the legs.
Feed the servo wiring up through the slot at the back of the chassis. There is a wider section in the middle that makes it easy to get the connectors through. Connect them to the servo header on the CRICKIT:
- front right
- front left
- rear right
- rear left
Take up the slack, leaving enough to disconnect/reconnect the servos at the CRICKIT header. Bunch it together and secure
using a couple small zip ties underneath the chassis. The holes/slots in the chassis can be used handily for this. On the back of the robot use a couple more zip ties to bunch the servo wiring together.
When a friend saw a video of an early version of the bot, they commented that it could use a wagging tail. Think about making a wagging tail for a moment. You need it to move back and forth through a relatively small angle: +/- 30 deg from center (i.e. straight up) is probably fine. Sounds like the ideal job for a servo. Except for a couple things. Even a micro servo is not really all that small, but a sub-micro servo might do the job.
The other problem is that the Crickit has four servo drives, and all four are in use for the locomotion motors. It could be wired directly to the controller board. That's kind of hacky (advice: never let that stop you) but more importantly, part of the design goal is to make use of the CRICKIT.
There are two DC motor drives that aren't being used. If only we had a tiny DC motor that could wave something between +/- 30 degrees...
It turns out that there's a part that's perfect for doing that. It's small and moves an arm through about +/- 60 degrees. It's not especially powerful, but it doesn't have to be.
The wires on this motor are very fine. Fine enough that they aren't easily used with the screw terminals of the motor drive. To fix this, we will solder them to a 2-pin piece of standard 0.1" header. The pins are just right to fit into the motor connector. As usual, some heat shrink is handy to prevent shorts and to act as a strain relief.
The first attempt at mounting the tail motor involved using hot glue. With the regular back and forth motion of the tail, this didn't hold very well. Hot glue has its limits. In fact, glue in any situation that is under regular fluctuating stress might not be a great idea. Also, the plastic of the motor casing is quite thin, and apparently has a low melting point. Some deformity was noticed when it was eventually removed.
What did work well are zip ties. Specifically, four small ones. As shown in the pictures, two were placed around the back edge of the chassis using the slot that the servo wiring is routed through. These are then used as mount points for two more zip ties as shown in the photos. These two are secured around the bottom and back of the motor. This places the motor at an angle so that the rotation axis isn't horizontal. That's a good thing in that it angles the tail at about 45 degrees so it is completely clear of the CRICKIT's power plug.
The tail was made from a piece of heavy bungee cord. This had enough flex to wave slightly, but is stiff enough not to droop, and light enough to be wagged easily by the small motor. It's simply glued to the swing-arm of the tail motor. Be sure not to get glue into the arm mechanism, and hold it in place while the glue cools.
The final step is to connect the tail motor to the motor 1 driver. To ensure that the motor wire is out of the way of the legs, bend the pins to close to a right angle so that the wire comes off the CRICKIT more vertically.