Veste avec EL Wire par Liliane.
Nota bene: je partage cette réalisation sous licence CC-BY-NC.
Merci de me contacter si vous souhaitez le commercialiser.
El wire est un câble électroluminescent flexible et étanche, fait à base de phosphore. On peut l’incruster facilement dans un vêtement.
Il peut être glissé dans un biais ou une gaine plastique en 3D (tube de crin) comme ci- dessus, ou tout autre matériel inspirant votre imagination. Son aspect est assimilable à un filament lumineux et produit une douce lumière qui n’agresse pas l’oeil.
Vous ne passerez pas inaperçu la nuit mais sa lumière est peu visible à la lumière du jour ou d’intérieur (dans ce cas préférez les LEDS).
Ce tutoriel vous présentera un aspect parmi tant d’autres d’intégration du El Wire au vêtement.
Matériels:
-tissu peu élastique, type lainage, doublure coton
-tube en crin 16mm (gaine plastique); Socolatex, 12 Rue du Bourg l’Abbé, 75003 Paris
http://www.artipistilos.com/en/web/products/crin-tube/crin-tube-2-mm-.aspx
(je n’ai pas encore testé mais l’image laisse croire que c’est le même crin)
-biais en coton entre 16 et 20 mm (tout dépend de l’effet désiré)
-EL wire ; https://www.sparkfun.com/ ou autres vendeurs de composants électroniques
-EL sequencer; https://www.sparkfun.com/products/12781
-Inverter 3V ou 12V; https://www.sparkfun.com/products/10201
-Microphone; https://www.adafruit.com/products/1063
1ère partie: La couture
Etape 1: Le patronage
Définir les découpes de son patronage.
La veste a été élaborée à partir d’un patronage classique (crée par mes soins) dont j’ai adapté les découpes par rapport à la gaine de crin de 1,5 cm de diamètre. Bien entendu, vous pouvez partir d’un patronage existant et déplacer les lignes de découpes en équilibrant sur chaque morceau pour obtenir le design désiré.
Ici la gaine représente le centre de la découpe, la ligne finie sera donc les bords de la gaine.
La ligne finie sera donc à 0,75 cm de chaque côté de la ligne de découpe.
Attention: il faudra couper le papier sur cette ligne mais les autres lignes auront 1cm de couturage!
Etape 2: Le biais
Votre tissu est coupé, ainsi que la doublure.
Assemblez les parties avec le couturage, couture ouverte, repassée.
Superposez l’envers des morceaux tissus avec l’envers de la doublure et maintenez les deux morceaux par le bord en épinglant puis faites une piqûre de maintien (0,5cm).
Coudre le biais sur les parties sans couturage.
Etape 3: La gaine
Les filaments blancs permettent de la structurer (s’il n’y en a pas, vous pouvez quand même essayer mais le résultat sera probablement différent de cette veste).
Utiliser le point zigzag de votre machine, il doit être serré de manière à prendre les fibres de la gaine, pas plus petit que 2 mm de largeur et d’écart.
Plier légèrement la gaine au niveau d’un filament et glissez la gaine sous le pied de biche standard. Accolez la partie biais et la gaine et faites en sorte que le point zigzag prenne à la fois le biais et la gaine.
N’hésitez pas à faire un premier essai avec des chutes de tissus pour vous familiarisez avec ce procédé mais aussi voir si votre machine est assez robuste pour presser la gaine 3D!
Laissez la gaine dépassée de 2cm aux extrémités de la partie biais du morceau. Poussez la gaine et le tissu en même temps.
Coudre la gaine et le morceau correspondant dans le même sens que le précédent montage, pour éviter les décalages.
SI VOUS SOUHAITEZ FAIRE UN RACCORD, entre deux bouts de gaine:
faites quelques points à la main avec un fil transparent et étalez de la colle gel sur cette zone en faisant le tour du diamètre de la gaine, puis mettre un morceau de scotch et laisser sécher.
Vous pourrez coudre comme expliqué précédemment le biais et la gaine.
Etape 4: EL Wire
Attachez le câble à la gaine à intervalles réguliers avec un fil transparent, passez par les espaces de la gaine tout en entourant uniquement le câble. Laissez une bonne marge pour faire les soudures.
2ème partie: Les branchements
Etape 5: El sequencer
C’est un arduino qui permet de programmer plusieurs El wire. Il utilise peu de courant.
Pour cette veste, j’ai utilisé une batterie rechargeable portable, que l’on branche à un câble USB.
Photo
Dénudez une partie du câble USB, soudez les extrémités des câbles vert et blanc, finir le bout en couvrant par un morceau de gaine thermorétractable.
Souder la broche du câble FTDI et les câbles reliant le micro à l’arduino.
Programmez comme vous voulez!
Le code suivant acquiert l’audio, puis réalise une transformée de Fourier pour séparer les diverses composantes du son (grave/aigu). Il réagit différemment selon si le son est grave ou aigu. La librairie utilisée pour la transformée de fourier (transfirlée de Hartree en fait) est ici http://wiki.openmusiclabs.com/wiki/ArduinoFHT
[pastacode lang= »c » manual= »%2F*%0ACode%20d’analyse%20du%20son%2C%20les%20donn%C3%A9es%20int%C3%A9ressantes%20sont%20dans%20contenu_Bandes%20qui%20contient%20un%20pourcentage%20de%20la%20puissance%20dans%20chacune%20des%20bandes%0Ad%C3%A9finies%20un%20peu%20plus%20bas.%0A%0AA%20v%C3%A9rifier%3A%0ALe%20seuil%20de%20d%C3%A9tection%2C%20voir%20avec%20le%20micro%20-%3E%20Variables%20SEUIL_DETECTION%0ATester%20avec%20un%20micro%20et%20diff%C3%A9rents%20fichier%20son%2C%20on%20peut%20%C3%A9mettre%20avec%20l’ordi%20des%20sinusoides%20grace%20%C3%A0%20http%3A%2F%2Fonlinetonegenerator.com%2F%0A%0AA%20faire%3A%0AVoir%20comment%20on%20veut%20que%20le%20programme%20r%C3%A9agisse%20%C3%A0%20ces%20diff%C3%A9rentes%20bandes%20de%20fr%C3%A9quences.%0A%0ANB%3A%20le%20repliement%20de%20fr%C3%A9quences%20causant%20quelques%20soucis%2C%20la%20fr%C3%A9quence%20de%20sampling%20%C3%A9tant%20de%20l’ordre%20de%208900Hz%3A%0A-soit%20on%20augmente%20la%20fr%C3%A9quence%20de%20sampling%20de%20l’arduino%20-%3E%20http%3A%2F%2Fforum.arduino.cc%2Findex.php%2Ftopic%2C6549.0.html%20mais%20dans%20ce%20cas%20il%20faut%20recaler%20les%20bandes%0A-soit%20un%20ajoute%20apr%C3%A8s%20le%20micro%20un%20filtre%20passe-bas%20de%20fr%C3%A9quence%20de%20coupure%20~%205000-6000Hz%2C%20qui%20coupera%20les%20fr%C3%A9quences%20trop%20%C3%A9lev%C3%A9es%20et%20diminuera%20l’importance%20de%20ce%20repliement%0A*%2F%0A%0A%0A%23define%20LIN_OUT%201%20%2F%2F%20use%20the%20lin%20output%20function%0A%23define%20FHT_N%20256%20%2F%2F%20set%20to%20256%20point%20fht%0A%0A%23include%20%3CFHT.h%3E%20%2F%2F%20include%20the%20library%0A%0A%2F*%0AOn%20fait%204%20bandes%20de%20fr%C3%A9quences%0A0-34Hz(point%200)%3A%20On%20rejete%20cette%20bande%20pour%20peu%20d’int%C3%A9ret%20(vu%20la%20taille%20du%20micro%2C%20elle%20n’a%20pas%20beaucoup%20de%20signification)%0A34Hz-68Hz(point%201)%3A%20Fr%C3%A9quences%20graves%0A68Hz-408Hz(point%202-12%3A%20Fr%C3%A9quences%20graves-medium%3A%20plutot%20voix%20masculines%0A408Hz-1496Hz%20(13-44)%3A%20Fr%C3%A9quences%20medium-aigues%3A%20plutot%20voix%20feminies%0A1496Hz-4352Hz%20(45-127)%3A%20Fr%C3%A9quences%20aigues%0A*%2F%0A%0A%23define%20NB_BANDES%202%0Aint%20Bandes_debut%5BNB_BANDES%5D%3D%7B1%2C13%7D%3B%0Aint%20Bandes_fin%5BNB_BANDES%5D%3D%7B12%2C127%7D%3B%0Afloat%20contenu_Bandes%5BNB_BANDES%5D%3B%0A%0A%2F%2F%20Un%20seuil%20sur%20l’%C3%A9cart%20type%20%C3%A0%20partir%20duquel%20on%20consid%C3%A8re%20qu’il%20y%20a%20du%20son%0Aint%20SEUIL_DETECTION%3D20%3B%0A%0A%2F%2FLe%20code%20pour%20elwire%0A%23include%20%3Cmath.h%3E%20%20%20%20%2F%2F%20(no%20semicolon)%0A%23define%20SORTIE_A%203%0A%23define%20SORTIE_B%206%0A%23define%20NIV_NB%2024%0A%23define%20LENTEUR%2010%20%2F%2F%20Vitesse%20de%20la%20diminution%20du%20EL%20WIRE%0A%23define%20CYCLE%20255%0Aint%20pause%3B%0A%0Aint%20Intens_act%3D0%3B%2F%2FIntensit%C3%A9%20actuelle%20du%20cable%3B%0A%0A%0Avoid%20setup()%20%7B%0A%20%20%2F%2F%20put%20your%20setup%20code%20here%2C%20to%20run%20once%3A%0A%20%20Serial.begin(9600)%3B%20%2F%2F%20use%20the%20serial%20port%0A%20%20pinMode(SORTIE_A%2C%20OUTPUT)%3B%0A%20%20pinMode(SORTIE_B%2C%20OUTPUT)%3B%0A%7D%0A%0Avoid%20loop()%20%7B%0A%20%20int%20temps1%3Dmillis()%3B%0A%20%20for(int%20i%3D0%3B%20i%3CFHT_N%3Bi%2B%2B)%0A%20%20%7B%0A%20%20%20%20fht_input%5Bi%5D%20%3D%20analogRead(A7)%3B%0A%20%20%7D%2F%2F30ms%20pour%20256%20points%0A%20%20%2F%2FOn%20a%20donc%20un%20pas%20en%20fr%C3%A9quence%20de%2034Hz%0A%20%20%2F%2FUne%20fr%C3%A9quence%20d’%C3%A9chantillonage%20de%208900Hz%0A%20%20%0A%20%20%0A%20%20%2F%2FOn%20calcule%20la%20moyenne%20et%20l’%C3%A9cart%20type%0A%20%20float%20mean%3D0%3B%2F%2Fmoyenne%0A%20%20float%20sig%3D0%3B%2F%2Fecart%20type%0A%20%20for(int%20i%3D0%3B%20i%3CFHT_N%3Bi%2B%2B)%0A%20%20%7B%0A%20%20%20%20mean%3Dmean%2Bfht_input%5Bi%5D%3B%0A%20%20%7D%0A%20%20mean%3Dmean*1.%2FFHT_N%3B%0A%20%20%2F%2FOn%20enl%C3%A8ve%20la%20moyenne%20pour%20enlever%20le%20continu%20eventuel%0A%20%20for(int%20i%3D0%3B%20i%3CFHT_N%3Bi%2B%2B)%0A%20%20%7B%0A%20%20%20%20fht_input%5Bi%5D%3Dfht_input%5Bi%5D-mean%3B%0A%20%20%20%20sig%3Dsig%2Bfht_input%5Bi%5D*fht_input%5Bi%5D%3B%0A%20%20%7D%0A%20%20sig%3Dsqrt(sig%2F(FHT_N-1))%3B%0A%20%20%0A%20%20%2F*Serial.print(%22Mean%2FEcartType%3A%20%22)%3B%0A%20%20Serial.print(mean)%3B%0A%20%20Serial.print(%22%2F%22)%3B%0A%20%20Serial.println(sig)%3B*%2F%0A%20%20%0A%20%20float%20seuilgrave%3DanalogRead(A6)%2F100.%3B%2F%2FFil%20vert%0A%20%20float%20seuilaigu%3DanalogRead(A5)%2F150.%3B%2F%2FFil%20marron%0A%20%20Serial.print(%22Seuil%20grave%2Faigu%20%22)%3B%0A%20%20Serial.print(seuilgrave)%3B%0A%20%20Serial.print(%22%20%2F%20%22)%3B%0A%20%20Serial.println(seuilaigu)%3B%0A%20%20%2F%2FOn%20mets%20un%20seuil%20sur%20l’%C3%A9cart%20type%20pour%20%C3%A9liminer%20les%20sons%20trop%20faibles%0A%20%20if(sig%20%3E%3D%20SEUIL_DETECTION)%0A%20%20%7B%0A%20%20%20%20%2F%2FOn%20calcule%20la%20FHT%20(un%20peu%20comme%20la%20FFT)%0A%20%20%20%20fht_window()%3B%20%2F%2F%20window%20the%20data%20for%20better%20frequency%20response%0A%20%20%20%20fht_reorder()%3B%20%2F%2F%20reorder%20the%20data%20before%20doing%20the%20fht%0A%20%20%20%20fht_run()%3B%20%2F%2F%20process%20the%20data%20in%20the%20fht%0A%20%20%20%20fht_mag_lin()%3B%20%2F%2F%20take%20the%20output%20of%20the%20fht%0A%20%20%20%20%2F%2F5ms%20de%20calcul%0A%20%20%20%20for(int%20i%3D0%3Bi%3CNB_BANDES%3Bi%2B%2B)%0A%20%20%20%20%7B%0A%20%20%20%20%20%20contenu_Bandes%5Bi%5D%3D0%3B%0A%20%20%20%20%20%20for(int%20j%3DBandes_debut%5Bi%5D%3Bj%3C%3DBandes_fin%5Bi%5D%3Bj%2B%2B)%0A%20%20%20%20%20%20%7B%20%20%0A%20%20%20%20%20%20%20%20contenu_Bandes%5Bi%5D%3Dcontenu_Bandes%5Bi%5D%2Bfht_lin_out%5Bj%5D%3B%2F%2FOn%20somme%20le%20contenu%20des%20bandes%20de%20fr%C3%A9quences%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20contenu_Bandes%5Bi%5D%3Dcontenu_Bandes%5Bi%5D*1.%2F(Bandes_fin%5Bi%5D-Bandes_debut%5Bi%5D%2B1)%3B%2F%2FOn%20%0A%20%20%20%20%7D%0A%20%20%20%20if(contenu_Bandes%5B0%5D%3Eseuilgrave)%2F%2FRegler%20le%20seuil%20avec%20un%20potentiometre%0A%20%20%20%20%7B%0A%20%20%20%20%20%20Serial.println(%22Grave%22)%3B%0A%20%20%20%20%20%20%2F%2FOnOffSimul(3)%3B%0A%20%20%20%20%20%20Off()%3B%0A%20%20%20%20%20%20Flash(2)%3B%0A%20%20%20%20%20%20Off()%3B%0A%20%20%20%20%7D%0A%20%20%20%20else%20if%20(contenu_Bandes%5B1%5D%3Eseuilaigu)%2F%2FRegler%20le%20seuil%20avec%20un%20potentiometre%0A%20%20%20%20%7B%0A%20%20%20%20%20%20Serial.println(%22Aigu%22)%3B%0A%20%20%20%20%20%20Intens_act%3DCYCLE%3B%0A%20%20%20%20%20%20%2F%2Fniveau(11%2CDUREE_CYCLE%2FNIV_NB%2CMODE_OPPOSE)%3B%0A%20%20%20%20%7D%0A%20%20%20%20for(int%20i%3D0%3Bi%3CNB_BANDES%3Bi%2B%2B)%0A%20%20%20%20%7B%0A%20%20%20%20%20%20Serial.print(contenu_Bandes%5Bi%5D)%3B%0A%20%20%20%20%20%20Serial.print(%22%20%2F%20%22)%3B%0A%20%20%20%20%7D%0A%20%20%20%20Serial.println(%22%20%22)%3B%0A%20%20%7D%0A%20%20else%0A%20%20%7B%0A%20%20%20%20Intens_act%3DIntens_act-LENTEUR%3B%0A%20%20%20%20if%20(Intens_act%3C0)%0A%20%20%20%20%7BIntens_act%3D0%3B%7D%0A%20%20%7D%0A%20%20OnEns(Intens_act)%3B%0A%7D%0A%0Avoid%20OnEns(int%20Intens)%2F%2FIntens%20entre%200%20et%20CYCLE%2C%20Vit%20entre%201%20et%2010%0A%7B%0A%20%20%20%20analogWrite(SORTIE_A%2CIntens)%3B%0A%20%20%20%20analogWrite(SORTIE_B%2CIntens)%3B%0A%7D%0A%0Avoid%20Off()%0A%7B%0A%20%20digitalWrite(SORTIE_A%2CLOW)%3B%0A%20%20digitalWrite(SORTIE_B%2CLOW)%3B%0A%7D%0A%0Avoid%20Flash(int%20nb_flash)%20%7B%0A%20for%20(int%20i%3D0%3Bi%3Cnb_flash%3Bi%2B%2B)%20%7B%0A%20%20%20%20%20digitalWrite(SORTIE_A%2C%20LOW)%3B%20%20%20%2F%2F%20turn%20the%20LED%20on%20(HIGH%20is%20the%20voltage%20level)%0A%20%20%20%20%20digitalWrite(SORTIE_B%2C%20HIGH)%3B%20%20%20%2F%2F%20turn%20the%20LED%20on%20(HIGH%20is%20the%20voltage%20level)%20%20%20%20%20%20%20%0A%20%20%20%20%20delay(NIV_NB%2F2.)%3B%20%0A%20%20%20%20%20digitalWrite(SORTIE_A%2C%20HIGH)%3B%20%20%20%20%2F%2F%20turn%20the%20LED%20off%20by%20making%20the%20voltage%20LOW%0A%20%20%20%20%20digitalWrite(SORTIE_B%2C%20LOW)%3B%20%20%20%2F%2F%20turn%20the%20LED%20on%20(HIGH%20is%20the%20voltage%20level)%20%20%20%20%20%20%20%0A%20%20%20%20%20delay(NIV_NB-NIV_NB%2F2.)%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20wait%20for%20a%20second%0A%20%7D%0A%7D » message= »ElWireSon » highlight= » » provider= »manual »/]
Ce(tte) œuvre est mise à disposition selon les termes de la Licence Creative Commons Attribution – Pas d’Utilisation Commerciale 3.0 France.