3 🏗 Assemble the Frame

"The whole is more than the sum of its parts." 🔩

3.1. Head and neck

3.1.1. Part list

3.1.2. Prepare ultrasonic sensor

The obstacle avoidance algorithm using the ultrasound sensor has not yet been integrated into the released code. The following setup provides a start point but is not mandatory.

After Jan.1st, 2021, we include an ODMed ultrasonic sensor with RGB LED in the Nybble kit. It doesn't require any soldering, but you need to trim off the clip residue of the connection wire on the head's end.

You can download the demo code at https://github.com/PetoiCamp/OpenCat/tree/main/ModuleTests/testRGBLedUlrasonic

The sensor is connected to the NyBoard via a 4 pin cable.

  • Solder on the optional LED to the ultrasonic sensor

The optional RGB LED can be soldered to the four pins of the ultrasound sensor (instructions) to indicate its working status or can be programmed as decorative light.

Bend the pins of the ultrasonic sensor for later installation.

  • Solder 4-pin ultrasonic sensor header to NyBoard

The ultrasonic module is connected to the exposed GPIO pins located in the opposite corner of the board from the TTL connector. You can customize the pin definitions in OpenCat.h. By default definitions, solder the ultrasonic module connection header in the holes labeled “D8 D9 D10 GND” as pictured below.

3.1.3. Trim the servo arms for attaching servos.

Most of the servo arms on the model are trimmed from the cross-shaped arm I. Since there will be more unused straight arms, you can practice trimming with them first.

An alternative method to trimming is using a half-burned knife to cut the plastic parts off. Leave a little bit longer because melted plastic will have a rounded edge.

Pay attention to the width difference between servo arm I’s two long sides, as well as the trimming location (using screw holes as references).

As we switch servo suppliers, the servo arms also changed a little bit (as shown below). To reduce confusion, the servo arm I can be used for most of the joints, just trim it accordingly. Servo arm K is used for the tail. Servo J can be omitted.

3.1.4. Assemble the head group.

Note that the base should only be partially assembled for later calibration. Otherwise, it will be difficult to insert the servo between neckpieces. Also, notice how the servo wire is organized in the head. Assemble the head group as shown in the head animation.

DO NOT connect the head with the neck yet, because the tilt servo on the head has to be calibrated.

3.2. Body

3.2.1. Part list

  • NyBoard only

Note that without the Raspberry Pi, the NyBoard is mounted to the underside of y1 with the servo connections facing downward. In later versions, the y1 piece is designed to be symmetric so that both ends have two screw holes.

  • NyBoard with Raspberry Pi

Use y1Pi to replace y1, and add Pi Stand. Pay attention to the location of the pink pieces. Note that with the Raspberry Pi, the NyBoard is mounted on top of y1Pi.

On earlier batches of NyBoards, the manufacturer used taller jumper pins than expected, so it will be necessary to bend pins or otherwise modify the NyBoard to fit a Pi on top and use the Pi Stand. There is a list of suggested solutions in the forum by this link: https://www.petoi.com/forum/clinic/placement-of-raspberry-pi-3b

  • Other controllers

I also included 5 x 1”/4 nuts for mounting other circuit boards.

3.2.2. Install the adjustable battery holder to the belly

Bend the hinge L of the battery holder to 90 degrees, close to the wall. It functions as a switch. Insert the long screw E through the rivet so that you can better handle the rivet. Insert and push the rivet into the hole on the bottom of the battery holder. Pay attention to the holes’ locations.

The spring attached structure of the battery holder is used for shifting the center of mass when fine-tuning gaits.

The battery holder is generic for AA (1.5V) batteries. But Nybble uses 3.7V Li-ion batteries.

3.2.3. Assemble the body group

Pay attention to the long pins of the infrared receiver and FTDI port. They are designed to be bent in favorable directions. Don’t bend the pins too often or it will lead to metal fatigue. Observe the adjusted configuration if you want to mount a Pi.

Assemble the body group as shown in the body animation.

The spine piece may be thicker than the slot on the shoulder. You can insert it from the outside first to compress the tip and widen the slot, then insert it to the inside of the shoulder.

3.3. Shank

3.3.1. Part list

3.3.2. Attach the rubber to the tip of the shank.

The serrated structure on the tip of the shank is already good for walking. The rubber toe is optional to increase friction and soften each step.

3.3.3. Insert the servo into the slot on the shank.

Pay attention to the direction that the wire is twisted. The small dent on the long edge is designed to let the wire go through. Think about the symmetry of the four legs. Assemble the shank as shown in the shank animation.

DO NOT install the servo screw A yet.

3.4. Thigh

3.4.1. Part list

In later versions, we will use plastic pieces for thigh2.

3.4.2. Trim the servo arms for attaching servos.

The location has been shown in the Head and Neck section. The trimmed narrower servo arm is designed to be inserted into spring F.

3.4.3. Assemble the thigh.

Before closing thigh1 and thigh2, put the wire of the shank through the slot in the middle of the thigh. Think about the symmetry of the four legs.

The servo arm should be able to slide in the track on thigh2 with subtle friction after thigh1 and thigh2 are screwed together. You can tune the tightness of screw C to achieve proper friction. If you need more control over the tightness:

  • Scratch the track using a flat screwdriver to reduce friction.

  • Apply a little paper glue to the track and let dry to increase friction.

Assemble the thigh as shown in the thigh animation.

DO NOT screw neck and legs to the body’s servos yet.

3.5. Tail

3.5.1. Part list

3.5.2. Assemble the tail.

The screw D is installed in the third hole counted from the center of the servo arm K. Pay attention to the order that every piece is stacked. The wheel (tail2) should be able to rotate with little friction, and the whole tail should be able to tilt by a small degree.

Assemble the tail as shown in the tail animation.

DO NOT connect the tail to the body yet.