what metal should I use?
Copper wire works better than nichrome wire, according to
Homemade Artificial Muscles IV.
Nichrome is used in places like your toaster mainly because it can get
very hot without melting or oxidizing. But I don't need or want the
heating elements in my artificial muscles to be red-hot. I would like
to be able to use them in low-voltage systems, say 5-6V. The amount of
resistive heat you can get out of a wire is proportional to the amount
of power you pump into it. And since P = V^2/R, increasing resistance
when voltage is fixed will decrease your power. All else being equal
(same power supply, same length and diameter of wire, same
environment), a copper wire will produce more heat, faster, than a
nichrome wire. Copper also has better thermal conductivity than
nichrome, meaning it will cool more quickly after the power is turned
To answer your question,
1) isn't copper wire resistance extremely low,
Not the kind of copper wire used in artificial muscles.
Common copper in-wall power cables are often 10 AWG copper wire, with a resistance of about 3 milliohms per meter, which is extremely low.
Common wire-wrap wire (30 AWG copper wire) has a resistance of 339 milliohms per meter, which is two orders of magnitude more resistance.
People who build artificial muscles use much thinner strands of copper, which have much more resistance per meter -- often a single strand pulled from litz wire or tinsel wire.
and thus generates very little heat?
Power supplies are typically designed to set a fixed voltage.
Once the voltage has been fixed, a lower load resistance generates more heat.
On the other hand, when you wire up your heater circuit, every element of the circuit -- the heater strand itself, as well as the wire from each end of the heater strand back to the power supply -- has the current through it.
Because of conservation of electrons, the same number of electrons per second go through each element.
For a given current, a higher load resistance generates more heat.
Therefore, you want the connection wire between your power supply and the heater strand to be much lower resistance and therefore much thicker than the heater strand, so heater strand is the only element that gets noticeably warmer than ambient temperature.
2) what circuit should I build to heat the wire (and to control the
heating)? Most examples just "attach a battery" to the wire, but afaik
that is simply short-circuiting the battery, and heating the wire very
inneficiently (and also may damage the battery and it could even be
dangerous). So what's a safe and efficient way to produce the heat
necessary to make the nylon muscle react? (I've read 150 centigrads,
could that be correct?) for example with an arduino? or a simple
circuit in a breadboard?
Yes, short-circuiting a battery with a very low load resistance can damage the battery.
To prevent the internal resistance of the battery from heating up the battery enough to cause damage,
Use heater wires that have much higher resistance than the internal resistance of the battery.
Or in other words,
Pick a battery or other power source with an internal resistance much lower than the load resistance of the heater wires.
The Homemade Artificial Muscles IV article says
I'm powering it with a 3V wall wart, and it is drawing 1.17 A.
which implies that the total load about 2.5 Ohms.
(I expect the heater strand is about 2 Ohms of resistance,
every connection has about 0.1 Ohms of resistance,
and the total resistance of all the hook-up wires and the stuff inside the wall wart is maybe around 0.1 Ohms of resistance).
Lots of power supplies (wall warts, batteries, etc.) can easily supply 3V at well over 2 A without getting noticeably warm, much less hot enough to cause any damage.
"How to Make an Artificial Muscle Out of Fishing Line"
"it’s best to stay below 150 °C or 300 °F ..."
"Artificial Muscles from Fishing Line and Sewing Thread"
says that they got maximum contraction "at ~130°C",
and most of their tests cycled the temperature of their artificial muscles "between 25° and 95°C".
An Arduino could easily indirectly control a MOSFET or a relay that could handle a few amps of current.
(The high current would go through a circuit that includes only that switching element and the heating strand and the power supply and the thick connector wires between them.
Directly sending over an amp (1 A) through an Arduino or a solderless breadboard would damage those boards).
If you can't get a circuit working after searching the internet for "Arduino relay" or "Arduino mosfet" circuits, come back and ask a separate question.