Taula de continguts:

SASSIE: el sistema per millorar la solució i la interacció del silenci incòmode: 5 passos
SASSIE: el sistema per millorar la solució i la interacció del silenci incòmode: 5 passos

Vídeo: SASSIE: el sistema per millorar la solució i la interacció del silenci incòmode: 5 passos

Vídeo: SASSIE: el sistema per millorar la solució i la interacció del silenci incòmode: 5 passos
Vídeo: Versión Completa. "Enseñar es un arte". Ken Robinson, educador y escritor. 2024, Desembre
Anonim
Image
Image
Parts, materials i eines
Parts, materials i eines

SASSIE és la resposta a la pregunta que tots ens hem fet durant un incòmode silenci en un moment de la nostra vida: "Parlo després?" Ara bé, no us heu de preocupar perquè SASSIE està dissenyat específicament per reconèixer un silenci incòmode i després neutralitzar-lo decidint a l’atzar qui hauria de parlar després. Ara podeu entrar en una conversa lliure d’estrès, sabent que SASSIE té l’esquena.

Pas 1: peces, materials i eines

Parts Arduino

2 X Arduino Uno R3

2 micròfons Arduino

1 x blindatge SD sense fils XBee

1 X 1/2 w altaveu de 8 volts

1 tauleta de pa de mida mitjana

1 motor pas a pas Arduino

1X ULN 2003 Tauler d'accionament del motor pas a pas

1 micro servo

Base i carcassa (components de tall per làser)

Tots els components que es mostren a continuació poden tallar-se amb làser en un full de capes de bedoll (32 "X 18")

1 - Base

1 X placa base inferior

1 X de llarga longitud de curta franja de gelosia recta

1 X placa base superior

4 X Base de tira lateral de gelosia recta d’alçada curta de llargada

2 - Principal

1 rentadora de motor pas a pas

1 X placa principal inferior

1 X Franja de gelosia recta d'alçada mitjana

1 X anell principal superior

1 franja lateral de gelosia recta d’alçada curta de longitud curta

1 X placa lateral lateral

1 x placa rectangular reduïda (per a micro servo)

3 - Suport de micròfon

4 x placa base

1 X 13 cm 3/16 Dowel (amb part interior a 30 graus)

1 X placa rectangular rectangular (per a micròfon)

Pas 2: Circuit

Circuit
Circuit
Circuit
Circuit

Pas 3: fabricació de màquines (mecànica i muntatge)

Fabricació de màquines (mecànica i muntatge)
Fabricació de màquines (mecànica i muntatge)

1_Pre-muntatge

  • (Opcional) Posa tots els components de capes de bedoll fins a un acabat impecable
  • Mulleu tota la tira de capes de bedoll i doblegueu-la per crear una forma circular.
  • Emboliqueu la banda de capes de bedoll amb cinta adhesiva per mantenir la forma circular
  • Deixeu-lo reposar durant la nit perquè la tira conservi la forma circular

2_Assemblea de l'habitatge

Base

  1. Enganxeu la placa base inferior a la pell base
  2. Enganxeu les quatre plaques laterals inferiors juntes i, a continuació, enganxeu aquesta part a la vora de la placa base superior
  3. Enganxeu el motor Pas a pas al centre de la placa base superior (RECORDEU tocar al mateix costat que la placa de tires laterals i alinear la part rotativa real del motor al centre de la màquina)
  4. introduïu la rentadora del motor pas a pas al motor pas a pas '

Principal

  1. Enganxeu la placa principal inferior a la pell principal
  2. Enganxeu l’anell principal de la pell a la part superior de la pell principal
  3. introduïu la tira lateral a la banda lateral superior lliscada
  4. Enganxeu la placa del servomotor perpendicularment a la banda lateral superior

3_L’assemblea

  1. Col·loqueu amb cura la placa de pa i els dos UNO R3 amb l’escut SD dins del contenidor base
  2. Col·loqueu la placa base superior a la paperera i assegureu-vos que tots els sensors i actuadors passin per les obertures de la placa superior
  3. Enganxeu el motor Pas a pas al centre de la placa base superior (RECORDEU tocar al mateix costat que la placa de tires laterals i alinear la part rotativa real del motor al centre de la màquina)
  4. Introduïu la rentadora del motor pas a pas al motor pas a pas
  5. Col·loqueu el component principal a la rentadora
  6. Connecteu el component de la tira lateral a la base de la tira lateral lliscada
  7. Enganxeu el servomotor al costat de la placa del servomotor a l’extrem superior (s’ha de colpejar de costat) i, a continuació, toqueu el cablejat del servo a l’interior de la tira lateral
  8. Connecteu el signe superior al servomotor
  9. Toqueu el signe lateral a la part principal

4_Muntatge de suport de micròfon

  1. Enganxeu les quatre bases juntes
  2. Enganxeu el costat pla del tac a la base
  3. Enganxeu la placa del micròfon al costat inclinat del tac
  4. enganxeu el micròfon a la placa del micròfon

Pas 4: Programació

A causa de la mida limitada de la placa Arduino Uno, en aquest projecte s’utilitzen dues plaques Arduino. La placa principal s’utilitza per a la majoria de funcions, inclòs el recompte del temps de silenci, el processament de dades de so, la conversa amb els usuaris i la comunicació amb la segona placa.

#include #include

#incloure

#incloure

// SD s'ha de connectar al pin 11, 12, 13. El pin 10 addicional és

// obligatori o trucat amb SD.begin ().

const int servoPin = 3;

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

int volum1;

int volum2; float silenceTime = 0;

Servo banner;

TMRpcm plr;

configuració nul·la () {

// posa el teu codi de configuració aquí, per executar-lo una vegada: pinMode (servoPin, OUTPUT); pinMode (micPin1, INPUT); pinMode (micPin2, INPUT); Serial.begin (9600); Serial.println ("Benvingut al portal de diagnòstic SASSIE"); banner.attach (servoPin); banner.write (0); if (! SD.begin (10)) {Serial.println ("SD falla"); } plr.speakerPin = 9; plr.setVolume (5); }

bucle buit () {

volum1 = digitalRead (micPin1); volum2 = digitalRead (micPin2); banner.write (0); if (volum1 == 0 i volum2 == 0) {silenceTime + = 0,05; Serial.print ("Temps de silenci:"); Serial.println (silenceTime); } else {silenceTime = 0; banner.write (0); } retard (50); if (silenceTime> = AWKS) {rescue (); silenceTime = 0; }}

rescat nul () {

for (int angle = 0; angle <90; angle + = 1) {banner.write (angle); retard (35); } Serial.println ("Bàner activat"); retard (100); Serial.write (1); Serial.println ("Cançó activada"); plr.play ("4.wav"); retard (10000); plr.stopPlayback (); loop (); retard (10000); retard (5000); plr.play ("2.wav"); retard (5000); plr.play ("3.wav"); }

El codi del segon tauler és senzill. Només acciona el motor pas a pas quan la placa principal li envia un senyal.

#incloure

const int stepPin1 = 8;

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

bool motorState = fals;

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

configuració nul·la () {

// posa el teu codi de configuració aquí, per executar-lo una vegada: stepMotor.setSpeed (75); }

bucle buit () {

// posa el codi principal aquí, per executar-lo repetidament: int incoming = Serial.read (); if (entrant == 1) {Serial.println ("activat"); if (motorState == 0) {stepMotor.step (1000); retard (5000); } else {stepMotor.step (-1000); } motorState =! motorState; } retard (500); }

Recomanat: