In this assignment, you will create a thermochromic system. You will use a transistor to activate either a peltier element, heating pad, or muscle wire to generate heat. You will also use thermochromic fabric or create thermochromic ink (using pigments that change color at different temperatures) to visualize the output of your system.
Muscle wire (flexinol) is an alloy that can be electrically driven: it contracts/expands (moves) when a current is applied across it. The muscle wire will heat up when a current is applied across it. Peltiers convert electric energy into a thermal energy. When current is applied across a peltier element, one side becomes cooler and the other side heats up. A heating pad can be use to warm up a larger surface area.
The heating pad, peltier, and the muscle wire all draw more current than can be provided by the regular Arduino pins, so you will have to use a transistor to control current from the Arduino power pin (5v pin). Heating elements can be fun! Heating elements can also be dangerous.
Safety tips for using muscle wire:
- DO NOT RUN CURRENT THROUGH THE WIRE FOR MORE THAN 2 SECONDS AT A TIME (1-2 seconds on, ~3 seconds off is ideal)
- USE SUFFICIENTLY LONG PIECES OF MUSCLE WIRE (a short wire will get too hot)
- DO NOT ATTACH THE WIRE TO EASILY FLAMMABLE MATERIALS (e.g., parchment paper)
- NEVER LEAVE ACTUATED MUSCLE WIRE UNATTENDED
A transistor acts as a type of switch: when voltage is applied to its base, a larger current/voltage will flow from the collector to the emitter. In this assignment, you will use one of Arduino’s digital output pins to drive the transistor, and Arduino’s 5V power pin will act as an “external” power source.
Create a circuit and code that drives muscle wire using the TIP120 transistor. You can refer to this ITP transistor tutorial for more information on driving external power sources. You can also see this thermal blanket example.
In addition, you will combine thermochromic pigments with a paint base of your choice. The pigments provided with this class will loose their color at 86F. You can use them to creatively visualize the output of your thermal circuit. This is a cool little demo of thermochromic paint.
Your circuit should exhibit interesting thermal behavior, beyond simply heating up and cooling down. Your project must be interactive (use a switch or analog sensor to activate the thermochromic behavior). You must also use a while loop in your code. For instance, use a switch, capsense, or one of the analog sensors as input to control the wire; or think about generating a heating pattern that mimics organic behavior. For more creative ideas, check out the muscle wire crane tutorial. This video shows a bunch of neat interactive examples.
Document your project on the class blog under the “thermal” category. Include a photo or video, a diagram, and a brief description (2-3 sentences).
This assignment is worth 4 points
1 points for setting up your Arduino/transistor/muscle wire or peltier or heating pad circuit and not burning anything
1 point for a while loop in your code and interactive input (switch, sensor)
1 point for clear documentation that includes a description of how you made your project
1 point for using thermochromic fabric or paint to visualize your actuation