Obsah:

DIY snímač otřesů s reproduktorem: 5 kroků (s obrázky)
DIY snímač otřesů s reproduktorem: 5 kroků (s obrázky)

Video: DIY snímač otřesů s reproduktorem: 5 kroků (s obrázky)

Video: DIY snímač otřesů s reproduktorem: 5 kroků (s obrázky)
Video: 70mai A200 dual dashcam: recenze a návod na instalaci napevno! (nejúplnější video) 2024, Listopad
Anonim
DIY snímač otřesů s reproduktorem
DIY snímač otřesů s reproduktorem

Reproduktor funguje tak, že aktivuje elektromagnet, který je poblíž „běžného“magnetu. To vytváří vibrace, které vedou ke zvuku. Pokud tedy místo dodávání proudu do reproduktoru můžeme produkovat proud (i když velmi malý) pohybem reproduktoru samotného. Tento proud pak může být detekován a interpretován mikrokontrolérem, jako je Arduino.

Krok 1: Najděte reproduktor

Najděte reproduktor
Najděte reproduktor
Najděte reproduktor
Najděte reproduktor
Najděte reproduktor
Najděte reproduktor
Najděte reproduktor
Najděte reproduktor

Budete muset najít řečníka, kterého jste ochotni pro tento projekt obětovat. Můžete si koupit jeden na SparkFun pod dolar, ale pravděpodobně už máte někde. Použil jsem malý reproduktor ze starého páru sluchátek, ale ten najdete téměř kdekoli - třeba hudební přání nebo starý budík. Další:

  1. Ustřihněte propojovací drát na polovinu
  2. Odizolujte jeho konce
  3. Připájejte jej na reproduktor (pravděpodobně už tam byly nějaké vodiče - stačí je odříznout)

Alternativně můžete použít aligátorové klipy, pokud je máte.

Krok 2: Vybudujte obvod

Vybudujte obvod
Vybudujte obvod

Potřebné materiály:

  • Arduino UNO
  • Prkénko
  • Propojovací vodiče
  • LED (libovolná barva)
  • Dva 220 ohmové odpory (červeno-červeno-hnědé)
  • Reproduktor

Podle výše uvedeného schématu vše připojte k Arduinu.

Krok 3: Nahrajte tento kód

Nahrajte tento kód do Arduino IDE. Pravděpodobně jej budete muset kalibrovat, protože nepoužíváte stejný reproduktor jako já, takže v několika krocích vysvětlím, jak to udělat.

int shockMin = 996; // možná je budete muset změnit

int shockMax = 1010; // možná budete muset změnit tyto void setup () {pinMode (11, OUTPUT); // Serial.begin (9600); // odkomentujte to, aby to pomohlo s kalibrací} void loop () {int shock = analogRead (A0); int lighttval = mapa (shock, shockMin, shockMax, 0, 255); if (lighttval> 0) {analogWrite (11, lighttval); } else {analogWrite (11, 0); } // Serial.println (šok); // odkomentujte to, aby to pomohlo s kalibrací}

Krok 4: Jak jej používat

Stiskněte střed reproduktoru prstem a LED začne blikat. Pokud ne, budete jej muset v dalším kroku zkalibrovat. V opačném případě můžete zkusit reproduktor k něčemu připojit. Možná byste mohli vyrobit buben lepením na papírový talíř? - Zkuste použít jako paličky tužky.

Krok 5: Kalibrace

Pokud vaše LED již uspokojivě bliká, můžete tento krok přeskočit. V opačném případě postupujte takto:

  1. Odstraňte „//“v řádcích, které říkají „// odkomentujte to, aby to pomohlo s kalibrací“
  2. Nahrajte kód a otevřete sériový monitor
  3. Stiskněte střed reproduktoru a sledujte, jak se hodnoty mění
  4. Změňte proměnné shockMin a shockMax na nízké a vysoké hodnoty v sériovém monitoru

int shockMin = 996;

int shockMax = 1010;

Pokud například sériový monitor čte 700 jako netlačený stav senzoru (když tam jen sedí), a když na něj zatlačíte, dosáhne až 860, změňte shockMax na někde kolem 900 (jen kousek nad hodnotou snímače) a shockMin na přibližně 680. Další:

  1. Zavřete sériový monitor
  2. Nahrajte nový kód
  3. Stiskněte znovu střed reproduktoru

Pokud je vše v pořádku, LED by se měla rozsvítit pouze při stisknutí senzoru.

Doporučuje: