Table des matières:

SASSIE : le système pour solution de silence maladroit et amplificateur d'interaction : 5 étapes
SASSIE : le système pour solution de silence maladroit et amplificateur d'interaction : 5 étapes

Vidéo: SASSIE : le système pour solution de silence maladroit et amplificateur d'interaction : 5 étapes

Vidéo: SASSIE : le système pour solution de silence maladroit et amplificateur d'interaction : 5 étapes
Vidéo: "Darknet Demystified - E6 - Sam Bent alias Dofedtime aka 2HappyTimes2 - Darknet Diaries Full 3 heure 2024, Novembre
Anonim
Image
Image
Pièces, matériaux et outils
Pièces, matériaux et outils

SASSIE est la réponse à la question que nous nous sommes tous posée lors d'un silence gênant à un moment de notre vie: « Est-ce que je parle ensuite ? » Eh bien maintenant, vous n'avez pas à vous inquiéter car SASSIE est spécialement conçu pour reconnaître un silence gênant, puis le neutraliser en décidant au hasard qui devrait parler ensuite. Maintenant, vous pouvez entamer une conversation sans stress, sachant que SASSIE vous soutient.

Étape 1: Pièces, matériaux et outils

Pièces Arduino

2 X Arduino Uno R3

2 microphones Arduino

1 X Bouclier SD sans fil XBee

1 haut-parleur 1/2 w 8 volts

1 x planche à pain demi-taille

1 X moteur pas à pas Arduino

1X ULN 2003 Carte d'entraînement de moteur pas à pas

1 X Micro Servo

Base et boîtier (composants découpés au laser)

Tous les composants énumérés ci-dessous peuvent être découpés au laser sur un lit double en bouleau (32" X 18")

1 - Socle

1 X plaque de base inférieure

1 X bande de treillis droite longue et courte

1 X plaque de base supérieure

4 x base de bande latérale en treillis droit de grande hauteur et de courte longueur

2 - Principal

1 X rondelle de moteur pas à pas

1 X plaque principale inférieure

1 X bande de treillis droit de hauteur moyenne de longueur moyenne

1 X Anneau Principal Supérieur

1 X bande latérale en treillis droit de grande hauteur et de courte longueur

1 X plaque de bande latérale supérieure

1 X Petite Plaque Rectangulaire (Pour Micro Servo)

3 - Pied de micro

4 X plaque de base

Goujon 1 X 13 cm 3/16 (avec un côté à 30 degrés)

1 X petite plaque rectangulaire (pour microphone)

Étape 2: Circuit

Circuit
Circuit
Circuit
Circuit

Étape 3: Fabrication de machines (mécanique et assemblage)

Fabrication de machines (mécanique et assemblage)
Fabrication de machines (mécanique et assemblage)

1_Pré-assemblage

  • (Facultatif) Poncez tous les composants du contreplaqué de bouleau pour obtenir une finition impeccable
  • Mouillez toute la bande de plis de bouleau, puis pliez-la pour créer une forme circulaire.
  • Enroulez autour de la bande de pli de bouleau à l'aide de ruban de masquage pour maintenir la forme circulaire
  • Laisser reposer toute la nuit pour que la bande conserve la forme circulaire

2_Assemblage du boîtier

Base

  1. Collez la plaque de base inférieure sur la peau de la base
  2. Collez les quatre plaques latérales inférieures ensemble, puis collez cette partie sur le bord de la plaque de base supérieure
  3. Collez le moteur pas à pas sur le centre de la plaque de base supérieure (N'OUBLIEZ PAS de taper du même côté que la plaque de bande latérale et d'aligner la partie rotative réelle du moteur au centre de la machine)
  4. insérez la rondelle du moteur pas à pas sur le moteur pas à pas'

Principale

  1. Collez la plaque principale inférieure à la peau principale
  2. Collez l'anneau de peau principale sur la peau principale
  3. insérez la bande latérale dans la glissière supérieure de la bande latérale
  4. Collez la plaque du servomoteur perpendiculairement à la bande latérale supérieure

3_L'Assemblée

  1. Placez soigneusement la planche à pain et les deux UNO R3 avec le SD Shield à l'intérieur du bac de base
  2. Placez la plaque de base supérieure sur le bac et assurez-vous que tous les capteurs et actionneurs passent par les ouvertures de la plaque supérieure
  3. Collez le moteur pas à pas sur le centre de la plaque de base supérieure (N'OUBLIEZ PAS de taper du même côté que la plaque de bande latérale et d'aligner la partie rotative réelle du moteur au centre de la machine)
  4. Insérez la rondelle du moteur pas à pas sur le moteur pas à pas
  5. Placez le composant principal sur la laveuse
  6. Fixez le composant de bande latérale dans la glissière de base de bande latérale
  7. Collez le servomoteur sur le côté de la plaque du servomoteur à l'extrémité supérieure (doit être tapoté sur le côté), puis appuyez sur le câblage du servo à l'intérieur de la bande latérale
  8. Fixez le signe supérieur au servomoteur
  9. Appuyez sur le signe latéral sur la peau principale

4_Assemblage du support de microphone

  1. Collez les quatre bases ensemble
  2. Collez le côté plat de la cheville à la base
  3. Collez la plaque du microphone sur le côté incliné de la cheville
  4. scotchez le microphone sur la plaque du microphone

Étape 4: Programmation

En raison de la taille limitée de la carte Arduino Uno, deux cartes Arduino sont utilisées dans ce projet. La carte principale est utilisée pour la plupart des fonctions, notamment le comptage du temps de silence, le traitement des données sonores, la communication avec les utilisateurs et la communication avec la deuxième carte.

#include #include

#comprendre

#comprendre

// La SD doit se connecter aux broches 11, 12, 13. La broche 10 traditionnelle est

// requis ou appelé avec SD.begin().

const int servoPin = 3;

const int micPin1 = 5; const int micPin2 = 6; const int AWKS = 4;

int volume1;

int volume2; float silenceTime = 0;

Bannière servo;

TMRpcm plr;

void setup() {

// mettez votre code de configuration ici, à exécuter une fois: pinMode(servoPin, OUTPUT); pinMode(micPin1, INPUT); pinMode(micPin2, INPUT); Serial.begin(9600); Serial.println("Bienvenue sur le portail de diagnostic SASSIE."); banner.attach(servoPin); bannière.write(0); if (!SD.begin(10)) { Serial.println("échec SD"); } plr.speakerPin = 9; plr.setVolume(5); }

boucle vide() {

volume1 = digitalRead(micPin1); volume2 = digitalRead(micPin2); bannière.write(0); if (volume1 == 0 et volume2 == 0) { silenceTime += 0.05; Serial.print("Temps de silence: "); Serial.println(silenceTime); } else { silenceTime = 0; bannière.write(0); } retard (50); if (silenceTime >= AWKS) { sauvetage(); Temps de silence = 0; } }

sauvetage vide () {

for (int angle = 0; angle < 90; angle += 1) { banner.write(angle); retard (35); } Serial.println("Bannière sur"); retard (100); Serial.write(1); Serial.println("Song on"); plr.play("4.wav"); retard (10000); plr.stopPlayback(); boucle(); retard (10000); retard (5000); plr.play("2.wav"); retard (5000); plr.play("3.wav"); }

Le code de la deuxième carte est simple. Il n'entraîne le moteur pas à pas que lorsque la carte principale lui envoie un signal.

#comprendre

const int stepPin1 = 8;

const int stepPin2 = 9; const int stepPin3 = 10; const int stepPin4 = 11; const int motorSteps = 200;

bool motorState = false;

Stepper stepMotor (motorSteps, stepPin1, stepPin2, stepPin3, stepPin4);

void setup() {

// mettez votre code de configuration ici, à exécuter une fois: stepMotor.setSpeed(75); }

boucle vide() {

// mettez votre code principal ici, à exécuter à plusieurs reprises: int entrant = Serial.read(); if (entrant == 1) { Serial.println("activated"); if (motorState == 0) { stepMotor.step(1000); retard (5000); } else { stepMotor.step(-1000); } motorState = !motorState; } délai (500); }

Conseillé: