Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Arduino101 / tinyTILE BLE :lunettes de soleil assorties

Composants et fournitures

Intel tinyTILE
Ou d'autres modules BLE
× 2
Arduino 101
Facultatif
× 2
Valve lumineuse à cristaux liquides Adafruit - Panneau occultant contrôlable LCD
× 2
Batterie Li-Ion 100mAh
× 2
Connecteur à angle droit SMT 2 broches Adafruit JST-PH
× 4
Câble d'extension de batterie Adafruit JST-PH
× 2
Interrupteur à glissière
× 2
Résistance 10k ohm
× 3
Interrupteur à bouton-poussoir SparkFun 12mm
× 1
LED (générique)
Ceux-ci ont été utilisés dans la phase de développement et ne seront pas nécessaires pour les prototypes finaux.
× 2
Planche à pain (générique)
Ceci a été utilisé lors de la phase de développement et ne sera pas nécessaire pour les prototypes finaux.
× 1
Câbles de raccordement (générique)
Ceux-ci ont été utilisés dans la phase de développement et ne seront pas nécessaires pour les prototypes finaux.
× 1

Outils et machines nécessaires

Imprimante 3D (générique)
Fer à souder (générique)

Applications et services en ligne

Arduino IDE
Éditeur Web Arduino

À propos de ce projet

Au lieu d'utiliser une application, et si vous pouviez envoyer un signal pour établir un contact visuel avec une personne à qui vous souhaitez parler, dans un cadre social, même de loin ? Je ne propose pas une façon différente de commencer un rendez-vous. J'explore une nouvelle utilisation du Bluetooth dans le domaine des interactions humaines.

Lorsque j'ai découvert que les modules Intel Curie peuvent être affectés pour agir comme des périphériques BLE centraux et périphériques, j'ai immédiatement voulu fabriquer ces lunettes. (En savoir plus sur CurieBLE à partir d'ici.) Grâce à un tutoriel sur Adafruit, le cadre de référence d'un verre LCD imprimé en 3D est facilement disponible. Ce que j'ai ajouté au didacticiel Adafruit, c'est le contrôle BLE (au lieu d'un contrôle de commutateur) de deux pièces de lunettes en même temps, l'une étant le maître et l'autre l'esclave, et des cadres imprimés en 3D repensés.

Ce projet a d'abord été développé sur Arduino 101 et prototypé sur tinyTILE, tous deux équipés de modules Intel Curie. Même si vous ne pourrez peut-être pas obtenir de modules Intel Curie à l'avenir, j'espère que la méthodologie ici pourrait toujours être utile. Je peux imaginer de nombreuses façons différentes d'appliquer les capacités centrales et périphériques Bluetooth et j'attends avec impatience les discussions sur ce sujet.

Étape 1 - Développement

Deux Arduino101 et deux LED ont été utilisés pour développer le circuit et tester les codes. En raison de la complexité des circuits finaux, c'est toujours une bonne idée de commencer par une maquette avant de tout souder ensemble.

Pour le périphérique, vous pouvez utiliser le code des exemples CurieBLE -> Périphérique -> LED et échanger le HAUT et le BAS (trouver la raison à la dernière étape). Le code pour central est fourni à la fin du projet. C'est presque la même chose que CurieBLE -> Central -> LEDcontrol avec quelques lignes ajoutées pour les écrans LCD.

TinyTILE est presque exactement une miniature d'Arduino101. Le rectangle central principal est le module Intel Curie. Ils peuvent être flashés avec les mêmes codes. Les broches sur Arduino101 sont toujours plus faciles à utiliser, mais la taille de tinyTILE est plus attrayante pour les wearables. J'aime développer d'abord sur Arduino 101 et tout transférer sur tinyTILE. Découvrez un autre projet utilisant tinyTILE ici. Si le facteur de forme n'est pas un problème pour votre projet, n'hésitez pas à utiliser Arduino101 (voir l'exemple ici).

Je teste chaque composant étape par étape, lorsque j'ai changé l'Arduino101 en tinyTILE et changé les LED en LCD.

Étape 2 - Impression 3D

J'ai repensé les cadres à l'aide de SolidWorks en plus de celui fourni par Adafruit. Vous pouvez télécharger leur conception de base ici et la modifier avec le logiciel que vous préférez pour l'impression 3D. Si vous aimez exactement les looks que j'ai conçus, vous pouvez les trouver dans les pièces jointes ci-dessous. Pourquoi ai-je conçu une forme de cœur et un univers ? Regardez la vidéo pour des explications et utilisez votre imagination.

Le design peut être modifié pour mieux s'adapter à votre visage. J'ai eu un peu de mal à tenir mon petit nez. De nos jours, certaines entreprises effectuent un scan 3D de votre visage et personnalisent des lunettes pour vous, ce qui est formidable.

Je pense que l'imprimante 3D Ruiz Brothers d'Adafruit utilisée doit être meilleure que la mienne. Parce que le mien a imprimé tellement de supports à l'intérieur d'endroits qu'il est très difficile d'en sortir. En tant que designer UX, j'ai beaucoup à dire sur les désagréments de mon imprimante 3D. J'aimerais avoir des matériaux de support solubles dans l'eau ou une imprimante qui n'a pas besoin de matériaux de support ou une imprimante 3D à base de liquide/solidifiant à la lumière.

Étape 3 - Assemblage

Les conseils du tutoriel d'Adafruit sur le câblage, la soudure et le montage sont très bons. Tu devrais y jeter un coup d'oeil. J'ai juste dû ajouter les tinyTILEs supplémentaires et le bouton. Faites attention à couper les fils dans les bonnes longueurs.

Étape 4 - Terminé et amusez-vous !

Lorsque l'alimentation est allumée, une tension est appliquée aux écrans LCD, ce qui les garde des lunettes de soleil sombres. Lorsque le bouton du maître est enfoncé, la tension est coupée sur le maître, ce qui signale en même temps que la tension sur l'esclave doit être éteinte via Bluetooth, rendant les deux lunettes transparentes.

Les deux verres peuvent être contrôlés assez loin l'un de l'autre, tant qu'ils sont dans la plage BLE. J'ai testé à la maison. Le cœur peut attirer l'attention de l'Univers à au moins 15 pas.

Imaginez ne pas utiliser un bouton mais un geste, un hochement de tête ou des battements de cœur correspondants !

Cœur (maître=central) :"J'aime ton esprit sophistiqué <3"Univers (esclave=périphérique) :"Je te vois. Parlons."  

Code

  • Contrôle des boutons pour la centrale
Commande par bouton pour Arduino central
C'est presque le même que celui de l'exemple CurieBLE.
 /* * Copyright (c) 2016 Intel Corporation. Tous les droits sont réservés. * Voir au bas de ce fichier pour les termes de la licence. *//* * Esquisse :LedControl.ino * * Description :* Il s'agit d'une esquisse centrale qui recherche un service particulier avec une * certaine caractéristique d'un périphérique. En cas de découverte réussie, * il lit l'état d'un bouton et écrit cette valeur dans la * caractéristique périphérique. * * Notes :* * - Service périphérique attendu :19b10000-e8f2-537e-4f6c-d104768a1214 * - Caractéristique périphérique attendue :19b10001-e8f2-537e-4f6c-d104768a1214 * - Croquis de périphérique attendu :* */#include // variables pour buttonconst int buttonPin =3;int oldButtonState =LOW;const int ledPin =5; // broche à utiliser pour la configuration LEDvoid() { Serial.begin(9600); // configurer la broche du bouton comme entrée pinMode(buttonPin, INPUT); pinMode(ledPin, SORTIE); // initialise le matériel BLE BLE.begin(); Serial.println("BLE Central - Contrôle LED"); // démarrer la recherche de périphériques BLE.scanForUuid("19b10000-e8f2-537e-4f6c-d104768a1214");}void loop() { // vérifier si un périphérique a été découvert BLEDevice device =BLE.available(); if (périphérique) { // a découvert un périphérique, affiche l'adresse, le nom local et le service annoncé Serial.print("Found "); Serial.print(peripheral.address()); Serial.print(" '"); Serial.print(peripheral.localName()); Serial.print("' "); Serial.print(peripheral.advertisedServiceUuid()); Serial.println(); // arrête de scanner BLE.stopScan(); controlLed(périphérique); // périphérique déconnecté, recommencez l'analyse BLE.scanForUuid("19b10000-e8f2-537e-4f6c-d104768a1214"); }}void controlLed(BLEDevice device) { // se connecte au périphérique Serial.println("Connecting ..."); if (peripheral.connect()) { Serial.println("Connecté"); } else { Serial.println("Échec de la connexion !"); retourner; } // découvrir les attributs périphériques Serial.println("Découverte des attributs ..."); if (peripheral.discoverAttributes()) { Serial.println("Attributs découverts"); } else { Serial.println("La découverte de l'attribut a échoué !"); périphérique.déconnecter(); retourner; } // récupérer la caractéristique LED BLECharacteristic ledCharacteristic =device.characteristic("19b10001-e8f2-537e-4f6c-d104768a1214"); if (!ledCharacteristic) { Serial.println("Le périphérique n'a pas de caractéristique LED !"); périphérique.déconnecter(); retourner; } else if (!ledCharacteristic.canWrite()) { Serial.println("Le périphérique n'a pas de caractéristique LED accessible en écriture !"); périphérique.déconnecter(); retourner; } while (peripheral.connected()) { // pendant que le périphérique est connecté // lit la broche du bouton int buttonState =digitalRead(buttonPin); if (oldButtonState !=buttonState) { // le bouton a changé oldButtonState =buttonState; if (buttonState) { Serial.println("bouton enfoncé"); // le bouton est enfoncé, écrivez 0x01 pour allumer la LED ledCharacteristic.writeByte(0x01); digitalWrite(ledPin, LOW); } else { Serial.println("bouton relâché"); // le bouton est relâché, écrivez 0x00 pour allumer la LED de ledCharacteristic.writeByte(0x00); digitalWrite (ledPin, HAUT); } } } Serial.println("Périphérique déconnecté");}/* Exemple de contrôle central LED Arduino BLE Copyright (c) 2016 Arduino LLC. Tous droits réservés. Cette bibliothèque est un logiciel libre; vous pouvez le redistribuer et/ou le modifier selon les termes de la licence publique générale limitée GNU telle que publiée par la Free Software Foundation ; soit la version 2.1 de la Licence, soit (à votre choix) toute version ultérieure. Cette bibliothèque est distribuée dans l'espoir qu'elle vous sera utile, mais SANS AUCUNE GARANTIE; sans même la garantie implicite de QUALITÉ MARCHANDE ou D'ADAPTATION À UN USAGE PARTICULIER. Voir la licence publique générale limitée GNU pour plus de détails. Vous devriez avoir reçu une copie de la licence publique générale limitée GNU avec cette bibliothèque ; sinon, écrivez à la Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA*/

Pièces et boîtiers personnalisés

Schémas

Central utilise la broche 3 pour le bouton et 5 pour l'écran LCD. Le périphérique utilise la broche 6 pour l'écran LCD.

Processus de fabrication

  1. Lunettes de soleil
  2. Batterie
  3. UnifiedWater v1
  4. Puissance Arduino
  5. Avenger assemblé :casque Iron Man et réacteur à arc
  6. Boîte de vote mobile
  7. Comprendre la batterie utilisée dans les automobiles
  8. Différentes manières de tester un alternateur
  9. 7 signes d'alternateur mauvais ou défectueux