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

Happy Hack Light Switch: 3 Քայլ
Happy Hack Light Switch: 3 Քայլ

Video: Happy Hack Light Switch: 3 Քայլ

Video: Happy Hack Light Switch: 3 Քայլ
Video: Լավագույններից լավագույնը???. Ռադիոընդունիչ TECSUN PL680 FULL ակնարկ!!! #tecsun 2024, Նոյեմբեր
Anonim
Happy Hack Light Switch
Happy Hack Light Switch

Վերջին 2 շաբաթվա ընթացքում մենք աշխատել ենք դպրոցական նախագծի վրա, որը կոչվում է «Happy hacking»: Այս նախագծով մենք փորձեցինք «Happy hack» անել հանրային տարածքի համար: Դե, ինչ է «Happy hack» - ը: Մեր դեպքում մենք պետք է ինչ -որ դրական բան պատրաստեինք ՝ հիասթափության հիման վրա: Այս նախագծի համար պահանջվում էր Arduino- ի օգտագործումը: «Happy hack» - ը, որը մենք որոշեցինք անել, տեղադրում էր, որը հեռավոր կերպով շրջում էր լույսի անջատիչը:

Քայլ 1: Նյութեր

1x Arduino Uno

1x Breadboard

2x սերվո

1x ինֆրակարմիր տվիչ

11x մետաղալար

1x ինֆրակարմիր ուղարկող (հեռացնել հեռուստացույցը)

ժապավեն

Քայլ 2: Ինչպես միացնել

Տեղադրեք Arduino ինֆրակարմիր ընդունիչ սեղանի մեջ; ընդունելով, որ ստացողի առջևի կողմը այն ոլորտն է, որի վրա կա.

  • Առավել ձախ «ոտքից» մի մետաղալար միացրեք Arduino uno «6» պորտին:
  • Մի մետաղալար միացրեք միջին «ոտքից» դեպի տախտակի «-» շարքը:
  • Մի մետաղալար միացրեք ամենաարդյունք «ոտքից» դեպի «+» շարանը տախտակի վրա:

Համոզվեք, որ մետաղալարն ընկած է տախտակի «-» տողի և Arduino uno- ի «գետնին» նավահանգստի միջև և համոզվեք, որ մետաղալարն ընկած է տախտակի «+» տողի և Arduino uno- ի «5V» նավահանգստի միջև:

Այժմ միացրեք 2 սերվերը,

  • Երկուսն էլ ՝ սերվոյի ամենամութ մետաղալարից մինչև «-» շարանը ՝ տախտակի վրա:
  • Երկուսն էլ մետաղալարով ՝ սերվոյի միջին մետաղալարից մինչև «+» շարքը հացահատիկի վրա:

Այժմ, սերվերից մեկի համար մնացած սերվո լարերը միացրեք «9» Arduino uno նավահանգստին, իսկ մյուս սերվերը միացրեք «10» Arduino uno նավահանգստին:

Քայլ 3: Կոդ

#ներառում //

#ներառում //

#ներառում //

IRrecv irrecv (6);

decode_results results;

Servo theServo1;

Servo theServo2;

bool lightOn = կեղծ;

bool disco = կեղծ;

void setup () {

theServo1.attach (10);

theServo2.attach (9);

pinMode (6, Մուտք);

Serial.begin (9600);

irrecv.enableIRIn (); // Գործարկեք ընդունիչը

irrecv.blink13 (ճշմարիտ);

}

դատարկ շրջան () {

եթե (irrecv.decode (& արդյունքները)) {

Serial.println (results.value); // Յուրաքանչյուր կոճակի համար դուք ստանում եք այլ արդյունք: Այսպիսով, ստուգեք սերիական մոնիտորը, թե որն է ձեր կոճակների արժեքը:

if (results.value == 3772793023) {// Սա մեր հոսանքի կոճակի արդյունքն է (3772793023): Սա, ամենայն հավանականությամբ, տարբերվում է ձեր հեռակառավարման վահանակի հետ:

lightOn =! lightOn;

եթե (lightOn) {

theServo1. գրել (65);

theServo2.write (15);

}

եթե (! lightOn) {

theServo1. գրել (95);

theServo2.write (95);

}

ուշացում (1000);

}

if (results.value == 3772839943) {// Սա մեր տեղեկատվական կոճակի արդյունքն է (37728):

դիսկո =! դիսկոտեկ;

ուշացում (1000);

}

Serial.println (results.value);

irrecv.resume (); // Ստացեք հաջորդ արժեքը

}

եթե (դիսկոտեկ) {

lightOn =! lightOn;

եթե (lightOn) {

theServo1. գրել (65);

theServo2.write (15);

}

եթե (! lightOn) {

theServo1. գրել (95);

theServo2.write (90);

}

ուշացում (2000);

}

}

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