Obsah:

Tažná ruka ovládaná zvukem - Arduino School Project: 4 kroky (s obrázky)
Tažná ruka ovládaná zvukem - Arduino School Project: 4 kroky (s obrázky)

Video: Tažná ruka ovládaná zvukem - Arduino School Project: 4 kroky (s obrázky)

Video: Tažná ruka ovládaná zvukem - Arduino School Project: 4 kroky (s obrázky)
Video: 35 видео со страшными призраками: мегасборник 2023 года [V1] 2024, Červenec
Anonim
Tažná ruka ovládaná zvukem - Arduino School Project
Tažná ruka ovládaná zvukem - Arduino School Project

S Arduinem pracuji úplně poprvé a pracuji s něčím takovým, takže se omlouvám, pokud jsem udělal nějaké chyby! Tenhle nápad jsem dostal, když jsem přemýšlel o svých koníčcích, kterými jsou kreslení a hudba. Tak jsem se pokusil spojit tyto dva do tohoto! Rameno s vlastním tažením, které je ovlivněno zvukem.

Krok 1: Krok 1: Materiály

- Arduino Uno

- prkénko

- detektor zvuku (Sparkfun sen-12642)

- 2 (mini) serva

- Zavazovací pásky / zapínání na zip

- Trochu dřeva a papíru

- něco, s čím můžete kreslit/psát

Krok 2: Krok 2: Nastavení

Krok 2: Nastavení
Krok 2: Nastavení

Nejprve jsem zapojil servo a poté zvukový detektor. Zvukový detektor Sparkfun sen-12642 má 3 výstupy, použil jsem pouze výstup "obálka".

Servo 1 = kolík ~ 9

Servo 2 = kolík ~ 10

Zvukový detektor = pin A0

Červené čáry (5v) jsou připojeny k kladné straně na desce a černé čáry (uzemnění) jsou připojeny k negativní straně.

Krok 3: Krok 3: Neelektronika

Krok 3: Neelektronika
Krok 3: Neelektronika
Krok 3: Neelektronika
Krok 3: Neelektronika
Krok 3: Neelektronika
Krok 3: Neelektronika

Ujistěte se, že jsou serva stabilní a na správném místě. K jejich stabilizaci jsem použil kravaty. Poté jsem použil kravaty k přivázání (vyměnitelných) horních částí serva k dřevěným ramenům. Poté můžete části dřevěných ramen připojit k servům. Připojte všechny vodiče k Arduinu a prkénku.

Poté jsem připájel dráty k detektoru zvuku.

Krok 4: Krok 4: Kód

Nejsem nijak zdatný v kódování, ale snažil jsem se co nejlépe a internet mi hodně pomohl:)

#include Servo myservo1; Servo myservo2; int pos = 0; int PIN_ANALOG_IN = A0;

neplatné nastavení () {Serial.begin (9600);

// Zobrazení stavu

Serial.println ("Inicializováno"); myservo1.attach (9); myservo2.attach (10); }

prázdná smyčka ()

{int hodnota;

// Zkontrolujte vstup obálky

hodnota = analogRead (PIN_ANALOG_IN);

// Hodnota obálky ovlivňuje servo

Serial.println (hodnota); if (hodnota 5) && (hodnota 10) && (hodnota 20) && (hodnota 30) && (hodnota 60)) {myservo1.write (random (0, 90)); myservo2.write (random (0, 90)); }

zpoždění (180);

}

Doporučuje: