12. Skin Electronics
For this assignment I decided to simulate the hair. To do this the principal components are Tilt Sensor wich will simulate the movement and Optic Fiber will be the hair. To hide the circuit I created a hair accessory with a ponytail holder.
Components
I used:
- For circuit
- Mercurio Tilt sensor I found this information
- Led RGB 5mm
- Resistors (180 R, 120R x 2)
- 3V battery
- Arduino UNO
- ATtiny 85
- AVR Programmer
- BreadBoard
- Jumpers
- Copper board
- Roland Milling Machine
- Fritzing Software
- For Head Accessory
- Optic Fiber end glow
- 3D printer Machine
- PLA filament
- Filaflex filament
- Rubber band
The circuit
The Tilt Sensor is a component with two separated conductive pins and a mercury drop. When the mercury drop touches the conductive pins closes the circuit allowing energy to pass. The mercury drop moves depending on the gravity and movement. Read more here. So it can be used under the concept of a Switch. And that's exactly what I did.
I wanted to use the ATtiny because is small to use it in the hair. I drew the circuit and between the positive side from the battery to the ATtiny I added the tilt. So the microcomponent is not getting energy if the mercury ball from the tilt sensor is not closing the circuit.
!! Picture of the Circuit !!
The Coding
The RGB Led has tree colors that must be to different pin and they are OUTPUT. In this case they must be connected to the pins 0 - 1 and 2 of the ATtiny that are also PWM. The rest two pins are used for Analog Inputs. As I wasnt an expert in RGB color fading (now I am after making the Analog tilt potentiometer in a very analog way) I used this code from Instructables.
const int redPin = 2;
const int grnPin = 1;
const int bluPin = 0;
void setup()
{
pinMode(redPin, OUTPUT);
pinMode(grnPin, OUTPUT);
pinMode(bluPin, OUTPUT);
}
void loop()
{
redtoyellow();
yellowtogreen();
greentocyan();
cyantoblue();
bluetomajenta();
majenatored();
//delay (30);
}
void redtoyellow()
{
digitalWrite(redPin, HIGH);
digitalWrite(bluPin, LOW);
// fade up green
for(byte i=1; i<100; i++) {
byte on = i;
byte off = 100-on;
for( byte a=0; a<100; a++ ) {
digitalWrite(grnPin, HIGH);
delayMicroseconds(on);
digitalWrite(grnPin, LOW);
delayMicroseconds(off);
}
}
}
void yellowtogreen()
{
digitalWrite(grnPin, HIGH);
digitalWrite(bluPin, LOW);
// fade down red
for(byte i=1; i<100; i++) {
byte on = 100-i;
byte off = i;
for( byte a=0; a<100; a++ ) {
digitalWrite(redPin, HIGH);
delayMicroseconds(on);
digitalWrite(redPin, LOW);
delayMicroseconds(off);
}
}
}
void greentocyan()
{
digitalWrite(grnPin, HIGH);
digitalWrite(redPin, LOW);
// fade up blue
for(byte i=1; i<100; i++) {
byte on = i;
byte off = 100-on;
for( byte a=0; a<100; a++ ) {
digitalWrite(bluPin, HIGH);
delayMicroseconds(on);
digitalWrite(bluPin, LOW);
delayMicroseconds(off);
}
}
}
void cyantoblue()
{
digitalWrite(bluPin, HIGH);
digitalWrite(redPin, LOW);
// fade down green
for(byte i=1; i<100; i++) {
byte on = 100-i;
byte off = i;
for( byte a=0; a<100; a++ ) {
digitalWrite(grnPin, HIGH);
delayMicroseconds(on);
digitalWrite(grnPin, LOW);
delayMicroseconds(off);
}
}
}
void bluetomajenta()
{
digitalWrite(bluPin, HIGH);
digitalWrite(grnPin, LOW);
// fade up red
for(byte i=1; i<100; i++) {
byte on = i;
byte off = 100-on;
for( byte a=0; a<100; a++ ) {
digitalWrite(redPin, HIGH);
delayMicroseconds(on);
digitalWrite(redPin, LOW);
delayMicroseconds(off);
}
}
}
void majenatored()
{
digitalWrite(redPin, HIGH);
digitalWrite(grnPin, LOW);
// fade down blue
for(byte i=1; i<100; i++) {
byte on = 100-i;
byte off = i;
for( byte a=0; a<100; a++ ) {
digitalWrite(bluPin, HIGH);
delayMicroseconds(on);
digitalWrite(bluPin, LOW);
delayMicroseconds(off);
}
}
}
I tried first with arduino and then with the ATtiny. I used the AVR Programmer and the settings Board: ATtiny45/85 and Programmer: USBtinyISP You can download the ATtinyCore here and add it to the Arduino program using this tutorial. Place the components in a BreadBoard. Remember the 180R ohm goes to the Red color of the Led. The 120R resistors goes to Blue and Green Color.
AVR Programmer from Ana Correa on Vimeo.
It worked!! Now we need a PCB where to place our components.
Making the PCB
Now that we know the components and the circuit is fine I used a program called Fritzing to create the Printed Circuit Board.
The program to mill the PCB in the Roland machine reads different extensions. In this case we are goin to use .PNG but first we need to get the file ready. We used just the file Top Copper file and edit it using Illustrator.
After doing this many times I learnt the size of the traces must be 3pt of line otherwise is going to be too thin having the risk of brake the copper or lifted up easily. Damaging the circuit. Also the traces circle must be thick at least 1,6mm double size of the drill that makes the holes. For the holes is better the smallest as possible, that's why I used size 0,8 mm. Then save in a .PNG file. For making the battery circuit I just understood how the Lilypad holder worked and I did my own.
To use the file converter and the settings for the Roland machine follow the same steps I did explain in making the swatch of the E-textile analog sensor.
After all this I did weld the components with the tin. Remember not to breath meanwhile you do this. Then try the Tilt Sensor.
Picture credits to Betiana Pavón
It worked¡¡ When the mercury ball touches the pins it turns ON and when it doesnt is OFF.
Head Accesory
For this I did a Box and 3D printed it with different filaments. The Container is PLA, the Cover is Filaflex and a little bit smaller than the Box so it closes very well. And the Top is a geometric design I got inspired by this. The PLA files were printed in a PRUSA machine and the Filaflex in a REPRAP machine with the same settings a did write in the Computational Couture experiments
Also for the Led and the Optic Fiber a did a piece to join up this components.
Assembly
After having the hair accessory I did put the optic fiber in the circuit. The fiber must be opposite to the led light to be able to transfer the colors along its way. The ideal is to dont allow the light to escape so we cover it with a 3D printed piece design for the led size and the fibers, then cover it it with a thermoform tube. After putting everything inside the box its ready to play.
And here is the performance¡¡¡ Song: My Life by Nuriko Miyamoto
Optic Fiber Hair - Skin Electronics from Ana Correa on Vimeo.
CAP AURORA - External Project
- Prototype selected in the contest “DIGITAL MADE” of Fondazione Mondo Digitale / Roma / Italy / 2019
The prototype cap Aurora, is a design created jointly by Betiana Pavón and Ana Correa; which consists of a modular Cap (accessory for the head) with the addition of an electronic system that allows the morphology to stand out in the dark through fiber optics. This project was carried out jointly and thanks to the knowledge acquired in the Fabricademy program. (Computational Couture / E-Textiles and Wearables)
- [Design by Betiana Pavón]
The design of the circuit is explained at the beginning of this assignment. The only difference is the tilt sensor is now the switch.