Përmbajtje:

Happy Hack Light Switch: 3 Hapa
Happy Hack Light Switch: 3 Hapa

Video: Happy Hack Light Switch: 3 Hapa

Video: Happy Hack Light Switch: 3 Hapa
Video: Electric Callboy - Hypa Hypa (OFFICIAL VIDEO) 2024, Nëntor
Anonim
Happy Hack Light Switch
Happy Hack Light Switch

Për 2 javët e fundit ne kemi punuar në një projekt shkollor të quajtur "Happy hacking". Me këtë projekt ne u përpoqëm të bënim një "Happy hack" për një hapësirë publike. Epo, çfarë është një "Happy hack"? Në rastin tonë ne kishim nevojë të bënim diçka pozitive bazuar në një zhgënjim. Përdorimi i Arduino ishte i nevojshëm për këtë projekt. "Hack i lumtur" që vendosëm të bënim ishte një instalim për të rrokullisur nga distanca ndërprerësin e dritës.

Hapi 1: Materialet:

1x Arduino Uno

1x Breadboard

2x servo

1x sensor infra të kuqe

Tel 11x

1x dërgues infra të kuqe (hiqni televizorin)

kasetë

Hapi 2: Si të lidheni:

Vendosni një marrës infra të kuqe Arduino në pjatën e bukës; duke supozuar se ana e përparme e marrësit është ana me sferën në të:

  • Lidhni një tel nga ‘këmba’ më e majtë me portën uno Arduino ‘6’.
  • Lidhni një tel nga 'këmba' e mesme në rreshtin '-' në tabelën e bukës.
  • Lidhni një tel nga ‘këmba’ më e djathtë në rreshtin ‘+’ në tabelën e bukës.

Sigurohuni që një tel të jetë midis rreshtit "-" në pjatën e bukës dhe një porti "të bluar" në Arduino uno dhe sigurohuni që një tel të jetë midis rreshtit "+" në pjatën e bukës dhe portës "5V" në Arduino uno.

Tani lidhni 2 servos,

  • Të dy me një tel nga tela më e errët në servo në rreshtin '-' në pjatën e bukës.
  • Të dy me një tel nga tela e mesme në servo në rreshtin "+" në pjatën e bukës.

Tani, për njërën nga servot lidhni servo -telin e mbetur me portën Arduino uno '9' dhe lidhni servo -n tjetër me portën uno Arduino '10'.

Hapi 3: Kodi:

#përfshi //

#përfshi //

#përfshi //

IRrecv irrecv (6);

rezultatet e deshifrimit_rezultateve;

Servo theServo1;

Servo theServo2;

bool lightOn = false;

bool disco = false;

void setup () {

theServo1.tach (10);

theServo2.tach (9);

pinMode (6, INPUT);

Serial.filloj (9600);

irrecv.enableIRIn (); // Nisni marrësin

irrecv.blink13 (e vërtetë);

}

lak void () {

nëse (irreq.decode (& rezultatet)) {

Serial.println (rezultatet.vlera); // Ju merrni një rezultat të ndryshëm për çdo buton. Pra, kontrolloni në monitorin serik sa është vlera e butonave tuaj.

nëse (results.value == 3772793023) {// Ky është rezultati ynë i butonit të energjisë (3772793023). Kjo ndoshta është e ndryshme me telekomandën tuaj.

lightOn =! lightOn;

nëse (drita në) {

theServo1.shkruaj (65);

theServo2.shkruaj (15);

}

nëse (! lightOn) {

theServo1.shkruaj (95);

theServo2.shkruaj (95);

}

vonesa (1000);

}

nëse (results.value == 3772839943) {// Ky është rezultati i butonit tonë të informacionit (37728).

disko =! disko;

vonesa (1000);

}

Serial.println (rezultatet.vlera);

irrecv.resume (); // Merr vlerën tjetër

}

nëse (disko) {

lightOn =! lightOn;

nëse (drita në) {

theServo1.shkruaj (65);

theServo2.shkruaj (15);

}

nëse (! lightOn) {

theServo1.shkruaj (95);

theServo2.shkruaj (90);

}

vonesa (2000);

}

}

Recommended: