Indholdsfortegnelse:
- Trin 1: Dele, materialer og værktøjer
- Trin 2: Kredsløb
- Trin 3: Maskinfremstilling (mekanik og samling)
- Trin 4: Programmering
- Trin 5: Maskinbetjening
Video: SASSIE: System for Awkward Silence Solution og Interaction Enhancer: 5 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
SASSIE er svaret på det spørgsmål, vi alle har stillet til os selv under en akavet stilhed på et tidspunkt i vores liv: "Taler jeg næste?" Nu behøver du ikke bekymre dig, for SASSIE er specielt designet til at genkende en akavet stilhed og derefter neutralisere den ved tilfældigt at beslutte, hvem der skal tale derefter. Nu kan du gå ind i en samtale uden stress, vel vidende at SASSIE har din ryg.
Trin 1: Dele, materialer og værktøjer
Arduino dele
2 X Arduino Uno R3
2 x Arduino mikrofon
1 X XBee trådløs SD -skærm
1 X 1/2 w 8 Volt højttaler
1 X brødbræt i halv størrelse
1 X Arduino Stepper Motor
1X ULN 2003 Stepper Motor Drive Board
1 X Micro Servo
Base og hus (laserskårede komponenter)
Alle komponenter, der er anført nedenfor, kan kun laserskåret på en Birch Ply Fullbed (32 "X 18")
1 - Base
1 X bundplade
1 x lang længde kort højde lige gitterstrimmel
1 X Topplade
4 x kort længde høj højde lige gitter sidebåndsbase
2 - Main
1 X Stepper Motor Skive
1 X bundplade
1 X Medium længde Gennemsnitlig højde Lige gitterstrimmel
1 X Top hovedring
1 x kort længde høj højde lige gitter sidebånd
1 X Top Side Strip Plate
1 X lille rektangulær plade (til mikroservo)
3 - Mikrofonstativ
4 X bundplade
1 X 13 cm 3/16 dyvel (med på siden ved 30 grader)
1 X lille rektangulær plade (til mikrofon)
Trin 2: Kredsløb
Trin 3: Maskinfremstilling (mekanik og samling)
1_Forsamling
- (Valgfrit) Slib alle birkelagskomponenter til en uberørt finish
- Fugt hele birkelagstrimlen og bøj den derefter for at skabe en cirkulær form.
- Wrap rundt om birkelagstrimlen ved hjælp af malertape for at holde den cirkulære form
- Lad det sidde natten over, så strimlen bevarer den cirkulære form
2_Boligforsamling
Grundlag
- Lim bundpladen til bundhuden
- Lim de fire bundsideplader sammen, og lim derefter den del på kanten af den øverste bundplade
- Tape trinmotoren på midten af den øverste bundplade (HUSK at trykke på den samme side som sidebåndspladen og juster den faktiske roterende del af motoren til midten af maskinen)
- Sæt trinmotorskiven på trinmotoren '
Main
- Lim den nederste hovedplade til hovedhuden
- Lim hovedhudringen oven på hovedhuden
- indsæt sidestrimlen til den øverste sidebåndglidning
- Lim servomotorpladen vinkelret på den øverste sidebånd
3_ Forsamlingen
- Placer forsigtigt brødbrættet og de to UNO R3 med SD Shield inde i bundbeholderen
- Placer den øverste bundplade på skraldespanden, og sørg for, at alle sensorer og aktuatorer går gennem toppladeåbningerne
- Tape trinmotoren på midten af den øverste bundplade (HUSK at trykke på den samme side som sidebåndspladen og juster den faktiske roterende del af motoren til midten af maskinen)
- Sæt trinmotorskiven på trinmotoren
- Placer hovedkomponenten på skiven
- Fastgør sidebåndskomponenten i sidebåndets bundglider
- Tape servomotoren til siden af servomotorpladen i den øverste ende (skal tappes sidelæns), og tryk derefter på servoledningerne til indersiden af sidebåndet
- Fastgør det øverste skilt til servomotoren
- Tryk på sideskiltet på hovedhuden
4_Mikrofonstativmontering
- Lim de fire bundstykker sammen
- Lim den flade side af dyvlen til bunden
- Lim mikrofonpladen til den vinklede side af dyvlen
- tape mikrofonen på mikrofonpladen
Trin 4: Programmering
På grund af den begrænsede størrelse af Arduino Uno -pladen bruges to Arduino -plader i dette projekt. Hovedkortet bruges til de fleste funktioner, herunder tælling af tavshedstid, behandling af lyddata, tale til brugere og kommunikation med det andet tavle.
#include #include
#omfatte
#omfatte
// SD skal forbinde til pin 11, 12, 13. En ekstra pin 10 er
// påkrævet eller kaldet med SD.begin ().
const int servoPin = 3;
const int micPin1 = 5; const int micPin2 = 6; const int AWKS = 4;
int volumen1;
int volumen2; float silenceTime = 0;
Servobanner;
TMRpcm plr;
ugyldig opsætning () {
// sæt din opsætningskode her for at køre en gang: pinMode (servoPin, OUTPUT); pinMode (micPin1, INPUT); pinMode (micPin2, INPUT); Serial.begin (9600); Serial.println ("Velkommen til SASSIE diagnoseportal."); banner.attach (servoPin); banner.write (0); hvis (! SD.begin (10)) {Serial.println ("SD mislykkes"); } plr.højttalerPin = 9; plr.setVolume (5); }
void loop () {
volume1 = digitalRead (micPin1); volume2 = digitalRead (micPin2); banner.write (0); hvis (volume1 == 0 og volume2 == 0) {silenceTime += 0,05; Serial.print ("Stilhedstid:"); Serial.println (silenceTime); } ellers {silenceTime = 0; banner.write (0); } forsinkelse (50); hvis (silenceTime> = AWKS) {rescue (); tavshed = 0; }}
ugyldig redning () {
for (int vinkel = 0; vinkel <90; vinkel += 1) {banner.write (vinkel); forsinkelse (35); } Serial.println ("Banner tændt"); forsinkelse (100); Serial.write (1); Serial.println ("Sang på"); plr.play ("4.wav"); forsinkelse (10000); plr.stopPlayback (); loop (); forsinkelse (10000); forsinkelse (5000); plr.play ("2.wav"); forsinkelse (5000); plr.play ("3.wav"); }
Koden for det andet bord er enkel. Den driver kun trinmotoren, når hovedkortet sender et signal til den.
#omfatte
const int stepPin1 = 8;
const int stepPin2 = 9; const int stepPin3 = 10; const int stepPin4 = 11; const int motorSteps = 200;
bool motorState = falsk;
Stepper stepMotor (motorSteps, stepPin1, stepPin2, stepPin3, stepPin4);
ugyldig opsætning () {
// sæt din opsætningskode her for at køre en gang: stepMotor.setSpeed (75); }
void loop () {
// sæt din hovedkode her for at køre gentagne gange: int indkommende = Serial.read (); hvis (indgående == 1) {Serial.println ("aktiveret"); hvis (motorState == 0) {stepMotor.step (1000); forsinkelse (5000); } ellers {stepMotor.step (-1000); } motorState =! motorState; } forsinkelse (500); }
Anbefalede:
Lav dit eget fotovoltaiske 5V -system: 4 trin (med billeder)
Lav dit eget fotovoltaiske 5V-system: Dette bruger en bukkonverter som en 5V-udgang til at oplade batteriet (Li Po/Li-ion). Og Boost -konverter til 3,7V batteri til 5V USB -udgang til nødvendige enheder 5 V. Ligner det originale system, der bruger blybatteri som energilagringsopladning e
Slide Advance Alert System: 6 trin
Slide Advance Alert System: På Brown Dog Gadgets laver vi en masse videostreaming til workshops, og vores opsætning inkluderer en person på kameraet og en anden person som producenten, der kører softwaren, overvåger chatvinduet og foretager kameraskift og fremskridt diasene
PIC16F877A -baseret RFID -system: 5 trin
PIC16F877A Baseret RFID -system: RFID -system er et system, der giver identifikation af de studerende, medarbejdere og andre, der bruger RFID -tag, for at overvåge deres tilstedeværelse, arbejde, arbejdstid og mange andre. Denne artikel er sponsor med JLCPCB. Jeg takker virkelig JLCPCB for spons
Akustisk levitation med Arduino Uno trin for trin (8 trin): 8 trin
Akustisk levitation med Arduino Uno Step-by Step (8-trin): ultralyds lydtransducere L298N Dc kvindelig adapter strømforsyning med en han-DC-pin Arduino UNOBreadboard Sådan fungerer det: Først uploader du kode til Arduino Uno (det er en mikrokontroller udstyret med digital og analoge porte til konvertering af kode (C ++)
Laptop Luminosity Enhancer: 13 trin
Laptop Luminosity Enhancer: Træt af ikke at kunne se din skærm på den gamle bærbare computer, når du er udenfor? Laptop Luminosity Enhancer er noget for dig