Spisu treści:

Przełącznik światła Happy Hack: 3 kroki
Przełącznik światła Happy Hack: 3 kroki

Wideo: Przełącznik światła Happy Hack: 3 kroki

Wideo: Przełącznik światła Happy Hack: 3 kroki
Wideo: Zmiana firmware - włącznik dopuszkowy Tuya - moduł WB3S, wgrywanie OpenBeken 2024, Listopad
Anonim
Szczęśliwy przełącznik światła Hack
Szczęśliwy przełącznik światła Hack

Przez ostatnie 2 tygodnie pracowaliśmy nad szkolnym projektem „Happy hacking”. W tym projekcie staraliśmy się zrobić „Happy hack” dla przestrzeni publicznej. Co to jest „Happy hack”? W naszym przypadku musieliśmy zrobić coś pozytywnego w oparciu o frustrację. Ten projekt wymagał użycia Arduino. „Happy hack”, który postanowiliśmy wykonać, to instalacja do zdalnego przełączania włącznika światła.

Krok 1: Materiały:

1x Arduino Uno

1x deska do krojenia chleba

2x serwo

1x czujnik podczerwieni

11x drut

1x nadajnik podczerwieni (usuwanie telewizora)

taśma

Krok 2: Jak się połączyć:

Umieść odbiornik podczerwieni Arduino w płytce stykowej; zakładając, że przednia strona odbiornika jest tą, na której znajduje się kula:

  • Podłącz jeden przewód od najbardziej lewej „nogi” do portu Arduino uno „6”.
  • Podłącz jeden przewód od środkowej „nogi” do rzędu „-” na płytce stykowej.
  • Podłącz jeden przewód od najbardziej prawej „nogi” do rzędu „+” na płytce stykowej.

Upewnij się, że przewód znajduje się między wierszem „-” w płytce prototypowej a portem „masy” w Arduino uno i upewnij się, że przewód znajduje się między wierszem „+” na płytce prototypowej a portem „5 V” w Arduino uno.

Teraz podłącz 2 serwa,

  • Oba z drutem od najciemniejszego drutu na serwo do rzędu „-” na płytce stykowej.
  • Oba z drutem od środkowego drutu na serwo do rzędu „+” na płytce stykowej.

Teraz, dla jednego z serw, podłącz pozostały przewód serwa do portu Arduino uno „9”, a drugi serwo do portu Arduino uno „10”.

Krok 3: Kod:

#włączać //

#włączać //

#włączać //

IRrecv recv(6);

decode_results wyniki;

SerwoServo1;

SerwoServo2;

bool lightOn = false;

bool disco = fałsz;

pusta konfiguracja (){

załącznikServo1(10);

theServo2.attach(9);

pinMode(6, WEJŚCIE);

Serial.początek(9600);

nieodwoł.enableIRIn(); // Uruchom odbiornik

nieodw.blink13(prawda);

}

pusta pętla () {

if (irrecv.decode(&wyniki)) {

Serial.println(wyniki.wartość); // Otrzymasz inny wynik dla każdego przycisku. Sprawdź więc w monitorze szeregowym, jaka jest wartość twoich przycisków.

if (results.value == 3772793023){ // To jest nasz wynik przycisku zasilania (3772793023). Prawdopodobnie jest inaczej z twoim pilotem.

światłoWłączone = !ŚwiatłoWłączone;

jeśli (światło włączone){

theServo1.write(65);

theServo2.write(15);

}

jeśli(!ŚwiatłoWłączone){

theServo1.write(95);

theServo2.write(95);

}

opóźnienie (1000);

}

if (results.value == 3772839943){ // To jest wynik naszego przycisku informacyjnego (37728).

dyskoteka = ! dyskoteka;

opóźnienie (1000);

}

Serial.println(wyniki.wartość);

nieodzysk.wznowienie(); // Odbierz następną wartość

}

jeśli (dyskoteka){

światłoWłączone = !ŚwiatłoWłączone;

jeśli (światło włączone){

theServo1.write(65);

theServo2.write(15);

}

jeśli(!ŚwiatłoWłączone){

theServo1.write(95);

theServo2.write(90);

}

opóźnienie (2000);

}

}

Zalecana: