Cuprins:

Braț de desen controlat de sunet - Proiectul școlii Arduino: 4 pași (cu imagini)
Braț de desen controlat de sunet - Proiectul școlii Arduino: 4 pași (cu imagini)

Video: Braț de desen controlat de sunet - Proiectul școlii Arduino: 4 pași (cu imagini)

Video: Braț de desen controlat de sunet - Proiectul școlii Arduino: 4 pași (cu imagini)
Video: Ce înseamna semnul tau din nastere 2024, Noiembrie
Anonim
Braț de desen controlat de sunet - Arduino School Project
Braț de desen controlat de sunet - Arduino School Project

Este pentru prima dată când lucrez cu Arduino și lucrez cu așa ceva, așa că îmi pare rău dacă am greșit! Am avut această idee când m-am gândit la hobby-urile mele, care sunt desenul și muzica. Așa că am încercat să-i combin pe cei doi în asta! Un braț auto-desenat care este afectat de sunet.

Pasul 1: Pasul 1: Materiale

- Arduino Uno

- Pană de pâine

- Detector de sunet (Sparkfun sen-12642)

- 2 (mini) Servo's

- Cravate / cravate cu fermoar

- Niște lemn și hârtie

- ceva cu care poți desena / scrie

Pasul 2: Pasul 2: Configurare

Pasul 2: Configurare
Pasul 2: Configurare

Am conectat mai întâi Servo-ul și apoi detectorul de sunet. Detectorul de sunet Sparkfun sen-12642 are 3 ieșiri, eu am folosit doar ieșirea „plic”.

Servo 1 = pin ~ 9

Servo 2 = pin ~ 10

Detector de sunet = pinul A0

Liniile roșii (5v) sunt conectate la partea pozitivă a panoului, iar liniile negre (la sol) sunt conectate la partea negativă.

Pasul 3: Pasul 3: non-electronice

Pasul 3: non-electronic
Pasul 3: non-electronic
Pasul 3: non-electronic
Pasul 3: non-electronic
Pasul 3: non-electronic
Pasul 3: non-electronic

Asigurați-vă că servo-ul este stabil și la locul potrivit. Am folosit cravate pentru a le stabiliza. După aceea am folosit cravate pentru a lega părțile superioare (înlocuibile) ale servo-ului de brațele de lemn. După aceea, puteți conecta părțile de braț din lemn la servo. Conectați toate firele la Arduino și panoul de măsurare.

După aceea am lipit firele la detectorul de sunet.

Pasul 4: Pasul 4: Cod

Nu sunt deloc aproape de a fi bun la codificare, dar am încercat din răsputeri și internetul a ajutat foarte mult:)

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

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

// Afișează starea

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

bucla nulă ()

{valoare int;

// Verificați intrarea plicului

valoare = analogRead (PIN_ANALOG_IN);

// Valoarea plicului afectează servo-ul

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

întârziere (180);

}

Recomandat: