New to Muscle Wires and Arduino

I am trying to hook up some muscle wires (flexinol...0.001" in dia...1000mA is the proposed current) to an Arduino Uno. I dont think the 5V is creating enough juice even without a resistor. I may not even be wiring it up right. Does somebody have an example (not a circuit diagram...I am not an electrical engineer :slight_smile: ) like a snapshot of a breadboard? Suggestions on how I can get enough current into the muscle wire - maybe using the VIn pin connected a 9V source? Do I need a relay? Again, a picture is worth a thousand words :slight_smile:

You can't draw 1000 mA from an Arduino pin. 40 mA is the absolute max. 20 or 30 mA would be a good limit. You can use an Arduino pin to switch higher currents using a transistor. A Google search for 'Arduino transistor' will turn up examples and tutorials.

You can't draw 1000 mA from the Arduino 5V regulator. That's the regulator's limit and you need some power to run the Arduino.

You can't draw 1000 mA from the USB cable. They are limited to 500 mA.

If the resistance of the wire is much more than 5 Ohms you will need a voltage higher than 5V to push 1A through it.

If the resistance of the wire is much less than the voltage you are using you will need some way to limit the current so you don't melt the wire. A series resitor would do it but will need to be able to handle the power dissipation.

Thank you good sir. Any chance anybody out there has a picture of how this would work? Like I said, I am a novice at this and the purpose isnt so much the circuit as to the mechanical effects of the muscle wire. You can use a normal wire in place of the muscle wire as I know it is not easy to get. With a picture, I can figure out what to buy and then hook it up. I know I cant let the current keep going through the muscle wire or I will break its crystalline structure and it will not follow its hysterisis curve again. So I think I need something to block/switch the current as well (other than unplugging it). I was planning to use a big potentiometer to possibly attenuate the current. Thanks again.

You can use a normal wire in place of the muscle wire as I know it is not easy to get

No you can't.

I was planning to use a big potentiometer to possibly attenuate the current.

It would have to be a very big one, wire wound.

[quotethis and the purpose isnt so much the circuit as to the mechanical effects of the muscle wire][/quote]
Then just use a switch and power supply.

not a circuit diagram...I am not an electrical engineer

Sorry but need to learn some more before you can attempt this project.

Are you sure your Flexinol is 0.001 inches in diameter? That would use 20 mA, not 1000 mA. The 1000 mA stuff is 0.010 inches.

http://www.robotshop.com/ca/PDF/flexinol-technical-data.pdf

If you DO have 0.001" Flexinol which needs only 20 mA then you could drive it directly from an Arduino pin. You will need 250 Ohms of total resistance (at 5V, 5/0.020). The Flexinol is 45 ohms per inch so if you used, say, a three inch length of Flexinol that would be 135 Ohms (45 * 3). To get the total to 250 that would call for a 115 Ohm resistor. The resistor would be taking about half the voltage (115/250=0.46) or 2.5V. Two and a half volts at 20 mA is 0.05 Watts so even a tiny 1/8W (0.125W) resistor will be big enough.

.001" is pretty small. I got some that is .007" and it's fun to fool around with.

Check this out:

Substitute your wire for the light and use the arduino to switch the transistor the way the guy in the vid uses his fingers. That way you can use the tiny little 5v from the arduino to switch higher power stuff like your wire. "Program" the wire and fool around with some batteries to see what you need to "activate" it. 9v worked for me but if it's hooked up too long it will lose it's "programming".

Once you figure that out you can program the arduino to provide 5v for a short time, then off to cool, or on/off quickly, whatever, to get it working.

Hey guys...thanks for all the help...yes, the diameter is 250 micrometers or 0.01". Was off by a factor of 10 there. Sorry about that. The resistance is 20 ohms/meter or 1/2 ohm per in. The rec current is 1 Amp and I am using about 16" of wire so internal resistance of my wire is about 21 ohms. At 5V from the Arduino, I am only passing through about 240mA so I dont think that is enought to move the wire. So I am going to try this tranistor or relay once I get some time this week. I did setup the wire outside of the Arduino and a 9V battery was plenty (it moved nicely). Which means it was approx double the juice or about 450mA or so. Funny that half wouldnt cause it to move at all? So I guess I am just looking for a nice picture of someone driving a 9V battery to turn on/off from an Arduino. I will try that video that was posted and see if I can substitute the head light for a the wire. Again, I am new to this and yes, I know it is frustrating for the experts :slight_smile: but like anything else, I have to start somewhere :). Thanks for being patient.

At 5V from the Arduino, I am only passing through about 240mA

No you can't get that much current from an arduino pin. If you connected it directly to the pin then you have damages your arduino. 40mA is the point where damage starts to happen.

Just look for driving a motor or a relay with an arduino and put your wire in place of that for the load.

dasmanin:
The resistance is 20 ohms/meter or 1/2 ohm per in. I am using about 16" of wire so internal resistance of my wire is about 21 ohms.

Wouldn't that be 16" * 1/2 Ohm/Inch giving 8 ohms?

To get 1A through 8 Ohms you will need 8V or more.

I've just started experimenting with muscle wire as well. Have a look at my blog post. I was using 0.006" wire. I switched 3.3V to the wire through a relay, basically the blink sketch with 1 second HIGH and 4 seconds LOW. One thing I didn't say in the blog post is you need really good connections to the muscle wire, I crimped thin copper tube to make the connections. My circuit is also shown, I used no resistors and about 2.5" of muscle wire.

http://www.interactivewearables.co.uk/?p=214

The trick to working with a manageable current requirement with muscle wire + Arduino is to play with the duty cycle in your code: that is, playing with the HIGH/LOW duration.

luxxnatura:
The trick to working with a manageable current requirement with muscle wire + Arduino is to play with the duty cycle in your code: that is, playing with the HIGH/LOW duration.

No it is not.
Altering the duty cycle of a PWM output only changes the average current, it does not affect the peak current, and that is what will kill your arduino.

If you didn't know, there was a book released back in 98/99 called Muscle wires

This may be of interest. I would post a few bits from it but alas my copy is hiding some ware.