Talaan ng mga Nilalaman:

SASSIE: ang System para sa Awkward Silence Solution at Interaction Enhancer: 5 Hakbang
SASSIE: ang System para sa Awkward Silence Solution at Interaction Enhancer: 5 Hakbang

Video: SASSIE: ang System para sa Awkward Silence Solution at Interaction Enhancer: 5 Hakbang

Video: SASSIE: ang System para sa Awkward Silence Solution at Interaction Enhancer: 5 Hakbang
Video: The Immortal Hulk: Full Story (The Big Spill) 2024, Nobyembre
Anonim
Image
Image
Mga Bahagi, Materyales at Kasangkapan
Mga Bahagi, Materyales at Kasangkapan

Ang SASSIE ay ang sagot sa tanong na tinanong nating lahat sa ating sarili sa panahon ng isang mahirap na katahimikan sa isang punto sa ating buhay, "Sumunod ba ako sa pagsasalita?" Ngayon hindi ka na mag-alala dahil ang SASSIE ay partikular na idinisenyo upang makilala ang isang mahirap na katahimikan, at pagkatapos ay i-neutralize ito sa pamamagitan ng sapalarang pagpapasya kung sino ang susunod na magsasalita. Ngayon ay maaari kang pumunta sa isang pag-uusap na walang stress, alam na ang SASSIE ay nasa likod mo.

Hakbang 1: Mga Bahagi, Materyales at Tool

Mga Bahaging Arduino

2 X Arduino Uno R3

2 X Arduino Mikropono

1 X XBee Wireless SD Shield

1 X 1/2 w 8 Volt Speaker

1 X Half Laki ng Breadboard

1 X Arduino Stepper Motor

1X ULN 2003 Stepper Motor Drive Board

1 X Micro Servo

Base at Pabahay (Mga Bahagi ng Laser Cut)

Ang lahat ng mga bahagi na nakalista sa ibaba ay maaaring ngunit ang laser cut sa isang Birch Ply Fullbed (32 "X 18")

1 - Batayan

1 X Bottom Base Plate

1 X Mahabang haba Maikling Taas Straight Lattice Strip

1 X Nangungunang Base Plate

4 X Maikling Haba Matangkad Taas Straight Lattice Side Strip Base

2 - Pangunahin

1 X Stepper Motor Washer

1 X Ibabang Pangunahing Plato

1 X Katamtamang haba Average na Taas Straight Lattice Strip

1 X Nangungunang Pangunahing Singsing

1 X Maikling Haba Matangkad Taas Straight Lattice Side Strip

1 X Top Side Strip Plate

1 X Maliit na Parihabang Plate (Para sa Micro Servo)

3 - Stand ng Mikropono

4 X Base Plate

1 X 13 cm 3/16 Dowel (na may baligtad na 30 degree)

1 X Maliit na Parihabang Plate (Para sa Mikropono)

Hakbang 2: Circuit

Circuit
Circuit
Circuit
Circuit

Hakbang 3: Paggawa ng Makina (Mekanika at Assembly)

Paggawa ng Makina (Mekanika at Assembly)
Paggawa ng Makina (Mekanika at Assembly)

1_Pre-Assembly

  • (Opsyonal) Buhangin ang lahat ng mga bahagi ng birch ply sa isang malinis na tapusin
  • Basain ang buong strip ng birch ply at pagkatapos ay yumuko ito upang lumikha ng isang pabilog na form.
  • Ibalot sa paligid ng birch ply strip gamit ang masking tape upang hawakan ang pabilog na form
  • Hayaang umupo ito magdamag para mapanatili ng strip ang pabilog na form

2_Pag-isang Assembly

Base

  1. Idikit ang Platong Pang-ilalim na Plat sa Base na Balat
  2. Kola ng magkasama ang apat na Bottom Side Strip Plate at pagkatapos ay idikit ang bahaging iyon sa gilid ng Top Base Plate
  3. I-tape ang Stepper motor papunta sa gitna ng Top Base Plate (TANDAAN upang mag-tap sa parehong bahagi ng Side Strip Plate at ihanay ang aktwal na umiikot na bahagi ng motor sa gitna ng makina)
  4. ipasok ang Stepper Motor Washer papunta sa Stepper Motor '

Pangunahin

  1. Kola ang Ibabang Pangunahing Plato sa Pangunahing Balat
  2. Kola ang Pangunahing Singsing ng Balat sa tuktok ng Pangunahing Balat
  3. ipasok ang strip ng gilid sa tuktok na gilid na slide slid
  4. Kola ang Servo Motor Plate patapat sa tuktok na strip

3_Ang Assembly

  1. Maingat na ilagay ang breadboard at ang dalawang UNO R3 kasama ang SD Shield sa loob ng basurahan
  2. Ilagay ang Top Base Plate papunta sa basurahan at tiyaking ang lahat ng mga sensor at Actuator ay dumaan sa mga tuktok na bukana ng plate
  3. I-tape ang Stepper motor papunta sa gitna ng Top Base Plate (TANDAAN upang mag-tap sa parehong bahagi ng Side Strip Plate at ihanay ang aktwal na umiikot na bahagi ng motor sa gitna ng makina)
  4. Ipasok ang Stepper Motor Washer papunta sa Stepper Motor
  5. Ilagay ang Pangunahing Component papunta sa washer
  6. Ikabit ang bahagi ng bahagi ng strip sa gilid ng base strip na nadulas
  7. I-tape ang Servo Motor sa gilid ng Servo Motor Plate sa tuktok na dulo (dapat i-tapik patagilid) at pagkatapos ay i-tap ang servo wiring sa loob ng gilid na gilid
  8. Ilakip ang pang-itaas na pag-sign sa servo motor
  9. I-tap ang sign sa gilid sa Pangunahing Balat

4_Microphone Stand Assembly

  1. Idikit ang apat na base
  2. Idikit ang patag na bahagi ng dowel sa base
  3. Idikit ang plato ng mikropono sa anggulo na bahagi ng dowel
  4. i-tape ang mikropono sa plate ng mikropono

Hakbang 4: Programming

Dahil sa limitadong sukat ng Arduino Uno board, ginagamit ang dalawang Arduino board sa proyektong ito. Ginagamit ang pangunahing board para sa karamihan ng mga pag-andar, kabilang ang pagbibilang ng oras ng katahimikan, pagproseso ng data ng tunog, pagsasalita sa mga gumagamit, at pakikipag-usap sa pangalawang board.

# isama ang # isama

# isama

# isama

// SD dapat kumonekta sa pin 11, 12, 13. Anaditional pin 10 ay

// kinakailangan o tawag sa SD.begin ().

const int servoPin = 3;

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

int volume1;

int dami2; float silentTime = 0;

Servo banner;

TMRpcm plr;

walang bisa ang pag-setup () {

// ilagay ang iyong setup code dito, upang tumakbo nang isang beses: pinMode (servoPin, OUTPUT); pinMode (micPin1, INPUT); pinMode (micPin2, INPUT); Serial.begin (9600); Serial.println ("Maligayang pagdating sa SASSIE diagnosis portal."); banner.attach (servoPin); banner.write (0); kung (! SD.begin (10)) {Serial.println ("SD fail"); } plr.speakerPin = 9; plr.setVolume (5); }

void loop () {

volume1 = digitalRead (micPin1); volume2 = digitalRead (micPin2); banner.write (0); kung (volume1 == 0 at volume2 == 0) {silentTime + = 0.05; Serial.print ("Oras ng katahimikan:"); Serial.println (silentTime); } iba pa {silentTime = 0; banner.write (0); } pagkaantala (50); kung (silentTime> = AWKS) {rescue (); silentTime = 0; }}

walang bisa ang pagsagip () {

para sa (int anggulo = 0; anggulo <90; anggulo + = 1) {banner.write (anggulo); antala (35); } Serial.println ("Banner on"); pagkaantala (100); Serial.write (1); Serial.println ("Song on"); plr.play ("4.wav"); pagkaantala (10000); plr.stopPlayback (); loop (); pagkaantala (10000); pagkaantala (5000); plr.play ("2.wav"); pagkaantala (5000); plr.play ("3.wav"); }

Ang code ng pangalawang board ay simple. Naghahatid lamang ito ng stepping motor kapag ang pangunahing board ay nagpapadala ng isang senyas dito.

# isama

Const int stepPin1 = 8;

Const int stepPin2 = 9; Const int stepPin3 = 10; Const int stepPin4 = 11; Const int motorMga Hakbang = 200;

bool motorState = false;

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

walang bisa ang pag-setup () {

// ilagay ang iyong setup code dito, upang tumakbo nang isang beses: stepMotor.setSpeed (75); }

void loop () {

// ilagay ang iyong pangunahing code dito, upang tumakbo nang paulit-ulit: int papasok = Serial.read (); kung (papasok == 1) {Serial.println ("na-activate"); kung (motorState == 0) {stepMotor.step (1000); pagkaantala (5000); } iba pa {stepMotor.step (-1000); } motorState =! motorState; } pagkaantala (500); }

Inirerekumendang: