Съдържание:

SASSIE: Системата за неудобно решение за тишина и подобрител на взаимодействието: 5 стъпки
SASSIE: Системата за неудобно решение за тишина и подобрител на взаимодействието: 5 стъпки

Видео: SASSIE: Системата за неудобно решение за тишина и подобрител на взаимодействието: 5 стъпки

Видео: SASSIE: Системата за неудобно решение за тишина и подобрител на взаимодействието: 5 стъпки
Видео: БАГОЮЗЕРЫ ВПЕРДЕ! ► 5 Прохождение Cyberpunk 2077 (Киберпанк 2077) ►Ультра, 2К 2024, Ноември
Anonim
Image
Image
Части, материали и инструменти
Части, материали и инструменти

SASSIE е отговорът на въпроса, който всички си зададохме по време на неловко мълчание в един момент от живота си: „Следва ли да говоря?“Е, сега не е нужно да се притеснявате, защото SASSIE е специално проектиран да разпознава неловко мълчание и след това да го неутрализира, като на случаен принцип реши кой следва да говори. Сега можете да влезете в разговор без стрес, като знаете, че SASSIE ви пази.

Стъпка 1: Части, материали и инструменти

Части Arduino

2 X Arduino Uno R3

2 x микрофон Arduino

1 X XBee безжичен SD щит

1 X 1/2 w 8 -волтов високоговорител

1 X Платка с половин размер

1 X стъпков двигател Arduino

1X ULN 2003 Стъпков мотор

1 X микро серво

Основа и корпус (лазерно изрязани компоненти)

Всички компоненти, изброени по -долу, могат да се режат с лазер на Birch Ply Fullbed (32 "X 18")

1 - Основа

1 X Долна основна плоча

1 X Дълга дължина Права решетъчна лента с къса височина

1 X Горна основна плоча

4 X Къса дължина Висока височина Права решетка Основа на страничната лента

2 - Основен

1 X Шайба за стъпков двигател

1 X Долна основна плоча

1 X Средна дължина Права решетъчна лента със средна височина

1 X Топ основен пръстен

1 X Къса дължина висока височина права решетъчна странична лента

1 X плоча от горната странична лента

1 X малка правоъгълна плоча (за микро серво)

3 - Стойка за микрофон

4 X Основна плоча

1 X 13 см 3/16 дюбел (със странична страна на 30 градуса)

1 X малка правоъгълна плоча (за микрофон)

Стъпка 2: Схема

Верига
Верига
Верига
Верига

Стъпка 3: Производство на машини (механика и монтаж)

Машинно производство (механика и монтаж)
Машинно производство (механика и монтаж)

1_Предварително сглобяване

  • (По избор) Избършете всички компоненти от брезов слой до девствено покритие
  • Намокрете цялата лента от брезов слой и след това я огънете, за да създадете кръгла форма.
  • Увийте лентата от брезов слой, като използвате маскираща лента, за да държите кръглата форма
  • Оставете да престои една нощ, за да запази кръговата форма лентата

2_Комплект на жилището

База

  1. Залепете долната основна плоча към основната кожа
  2. Залепете четирите дънни странични ленти заедно и след това залепете тази част върху ръба на горната основна плоча
  3. Залепете стъпковия двигател към центъра на горната основна плоча (ЗАПОМНЕТЕ, за да почукате от същата страна като страничната планка и подравнете действителната въртяща се част на двигателя към центъра на машината)
  4. поставете шайбата на стъпков двигател върху стъпковия двигател '

Основен

  1. Залепете долната основна плоча към основната обвивка
  2. Залепете пръстена на основната кожа отгоре на основната кожа
  3. поставете страничната лента към горната плъзгаща се странична лента
  4. Залепете плочата на сервомотора перпендикулярно на горната странична лента

3_Сборката

  1. Внимателно поставете платката и двата UNO R3 със SD щита в основната кошница
  2. Поставете горната основна плоча върху кошчето и се уверете, че всички сензори и задвижвания преминават през отворите на горната плоча
  3. Залепете стъпковия двигател към центъра на горната основна плоча (ЗАПОМНЕТЕ, за да почукате от същата страна като страничната планка и подравнете действителната въртяща се част на двигателя към центъра на машината)
  4. Поставете шайбата на стъпков двигател върху стъпковия двигател
  5. Поставете основния компонент върху пералнята
  6. Прикрепете компонента на страничната лента към плъзгача на основата на страничната лента
  7. Залепете сервомотора отстрани на плочата на серво мотора в горния край (трябва да се почука отстрани) и след това почукайте серво проводника във вътрешността на страничната лента
  8. Прикрепете горния знак към серво мотора
  9. Докоснете страничния знак на основната кожа

4_ Монтаж на стойка за микрофон

  1. Залепете четирите основи заедно
  2. Залепете плоската страна на дюбела към основата
  3. Залепете микрофонната плоча към ъгловата страна на дюбела
  4. залепете микрофона върху плочата на микрофона

Стъпка 4: Програмиране

Поради ограничения размер на платката Arduino Uno, в този проект се използват две платки Arduino. Основната платка се използва за повечето от функциите, включително отчитане на времето за мълчание, обработка на звукови данни, говорене с потребители и комуникация с втората платка.

#включи #включи

#включва

#включва

// SD трябва да се свърже с пин 11, 12, 13. Аналогичен пин 10 е

// изисква се или се извиква с SD.begin ().

const int servoPin = 3;

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

int том1;

int том2; float silenceTime = 0;

Серво банер;

TMRpcm plr;

void setup () {

// поставете вашия код за настройка тук, за да стартирате веднъж: pinMode (servoPin, OUTPUT); pinMode (micPin1, INPUT); pinMode (micPin2, INPUT); Serial.begin (9600); Serial.println ("Добре дошли в диагностичния портал на SASSIE."); banner.attach (servoPin); banner.write (0); if (! SD.begin (10)) {Serial.println ("SD неуспех"); } plr.speakerPin = 9; plr.setVolume (5); }

void loop () {

том1 = digitalRead (micPin1); том2 = digitalRead (micPin2); banner.write (0); if (том1 == 0 и том2 == 0) {silenceTime += 0.05; Serial.print ("Време за мълчание:"); Serial.println (silenceTime); } else {silenceTime = 0; banner.write (0); } забавяне (50); if (silenceTime> = AWKS) {rescue (); silenceTime = 0; }}

void rescue () {

за (int ъгъл = 0; ъгъл <90; ъгъл += 1) {banner.write (ъгъл); забавяне (35); } Serial.println ("Банер включен"); забавяне (100); Serial.write (1); Serial.println ("Песента е включена"); plr.play ("4.wav"); забавяне (10000); plr.stopPlayback (); цикъл (); забавяне (10000); забавяне (5000); plr.play ("2.wav"); забавяне (5000); plr.play ("3.wav"); }

Кодът на втората дъска е прост. Той задвижва стъпковия мотор само когато основната платка изпраща сигнал към него.

#включва

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 () {

// поставете вашия код за настройка тук, за да стартирате веднъж: stepMotor.setSpeed (75); }

void loop () {

// поставете основния си код тук, за да се изпълнява многократно: int incoming = Serial.read (); if (входящ == 1) {Serial.println ("активиран"); if (motorState == 0) {stepMotor.step (1000); забавяне (5000); } else {stepMotor.step (-1000); } motorState =! motorState; } забавяне (500); }

Препоръчано: