|
Post by skymone on Jan 11, 2016 9:43:58 GMT
Hey! I'm new to this forum and to animatronics in general. I've got this crazy idea of cosplaying a character who has a horses body from belly button and down, so I need a couple of extra legs. I have some vague ideas on how to construct it, but where I am failing is always at the motor-part of my planning, since I don't know much about motors.
I've been looking at this video, and I kind of like how this machine moves:
He uses a drill to power it. But my issue is that I would like the hind legs to sync with my own legs, so that when I move my right leg, the left leg moves and vise versa. My boyfriend is quite good with programming these kinds of things, so I think I could get support from him with that, but for the rest, I'm kind of at a loss :/ My question is mostly what type of motor should I use (servo, actuator etc.), and how do I figure out what size I need?
Hoping someone has some tips!
|
|
|
Post by Honus on Jan 11, 2016 19:47:19 GMT
Welcome! This sounds like a fun project! There are a couple of ways you could get your desired effect. You could use a sensor to trigger a servo to move the leg when your leg moves. I did something similar when I made the Iron Man suit- I had a sensor in the boot that triggered a walking sound as soon as the boot was lifted from the floor. The sensor reads when your foot is lifted and sends a signal to a microcontroller (an Arduino works great) that then tells the leg servo to move.
The other method is to track your leg movement using something similar to what is known as a Waldo. A Waldo is a device that translates your body motions into a signal so something can mimic your movements. In this case what you do is have a potentiometer mounted at your hip (using something like a belt with a bracket) and then the potentiometer shaft is connected to a small piece of say aluminum tubing that is strapped to the side of your leg. A potentiometer is like a stereo volume knob- as your leg moves the knob rotates. An Arduino then reads this signal and tells a servo to follow your leg movement.
There are a couple of catches here. First there will always be a very slight delay from the time the sensor reads your leg movement to when it tells the servo to move. It's small but it shouldn't be too noticeable. Second (and this is a bigger problem) is that servos don't change their rate of acceleration- they only move at a fixed acceleration. You can change the rate of acceleration in some digital servos or sometimes in programming. In the case of having a sensor on your foot, the sensor only tells the servo when to begin moving through a programmed motion- it cannot change movements on the fly. So it's fine for say walking forward at a fixed rate but it will not directly mimic you leg movement.
When you read your leg position using a potentiometer the servo will follow that movement forward and back. It's like using a radio control transmitter- move the stick and the servo movement matches the stick movement. This is probably the way I'd go as it's much more versatile. The trick here is that the servo driven leg cannot exactly match your leg movement because you can swing your leg really fast or really slow and change direction very quickly- this range of movement (speed and acceleration) is typically outside of what a servo can do. Having said that I think with the right servo motors and practicing your movements to stay within a given speed range I think you would be able to pull off something pretty convincing.
The type of servo you use will depend greatly on the weight of the costume (specifically the legs) and the flexibility of the skin.
A less expensive way of making your costume work would be to have the rear legs directly connected to the costume front legs so they mimic the movement. Have you ever seen how some Bunraku puppets work? It would be very similar to that.
If any of this doesn't make sense or you need more help just let me know!
|
|
|
Post by skymone on Jan 12, 2016 13:49:17 GMT
I was thinking of using an accelerometer or, as you suggest, potentiometer to get the back legs to move with the front ones. I originally thought I could use a flex sensor placed at my knee, but I don't think it would work - I played with it on a small scale, and it wasn't as reactive as I thought it would be.
I know it's totally possible to do this by connecting strings to the front legs, but I'm just really keen on finding a way to do it with animatronics. I just think it would be really interesting to learn, though right now I'm finding it very hard to research how, because I'm unsure what to search for. In regards to the price, I've been wanting to do this costume for a few years now, and have put money aside for it, since I'm prepared for it to be expensive.
The hind legs would probably have a core of some kind of light-weight wood or if I can find someone to help weld it, a skeleton of aluminium. I'd cover this with expanding foam and fabric to get the right shape. So the weight shouldn't be that much, but probably more than what the average motor would carry, I think? But you think a servo would be the best type? My boyfriend has been saying probably linear actuator, but can't explain why that would be a better option or how I would get that to work, and I don't get it.
|
|
|
Post by Honus on Jan 12, 2016 20:10:48 GMT
Yep I've used bend sensors a fair bit in the past and they tend to be pretty "noisy" and they need to bend a fair bit in order to work properly. They work OK in gloves but they're not too good for things like elbow and knee movement tracking- in those instances they work better as a sort of trigger sensor rather than a full range sensor. Potentiometers are much better for tracking small angular movements and rotations. An accelerometer could also work but it may be more difficult to implement in actual use than a pot as accelerometers only work with respect to gravity- they only sense rate of change in movement. You would need to measure the +/- acceleration force of your forward/backward leg movement and then translate that into a specific range of motion. I've done some stuff before using a hacked Wii Nunchuck and tracked the motion from that to make a servo follow it and it certainly does work. There was a bit more latency than I would have liked but it did work. If you wanted to go that route you might be better off using an IMU (inertial measurement unit) as it combines an accelerometer and gyro. The gyro measures change of rotation- something an accelerometer cannot do. The higher end IMUs with on board processing combine the readings of the accelerometer and gyro and filter them in order to give you something useful to work with for motion tracking. That stuff gets complicated very quickly and most of it is honestly above my coding ability at the moment- LOL! I think you're bang on the money with how to make the legs. For a wood leg I'd use a 1/8" plywood/foam core sandwich. You could use that thick blue or pink foam sheet they sell at Lowes or Home Depot. If you wanted to use aluminum you wouldn't need to weld it- you could bolt it all together using light tubing and Actobotics parts from Servocity.com and it would bolt right up to a geared servo motor. Linear actuators are great for moving large loads but they tend to be pretty slow unless you go hydraulic/pneumatic. I'd use a good high torque geared servo drive like this one- www.servocity.com/html/spg7950a_standard_rotation.htmlWith a 7:1 gear ratio that servo is rated at 3402 oz-in and it takes .9 seconds to move 60 degrees (not exactly fast but not too bad- you won't be able to run across a stage though!) To figure out if that will work take your hip to floor measurement (horse leg measurement) in inches and divide that rating by the length to get your max torque rating. For instance, my hip to floor is roughly 38" so 3402/38 = 89.52 oz-in. That means that servo will max out trying to lift a fake horse leg that weighs 89 ounces (or roughly 5.5 pounds.) Ideally you never want to push a servo near its stall torque rating so I'd probably try to keep the leg weight down to around 3.5 pounds. It won't be easy but I think it's totally doable.
|
|
|
Post by skymone on Jan 13, 2016 9:52:07 GMT
Thanks for all this very useful information! It's exactly the kind of info I was looking for. I'll need to look for all those things locally, since I'm from Denmark, but it should be possible to find, perhaps with exception of the foam sheets you mentioned - those are near-impossible to get here, unless you manage to find a B2B company willing to sell to private people... I've made a life-size cheetah before from wood, expanding foam and fabric - it didn't have any moving parts, just wheels under the paws so I could roll around on it, and it didn't weigh much, so I'm pretty sure I could get the weight below 3,5 pounds, especially when there won't be any load on the legs, since their weight will be on my back and waist as I imagine. Another good reason to keep it light-weight!
|
|
|
Post by Honus on Jan 13, 2016 19:05:00 GMT
Happy to help! If you need drawings/schematics or help with coding let me know and I'll do my best.  Cardboard would also be a decent substitute for foam in the legs- just cut some 1" (25mm) wide strips and glue it on edge. You can make a pretty light/strong torsion box structure with that. I'd also make the leg bend at the knee. Use a radius rod/arm to pull the lower leg up as the entire leg rotates forward. That way it'll look a bit more realistic. I also thought of using geared stepper motors or windshield wiper motors to move the legs. It wouldn't be as elegant as you would need to use an encoder to read the leg position and the power requirements would be greater but it may be a less expensive solution.
|
|
|
Post by skymone on Mar 21, 2016 10:03:59 GMT
So I've been breaking my brain to figure this out, but I have to admit, I'm kind of at a loss... I've tried a few small prototypes from foamboard, but none of them work at all. It's the construction part I'm failing at already - and here I thought the electronics would be the hard part. Any tips or resources I could check? It's the hole getting the leg to move naturally and keeping in mind that a motor needs to make it move that I'm stuck at :/
|
|
|
Post by Honus on Mar 21, 2016 18:52:01 GMT
I could make you a kinematic model and maybe do some sketches. Would that help?
|
|
|
Post by skymone on Mar 29, 2016 9:18:10 GMT
That would help a LOT!
|
|
|
Post by Honus on Apr 1, 2016 0:35:37 GMT
I'll get on it asap!
|
|
|
Post by Honus on Apr 6, 2016 18:46:31 GMT
OK so I've worked through a few different solutions. Take a look at the following kinematic diagrams. These were done in ForceEffect, which is a free program you can download from Autodesk- it works on iOS, Android and Chromebooks.  The first diagram shows a simple two pivot leg. The hip is pivot(N) and the knee is pivot(O). For this you would use a servo at each pivot point- one to move the upper leg and one to move the lower leg. You would just program the movements for each leg section. You could use an accelerometer on your leg to tell a microcontroller when you are walking forward or backward and then run a program to tell the servos to move accordingly. The second diagram has a the same hip pivot (labeled E) but now there is a radius rod (A-B) that moves the lower leg. This would use a single servo at the hip to move the leg. The downside is that the movement is somewhat limited as the lower leg doesn't have that great a range of motion. While the kinematics of mimicking a real horse leg movement are far from ideal it may be all you need for a costume and as such it's a lot less complex and costs less money to build. The third diagram shows a different way of making a leg with independent upper and lower leg movement but it takes the servo out of the leg and instead has two arms at the top near the hip pivot (H) that move the leg sections. By moving the point labeled (K) forward and back you move the upper leg and by moving the point labeled (M) forward and back you move the lower leg. With this setup it's easy to change the motion need by an actuator. The benefit of this system over the first one is that you get a defined range of motion if you want to use something like a fixed speed motor to actuate it. If you look at this video you can see how this would move- I'd say that if you're comfortable programming the first solution will give you the best appearance with something that is simple to build. The second solution will be the easiest to build, program and maintain but it's the least realistic. The third solution is the most difficult to build but would probably work best if you want to use something other than servos to actuate it. Hope this makes sense! Once you decide which method you want to use I can draw some diagrams for you that will show how to actually build it.
|
|
|
Post by skymone on Apr 7, 2016 6:25:15 GMT
Wow, this is better than I'd even dreamed to hope for! I will try to look at the options with my boyfriend and see what he thinks we would be able to do. Thank you sooo much for taking your time to look at this! And I'll look into the app, although I don't have any devices to run it on myself, but there's surely a way
|
|
|
Post by Honus on Apr 7, 2016 6:33:51 GMT
Always happy to help! The mechanics I think are pretty straight forward and I've got a few ideas on how to do it using off the shelf parts.
|
|
|
Post by skymone on Apr 11, 2016 12:22:13 GMT
Hi again, I've been thinking hard, but I'm having a hard time deciding... Given my low skill level, I am leaning towards option 2, although I understand it's limitations. Below link is a model of the character I'm aiming at - in the lower right corner of the pop-up window with the model¨, there's an option to choose animations, one of which is walking. www.wowhead.com/npc=39930/mylune#modelviewer:10+0To me, the hind legs actually don't seem to move that much at the lower joint, mostly at the hip joint. Could this movement be imitated with option 2?
|
|
|
Post by Honus on Apr 12, 2016 3:50:58 GMT
|
|