Tartalomjegyzék:

Hangimpulzus kapcsoló: 6 lépés
Hangimpulzus kapcsoló: 6 lépés

Videó: Hangimpulzus kapcsoló: 6 lépés

Videó: Hangimpulzus kapcsoló: 6 lépés
Videó: Командные Блоки - Анимация против Майнкрафта Короткие Эпизоды 6 2024, November
Anonim
Image
Image

Volt valaha probléma, amikor ágyban alszik, de hirtelen rájön, hogy a lámpák még mindig égnek. Ön azonban annyira fáradt, hogy nem akar lemenni az ágyra, hogy lekapcsolja a villanyt, és nem akar nyolcvan dollárt költeni egy Philip Hue környezeti lámpa megvásárlására, amely lehetővé teszi, hogy a telefon segítségével lekapcsolja a villanyt. Ha hagyományos kapcsolóval ellátott lámpát használ, nézze meg ezt az újszerű, mégis egyszerű Arduino -projektet lustaságának megoldására!

Ennek a projektnek az ötlete körülbelül egy éve kezdődött, amikor új otthonomba költöztem, amikor megtudtam, hogy a villanykapcsolóm nincs az ágyam közelében, és kénytelen vagyok minden este elhagyni az ágyamat, amikor fáradtan fektetem az ágyamat., csak a LÁMPA KIKAPCSOLÁSÁHOZ (ami engem minden este irritál)! Ennek a projektnek az elvégzése után azonban mindvégig hatalmas előnyöket kaptam, és remélem, hogy megoszthatom ezt az ötletet minden INSTRUCTABLE felhasználóval, akik jelenleg szintén szenvednek a távolsági fény kapcsoló problémájától.

Ennek a hangimpulzus kapcsolónak az alapötlete az, hogy a KY-037 hangérzékelő érzékelőt bizonyos műveletek elvégzésére indítsa el, beleértve a szervomotor bekapcsolását a tényleges fénykapcsoló leütése érdekében annak kikapcsolása érdekében. Tehát hogyan működik pontosan a KY-037 hangérzékelő érzékelő: alapvetően a hang intenzitását érzékeli a környezetben, ebben az esetben 20 ezredmásodpercenként (ezt a kódolási szakasz 5. lépésében lehet beállítani), és mikor szokatlanul hangos hanghullámot fedez fel az oszcilloszkóp -nyomkövetésben, majd elindítja a számlálást, míg amikor eléri a két számot, akkor aktiválja a szervomotort, tovább lekapcsolva a lámpákat.

1. lépés: Kellékek

Kellékek
Kellékek
Kellékek
Kellékek

A hangimpulzus kapcsoló létrehozásához bizonyos kellékekre van szükségünk, például az alábbiakban:

Elektronika:

  • Arduino Nano tábla
  • Kenyeretábla
  • Jumper vezetékek (női -nő és nő -férfi -férfi -férfi -férfi)
  • KY-037 Hangérzékelő érzékelő modul
  • Alumínium elektrolit kondenzátorok 220uF 25V
  • Szervómotor
  • Akkumulátor bank
  • Külső tápegység *(USB kétfejű Du-Pont vezetékhez)
  • 9V -os akkumulátor
  • 9V -os elemcsatlakozó

Díszítő modell kellékek:

Karton (vagy fa, ha lézervágást végez)

Mások

  • Gyorsan száradó tapadó ragasztó
  • Svájci bicska
  • Vágószőnyeg
  • Iránytűvágó
  • Ceruza és radír
  • Ragadós agyag
  • Kétoldalú ragasztó
  • Szalag
  • Forrasztóberendezés

2. lépés: Szerelje össze az elektronikus alkatrészeket

Szerelje össze az elektronikus alkatrészeket
Szerelje össze az elektronikus alkatrészeket
Szerelje össze az elektronikus alkatrészeket
Szerelje össze az elektronikus alkatrészeket
Szerelje össze az elektronikus alkatrészeket
Szerelje össze az elektronikus alkatrészeket

A modell tényleges felépítése előtt össze kell szerelnünk az elektronikus alkatrészeket, ami nagyon egyszerű, és néhány lépésben elvégezhető:

  1. Forrasztja a 9V -os elemcsatlakozót az Arduino Nano kártyára. Ez kissé nehéz lehet azok számára, akik nem ismerik a forrasztási technikákat, de ez elengedhetetlen a projekt megvalósításához, mert ha a tábla nem kap elegendő energiát, előfordulhat, hogy nem működik megfelelően vagy jól. Forrasztáshoz csatlakoztassa a piros vezetéket a VIN csaphoz; és a fekete vezetéket a GND csaphoz, amely mindkettő a tábla jobb oldalán áll.
  2. Csatlakoztassa az áthidaló vezetékeket az Arduino Nano kártyához. Ebben a projektben csak az A0, D2, a GND és az 5V -os tüskékhez járulunk hozzá.

    • A kenyértábla segítségével a csapokat össze kell kötni, a KY-037 hangérzékelő érzékelőmodul G-csapját a kenyérlaphoz kell csatlakoztatni; ugyanabban az oszlopban (vigyázzon erre, ha nem ugyanazon az oszlopon, a végső projekt nem működne), csatlakoztassa a fekete vezetéket a szervomotorból és a fekete vezetéket a külső tápegységből (ezt meg kell tennie az GND tű, de nem az 5 V -os tüske, mert a külső tápegységnek közös alapokra kell jutnia abban az esetben, ha nem égeti meg az Arduino -t), majd csatlakoztasson egy másik férfi -női áthidaló vezetéket ugyanarra az oszlopra, illetve a Nano -ra.
    • Ezután csatlakoztassa a „+” csapot a KY-037 hangérzékelő modulból ugyanazon oszlop egyik lyukához, majd vigyen egy másik férfi-női áthidaló vezetéket, amely a kenyérlap ugyanazon oszlopához csatlakozik, a másik oldal pedig a Nano-hoz. tábla.
    • Ezután csatlakoztassa a szervo motor piros vezetékét egy másik oszlophoz a használt oszlopok ellenére, és helyezze a piros vezetéket a külső tápegységből ugyanabba az oszlopba is, hogy táplálja az akkumulátort. Valójában csatlakoztassa az USB-subfejet a tápegységhez, hogy a szervomotor tápellátását biztosítsa.
    • Továbbá, ha átlépi a két oszlopot, ahol a GND és az 5 V-os csap áll, helyezze a kapacitás két lábát mindkét oszlopra, hogy viszonylag stabil környezetet teremtsen a KY-037 hangérzékelő érzékelő számára.
    • Végül csatlakoztassa a szervómotor fehér vezetékét a Nano D2 -es csatlakozójához. És csatlakoztassa az A0-t az A0-hoz a KY-037 hangérzékelő modulból az Arduino Nano kártyához.

És kész az összes elektronikával!

3. lépés: A modell tervezése

A modell tervezése
A modell tervezése

Ehhez a projekthez a modell elkészítése rendkívül egyszerű, mivel csak hat oldallal rendelkező dobozt kell létrehoznunk. A tervezésnek azonban olyan biztosnak kellett lennie, mint az alatta megadott AutoCAD fájlnak.

Ha valóban jól és precízen szeretné megvalósítani ezt a projektet, folytassa az olvasást, hogy felfedezze a projekt tervezési ötletét.

Ez a hangimpulzus kapcsoló tartalmaz egy dobozt, amelynek hat oldala van, az oldalakon lévő lyukak pedig egy helyet jelentenek az elektronikus alkatrészek elhelyezéséhez, hogy a készülék működjön.

  1. A tetején 3 * 2 szélességű lyuk található a szervomotor elhelyezéséhez, amely helyet biztosít a működéshez és a gomb megnyomásához;
  2. Következő, mint az ellentétes alsó rész, megjegyezzük, hogy ez csak egy téglalap alap, amely nem tartalmaz lyukakat ahhoz, hogy mindent benne tartson, és megerősítse; akkor a jobb oldalon egy lyukra van szükség a külső tápegység vezetékéhez, hogy csatlakozzon a tápegységhez, hogy tápellátást biztosítson;
  3. Ezt követően a bal oldal esetében ugyanúgy néz ki, mint a jobb oldali, de nincs lyuk;
  4. Végezetül, az elülső részhez valójában több lyukra van szükségünk, egy a 9 V -os elemcsatlakozónak a dobozból való kivezetéséhez, hogy könnyen le tudjuk cserélni az akkumulátort, amikor lemerülünk, és kikapcsoljuk a kapcsolót, hogy elkerüljük a hulladékot akkumulátor, a másik a KY-037 mikrofonjához való, annak biztosítása érdekében, hogy az eszköz érzékelje a hang megváltozását a környezetben;
  5. Szintén alulként a hátlap nem tartalmaz lyukakat, csak hogy mindent szépen és erősen tartson

4. lépés: A modell felépítése

A modell építése
A modell építése
A modell építése
A modell építése
A modell építése
A modell építése

Miután alaposan megterveztük a tervünket, most tovább kell lépnünk a modell tényleges felépítésének folyamatához. Ez a folyamat azonban rendkívül egyszerű lesz az előző lépéshez képest, csak tegye ezt:

  1. Vágja ki a kartonpapírral az AutoCAD fájlban megadott skála hat oldalát, vagy használjon lézervágást
  2. Vegye ki a ragadós ragasztót, és illessze be a darabok oldalára, hogy összeszerelje őket, de továbbra is hagyja a hátoldalát, hogy még mindig elrendezhessük az alkatrészeket
  3. Dugja be a 9 V -os elemcsatlakozót a lyukba, amelyet kivágtunk a modell elülső oldalán
  4. Ragassza a KY-037 hangérzékelő modulját az általunk kivágott lyukba, de ne felejtse el kicsit szélesebbre vágni, az általam megadott átmérő hozzávetőleges érték az "én" alkatrészhez, amely eltérő lehet, és a téglalap alakú részhez is Ne feledje, hogy oldalba ütközhet, ami miatt nem lesz elég jól behúzva
  5. Tépje le a matricát a kenyeretábla mögött, és ragassza a modell elülső darabja mögé
  6. Helyezze a szervomotorját jól a lyukba, amelyet kivágtunk a modell tetején

    • Próbálja a ragacsos agyag egy részét a szervomotor mögé helyezni az oldalához, hogy megerősítse azt
    • Emellett ne felejtse el felhelyezni a kétoldalas szalagot, hogy erősebb legyen
  7. Húzza ki a külső USB-kábelt a szerkezet jobb oldalán levágott lyukból, és csatlakoztassa a tápegységhez
  8. Ragassza fel a hátlapot a modellre, de ha nem biztos a dolgában, és esetleg mégis el kell intéznie vagy meg kell javítania a készüléket, először használjon néhány skót szalagot, hogy felragaszthassa, hogy könnyen letépje.

5. lépés: Kódolás

Kódolás
Kódolás
Kódolás
Kódolás

És sehol a szórakoztató, de a legfontosabb része ennek a projektnek, kódolás nélkül az eszköz soha nem működne, nem is akármilyen jól építette fel a modelljét vagy az áramkör készítésének pontosságát, kódolás nélkül, ez semmi. Szóval, itt lent írtam egy kódot csak ehhez a projekthez, és elmagyaráztam, mit jelent minden sor a kód megjegyzés szakaszában, de ha bárkinek még mindig problémái vannak, nyugodtan hagyjon megjegyzést alatta, hogy örülnék hogy azonnal válaszoljak (azt hiszem).

Ebben a kódban úgy döntöttem, hogy hagyom, hogy a szervomotor kilencven fokkal és száznyolc fokkal forogjon, de ezt el lehet intézni a különböző kapcsoló miatt, amelyet mindenki otthon kapott, és úgy gondolom, hogy ez mindenki számára ingyenes. Miközben a kódomat nézegetik, ne feledje, hogy ez az eszköz "automatikus" módon kapcsolja le a fényt a hang módszerével, ne tévesszen meg, és ha zavarban van, nézze vissza a videót a a legelejét. Most láthatja a kódot lent vagy ezen az Arduino Webhely létrehozása linken keresztül.

Arduino Link létrehozása

Ezenkívül, ha elég sokan kérdeznének a kód pontosításáról, akkor elgondolkodhatnék rajta LOL…

Arduino-Sound-Pulsing-Switch

#include // tartalmazza a szervomotor könyvtárát
int MIC = A0; // hangérzékelő komponens az A0 lábhoz csatlakoztatva
boolean toggle = hamis; // a váltó kezdeti verziójának rögzítése
int micVal; // rögzítse az észlelt kötetet
Szervo szervó; // állítsa be a szervomotor nevét szervónak
előjel nélküli hosszú áram = 0; // rögzítse az aktuális időbélyeget
unsigned long last = 0; // rögzítse az utolsó időbélyeget
előjel nélküli hosszú diff = 0; // rögzítse a két időbélyeg közötti időkülönbséget
unsigned int count = 0; // rögzítse a váltások számát
void setup () {// fuss egyszer
servo.attach (2); // inicializálja a szervót, hogy csatlakozzon a D-tűs lábhoz 2
Sorozat.kezdet (9600); // inicializálja a sorozatot
servo.write (180); // fordítsa a szervót a kezdeti szögére
}
void loop () {// hurok örökké
micVal = analóg olvasat (MIC); // az analóg kimenet olvasása
Soros.println (micVal); // a környezeti hang értékének kinyomtatása
késleltetés (20); // húsz másodpercenként
if (micVal> 180) {// ha meghaladja a korlátot, amelyet itt 180 -ra állítottam
áram = millis (); // rögzítse az aktuális időbélyeget
++ számolás; // adjon hozzá egyet a számlált kapcsolókhoz
//Serial.print("count= "); // adja ki a váltott időket, nyissa meg, ha úgy érzi
//Serial.println(count); // nyomtassa ki a számot, nyissa meg, ha úgy érzi
if (count> = 2) {// ha a váltott szám már több vagy egyenlő, mint kettő, határozza meg, hogy a két időbélyeg 0,3–1,5 másodperc között tartott -e
diff = jelenlegi - utolsó; // a két időbélyeg közötti időkülönbség kiszámítása
if (diff> 300 && diff <1500) {// határozza meg, hogy a két időbélyeg 0,3–1,5 másodperc között tartott -e
toggle =! toggle; // a váltó aktuális állapotának visszaállítása
szám = 0; // nullázza a számot, készüljön fel a tesztelésre
} else {// ha az idő nem tart a korlátozott számlálások között, akkor állítsa vissza a számlálást egyre
szám = 1; // ne számold a számot
}
}
utolsó = aktuális; // használja az aktuális időbélyeget az utolsó időbélyeg frissítéséhez a következő összehasonlításhoz
if (toggle) {// határozza meg, hogy a kapcsoló be van -e kapcsolva
servo.write (90); // a szervó 90 fokra fordul a fény kinyitásához
késleltetés (3000); // késleltetés 5 másodperc
servo.write (180); // a szervo vissza fog térni az eredeti helyére
késleltetés (1000); // késleltessen további 5 másodpercet
szám = 0; // állítsa a számot a kezdeti számra az újraszámláláshoz
}
más {
servo.write (180); // ha a váltó nem működik, akkor maradjon a kezdeti 180 foknál
}
}
}

view rawArduino-Sound-Pulsing-Switch, amelyet a GitHub ❤ üzemeltet

6. lépés: Befejezés

Image
Image
Befejezés
Befejezés

Most befejezte a projektet, amelyet most játszhat a hangimpulzus kapcsolóval, hogy kikapcsolja a fényt, jelezve, hogy lustasága soha többé nem lesz probléma! És ne feledje, ha elkészítette ezt a projektet, ossza meg online velem és a világgal, hogy megmutassa a projekt csodálatos voltát!

Legyen kíváncsi, és folytassa a felfedezést! Sok szerencsét!

Ajánlott: