Indholdsfortegnelse:

Kraak De Kluis: 4 trin
Kraak De Kluis: 4 trin

Video: Kraak De Kluis: 4 trin

Video: Kraak De Kluis: 4 trin
Video: Anna Nooshin, Gwen van Poorten & Romy Monteiro plegen een overval | De Kluis’21 #4 2024, November
Anonim
Kraak De Kluis
Kraak De Kluis

Introduktion

Hej alle sammen, Jeg kan virkelig sige, at det første gang er, at jeg kan instruere mig om mit projekt ITTT. Dus for mijn 'If This Then That' -projekt kan ikke installeres online.

Idéen er til en slags flugtrum, hvor du kan lave, hvilken computer du kan bruge til at kode. LAD OP: det er ikke en skærmbillede! Her er de nødvendige behov for en DIY 'en klub med en adgangskode':- Arduino uno (en usb til arduino-kabel).- Bærbar computer (med arduino-program).- 4 knapper (anders kun du har ingen kode faktura).- 6 Zwarte kabels (denne kan bruges til Gnd (-).- 2 Rode kabels (denne kan bruges til 5V (+).- 4 store kabels (denne kan bruges til at udstyre knapper)).- 1 kabel til kabel (denne kan bruges til at betjene servicen).- 1 Houten kistje- 1 plastik bag- 1 stift pin

Trin 1: Dreadboard:

Dreadboard
Dreadboard
Dreadboard
Dreadboard
Dreadboard
Dreadboard
Dreadboard
Dreadboard

Om at begynde er det altid muligt at finde et sammenligneligt projekt, der kan søges på internettet. ^^^

Jeg er her, da jeg ville få en slag, og jeg havde en egen 4x -kopi, der kunne se, hvad der var tilfældet. Se dine fotos på ^^^

Også angivet på dette websted kan en kode bruges til 1 knap. Denne havde jeg købt og brugt til at blive lukket for 4 knapper.

Hieronder de code die erbij hoorde (voor nu): NIET WERKEND

#omfatte

Servo myservo;

int inputPin = 2; // knap int outputPin = 9; // servo int buttonState = HIGH; // lav fordi schakelaar open er int pos = 0; // start positie servo int oldbuttonState; int tilstand;

ugyldig opsætning () {myservo.attach (outputPin); pinMode (inputPin, INPUT_PULLUP); Serial.begin (38400); } void loop () {int buttonState = digitalRead (inputPin); hvis (buttonState == HIGH &&! oldbuttonState) {if (state == 0) {pos = 0; tilstand = 1; } andet {pos = 180; tilstand = 0; } oldbuttonState = 1; } ellers hvis (buttonState == LOW && oldbuttonState) {oldbuttonState = 0; } Serial.println (pos); Serial.println (buttonState); myservo.write (pos); }

Trin 2: Juiste Aansluiting Dreadboard:

Juiste Aansluiting Dreadboard
Juiste Aansluiting Dreadboard
Juiste Aansluiting Dreadboard
Juiste Aansluiting Dreadboard
Juiste Aansluiting Dreadboard
Juiste Aansluiting Dreadboard
Juiste Aansluiting Dreadboard
Juiste Aansluiting Dreadboard

Mit følgende trin var en tekst, som jeg kunne fortælle, hvordan det kunne vende tilbage i hinanden.

Hierboven mijn schema en hier under mijn code (voor nu): NIET WERKEND

#omfatte

Servo myservo;

int inputPin2 = 2; // button1 int inputPin3 = 3; // button2 int inputPin4 = 4; // button3 int inputPin5 = 5; // knap4

int buttonState2 = HIGH; // lav fordi schakelaar open is int buttonState3 = HIGH; int buttonState4 = HIGH; int buttonState5 = HIGH;

int oldbuttonState2; int oldbuttonState3; int oldbuttonState4; int oldbuttonState5;

int correctCode = {1, 2, 3, 4}; int enterCode [4]; int codeIndex = 0;

int outputPin = 9; // servo

int pos; // start positie servo bool complete = true;

ugyldig opsætning () {myservo.attach (outputPin); pinMode (inputPin2, INPUT_PULLUP); pinMode (inputPin3, INPUT_PULLUP); pinMode (inputPin4, INPUT_PULLUP); pinMode (inputPin5, INPUT_PULLUP); Serial.begin (38400); }

void loop () {if (complete) {for (int i = 0; i <4; i ++) {enterCode = 0; } pos = 100; myservo.write (pos); Serial.println ("Udført"); fuldført = falsk; }

ellers {int buttonState2 = digitalRead (inputPin2); int buttonState3 = digitalRead (inputPin3); int buttonState4 = digitalRead (inputPin4); int buttonState5 = digitalRead (inputPin5);

hvis (buttonState2 == HIGH &&! oldbuttonState2) // button1 {enterCode [codeIndex] = 1; codeIndex ++; // kodeindeks += 1 oldbuttonState2 = 1; } ellers hvis (buttonState2 == LOW && oldbuttonState2) {oldbuttonState2 = 0; }

hvis (buttonState3 == HIGH &&! oldbuttonState3) // button2 {Serial.println ("BUTTON2 TRYKT"); enterCode [codeIndex] = 2; codeIndex ++; oldbuttonState3 = 1; }

ellers hvis (buttonState3 == LOW && oldbuttonState3) {oldbuttonState3 = 0; }

hvis (buttonState4 == HIGH &&! oldbuttonState4) // button3 {enterCode [codeIndex] = 3; codeIndex ++; oldbuttonState4 = 1; } ellers hvis (buttonState4 == LOW && oldbuttonState4) {oldbuttonState4 = 0; }

hvis (buttonState5 == HIGH &&! oldbuttonState5) // button4 {enterCode [codeIndex] = 4; codeIndex ++; oldbuttonState5 = 1; } ellers hvis (buttonState5 == LOW && oldbuttonState5) {oldbuttonState5 = 0; } //Serial.print("enteret: "); //Serial.println(enterCode[codeIndex-1]); //Serial.print("On: "); //Serial.println(codeIndex-1); }

hvis (codeIndex == 4) {codeIndex = 0; bool codeEnteredCorrectly = true; for (int i = 0; i <4; i ++) {if (correctCode ! = enterCode ) {codeEnteredCorrectly = false; }}

hvis (codeEnteredCorrectly) {pos = 0; myservo.write (pos); Serial.println (pos); forsinkelse (5000); } fuldført = sandt; Serial.println (codeEnteredCorrectly? "True": "false"); }}

Trin 3: Solderen/ Juiste Code:

Solderen/ Juiste Code
Solderen/ Juiste Code
Solderen/ Juiste Code
Solderen/ Juiste Code
Solderen/ Juiste Code
Solderen/ Juiste Code

Ja! ben je al zover gekomen ?! Super!

Nu er det en hånd om, at vi også kan gøre alt, hvad du kan gøre! Først en soldeer kan bruges til, at du kan begynde med solderen.

Nu skal du regne med, hvordan du kan se, hvordan du kan se, og du kan også se, hvordan du kører til legt. Ook je de arduino in the kluisje legt of erbuiten.

Ved mig havde jeg en mulighed for at få en af mine klienter til at lave. En om den anden min arduino (med derover en trykplade med der på de knapper) kan jeg lave.

Eindelijk! Se også meget hjælp af min mede -studerende og en hoop, der selv har gjort, er her WERKENDE -koden:

#omfatte

Servo myservo;

int inputPin2 = 2; // button1 int inputPin3 = 3; // button2 int inputPin4 = 4; // button3 int inputPin5 = 5; // knap4

int buttonState2 = HIGH; // voor alle knapper en state int buttonState3 = HIGH; int buttonState4 = HIGH; int buttonState5 = HIGH;

int oldbuttonState2; // voor alle knapper en oldstate int oldbuttonState3; int oldbuttonState4; int oldbuttonState5;

int correctCode = {1, 3, 4, 2}; // korriger kode int enterCode [4]; // i givet kode int codeIndex = 0; // kasserer

int outputPin = 9; // servomotortje output

int pos; // positie servo bool complete = true; // Åben hvælving

ugyldig opsætning () {myservo.attach (outputPin); pinMode (inputPin2, INPUT_PULLUP); pinMode (inputPin3, INPUT_PULLUP); pinMode (inputPin4, INPUT_PULLUP); pinMode (inputPin5, INPUT_PULLUP); Serial.begin (38400); }

void loop () {if (complete) // de servo on the correct punt te laten start

{for (int i = 0; i <4; i ++) // voor ieder cijfer in eneterCode {enterCode = 0; } pos = 100; // 100 grader was voor mij de 'dichte' stand myservo.write (pos); // sendt de pos naar de servo complete = false; // de code is not compleet} else {int buttonState2 = digitalRead (inputPin2); int buttonState3 = digitalRead (inputPin3); int buttonState4 = digitalRead (inputPin4); int buttonState5 = digitalRead (inputPin5); hvis (buttonState2 == HIGH &&! oldbuttonState2) // button1 {Serial.println ("BUTTON1 TRESSED"); // laat se, at denne knap gedrukt er enterCode [codeIndex] = 1; // zet it cijfer 1 in the enterCode codeIndex ++; // teller + 1 oldbuttonState2 = 1; // kijkt of the knop is gedrukt} else if (buttonState2 == LOW && oldbuttonState2) // als button1 is los gelaten {oldbuttonState2 = 0; // kan er andre in gedrukt blive} if (buttonState3 == HIGH &&! oldbuttonState3) // button2 {

Serial.println ("BUTTON2 TRYKT"); // laat se, at denne knap gedrukt er enterCode [codeIndex] = 2; // zet it cijfer 2 in the enterCode codeIndex ++; // teller + 1 oldbuttonState3 = 1; // kijkt of the knop is gedrukt} else if (buttonState3 == LOW && oldbuttonState3) // als button2 is los gelaten {oldbuttonState3 = 0; // kan er andre in gedrukt blive}

hvis (buttonState4 == HIGH &&! oldbuttonState4) // button3 {Serial.println ("BUTTON3 TRESSED"); // laat se, at denne knap gedrukt er enterCode [codeIndex] = 3; // zet it cijfer 3 in the enterCode codeIndex ++; // teller + 1 oldbuttonState4 = 1; // kijkt of the knop is gedrukt} else if (buttonState4 == LOW && oldbuttonState4) // als button3 is los gelaten {oldbuttonState4 = 0; // kan er andre in gedrukt blive}

hvis (buttonState5 == HIGH &&! oldbuttonState5) // button4 {Serial.println ("BUTTON4 TRYKT"); // laat se, at denne knap gedrukt er enterCode [codeIndex] = 4; // zet it cijfer 4 in the enterCode codeIndex ++; // teller + 1 oldbuttonState5 = 1; // kijkt of the knop is gedrukt} else if (buttonState5 == LOW && oldbuttonState5) // als button4 is los gelaten {oldbuttonState5 = 0; // kan er andre i gedrukt blive}}

hvis (codeIndex == 4) // als mijn teller hoger er dan 4 {codeIndex = 0; // zet de teller weer op 0 bool codeEnteredCorrectly = true; // gør en ny boolsk aan for (int i = 0; i <4; i ++) // voor ieder cijfer in the enterCode {if (correctCode ! = enterCode ) // word gekeken of it niet in de correctCode zit {codeEnteredCorrectly = false; // som der er en cijfer på de fejlplacerede stat, da ordet er falsk}}

hvis (codeEnteredCorrectly) // som den korrekte kode er: {pos = 0; // 0 grader var voor mij de 'open' stand myservo.write (pos); // sendt de pos naar the servo Serial.println ("Udført"); // giver indicatie dat hij compleet is delay (5000); // 5 sec om het kluisje te openen} complete = true; // de code is not goed Serial.println ("prøv igen"); // angivelse af, at du skal overholde nye oplysninger. }

}

Trin 4: Trin 4 UDFØRET:

Trin 4 UDFØRET
Trin 4 UDFØRET

Jeg kan selv have masser af sjov!

Jeg kan godt lide, hvad du har gjort.

Anbefalede: