I'm a bit of a beginner to the Arduino, and until about a month ago the last time I dealt with component-level electronics was in the early 90s, so I'm not entirely sure what options are available that might work, and I don't want to waste money on something that won't work or that will fry my Arduino, so...
I'm currently working on building a cosplay prop of Raising Heart (picture linky here). I have an Arduino and a Wave Shield I'll be using to add sound (it talks), and making the core light up using an LED will be relatively trivial. I'll also be adding some buttons somewhere to control it, which will take up 2-4 IO pins depending on how I do it. My current plan is to use a 9v to power the Arduino and shield, then 4xAA (through a regulator) to power a small amplifier. This much I've been able to test and confirm as working.
The tricky part is, I'd also like to be able to have the vents pop open - see about 0:50 in this video. I found a video of someone doing this with a prop of Bardiche from the same show (about 1:30 in this video), but I believe they used compressed air, and I'd like to stick with battery power.
Unfortunately, there's not a lot of room in that prop for much more in the way of batteries - certainly, I can't fit a big 12v in there that a lot of "control motors with your Arduino" pages say to use - there's no way I can fit another shield on top of the Arduino and still have it fit either, and a lot of the pins are used by the wave shield anyway (it uses 2-5 and 10-13), so something I can control with just a few pins (I²C is fine) would be needed, and if I can use the 4xAA that power the amp so I don't need three power supplies that would be great.
Osgeld:
more importantly you need to find something to actuate the vents that fit within the space requirements, the rest builds around that
Yeah, that's the part where I really have no idea where to begin. Most of the motors I've seen for sale seem to want much beefier power supplies than I can deal with, but I know toys exist with movement that run off a few AAs so there should be something available. Plus I'm not entirely sure of the best way to convert the motion of a motor to linear movement.
Balorn:
Plus I'm not entirely sure of the best way to convert the motion of a motor to linear movement.
In a confined space looking for small forces, I'd have thought a small motor and pulley system was your best bet. It's possible to get absolutely tiny motors, if you're stuck for space. How small a motor you could get away with would depend on the force and speed the motor needs to provide.
You generally want a servo with a clevis and push rod instead of a normal motor. A servo is a modified motor that instead of telling the motor the speed and direction to spin, you give the interface a number from 0 to 180, and it will position the control arm of the servo to that number of degrees. You then use a mechanical linkage (clevis and push rod) to convert the circular motion that the servo produces into a linear motion you would use to open/close the vents.
In terms of power, you can run one, maybe two hobby servos off of the 5v supply that the Arduino supplies. If you have more servos, you probably need to think about external power to the servos.
Note on an UNO, if you use the servo library, it disables PWM on pins 9 and 10, which might be a problem if you have things that need a PWM on those pins (such as the DFRobot lcd shield as I discovered).
I must admit I haven't done much with a servo, but I hope to in a bit. In answering your question, I did a google search for servo and clevis, and I found this video that shows how to make the servo/clevis/rod control the elevator on a radio controlled plane. I wish I had found this video the last time I tried to setup my servo.
holmes4:
Try using a servo they are small, cheap and require only a single control pin.
Hm, don't they have to share the same power supply as the Arduino? One of my worries is that there'll be too much current drawn from the 9v battery I have powering that, but I'm pretty new to hooking up motors.
PeterH:
In a confined space looking for small forces, I'd have thought a small motor and pulley system was your best bet. It's possible to get absolutely tiny motors, if you're stuck for space. How small a motor you could get away with would depend on the force and speed the motor needs to provide.
Ideally, I'd want to move 2-3 oz about 2-3 inches within, say, about a half second. I plan on making the moving parts as light as possible. However, two of them will be moving at once, and I'd also like them to stay in place if the whole thing is turned upside down.
I do appreciate any guidance, as while I have no problem writing code and dealing with digital logic I'm a complete newbie when it comes to connecting moving parts and I'm (perhaps too) paranoid about blowing something out on my Arduino.
Wow, looks like a lot of good info there (including a few terms I didn't know; part of my problem finding information, I think, was not knowing the words to search for). It will take me a bit to digest all that. Many, many thanks!
Balorn:
Hm, don't they have to share the same power supply as the Arduino? One of my worries is that there'll be too much current drawn from the 9v battery I have powering that, but I'm pretty new to hooking up motors.
No, servos don't have to share the same power supply, but you do need to connect the Arduino ground to the servo power ground if the power supplies are different. As I said, depending on what else you are doing on the Arduino, you might be able to power 1 or 2 servos. However, it is generally a better idea to power the servos separately. One of the links I provided shows how to wire the servos with external power.
Balorn:
Hm, don't they have to share the same power supply as the Arduino? One of my worries is that there'll be too much current drawn from the 9v battery I have powering that, but I'm pretty new to hooking up motors.
If you're thinking of those little PP3 9V batteries, they're convenient but a horribly expensive and inefficient way to power an Arduino - and can only supply minute amounts of current which makes them a poor choice for powering any loads. I think you would be better off looking for four AA or AAA size NiMH rechargeable batteries to power the servos/motors, and if your motors don't draw too much current you might even be able to power the Arduino from the same batteries.
PeterH:
If you're thinking of those little PP3 9V batteries, they're convenient but a horribly expensive and inefficient way to power an Arduino - and can only supply minute amounts of current which makes them a poor choice for powering any loads. I think you would be better off looking for four AA or AAA size NiMH rechargeable batteries to power the servos/motors, and if your motors don't draw too much current you might even be able to power the Arduino from the same batteries.
I also have the Energizer portable battery for cell phones (Energizer Black Portable Charger for Cell Phones and More (XP1000) - Newegg.com) that is a lot smaller, and might work better for the prop, though it only has 1 USB port, and a lot less power (1000maH vs. 5000maH), so if you need to run it for an entire day at the convention, I would go for something like the EZOPower.