Inhoudsopgave:
- Stap 1: Onderdelen, materialen en gereedschappen
- Stap 2: Circuit
- Stap 3: Machine maken (mechanica en montage)
- Stap 4: Programmeren
- Stap 5: Machinebediening
Video: SASSIE: het systeem voor ongemakkelijke stilte-oplossing en interactieverbeteraar - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:15
SASSIE is het antwoord op de vraag die we ons allemaal hebben gesteld tijdens een ongemakkelijke stilte op een bepaald moment in ons leven: "Spreek ik nu?" Nu hoef je je geen zorgen te maken, want SASSIE is speciaal ontworpen om een ongemakkelijke stilte te herkennen en deze vervolgens te neutraliseren door willekeurig te beslissen wie als volgende moet spreken. Nu kun je stressvrij een gesprek aangaan, wetende dat SASSIE achter je staat.
Stap 1: Onderdelen, materialen en gereedschappen
Arduino-onderdelen
2 X Arduino Uno R3
2 X Arduino-microfoon
1 X XBee draadloos SD-schild
1 X 1/2 w 8 Volt-luidspreker
1 x halve broodplank
1 X Arduino Stappenmotor
1X ULN 2003 Stappenmotor Aandrijfkaart
1 X Micro-servo
Basis en behuizing (lasergesneden componenten)
Alle onderstaande componenten kunnen behalve lasergesneden worden op een berkenlaags fullbed (32 "X 18")
1 - Basis
1 X Bodem Bodemplaat
1 X Lange lengte Korte hoogte rechte roosterstrook
1 X bovenste bodemplaat
4 x korte lengte hoge hoogte rechte rooster zijstrip basis
2 - Hoofd
1 X Stappenmotor Wasmachine
1 X onderste hoofdplaat
1 x gemiddelde lengte gemiddelde hoogte rechte roosterstrook
1 X bovenste hoofdring
1 x korte lengte hoge hoogte rechte zijstrip met rooster
1 X Bovenste zijstripplaat
1 X kleine rechthoekige plaat (voor microservo)
3 - Microfoonstandaard
4 X Bodemplaat
1 X 13 cm 3/16 deuvel (met onside op 30 graden)
1 X kleine rechthoekige plaat (voor microfoon)
Stap 2: Circuit
Stap 3: Machine maken (mechanica en montage)
1_Voormontage
- (Optioneel) Schuur alle componenten van berkenlaag tot een onberispelijke afwerking
- Maak de hele berkenlaag strook nat en buig deze dan om een cirkelvorm te creëren.
- Wikkel rond de berkenlaag met plakband om de cirkelvorm vast te houden
- Laat het een nacht staan zodat de strip de ronde vorm behoudt
2_Behuizingsassemblage
Baseren
- Lijm de onderste bodemplaat op de basishuid
- Lijm de vier onderste zijstripplaten aan elkaar en lijm dat deel vervolgens op de rand van de bovenste basisplaat
- Plak de stappenmotor op het midden van de bovenste basisplaat (DENK ERIN om op dezelfde kant als de zijstripplaat te tikken en het eigenlijke roterende deel van de motor uit te lijnen met het midden van de machine)
- plaats de stappenmotor wasmachine op de stappenmotor'
Hoofd
- Lijm de onderste hoofdplaat op de hoofdhuid
- Lijm de hoofdhuidring op de hoofdhuid
- steek de zijstrook in de gleuf van de bovenste zijstrook
- Lijm de servomotorplaat loodrecht op de bovenste zijstrip
3_De Vergadering
- Plaats het breadboard en de twee UNO R3 met het SD-schild voorzichtig in de basisbak
- Plaats de bovenste grondplaat op de bak en zorg ervoor dat alle sensoren en actuatoren door de openingen van de bovenste plaat gaan
- Plak de stappenmotor op het midden van de bovenste basisplaat (DENK ERIN om op dezelfde kant als de zijstripplaat te tikken en het eigenlijke roterende deel van de motor uit te lijnen met het midden van de machine)
- Plaats de stappenmotorring op de stappenmotor
- Plaats het hoofdonderdeel op de wasmachine
- Bevestig het onderdeel van de zijstrip in de basisslede van de zijstrip
- Plak de servomotor aan de zijkant van de servomotorplaat aan de bovenkant (moet zijwaarts worden getikt) en tik vervolgens de servobedrading tegen de binnenkant van de zijstrip
- Bevestig het bovenste bord aan de servomotor
- Tik op het zijteken op de hoofdhuid
4_Microfoonstandaard montage
- Lijm de vier basis samen
- Lijm de platte kant van de plug aan de basis
- Lijm de microfoonplaat op de schuine kant van de plug
- plak de microfoon op de microfoonplaat
Stap 4: Programmeren
Vanwege de beperkte omvang van het Arduino Uno-bord worden in dit project twee Arduino-borden gebruikt. Het hoofdbord wordt gebruikt voor de meeste functies, waaronder het tellen van de stiltetijd, het verwerken van geluidsgegevens, spreken met gebruikers en communiceren met het tweede bord.
#include #include
#erbij betrekken
#erbij betrekken
// SD moet verbinding maken met pin 11, 12, 13. Een andere pin 10 is
// vereist of aangeroepen met SD.begin().
const int servoPin = 3;
const int micPin1 = 5; const int micPin2 = 6; const int AWKS = 4;
int-volume1;
int-volume2; float stilteTijd = 0;
Servobanner;
TMRpcm plr;
ongeldige setup() {
// plaats hier uw setup-code om een keer uit te voeren: pinMode (servoPin, OUTPUT); pinMode (micPin1, INPUT); pinMode (micPin2, INPUT); Serieel.begin(9600); Serial.println("Welkom bij het SASSIE diagnoseportaal."); banner.attach(servoPin); banner.schrijven(0); if (!SD.begin(10)) { Serial.println("SD mislukt"); } plr.speakerPin = 9; plr.setVolume(5); }
lege lus() {
volume1 = digitalRead (micPin1); volume2 = digitalRead (micPin2); banner.schrijven(0); if (volume1 == 0 en volume2 == 0) { silenceTime += 0.05; Serial.print("Stiltetijd: "); Serial.println(silenceTime); } else { stilteTime = 0; banner.schrijven(0); } vertraging(50); if (silenceTime >= AWKS) {redding(); stilteTijd = 0; } }
ongeldige redding() {
for (int hoek = 0; hoek < 90; hoek += 1) { banner.write(hoek); vertraging (35); } Serial.println("Banner aan"); vertraging (100); Serieel.schrijven(1); Serial.println("Lied aan"); plr.play("4.wav"); vertraging (10000); plr.stopPlayback(); lus(); vertraging (10000); vertraging (5000); plr.play("2.wav"); vertraging (5000); plr.play("3.wav"); }
De code van het tweede bord is eenvoudig. Het drijft de stappenmotor alleen aan als het moederbord er een signaal naar stuurt.
#erbij betrekken
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);
ongeldige setup() {
// plaats hier je setup-code om een keer uit te voeren: stepMotor.setSpeed(75); }
lege lus() {
// plaats hier je hoofdcode om herhaaldelijk uit te voeren: int inkomend = Serial.read(); if (inkomend == 1) { Serial.println("geactiveerd"); if (motorState == 0) { stepMotor.step (1000); vertraging (5000); } else { stepMotor.step(-1000); } motorState = !motorState; } vertraging (500); }
Aanbevolen:
Idee voor doe-het-zelf-activiteit voor weerstations voor 12+ jaar: 4 stappen
Idee voor doe-het-zelf-weerstationactiviteit voor 12-plussers: in deze activiteit zullen deelnemers hun weerstation opzetten, de lucht in sturen en de opnames (licht, temperatuur, vochtigheid) in realtime volgen via de Blynk-app. Bovendien leert u hoe u de geregistreerde waarden publiceert
Systeem voor het bewaken van de luchtkwaliteit voor fijnstofverontreiniging: 4 stappen
Systeem voor monitoring van luchtkwaliteit voor fijnstofverontreiniging: INTRO: 1 In dit project laat ik zien hoe ik een deeltjesdetector bouw met dataweergave, databack-up op SD-kaart en IOT. Visueel geeft een neopixels ringdisplay de luchtkwaliteit aan. 2 Luchtkwaliteit is een steeds belangrijker zorg t
De stilte van het speelgoed: 6 stappen (met afbeeldingen)
The Silence of the Toys: This Instructable is geïnspireerd op een artikel uit een van mijn eerste nummers van MAKE. Het kan worden toegepast op vrijwel elk luidruchtig speelgoed, hoewel de details specifiek zijn voor dit speelgoed. We hebben een babymobiel (Tiny Love's "Symphony-in-Motion" met
Een microfoon toevoegen aan het Omnitech GPS-systeem voor spraakherkenning: 4 stappen
Een microfoon toevoegen aan het Omnitech GPS-systeem voor spraakherkenning: tijdens het sleutelen aan mijn apparaat vond ik een gemakkelijke en snelle manier om een microfoon toe te voegen aan dit dove apparaat. Met een microfoon kunt u gebruikmaken van spraakherkenning voor navigatie. Het zal een kleine hoeveelheid solderen met zich meebrengen, maar bijna iedereen
Hoe u uw pc drastisch kunt versnellen en die snelheid kunt behouden voor de levensduur van het systeem: 9 stappen
Hoe u uw pc drastisch kunt versnellen en die snelheid kunt behouden voor de levensduur van het systeem en om dat zo te houden. Ik zal foto's plaatsen zodra ik de kans krijg, helaas heb ik op dit moment geen