Სარჩევი:

Happy Hack Light Switch: 3 ნაბიჯი
Happy Hack Light Switch: 3 ნაბიჯი

ვიდეო: Happy Hack Light Switch: 3 ნაბიჯი

ვიდეო: Happy Hack Light Switch: 3 ნაბიჯი
ვიდეო: ჯენიფერ გეიზი - "უკიდურესი სიმაღლე" - აუდიო წიგნი 2024, ივლისი
Anonim
Happy Hack Light Switch
Happy Hack Light Switch

ბოლო 2 კვირის განმავლობაში ჩვენ ვმუშაობდით სასკოლო პროექტზე სახელწოდებით "Happy hacking". ამ პროექტით ჩვენ შევეცადეთ გაგვეკეთებინა "Happy hack" საზოგადოებრივი სივრცისათვის. აბა, რა არის "Happy hack"? ჩვენს შემთხვევაში, ჩვენ გვჭირდება რაღაც პოზიტიური იმედგაცრუების საფუძველზე. არდუინოს გამოყენება საჭირო იყო ამ პროექტისათვის. "ბედნიერი გატეხვა", რომელიც ჩვენ გადავწყვიტეთ, იყო ინსტალაცია შუქის გადამრთველის დისტანციურად დასაბრუნებლად.

ნაბიჯი 1: მასალები:

1x Arduino Uno

1x პურის დაფა

2x სერვო

1x ინფრაწითელი სენსორი

11x მავთული

1x ინფრაწითელი გამგზავნი (ტელევიზორის ამოღება)

ფირზე

ნაბიჯი 2: როგორ დააკავშიროთ:

ჩადეთ Arduino ინფრაწითელი მიმღები პურის დაფაზე; ვივარაუდოთ მიმღების წინა მხარე არის მხარე სფეროზე:

  • შეაერთეთ ერთი მავთული ყველაზე მარცხენა "ფეხიდან" Arduino uno პორტში "6".
  • შეაერთეთ ერთი მავთული შუა "ფეხიდან" "-" რიგზე პურის დაფაზე.
  • შეაერთეთ ერთი მავთული ყველაზე მარჯვენა "ფეხიდან" პურის დაფაზე "+" რიგზე.

დარწმუნდით, რომ მავთული არის "-" რიგს პურის დაფაზე და "დაფქულ" პორტს არდუინო უნოზე და დარწმუნდით, რომ მავთული არის პურის დაფაზე "+" მწკრივსა და არდუინო უნიოს "5V" პორტს შორის.

ახლა დააკავშირეთ 2 სერვისი,

  • ორივე მავთულით მუქი მავთულიდან სერვოზე "-" რიგზე პურის დაფაზე.
  • ორივე მავთულით შუა მავთულიდან სერვოზე "+" რიგზე პურის დაფაზე.

ახლა, ერთ -ერთი სერვისისთვის დააკავშირეთ დარჩენილი სერვო მავთული Arduino uno პორტში '9' და შეაერთეთ მეორე სერვო Arduino uno პორტში '10'.

ნაბიჯი 3: კოდი:

#ჩართე //

#ჩართე //

#ჩართე //

IRrecv irrecv (6);

decode_results results;

Servo theServo1;

Servo theServo2;

bool lightOn = ყალბი;

bool disco = ყალბი;

void setup () {

theServo1.atach (10);

theServo2.attach (9);

pinMode (6, INPUT);

სერიული.დაწყება (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. დაწერა (15);

}

თუ (! lightOn) {

theServo1. დაწერა (95);

theServo2.write (90);

}

დაგვიანება (2000);

}

}

გირჩევთ: