Sadržaj:

SASSIE: Sustav za neugodno rješenje tišine i pojačivač interakcije: 5 koraka
SASSIE: Sustav za neugodno rješenje tišine i pojačivač interakcije: 5 koraka

Video: SASSIE: Sustav za neugodno rješenje tišine i pojačivač interakcije: 5 koraka

Video: SASSIE: Sustav za neugodno rješenje tišine i pojačivač interakcije: 5 koraka
Video: Красивая история о настоящей любви! Мелодрама НЕЛЮБОВЬ (Домашний). 2024, Studeni
Anonim
Image
Image
Dijelovi, materijali i alati
Dijelovi, materijali i alati

SASSIE je odgovor na pitanje koje smo si svi postavili tijekom neugodne tišine u jednom trenutku svog života, "Govorim li sljedeće?" Pa sada ne morate brinuti jer je SASSIE posebno dizajniran da prepozna neugodnu tišinu, a zatim je neutralizira nasumičnim odlučivanjem tko bi trebao dalje govoriti. Sada možete ući u razgovor bez stresa, znajući da vam SASSIE leđa.

Korak 1: Dijelovi, materijali i alati

Arduino dijelovi

2 X Arduino Uno R3

2 x Arduino mikrofon

1 X XBee bežični SD štit

1 X 1/2 w 8 -voltni zvučnik

1 X Oglasna ploča pola veličine

1 X Arduino koračni motor

1X ULN 2003 pogonska ploča s koračnim motorom

1 X mikro servo

Baza i kućište (komponente izrezane laserom)

Sve dolje navedene komponente mogu se laserski izrezati na Birch Ply Fullbed (32 "X 18")

1 - Baza

1 X Donja osnovna ploča

1 X Dugačka ravna rešetkasta traka kratke visine

1 X Gornja osnovna ploča

4 X Kratka duljina Visoka visina Ravna rešetkasta baza sa bočnim trakama

2 - Glavni

1 X Perilica koračnih motora

1 X Donja glavna ploča

1 X Ravna rešetkasta traka prosječne visine srednje duljine

1 X Gornji glavni prsten

1 X Ravna rešetkasta bočna traka kratke duljine s visokom visinom

1 X gornja bočna ploča

1 X Mala pravokutna ploča (za mikro servo)

3 - Stalak za mikrofon

4 X osnovna ploča

1 X 13 cm 3/16 tipla (sa strana na 30 stupnjeva)

1 X Mala pravokutna ploča (za mikrofon)

Korak 2: Krug

Krug
Krug
Krug
Krug

Korak 3: Izrada strojeva (mehanika i montaža)

Strojna izrada (mehanika i montaža)
Strojna izrada (mehanika i montaža)

1_Predmontiranje

  • (Opcionalno) Sve komponente brezovog sloja izbrusite do netaknute boje
  • Namočite cijelu traku od brezovog sloja, a zatim je savijte kako biste stvorili kružni oblik.
  • Omotajte traku od brezovog sloja pomoću maskirne trake kako biste zadržali kružni oblik
  • Ostavite da odstoji preko noći kako bi traka zadržala kružni oblik

2_Sklop kućišta

Baza

  1. Zalijepite donju osnovnu ploču na podlogu
  2. Zalijepite četiri donje bočne ploče zajedno, a zatim zalijepite taj dio na rub gornje donje ploče
  3. Zalijepite koračni motor na središte gornje donje ploče (ZAPAMTITE da dodirnete na istoj strani kao i bočna ploča i poravnate stvarni rotirajući dio motora sa središtem stroja)
  4. umetnite perilicu koračnog motora na koračni motor '

Glavni

  1. Zalijepite donju glavnu ploču na glavnu kožu
  2. Zalijepite prsten glavne kože na vrh glavne kože
  3. umetnite bočnu traku u gornju kliznu bočnu traku
  4. Zalijepite ploču servo motora okomito na gornju bočnu traku

3_Skupština

  1. Pažljivo postavite matičnu ploču i dva UNO R3 sa SD štitom u osnovnu ladicu
  2. Postavite gornju osnovnu ploču na kantu i provjerite da li svi senzori i aktuatori prolaze kroz otvore gornje ploče
  3. Zalijepite koračni motor na središte gornje donje ploče (ZAPAMTITE da dodirnete na istoj strani kao i bočna ploča i poravnate stvarni rotirajući dio motora sa središtem stroja)
  4. Umetnite podlošku koračnog motora na koračni motor
  5. Stavite glavnu komponentu na perilicu
  6. Pričvrstite komponentu bočne trake u klizni poklopac baze bočne trake
  7. Zalijepite servo motor sa strane ploče servo motora na gornjem kraju (treba kucnuti bočno), a zatim kucnite servo ožičenje s unutarnje strane bočne trake
  8. Pričvrstite gornji znak na servo motor
  9. Dodirnite bočni znak na glavnoj boji

4_ Sklop postolja za mikrofon

  1. Zalijepite četiri baze zajedno
  2. Zalijepite ravnu stranu tiple na podlogu
  3. Zalijepite ploču mikrofona na kutnu stranu tiple
  4. zalijepite mikrofon na ploču mikrofona

Korak 4: Programiranje

Zbog ograničene veličine Arduino Uno ploče, u ovom projektu koriste se dvije Arduino ploče. Glavna ploča koristi se za većinu funkcija, uključujući brojanje vremena tišine, obradu zvučnih podataka, razgovor s korisnicima i komunikaciju s drugom pločom.

#include #include

#uključi

#uključi

// SD se mora spojiti na pin 11, 12, 13. Anadicionalni pin 10 je

// potrebno ili pozvano s SD.begin ().

const int servoPin = 3;

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

int volumen1;

int volumen2; plutajuća tišinaTime = 0;

Servo banner;

TMRpcm plr;

void setup () {

// ovdje postavite svoj kôd za postavljanje, da biste ga jednom pokrenuli: pinMode (servoPin, OUTPUT); pinMode (micPin1, INPUT); pinMode (micPin2, INPUT); Serial.begin (9600); Serial.println ("Dobro došli na dijagnostički portal SASSIE."); banner.attach (servoPin); banner.write (0); if (! SD.begin (10)) {Serial.println ("SD neuspjeh"); } plr.speakerPin = 9; plr.setVolume (5); }

void loop () {{100} {101}

volumen1 = digitalno čitanje (micPin1); volumen2 = digitalno čitanje (micPin2); banner.write (0); if (volume1 == 0 i volume2 == 0) {silenceTime += 0,05; Serial.print ("Vrijeme šutnje:"); Serial.println (tišinaTime); } else {silenceTime = 0; banner.write (0); } kašnjenje (50); if (silenceTime> = AWKS) {rescue (); tišinaTime = 0; }}

void rescue () {

za (int kut = 0; kut <90; kut += 1) {banner.write (kut); kašnjenje (35); } Serial.println ("Banner on"); kašnjenje (100); Serial.write (1); Serial.println ("Pjesma uključena"); plr.play ("4.wav"); kašnjenje (10000); plr.stopPlayback (); petlja(); kašnjenje (10000); kašnjenje (5000); plr.play ("2.wav"); kašnjenje (5000); plr.play ("3.wav"); }

Kod druge ploče je jednostavan. On pokreće koračni motor samo kada mu glavna ploča šalje signal.

#uključi

const int stepPin1 = 8;

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

bool motorState = false;

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

void setup () {

// ovdje postavite svoj kod za postavljanje, da biste ga jednom pokrenuli: stepMotor.setSpeed (75); }

void loop () {{100} {101}

// ovdje unesite svoj glavni kôd za višestruko pokretanje: int incoming = Serial.read (); if (dolazni == 1) {Serial.println ("aktivirano"); if (motorState == 0) {stepMotor.step (1000); kašnjenje (5000); } else {stepMotor.step (-1000); } motorState =! motorState; } kašnjenje (500); }

Preporučeni: