Բովանդակություն:

Ձայնային զարկերակային անջատիչ `6 քայլ
Ձայնային զարկերակային անջատիչ `6 քայլ

Video: Ձայնային զարկերակային անջատիչ `6 քայլ

Video: Ձայնային զարկերակային անջատիչ `6 քայլ
Video: Unlocking Jumper Secrets: "A Critical Hardware Connector" IT Admins' Key to Hardware Mastery 2024, Հունիսի
Anonim
Image
Image

Երբևէ խնդիր է առաջացել, երբ պառկած եք, բայց հանկարծ հասկացաք, որ լույսերը դեռ վառված են: Այնուամենայնիվ, դուք այնքան հոգնած եք, որ չեք ցանկանում իջնել մահճակալով ՝ լույսերն անջատելու համար, ոչ էլ ութսուն դոլար եք ծախսում Philip Hue միջավայրի լուսավորություն գնելու համար, ինչը թույլ կտա ձեզ անջատել լույսերը ձեր հեռախոսի միջոցով: Եթե դուք օգտագործում եք անջատիչով ավանդական լույս, ինչու չփորձեք դիտել այս վեպը, բայց հեշտ Arduino նախագիծը `ձեր ծուլությունը լուծելու համար:

Այս նախագծի գաղափարն ինձ մոտ սկսվեց մոտ մեկ տարի առաջ, երբ ես տեղափոխվեցի իմ նոր տուն ՝ պարզելով, որ իմ լույսի անջատիչը ոչ մի տեղ չի գտնվում իմ մահճակալի մոտ, ինչը ստիպեց ինձ ամեն գիշեր թողնել մահճակալս, երբ մահճակալիս պառկած հոգնեցնում էի:, պարզապես ԼՈIGHՅՍԸ ՄԱՐԵԼՈ which համար (որն ամեն գիշեր նյարդայնացնում է ինձ): Այնուամենայնիվ, այս նախագիծն անելուց հետո ես մեծ օգուտներ քաղեցի ամբողջ ընթացքում և հույս ունեմ, որ այս գաղափարը կկիսեմ բոլոր Խրատական օգտվողների համար, ովքեր ներկայումս նույնպես տառապում են հեռավոր լույսի անջատիչի խնդրով:

Այս Ձայնային զարկերակի անջատիչի հիմնական գաղափարն այն է, որ KY-037 Sound Detector Sensor- ը մի շարք գործողություններ կատարի, այդ թվում `միացնել սերվո շարժիչը` բուն լույսի անջատիչին հարվածելու համար այն անջատելու համար: Այսպիսով, ինչպե՞ս է աշխատում KY-037 ձայնային դետեկտորի սենսորը. Հիմնականում, այն հայտնաբերում է միջավայրում ձայնի ինտենսիվությունը, այս դեպքում ՝ յուրաքանչյուր 20 միլիվայրկյանում (դա կարող է սահմանվել կոդավորման հատվածում, քայլ 5), և երբ իր տատանումների հետքի մեջ հայտնաբերում է անսովոր բարձր ձայնային ալիք, որն այնուհետև կսկսի հաշվարկը, մինչդեռ երբ այն հասնում է երկու հաշվարկի, այնուհետև կակտիվացնի սերվո շարժիչը ՝ էլ ավելի անջատելով լույսերը:

Քայլ 1: Պաշարներ

Պարագաներ
Պարագաներ
Պարագաներ
Պարագաներ

Այս Ձայնային զարկերակային անջատիչը ստեղծելու համար մեզ անհրաժեշտ են որոշակի պաշարներ, ինչպիսիք են ստորև.

Էլեկտրոնիկա:

  • Arduino Nano տախտակ
  • Breadboard
  • Jumper Wires (Իգականից իգական և իգականից արական և արականից տղամարդու համար)
  • KY-037 Ձայնային դետեկտորի սենսորային մոդուլ
  • Ալյումինե էլեկտրոլիտիկ կոնդենսատորներ 220uF 25V
  • Servo Motor
  • Մարտկոցի բանկ
  • Արտաքին սնուցման աղբյուր *(USB երկու գլխի Du-Pont Wire)
  • 9 Վ մարտկոց
  • 9 Վ մարտկոցի միակցիչ

Մոդելի պարագաների ձևավորում.

Ստվարաթուղթ (կամ փայտ, եթե լազերային կտրում եք)

Մյուսները

  • Արագ չորացման սոսինձ
  • Կոմունալ դանակ
  • Կտրող գորգ
  • Compass Cutter
  • Մատիտ և ռետին
  • Կպչուն կավ
  • Երկկողմանի ժապավեն
  • Կասետային
  • Oldոդման սարքավորումներ

Քայլ 2: Հավաքեք էլեկտրոնային բաղադրիչները

Հավաքեք էլեկտրոնային բաղադրիչները
Հավաքեք էլեկտրոնային բաղադրիչները
Հավաքեք էլեկտրոնային բաղադրիչները
Հավաքեք էլեկտրոնային բաղադրիչները
Հավաքեք էլեկտրոնային բաղադրիչները
Հավաքեք էլեկտրոնային բաղադրիչները

Մոդելը իրականում կառուցելուց առաջ մենք պետք է հավաքենք էլեկտրոնային բաղադրիչները, ինչը շատ պարզ է, և դա կարելի է անել մի քանի քայլով ՝ որպես այդպիսին.

  1. Vոդեք 9 Վ մարտկոցի միակցիչը Arduino Nano տախտակին: Սա կարող է մի փոքր դժվար լինել այն մարդկանց համար, ովքեր ծանոթ չեն զոդման տեխնիկային, բայց դա էական նշանակություն ունի այս նախագիծը իրականացնելու հաջողության հասնելու համար, քանի որ եթե տախտակը չի ապահովվում բավարար հզորությամբ, այն կարող է ճիշտ կամ լավ չգործել: Eringոդման համար կարմիր մետաղալարը միացրեք VIN կապին; և սև մետաղալարը դեպի GND քորոց, որը երկուսն էլ կանգնած են տախտակի աջ կողմում:
  2. Միացրեք jumper լարերը Arduino Nano տախտակին: Այս նախագծում մենք միայն կնպաստենք A0, D2, GND և 5V կապին:

    • Օգտագործելով գրատախտակը ՝ կապումներն իրար միացնելու համար, մենք պետք է միացնենք G քորոցը KY-037 Sound Detector Sensor Module- ից հացատախտակին; նույն սյունակի վրա (զգուշացեք դրանից, եթե ոչ նույն սյունակի վրա, ձեր վերջնական նախագիծը չի գործի), միացրեք սև հաղորդալարը servo շարժիչից, իսկ սև մետաղալարը ձեր արտաքին սնուցման աղբյուրից (դուք պետք է դա անեք GND կապում, բայց ոչ 5V պին, քանի որ արտաքին սնուցման աղբյուրը պետք է ընդհանուր հիմք ստեղծի ձեր Arduino- ն չայրելու դեպքում), այնուհետև մի արու և իգական ցատկողի մետաղալարեր միացրեք նույն սյունակին և համապատասխանաբար ձեր Nano- ին:
    • Հաջորդը, KY-037 Sound Detector Sensor Module- ից միացրեք «+» կապը նույն սյունակի անցքերից մեկին, այնուհետև վերցրեք արականից իգական սեռի մեկ այլ մետաղալար, որը միանում է տախտակի նույն սյունակին, իսկ մյուս կողմը ՝ Նանոյին: տախտակ:
    • Դրանից հետո, միացրեք servo շարժիչի կարմիր մետաղալարն այլ սյունակին, չնայած օգտագործվածներին, և տեղադրեք կարմիր մետաղալարը արտաքին էներգիայի աղբյուրից դեպի նույն սյունակը, մարտկոցի բանկը սնուցելու համար: Իրոք, միացրեք USB- ենթակետի գլուխը էներգաբանկին, որպեսզի այն սնուցի սերվո շարժիչը:
    • Բացի այդ, անցնելով երկու սյուներից, որտեղ գտնվում են GND- ն և 5V քորոցը, տեղադրեք տարողունակության երկու ոտքերը երկու սյուների վրա ՝ համեմատաբար կայուն միջավայր ստեղծելու KY-037 ձայնային դետեկտորի տվիչի համար:
    • Ի վերջո, միացրեք servo շարժիչի սպիտակ մետաղալարը Nano- ի D2 կապին: Եվ միացրեք A0- ին A0- ին KY-037 Sound Detector Sensor Module- ից համապատասխանաբար Arduino Nano տախտակին:

Եվ դուք ավարտել եք բոլոր էլեկտրոնիկաները:

Քայլ 3. Մոդելի ձևավորում

Մոդելի ձևավորում
Մոդելի ձևավորում

Այս նախագծի համար մոդելային շենքը չափազանց հեշտ է, քանի որ մեզ մնում է միայն վեց կողմ ունեցող տուփ ստեղծել: Այնուամենայնիվ, դիզայնը պետք է լիներ այնքան վստահ, որքան AutoCAD ֆայլը, որը ես տրամադրել եմ ներքևում:

Եթե իսկապես ցանկանում եք այս նախագիծը լավ և ճշգրիտ դարձնել, շարունակեք կարդալ ՝ այս նախագծի նախագծման գաղափարը բացահայտելու համար:

Այս ձայնային զարկերակային անջատիչը պարունակում է տուփ, որն ունի վեց կողմ: կողմերի անցքերը յուրաքանչյուրը ներկայացնում էր տարածություն էլեկտրոնային բաղադրիչների տեղադրման համար `սարքը գործարկելու համար:

  1. Վերևի մասում կա 3 * լայնություն 2 երկարության անցք ՝ սերվո շարժիչը տեղադրելու համար, դրան թույլ տալով աշխատել և սեղմել կոճակը;
  2. Հաջորդը ՝ հակառակ ներքևի մասում, մենք նշում ենք, որ սա պարզապես ուղղանկյուն հիմք է, որը չի պարունակում անցքեր, որպեսզի ամեն ինչ գեղեցիկ պահի և հաստատի. ապա աջ կողմի համար մեզ անհրաժեշտ է անցք, որպեսզի արտաքին սնուցման լարը դուրս գա սնուցման բանկին միանալու համար, որպեսզի սնուցի սնուցման բանկը.
  3. Հետո, ձախ կողմի համար այն նույնական է, ինչ աջ ձախը, բայց առանց անցքի;
  4. Ի վերջո, առջևի մասում մեզ իրականում ավելի շատ անցքեր են պետք, մեկը `9 Վ մարտկոցի միակցիչը տուփից դուրս լինելու համար, որպեսզի հոսանքազրկվելուց հետո մարտկոցը հեշտությամբ փոխենք: մարտկոցի հզորությամբ, մյուսը `KY-037- ի խոսափողի համար, ապահովելու համար, որ սարքը կարող է հայտնաբերել շրջակա միջավայրի ձայնի փոփոխությունը.
  5. Բացի այդ, ներքևի մասում անցքեր չկան, պարզապես ամեն ինչ գեղեցիկ պահելու և հաստատելու համար

Քայլ 4: Մոդելի կառուցում

Մոդելի կառուցում
Մոդելի կառուցում
Մոդելի կառուցում
Մոդելի կառուցում
Մոդելի կառուցում
Մոդելի կառուցում

Մեր ծրագիրը մանրակրկիտ կազմելուց հետո մենք այժմ ստիպված կլինենք անցնել մոդելի իրական կառուցման գործընթացին: Այնուամենայնիվ, այս գործընթացը չափազանց հեշտ կլինի նախորդ քայլի համեմատ, քանի որ պարզապես արեք սա.

  1. Ստվարաթղթով կտրեք AutoCAD ֆայլում ներկայացված սանդղակի վեց կողմերը կամ օգտագործեք լազերային կտրվածք
  2. Վերցրեք կպչուն սոսինձը և կպցրեք կտորների կողքերին, որպեսզի դրանք միասին հավաքվեն, բայց միևնույն է, թողեք հետույքը, որ մենք դեռ կարող ենք դասավորել դրա բաղադրամասերը
  3. Ձեր 9 Վ մարտկոցի միակցիչը խրված է այն անցքի մեջ, որը մենք կտրել ենք մոդելի առջևի մասում
  4. Ձեր KY-037 Sound Detector Sensor Module- ը կպցրեք մեր կտրած փոսին, բայց հիշեք, որ մի փոքր ավելի լայն կտրեք, իմ տրամադրած տրամագիծը մոտավոր արժեք է «իմ» բաղադրիչի համար, որը կարող է տարբեր լինել տարբեր մասերում, նաև ուղղանկյուն հատվածը: կարող է հարվածել կողքին ՝ պատճառ ունենալով, որ այն բավականաչափ լավ չկպչի, նկատի ունեցեք
  5. Պոկեք կպչուկը ձեր տախտակի հետևում և կպցրեք այն ձեր մոդելի առջևի կտորի հետևում
  6. Տեղադրեք ձեր servo շարժիչը լավ անցքի մեջ, որը մենք կտրել էինք մոդելի վերևում

    • Փորձեք կպչուն կավի մի մասը տեղադրել սերվո շարժիչի հետևում ՝ կողքի կողքին ՝ այն ամրացնելու համար
    • Բացի այդ, հիշեք, որ երկկողմանի ժապավենը տեղադրեք, որպեսզի այն ավելի ամուր լինի
  7. Քաշեք ձեր արտաքին USB մալուխը այն անցքից, որը մենք կտրել էինք կառուցվածքի աջ կողմում և միացրեք այն սնուցման բանկին
  8. Կպցրեք ձեր հետույքը մոդելի վրա, բայց եթե դուք վստահ չեք ձեր աշխատանքի վրա և գուցե դեռ կարիք ունեք ձեր սարքը դասավորելու կամ վերանորոգելու համար, ապա այն առաջինը կպցնելու համար օգտագործեք շոտլանդական ժապավեններից մի քանիսը, որպեսզի հեշտությամբ պոկեք այն:

Քայլ 5: Կոդավորում

Կոդավորում
Կոդավորում
Կոդավորում
Կոդավորում

Եվ ոչ մի տեղ չկա այս նախագծի ամենազվարճալի, բայց ամենաէական մասը, առանց կոդավորման, ձեր սարքը երբեք չի աշխատի: Այսպիսով, այստեղ, ես գրել եմ միայն այս նախագծի ծածկագիրը և բացատրել, թե ինչ է նշանակում յուրաքանչյուր տող կոդի մեկնաբանության բաժնում, որ, այնուամենայնիվ, եթե որևէ մեկը դեռ որևէ խնդիր ունի, ազատ զգալ մեկնաբանության տակ, որ ես երջանիկ կլինեմ անմիջապես պատասխանել (հավատում եմ):

Այս ծածկագրում ես ընտրեցի թույլ տալ, որ սերվո շարժիչը շրջվի իննսուն և հարյուր ութ աստիճանի, սակայն դա կարող է դասավորվել ՝ բոլորի կողմից տանը ստացված տարբեր անջատիչների շնորհիվ, և ես կարծում եմ, որ այն փոխելու համար անվճար է:. Իմ ծածկագրին նայելիս հաշվի առեք, որ այս սարքը ձայնի մեթոդով լույսը «ինքնաբերաբար» անջատելու համար է, որ խնդրում ենք չշփոթվել, և եթե շփոթված եք, ազատորեն անդրադառնաք տեսանյութին ՝ հենց սկզբից: Այժմ կարող եք տեսնել ծածկագիրը ներքևում կամ այս Arduino Ստեղծել կայքի հղումով:

Arduino Ստեղծեք հղում

Բացի այդ, եթե բավականաչափ մարդիկ հարցնեին օրենսգրքի որևէ հստակեցման մասին, ես գուցե դրա մասին մտածեի LOL…

Arduino-Sound-Pulsing-Switch

#ներառել // ներառել սերվորի շարժիչի գրադարանը
int MIC = A0; // A0 ոտքին միացված ձայնի հայտնաբերման բաղադրիչ
բուլյան անջատիչ = կեղծ; // անջատիչի սկզբնական տարբերակի գրանցում
int micVal; // գրանցել հայտնաբերված ծավալը
Servo servo; // սահմանել Servo շարժիչի անունը որպես servo
անստորագիր երկար հոսանք = 0; // գրանցել ընթացիկ ժամանակի կնիքը
անստորագիր երկար վերջին = 0; // գրանցել վերջին անգամ կնիքը
անստորագիր երկար դիֆ = 0; // գրանցել ժամանակի տարբերությունը երկու ժամանակային դրոշմանիշերի միջև
անստորագիր int հաշվարկ = 0; // գրանցել միացումների քանակը
void setup () {// գործարկել մեկ անգամ
servo.attach (2); // նախաստորագրեք servo- ն D-pin ոտքին 2-ին միանալու համար
Serial.begin (9600); // սկզբնավորել սերիալը
servo.write (180); // ստիպեք սերվոյին շրջվել դեպի իր սկզբնական անկյունը
}
void loop () {// loop ընդմիշտ
micVal = analogRead (MIC); // կարդալ անալոգային ելքը
Serial.println (micVal); // տպել շրջակա միջավայրի ձայնի արժեքը
ուշացում (20); // յուրաքանչյուր քսան վայրկյան
if (micVal> 180) {// եթե գերազանցում է այն սահմանը, որը ես այստեղ 180 էի սահմանել
ընթացիկ = millis (); // գրանցել ընթացիկ ժամանակի կնիքը
++ հաշվարկ; // ավելացնել մեկը հաշված փոփոխություններին
//Serial.print("count= "); // արտածեք փոփոխված ժամանակները, բացեք այն, եթե ցանկանում եք
//Serial.println (հաշվիչ); // տպեք համարը, բացեք այն, եթե ցանկանում եք
եթե (հաշվել> = 2) {// եթե փոխարկված թիվն արդեն երկուից ավելի կամ հավասար է, որոշեք ՝ արդյոք երկու ժամանակային դրոշմակնիքները տևե՞լ են 0.3 ~ 1.5 վայրկյանի միջև
diff = ընթացիկ - վերջին; // հաշվարկել ժամանակի տարբերությունը երկու ժամանակային դրոշմանիշերի միջեւ
if (diff> 300 && diff <1500) {// որոշեք, թե արդյոք երկու ժամանակային դրոշմանիշերը տևե՞լ են 0.3 ~ 1.5 վայրկյանի միջև
միացնել =! միացնել; // վերադարձնել անջատիչի ընթացիկ վիճակը
հաշվել = 0; // հաշվարկը դարձնել զրոյական, պատրաստվեք նորից փորձարկելուն
} else {// եթե ժամանակը չի տևում սահմանափակ թվերի միջև, ապա հաշիվը վերադարձրեք մեկի
հաշվել = 1; // հաշվել հաշիվը
}
}
վերջին = ընթացիկ; // օգտագործեք ընթացիկ ժամանակային կնիքը `հաջորդ համեմատության համար վերջին ժամանակի կնիքը թարմացնելու համար
եթե (միացնել) {// որոշեք, թե արդյոք անջատիչը միացված է
servo.write (90); // servo լույսը բացելու համար կդառնա 90 աստիճան
ուշացում (3000); // հետաձգել 5 վայրկյան
servo.write (180); // servo- ն կվերադառնա իր սկզբնական տեղը
ուշացում (1000); // հետաձգել ևս 5 վայրկյան
հաշվել = 0; // վերահաշվարկի համար հաշվարկը դնել սկզբնական թվին
}
ուրիշ {
servo.write (180); // եթե անջատիչը չի աշխատում, ապա պարզապես մնացեք սկզբնական 180 աստիճանի վրա
}
}
}

դիտել rawArduino-Sound-Pulsing-Switch հյուրընկալված ❤ -ի կողմից GitHub- ի կողմից

Քայլ 6: Ավարտում

Image
Image
Ավարտում
Ավարտում

Այժմ դուք ավարտել եք նախագիծը, որը այժմ կարող եք խաղալ Sound Pulsing անջատիչով ՝ ձեր լույսն անջատելու համար, ինչը ցույց է տալիս, որ ձեր ծուլությունը այլևս խնդիր չի լինի: Եվ հիշեք, եթե դուք արել եք այս նախագիծը, կիսվեք այն առցանց ինձ և աշխարհին ՝ դա ցույց տալու համար ծրագրի հրաշալիքը:

Եղեք հետաքրքրասեր և շարունակեք ուսումնասիրել: Հաջողություն!

Խորհուրդ ենք տալիս: