There were a lot of lessons I took away from this assignment, but I think the main one was to be realistic about expectations especially when working in unfamiliar territory.
Without getting too ahead of myself, it might be helpful to start with the assignment and the inspiration. We were tasked with:
- Mounting a motor to something
- Mounting something to the motor
Simple enough, right? I, of course, wanted my motor to do something, and I found myself considering kinetic sculptures and architecture and how I might take inspiration from them. Already losing sight of the main objective, I recalled the incredible work of Theo Jansen. One aspect of his rhinoceros “strandbeest” that was particularly interesting is that it is driven entirely by a single rotational motion.
I figured all I had to do was break down the walking leg mechanism and figure out how to adapt it to a single drive shaft being driven by a single servo. I could then build it up as a series of members with some basic pulleys and a couple of specialty parts from Servo City.
I then set out to create a model in Rhino/Grasshopper to prove if I could actually replicate this behavior and test any modifications I might want to make. Using Kangaroo, a physics simulator plugin for Grasshopper, I was able to do just that.
In order to achieve the minimum amount of stability necessary for this guy to stand, I figured I would need to create 6 legs. I modeled out the entire thing in Rhino3D and began creating the cut paths necessary to put this together.
Simultaneously, I needed to make sure I could achieve this with the servo motor I purchased. I knew that servo motors are limited usually to a range of movement, but not a full 360-degree rotation. I found a great video online that shows how to perform this modification and followed it successfully.
I learned that a servo motor has a built-in potentiometer that sends angular information back to the driver that informs the motor to move, stop, or reverse. The solution was to replace it with two resistors that when combined equaled the total resistance of the potentiometer and add a connection between those two resistors.
I then reassembled the motor and ground off the safety pin on the main gear to prevent the motor from tearing up the potentiometer allowing the motor to freely rotate 360-degrees. I wrote a simple arduino program that uses a potentiometer to check this.
Now that’s out of the way, I went back to making the beast. Due to the way that the legs work, I realized that I couldn’t connect the legs directly to a single drive shaft but would instead need to use a pulley system to rotate a series of pulleys offset above the drive shaft. I would also need to offset the leg components from the pulleys if I were to use standard hardware with nuts and screws.
This is really just a lengthy way of saying that the number of assumptions I was making began to balloon out of control. I continued to push forward and even cut the acrylic for the six legs (24 pieces of acrylic each!) and used threaded rods to assemble everything. As I pushed forward stubbornly, it dawned on me that without lock nuts for the scissor hinges, the whole thing would begin to leak nuts and bolts and would slowly walk itself to pieces… if it was even functional.
With time running out, I decided to scale back my ambitions and focus primarily on making the motor work at the most basic task: rotate a shaft that runs perpendicular to its own shaft, and try to get that first shaft to turn a pulley using an O-ring.
Understanding the amount of distance I needed to account for between the two pulley wheels based on the diameter of the O-rings, which were still arriving by mail, was challenging. I made the decision to provide slots for all of the hardware to give me the flexibility to readjust the tension of the O-rings.
The final result could potentially be used as the foundation for the full strandbeest, but right now it’s mainly a proof of concept.
In the meantime, I should research a better way to create a stronger pulley axel and a stronger scissor joint for the legs.