Homework - Dave VanderWekke
Chris Ellerby
Admin
Homework for live workshop student Dave VanderWekke
0
Comments
Sorry for the delay. My thread was just created (my fault). Will get some work posted tonight. Stay Tuned!
I was lucky growing up because my father worked in a machine shop. They used to design assembly line robotics. I can remember him bringing home boxes of parts all the time for me to tinker with. I was always building something for fun, or the science fair or just to creep out my friends (mostly around Halloween).
I studied drafting extensively in High School but when College came about I drifted from Architecture to Mechanical Engineering to Electronic Engineering and eventually settled on Electronic Engineering and Computer Science. My claim to fame is inventing the first digital (non-chemical) photo booth for a company I co-founded. Eventually I got burned out on electronics and went into web design and eventually settled back into software engineering which took me on a journey from small company to small company eventually settling in at IBM. After my tenure at IBM, I went back to working at a small company in North NJ where I am today doing both Electronics Engineering and Software Engineering.
My wife and I are also very big Halloween people. We've been running a successful 1/2 acre haunt on our property every year since 2009 and have build a bunch of animated props and scenes.
My life long dream hobby has been robotics, artificial intelligence and home automation. Our home is quite automated and a lot of it was developed custom. Our home is also voice activated and that is where the AI comes in. Finally, with the birth of affordable 3D printers I am jumping into my Robotics Hobby feet first and working on a full size humanoid robot which has been a life long dream. That is what brought me here to Stan Winston School. Hoping to learn a lot!!!
This is my neck design so far. This is printed in Nylon right down to the herringbone gears. I designed the ball and socket part of the next to handle 4 degrees of freedom (movement on 2 axis) and the gearbox to accomplish the other 2 degrees of freedom (left to right rotation). One of the gears is stationary and is mounted to the top of the ball and socket plate. Driven by a servo the entire gearbox with the servo rotates.
The problem I ran into with this linear screw drive was binding due to the 3D printing. I could not get the spiral thread to run smoothly no matter the design or material.
Below, is a simple collar I designed for the 1/4 inch shaft. It worked great. Printed them of nylon.
Next, I hadn't received the 1/4 inch eyelet standoffs. I had a couple of old 3/8 ones laying around. So I designed a nylon 1/4-3/8 bushing so I could make use of the ones I had. Great having a printer for stuff like this. Would work great under a tight deadline.
I then decided to design and print the entire Servo mount as one piece. I grabbed the cad files for the servo bracket from ServoCity and went to work. In stead of using the split collars, I designed it with a 1/4 inch shaft hole up the middle. I used heat settable brass inserts so I could use set screws to lock it to the shaft.
Also on back order were the 1/4 universal joints. So I designed my own along with the top plate. I still have to print this design as I just finished tweaking it.
Here is my neck assembly so far. You can see the nylon servo mount and the nylon collards. Also I just slid a nylon bushing over the shaft so you could see it. The actual ones are in the eyelets.
Here is my final 3D printed Universal Joint for the Homework Project. Didn't want to spend $50.00 on one to play with and Servo City is out of stock on the cheaper ones. Works pretty good. Going to work on getting some linkage connected later this week.
So here is the cheap McMaster Carr U-Joint along with the proper 1/4" stainless shaft, Eyelets and collars. I did break a tap in the stainless so I had to buy another. Got to take it slow with stainless.
Since I had some servos and didn't want to spend on servos I would never use, I used my Nylon servo holder. Again, just proof of Drilling, Tapping (oh and some 3D printing).
I designed and 3D printed a U-Joint to fit into my neck. Because I am building a robot there is some aesthetic design element to it. The U-Joint and neck plate fit exactly in place of my previous ball and socket design.
I also redesigned my neck plate to have tabs that I could screw the linkage to.
I also completely redesigned my upper torso to be more modular and to allow for mounting of the servos. Everything is held together using heat inserted brass nuts and bolts. Once I get my linkage tuned 100% I will replace the all thread with some nicer rods.
The servos are mounted on brackets that I designed using the HS-805BB's specs. It also includes the alignment slot for the servo. On the lower end of the linkage I was able to use some brass RC linkage components to connect to the servo horn. I did not need to create a custom horn and was able to use the heavy duty nylon horn that came with the HS-805BB Servo.
On the back of the U-Joint and the side, I used Nylon Locking Nuts so the screws will not come loose. By designing it myself I was able to control the tolerances. It moves nicely but doesn't have play. Going with my modular design again for aesthetics, I've designed a cable channel that is sort of the robots spine. This will be used to run cables to keep everything clean and neat.
Next, instead of a remote I am working to rough program an Arduino and an Arduino servo shield to test the servos.
I then took an Adafruit PWM Servo Shield. This shield has it's own power source and can run up to 16 servos. You can also change the address of the board so that you can stack 6 or them giving you 6x16 servos total. I mounted it on top of one of my arduinos that is in a 3D printed case. I connected my potentiometer to 5 volts and ground. The other end of the pot connected to an analog pin. When configured the pot gives me a reading of 0 (all the way counter clockwise) or 1023 (all the way clockwise). I then also connected my servos of servo port 0, 1, 2.
I ended up using servo extensions so I could have the arduino a little farther away.
The simple test program for the servo tester simply mapped my pot reading of 0-1023 to 0-180 degrees. It was able to control the servo easily using the adafruit library for their servo shield.
After that, I wrote an automated test that would basically do a nod (both servos up and down), then would do a head lean, one servo down at a time. Then my third test would be left and right rotation which would be testing my pre-existing neck gearbox that I haven't moved to the new neck yet.
https://youtu.be/mJ00Do7bOh8
*** So this is post homework turn-in. Just wanted to share some continued progress after the fact. ***
I took my gearbox off my other nylon assembly and mounted it atop my neck. This gearbox is my (Yaw) rotation around the Z-Axis.
One thing I did not account for when I redesigned my neck plate was to account for the eyelet height on the rod ends. When the gearbox rotates the front herringbone gear just ever so slightly clips the rod end. So I am going to need to go back into Fusion 360 and add about 3mm to the top of the neck plate. This should raise the gearbox just enough without changing anything that would affect the geometry.
You can see from the front view after moving the top face 3mm that I have plenty of clearance above the rod end. I'll just need some slightly longer screws to mount the gearbox and it should work great.
Going to print the replacement part in the morning.