Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
Dispositif de substitution et d'augmentation sensorielle Vibrotactile Instructable (https://www.instructables.com/id/Vibrotactile-Sens…) montre comment construire un appareil qui traduit une entrée sensorielle en stimuli vibratoires. Ces stimuli vibratoires sont produits par des moteurs ERM cylindriques entraînés par un Arduino Uno avec un motorshield.
Pour plus de 4 moteurs, plusieurs motorshields doivent être empilés.
Si plus de 6 moteurs doivent être entraînés indépendamment, vous avez besoin de plus de broches PWM que l'Arduino Uno (6 broches PWM) et donc d'un Arduino Mega. Théoriquement, plus de deux shields peuvent être empilés sur un Arduino, cependant considérez qu'Arduino Mega n'a également qu'un nombre limité de broches PWM: 15.
Fournitures
- Adafruit Motorshield v2.3 et embases empilables mâles
- En-têtes d'empilage femelles (par exemple
- Arduino Mega pour plus de 6 moteurs (par exemple
Prototype de
Étape 1: Souder et empiler
- Souder les broches d'empilage sur les deux capots moteur comme visible sur les photos
- Soudez les cavaliers d'adresse sur l'une des cartes (voir l'explication sur l'image et https://learn.adafruit.com/adafruit-motor-shield-… pour des instructions plus détaillées pour le faire)
- Empilez Arduino et les deux boucliers l'un sur l'autre.
- Assurez-vous que le cavalier VIN est sur les deux boucliers.
Étape 2: Coder
Voici un exemple de la façon dont 8 moteurs traduisent 3 valeurs sensorielles:
- Téléchargez le code, fourni dans un dossier zip ci-dessous, ouvrez-le et installez les bibliothèques, comme expliqué dans ….
- Cliquez sur Outils → Carte → sélectionnez Arduino/Genuino Mega ou Mega 2505
- Modifiez les parties suivantes dans le code, si nécessaire
Définissez chaque moteur avec son numéro de broche et son blindage:
Adafruit_DCMotor *moteur1 = AFMS1.getMotor(1); // spécifie que les moteurs CC connectés au premier shieldAdafruit_DCMotor *motor2 = AFMS1.getMotor(2); Adafruit_DCMotor *moteur3 = AFMS1.getMotor(3); Adafruit_DCMotor *moteur4 = AFMS1.getMotor(4); Adafruit_DCMotor *moteur5 = AFMS2.getMotor(1); // spécifie que les moteurs CC connectés au deuxième blindage Adafruit_DCMotor *motor6 = AFMS2.getMotor(2); Adafruit_DCMotor *motor7 = AFMS2.getMotor(3); Adafruit_DCMotor *motor8 = AFMS2.getMotor(4);
Indiquez le nombre de moteurs utilisés:
int nrDeMoteurs = 8;
Inclure tous les moteurs utilisés dans un tableau:
Adafruit_DCMotor *moteurs[8] = {moteur1, moteur2, moteur3, moteur4, moteur5, moteur6, moteur7, moteur8, };
Inclure tous les capteurs dans un tableau:
capteurs de caractères non signés[3] = { A15, A14, A13, };
Téléchargez le code sur Arduino Mega. Terminé.
Étape 3: Rendez-le portable
Dans l'Instructable sur la façon de rendre le SSAD portable (https://www.instructables.com/id/Making-the-SSAD-W…), un exemple de comment attacher un Arduino Uno et un motorshield au corps est donné. Si vous devez utiliser l'Arduino Mega et plusieurs pare-moteurs, un sac banane, comme illustré dans le croquis, pourrait être une solution pour rendre le prototype portable.