Écharpe Arduino Lilypad Interactive Sensing Passion: 7 étapes (avec des photos)

Écharpe Arduino Lilypad Interactive Sensing Passion: 7 étapes (avec des photos)

Table des matières:

Anonim

C'était la première fois que je travaillais avec un Arduino Lilypad. Cela faisait un moment que je voulais essayer quelque chose qui traitait des circuits souples. Ce projet est ce que je suis venu avec. Le concept est basé sur mon ami, Ethan Dicks, du projet émergent de Sculpture de mouton de la Fondation Fusion.org.

le Écharpe sensible à la passion Lilypad Interactive fonctionne comme suit:

Le foulard numéro 1 porté par quelqu'un qui marche seul s'illuminera de la couleur Bleu pour solitaire. Lorsque le porteur du foulard numéro deux rejoint le numéro un, les deux foulards se détectent puis s’allument. Rouge pour l'amour.

Plans futurs pour la capacité tactile: qui permettra aux couleurs de Pulsate for Passion si un porteur touche l'écharpe des autres porteurs.

Ci-dessous, une vidéo pour que vous puissiez voir comment cela fonctionne. S'il vous plaît noter que ceci est un travail en cours, je n'ai que l'électronique intégrée dans un foulard pour le moment. Je travaille encore et perfectionne ces derniers. S'il vous plaît remplissez gratuitement pour partager vos idées!

Provisions:

Étape 1: matériaux

Voici une liste des éléments dont vous aurez besoin pour mener à bien ce projet. Pour les articles Lilypad, j'ai tout acheté sur FunGizmos.com. Vous aurez besoin de deux de chaque pour faire deux écharpes.

Conseil d'économie: Si vous avez besoin d'économiser de l'argent, vous pouvez faire en sorte que l'une des écharpes ne fonctionne que comme un émetteur, qui ne nécessite que l'émetteur IR et une batterie.

Composants electroniques

1. Conseil Lilypad Arduino

2. Lilypad Tri-Color LED

3. Porte-pile

4. Pile bouton 3V 20mm

(ou vous pouvez utiliser l'un des autres tableaux d'alimentation et de batterie pour le Lilypad)

5. Fil conducteur

6. Carte à boutons Lilypad (facultatif)

7. Détecteur d'émetteur infrarouge et de phototransistor (x2) - disponible chez RadioShack

8. Résistances 10Kohm et 56ohm

9. Tableau de départ FTDI Basic (utilisé pour programmer le Lilypad)

Composants de l'écharpe - Pour les besoins en tissu, je suis allé dans mon magasin d'artisanat local.

1. J'ai utilisé deux foulards en molleton de couleurs différentes

2. Deux impressions de tissu différentes (j'avais 1 m de chaque)

3. Adhésif thermocollant Heat'n Bond Ultra Hold

4. peinture de tissu

5. Patches en fer (facultatif)

Étape 2: Création d'un motif

Pour mes écharpes, je voulais des flammes pour les dessins. J'ai utilisé un ancien classeur et dessiné les formes de flammes dessus pour l'utiliser comme motif.

Une fois que j'ai eu mes formes de motif, j'ai utilisé l'adhésif de tissu et le repassé sur la face inférieure du tissu. L'adhésif a un dos de papier sur un côté (vous voulez ce côté vers le haut).

Avec l'adhésif maintenant sur le tissu, j'ai tracé ma flamme sur le côté papier, puis j'ai découpé la forme. Ne retirez pas encore le papier! Conservez-le jusqu'à ce que vous soyez prêt à le repasser sur le foulard.

Pointe: Repassez l'adhésif avant de découper vos motifs. Cela empêchera votre tissu de frire!

Étape 3: Électronique de couture

La MakeZine propose un excellent didacticiel vidéo de Becky Stern sur la mise en route du Lilypad. C’est ce à quoi j’ai fait référence lorsque j’ai commencé avec ce projet.

Comme vous pouvez le voir sur la première image, la carte de circuit imprimé était trop proche du Lilypad. J'ai plus tard dû le déplacer une fois que j'ai commencé à coudre mes traces de circuit.

Le circuit actuel est assez simple. Connectez l’alimentation positive et la terre de la batterie au Lilypad. Ensuite, les broches sont les suivantes:

int statusPin = 13; // le voyant d'état intégré est connecté à la broche numérique 13

int redPin = 11; // R pétale sur le module LED RVB connecté à la broche numérique 11

int greenPin = 9; // G pétale sur module LED RVB connecté à la broche numérique 9

int bluePin = 10; // B pétale sur module LED RVB connecté à la broche numérique 10

int sensorPin = 5; // phototransistor IR connecté à la broche numérique 5

int irPin = 6; // LED IR connectée à la broche numérique 6

REMARQUE: Le croquis complet de Arduino est à la fin de cet Instructable

POINTE: Vous pouvez utiliser certains de vos chutes de tissu pour maintenir vos traces de circuit. Il est important qu'ils ne se croisent pas et ne se touchent pas pour ne pas créer de court métrage.

POINTE: Comme vous pouvez le constater, le dessous de votre écharpe aura une apparence moche avec les traces du circuit. Vous pouvez couvrir ceci en cousant un autre foulard par dessus (en laissant une ouverture pour programmer votre Lilypad) ou en découpant un foulard dans le tissu supplémentaire utilisé pour vos formes.

Étape 4: Emetteur infrarouge et phototransistor

L’émetteur infrarouge est celui qui est coloré, et le phototransistor (détecteur) est celui qui a le boîtier transparent.

Vous devrez ajouter des résistances à l'émetteur et au détecteur. J'ai utilisé une résistance de 10Kohm (marron, noir, orange) sur le détecteur et une résistance de 56ohm (vert, bleu, noir) pour l'émetteur.

Afin de cacher les composants puisque l'émetteur et le détecteur seront sur le devant de l'écharpe, j'ai utilisé un patch thermocollant. J'ai enroulé les conducteurs de chacun des émetteurs et des détecteurs, puis j'ai utilisé un couteau exacto et coupé un "X" dans chacun des yeux. Cela m'a permis de pousser l'émetteur et le détecteur à travers le patch.

Brancher: L'émetteur et le détecteur sont reliés entre POWER, RESISTOR, LILYPAD PIN, IR LED et GROUND. Reportez-vous au schéma de cette étape pour une meilleure compréhension. Plus d'informations sur les résistances de rappel par Make Online.

REMARQUE: Schéma complet est à la fin de cet Instructable.

POINTE: Vous ne pourrez pas voir les DEL IR s'allumer. Si vous les regardez avec votre appareil photo numérique, vous pourrez le faire. Vous remarquerez dans ma vidéo que vous pouvez voir que l’émetteur s’allume.

Étape 5: Modèles repassables

Une fois que vous êtes prêt à repasser vos modèles. Réglez le fer à chaleur moyenne sans vapeur. Peler le support papier et disposer les motifs à l'endroit souhaité sur le foulard.

Je me suis assuré sur le mien que je pouvais cacher tout le fil conducteur qui serait vu.

En fonction du tissu de votre écharpe, vous ne souhaitez pas garder le fer trop longtemps au même endroit. J'utilisais de la laine polaire, je devais donc me déplacer rapidement et appuyer rapidement pour ne pas faire fondre et / ou brûler le tissu.

Une fois que tout a été repassé sur le foulard, j'ai contourné les bords avec de la peinture textile. Cela aide à servir deux objectifs. Cela aide à sécuriser le tissu et ajoute un peu de pop aux formes.

POINTE: Laissez le tissu sécher pendant la nuit dans un endroit chaud. Cela aidera la peinture à sécher. Si vous aviez ceci dans un garage froid ou quelque chose comme ça, la peinture craquera plus tard.

REMARQUE: Si vous maîtrisez la couture ou une machine à coudre, vous pouvez coudre les motifs. Je ne suis pas encore à ce niveau, donc c’était le moyen le plus facile pour moi de le faire.

Étape 6: Croquis Arduino

J'ai ajouté le croquis de la sculpture de mouton originale d'Ethan Dicks à cette étape. J'ajouterai un fichier d'esquisse mis à jour à une date ultérieure, une fois la conception finalisée. Cela vous permettra au moins de commencer avec deux écharpes de travail.

/ * ++ Sheep - Utilisez une combinaison de DEL RVB et IR et un photocapteur pour imiter un comportement réactif (émergent) Ce code va à l’atelier Fuse Factory "Créer une sculpture de comportement émergent avec l’Arduino" http: // thefusefactory. org / 2009/09/03 / sculpture-avec-un-comportement-émergent / la sculpture, ou "mouton", est un assemblage artistique d'un kit Lilypad Pro (la base Lilypad est reliée à une alimentation Lilipad 5V unité) avec une LED tricolore montée sur le MCU 328V de la carte Lilypad. Un grand Lilypad Protoboard se situe entre l’alimentation et le Lilypad lui-même pour acheminer l’alimentation, tenir les résistances et les composants infrarouges. L'illusion d'un quadraped est complétée par des LED de 1W et 2W soudées au "corps" du PSU et pliées comme des jambes. Le code dépend d'une variable persistante appelée "humeur" - lorsqu'elle est nulle ou proche de zéro, le mouton est "heureux". En dessous de zéro et le mouton est "solitaire"; au-dessus de zéro et le mouton se sent encombré ou agité. La solitude est représentée par le bleu, le bonheur par le vert et l'agitation par le rouge. Entre l'expression de "l'humeur" (en utilisant PWM pour masquer la DEL RVB), la partie principale du code vérifie les impulsions IR d'autres moutons et peut émettre ses propres impulsions pour "appeler" d'autres moutons. En modifiant les variables internes, le mouton peut être plus ou moins sensible aux appels d'autres moutons. Le comportement émergent se manifeste lorsque plusieurs moutons sont assemblés et placés sur une table, s'appelant les uns les autres. La rafale d'impulsions infrarouges peut amener le mouton à être heureux ou peut-être agité. Peu de légumineuses et le mouton fait preuve de solitude. Sheep.pde - transforme un Arduino en une sculpture comportementale émergente Copyright (C) 2009, Ethan Dicks Ce logiciel est un logiciel libre. Vous pouvez le redistribuer et / ou le modifier selon les termes de la licence publique générale GNU publiée par le logiciel libre. Foundation, soit la version 3 de la licence, soit (à votre choix) toute version ultérieure. Ce programme est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE GARANTIE; sans même la garantie implicite de QUALITÉ MARCHANDE ou d'ADÉQUATION À UN USAGE PARTICULIER. Voir la licence publique générale GNU pour plus de détails. Vous devriez avoir reçu une copie de la licence publique générale GNU avec ce programme. Sinon, voir.-- * // * ++ Initialisation de variable - avant que le code ne démarre, placez tous les paramètres ajustables par l'utilisateur en haut de manière à ce qu'ils soient faciles à modifier. - * /// Définitions des valeurs "mood" #define MOODMAX 80 #define MOODMIN (-1 * MOODMAX) #define LONELY (MOODMIN) #define HAPPY (0) #define CROWDED (MOODMAX) #define MSTEPS 5 #define BLEAT_VOLUME 1 // Définitions globales des affectations de broches (pour simplifier les appels de fonction individuels) int statusPin = 13; // le voyant d'état intégré est connecté à la broche numérique 13int redPin = 11; // pétale R sur le module LED RVB connecté à la broche numérique 11int greenPin = 9; // G pétale sur le module LED RVB connecté à la broche numérique 9int bluePin = 10; // B pétale sur le module LED RVB connecté à la broche numérique 10int sensorPin = 5; // phototransistor IR connecté à la broche numérique 5int irPin = 6; // LED IR connectée à la broche numérique 6 // Commence par s'attendre à être heureux int mood = HAPPY; // Gardez une trace du sens de l'entrée pinint eye = 0; // Et rappelez-vous à quel point nous "bourdonnons" (notre LED IR clignote) int bleat = BLEAT_VOLUME; / * ++ setup () - L’environnement Arduino appellera le code dans setup () une fois seulement, juste après la réinitialisation de la carte. Mettez du code dans cette fonction pour initialiser les broches d’entrée / sortie et autres tâches qui ne doivent être exécutées qu’une seule fois lors d’une exécution. --*/videinstaller() {// pour le débogage Serial.begin (9600); Serial.println ("Sheep v0.02"); // La plupart du temps, nos broches d'E / S sont des sorties vers des LED pinMode (statusPin, OUTPUT); // définit le statusPin pour être une sortie pinMode (redPin, OUTPUT); // définit le redPin comme un pinMode de sortie (greenPin, OUTPUT); // définit le greenPin comme un pinMode de sortie (bluePin, OUTPUT); // définit le bluePin comme un pinMode de sortie (irPin, OUTPUT); // définit l'irPin pour qu'il soit une sortie // Une exception est le phototransistor IR pinMode (sensorPin, INPUT); // définit le sensorPin pour qu'il soit une entrée Serial.print ("Setting IR 'bleat' to"); Serial.println (bleat); analogWrite (irPin, bleat); } / * ++ loop () - l'environnement Arduino appellera le code de cette boucle pour toujours. Mettez des choses intéressantes ici qui sont censées fonctionner sans fin après que setup () ait été appelé une fois. Le seul moyen de sortir de cette boucle est de réinitialiser la carte. --*/videboucle() // tourne encore et encore {// Configurez notre LED RVB pour refléter notre "humeur", ce qui, espérons-le, changera de temps en temps set_mood (humeur); // Ralentit à quelle vitesse nous réagissons aux autres "moutons" delay (100); // delay pendant.1 seconde // sensorPin a une résistance de rappel de 10K, donc * no * light rapporte a 1. Nous devons // inverser le sens logique de la broche si nous voulons penser à la lumière de manière logique // comme 1 -is-on / 0-is-off eye = 1 - digitalRead (sensorPin); // fixe l'oeil sur 1 si nous "voyons" toute lumière infrarouge // Signalons notre statut actuel à chaque boucle via la boucle Serial.print ("Mood is"); Serial.print (humeur); Serial.print (". Le capteur est"); Serial.println (eye); // Si nous voyons des impulsions d'un autre 'mouton', augmentons l'humeur, mais pas après MOODMAX si (œil) {// étant donné que les humains ne peuvent pas "voir" la lumière infrarouge, utilisez le voyant d'état comme indicateur visible digitalWrite (statusPin, HIGH); // écho détection d'entrée IR sur le voyant d'état humeur + = MSTEPS * 2; si (humeur> MOODMAX) {humeur = MOODMAX; }} // Si nous ne voyons aucune impulsion IR, décrémentez l'ambiance, mais pas en dessous de MOODMIN else {// puisque les humains ne peuvent pas "voir" la lumière infrarouge, utilisez le voyant d'état comme indicateur visible digitalWrite (statusPin, LOW); // écho détection d'entrée IR sur le voyant d'état mood - = 1; si (humeur <MOODMIN) {humeur = MOODMIN; }}} / * ++ set_mood - convertit "l'humeur" en un jeu de couleurs Mood varie d'un nombre négatif à la même valeur qu'un nombre positif (jusqu'à présent, -80 / + 80 et -100 / + 100 produisent des résultats raisonnables). Proportionnellement, le mappage continu de l'humeur à la couleur ressemble à ce qui suit: Humeur -100 0 +100 Solitaire -> Heureux -> CrowdedR 0 0 0 30 100G 0 30 100 70 0B 100 70 0 0 0 - * / void set_mood (int mood) {// Commencez avec chaque couleur éteinte - ajustez vers le haut en fonction de "mood" unsignedchar redness = 0; unsignedchar greenness = 0; unsignedchar blueness = 0; #ifdef DEBUG Serial.print ("Mood is"); Serial.println (humeur); #endif // blueness signifie que l'humeur est moins qu'heureuse si (mood <HAPPY) {blueness = abs (mood); verdeur = MOODMAX + mood; } // les rougeurs impliquent que l'humeur soit plus qu'heureuse elseif (humeur> HAPPY) {rougeur = humeur; verdeur = MOODMAX - humeur; } // greenness signifie que l’humeur est heureuse autour d’autre {greenness = MOODMAX; } // Configurez le voyant pour qu'il reflète notre couleur d'humeur actuelle (rougeur, verdeur, bleueur); } / * ++ color (r, g, b) - définit le voyant tricolore sur la valeur de couleur demandée. Utilise analogWrite (broche, valeur) pour définir la valeur PWM de chaque couleur de voyant. Le voyant tricolore est une dispositif anodique, donc pour faire de la lumière, nous la terre la broche désirée. Pour inverser la forme d'onde PWM, nous soustrayons notre intensité souhaitée de 255, de sorte que, par exemple, si nous voulons supprimer le rouge, logiquement, nous transmettons une valeur égale à zéro, mais définissons la valeur PWM sur 255 afin que la broche soit pilotée haut. 100% du temps.Pour que le rouge atteigne sa luminosité maximale, nous transmettons une valeur logique de 255, mais définissons la valeur PWM sur 0; cette broche est relevée 100% du temps.-- couleur * / void (unsignedchar, green, unsignedchar, blue, unsignedchar, blue)) // la fonction génératrice de couleur {#ifdef DEBUG Serial.print ("color ("); Serial.print (rouge, HEX); Serial.print (bleu, HEX); Serial.print (vert, HEX); Serial. println (")"); #endif // inverse le sens de la valeur PWM lors de l'appel de analogWrite () pour chaque couleur analogWrite (redPin, 255-red); analogWrite (bluePin, 255-blue); analogWrite (greenPin, 255-green); }

Étape 7: Schéma

Schéma est joint à cette étape sous forme de fichier Adobe PDF. C'était le fichier original des moutons, mais j'ai mis les écharpes en place de la même manière.

Si vous ajoutez à cette idée, que j'espère que certains vont … écrivez-moi, j'aimerais voir ce que d'autres ont ajouté.

- Pensez-le - Construisez-le - Partagez-le -

www.ArduinoFun.com