Spisu treści:

Ramię do rysowania sterowane dźwiękiem - projekt Arduino School: 4 kroki (ze zdjęciami)
Ramię do rysowania sterowane dźwiękiem - projekt Arduino School: 4 kroki (ze zdjęciami)

Wideo: Ramię do rysowania sterowane dźwiękiem - projekt Arduino School: 4 kroki (ze zdjęciami)

Wideo: Ramię do rysowania sterowane dźwiękiem - projekt Arduino School: 4 kroki (ze zdjęciami)
Wideo: Ups. 2024, Lipiec
Anonim
Ramię do rysowania sterowane dźwiękiem - Arduino School Project
Ramię do rysowania sterowane dźwiękiem - Arduino School Project

To mój pierwszy raz, kiedy pracuję z Arduino i pracuję z czymś takim w historii, przepraszam, jeśli popełniłem jakieś błędy! Wpadłem na ten pomysł, gdy pomyślałem o moich hobby, czyli rysunku i muzyce. Więc spróbowałem połączyć te dwie rzeczy w to! Samo rysujące ramię, na które wpływa dźwięk.

Krok 1: Krok 1: Materiały

- Arduino Uno

- Deska do krojenia chleba

- Detektor dźwięku (Sparkfun sen-12642)

- 2 (mini) serwa

- Krawaty / opaski na suwak

- Trochę drewna i papieru

- coś, czym możesz rysować/pisać

Krok 2: Krok 2: Konfiguracja

Krok 2: Konfiguracja
Krok 2: Konfiguracja

Najpierw podłączyłem Servo, a potem detektor dźwięku. Detektor dźwięku Sparkfun sen-12642 posiada 3 wyjścia, ja użyłem tylko wyjścia „koperta”.

Serwo 1 = pin ~9

Serwo 2 = pin ~10

Detektor dźwięku = pin A0

Czerwone linie (5v) są połączone ze stroną dodatnią na płytce stykowej, a czarne linie (masa) są połączone ze stroną ujemną.

Krok 3: Krok 3: Nieelektronika

Krok 3: Nieelektronika
Krok 3: Nieelektronika
Krok 3: Nieelektronika
Krok 3: Nieelektronika
Krok 3: Nieelektronika
Krok 3: Nieelektronika

Upewnij się, że serwa są stabilne i we właściwym miejscu. Użyłem owijek do krawatów, aby je uspokoić. Następnie przywiązałem (wymienne) górne części serwa do drewnianych ramion za pomocą tie wrapów. Następnie możesz połączyć drewniane części ramion z serwomechanizmem. Podłącz wszystkie przewody do Arduino i płytki stykowej.

Następnie przylutowałem przewody do detektora dźwięku.

Krok 4: Krok 4: Kod

Wcale nie jestem dobry w kodowaniu, ale starałem się, a internet bardzo pomógł:)

#include Servo myservo1; Serwo myservo2; int poz = 0; int PIN_ANALOG_IN = A0;

void setup(){ Serial.begin(9600);

// Wyświetl stan

Serial.println("Zainicjowany"); myservo1.attach(9); myservo2.attach(10); }

pusta pętla()

{ wartość int;

// Sprawdź wpisane koperty

wartość = odczyt analogowy(PIN_ANALOG_IN);

// Wartość koperty wpływa na serwo

Serial.println(wartość); if(wartość 5) && (wartość 10) && (wartość 20) && (wartość 30) && (wartość 60)) { myservo1.write(losowo(0, 90)); myservo2.write(losowe(0, 90)); }

opóźnienie(180);

}

Zalecana: