Мазмуну:
- 1 -кадам: Dreadboard:
- 2 -кадам: Жүйстө Aansluiting Dreadboard:
- 3 -кадам: Solderen/ Juiste Code:
- 4 -кадам: 4 -кадам АТКАРЫЛДЫ:
Video: Kraak De Kluis: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
Introductie
Салам алемал, Бул жерде ITTT долбоорунун ITTT. Dus vijn 's This If That That' долбоору онлайн режиминде ишке ашырылууга тийиш.
Эң башкысы - бул качып кетүүчү бөлмө, бул компьютердин жардамы менен компьютердин коду болуп саналат. LET OP: het is not dus niet meten een schermpje! Бул жерде DIY 'een kluisje met aanpasbare kluis code':- Arduino uno (usb naar arduino cabel).- Ноутбук (arduino программасы менен жолугушту).- 4 Buttons (anders kun je geen code invoeren).- 6 Zwarte kabels (deze gebruik je voor de Gnd (-).- 2 Rode kabels (deze gebruik je voor 5V (+).- 4 Groene kabels (deze gebruik je voor het uitlezen van knopjes)).- 1 Геле кабели (сервистик кызматтар)
1 -кадам: Dreadboard:
Дагы башталгыч нерсе - бул интернет. Ик конструкциялардын бири - бул интернеттеги маалымат! ^^^
Сүрөттөмө кайра англисче (Кошмо Штаттар) тилине которулсун Которуу Ik ben hier mee aan de slag gegaan en heb eigenlijk 4x gekopieerd wat hier aan gesloten staat. Dit zie je op de foto's ^^^
Каттоодон өтүү үчүн сайт 1 кодду басыңыз. Deze had ik gekopieerd en ben ik op door door gangan voor 4 knopjes.
Hieronder de code erbij hoorde (nou nu): NIET WERKEND
#кошуу
Servo myservo;
int inputPin = 2; // баскычы int outputPin = 9; // servo int buttonState = HIGH; // төмөн omdat schakelaar open is int pos = 0; // oldbuttonState кызматын баштоо; int state;
void setup () {myservo.attach (outputPin); pinMode (inputPin, INPUT_PULLUP); Serial.begin (38400); } void loop () {int buttonState = digitalRead (inputPin); if (buttonState == HIGH &&! oldbuttonState) {if (state == 0) {pos = 0; мамлекет = 1; } else {pos = 180; мамлекет = 0; } oldbuttonState = 1; } else if (buttonState == LOW && oldbuttonState) {oldbuttonState = 0; } Serial.println (pos); Serial.println (buttonState); myservo.write (pos); }
2 -кадам: Жүйстө Aansluiting Dreadboard:
Mijn volgende stap was een shema tekenen zo dat ik precies weet hoe het weer terug in elkaar moet.
Hierboven схемасы бул коддун үстүндө (vu nu): NIET WERKEND
#кошуу
Servo myservo;
int inputPin2 = 2; // button1 int inputPin3 = 3; // button2 int inputPin4 = 4; // button3 int inputPin5 = 5; // button4
int buttonState2 = HIGH; // төмөн omdat 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; // баштоо позициясы servo bool аяктады = чын;
void setup () {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 ("Аякталды"); аяктады = жалган; }
else {int buttonState2 = digitalRead (inputPin2); int buttonState3 = digitalRead (inputPin3); int buttonState4 = digitalRead (inputPin4); int buttonState5 = digitalRead (inputPin5);
if (buttonState2 == HIGH &&! oldbuttonState2) // button1 {enterCode [codeIndex] = 1; codeIndex ++; // код Индекс += 1 oldbuttonState2 = 1; } else if (buttonState2 == LOW && oldbuttonState2) {oldbuttonState2 = 0; }
if (buttonState3 == HIGH &&! oldbuttonState3) // button2 {Serial.println ("BUTTON2 PRESSED"); enterCode [codeIndex] = 2; codeIndex ++; oldbuttonState3 = 1; }
else if (buttonState3 == LOW && oldbuttonState3) {oldbuttonState3 = 0; }
if (buttonState4 == HIGH &&! oldbuttonState4) // button3 {enterCode [codeIndex] = 3; codeIndex ++; oldbuttonState4 = 1; } else if (buttonState4 == LOW && oldbuttonState4) {oldbuttonState4 = 0; }
if (buttonState5 == HIGH &&! oldbuttonState5) // button4 {enterCode [codeIndex] = 4; codeIndex ++; oldbuttonState5 = 1; } else if (buttonState5 == LOW && oldbuttonState5) {oldbuttonState5 = 0; } //Serial.print("entered: "); //Serial.println(enterCode[codeIndex-1]); //Serial.print("On: "); //Serial.println(codeIndex-1); }
if (codeIndex == 4) {codeIndex = 0; bool codeEnteredCorrectly = true; for (int i = 0; i <4; i ++) {if (correctCode ! = enterCode ) {codeEnteredCorrectly = false; }}
if (codeEnteredClaimly) {pos = 0; myservo.write (pos); Serial.println (pos); кечигүү (5000); } аяктады = чындык; Serial.println (codeEnteredClaimly? "True": "false"); }}
3 -кадам: Solderen/ Juiste Code:
Ja! ben je al zover gekomen ?! Супер!
Жөн эле эмес, ал тургай, эң башкысы да!
Жөнөкөй сөз менен айтканда, бул жерде эмне бар экени белгилүү болду. Ооба же жокпу, айтор, эрбуитен.
Bij mij had ik er voor gekozen om aan een kant mijn kluisje te maken. En om aan de andere mijn arduino (met daar boven een printplaatje met daar op de knopjes) te maken.
Eindelijk! Бул жерде эч нерсе жок, бирок бул WERKENDE коду:
#кошуу
Servo myservo;
int inputPin2 = 2; // button1 int inputPin3 = 3; // button2 int inputPin4 = 4; // button3 int inputPin5 = 5; // button4
int buttonState2 = HIGH; // бардык баскычтар мамлекеттик int buttonState3 = HIGH; int buttonState4 = HIGH; int buttonState5 = HIGH;
int oldbuttonState2; // бардык баскычтар oldstate int oldbuttonState3; int oldbuttonState4; int oldbuttonState5;
int correctCode = {1, 3, 4, 2}; // int enterCode кодун оңдоо [4]; // gegeven кодунда int codeIndex = 0; // айтуучу
int outputPin = 9; // servomotortje чыгаруу
int pos; // pozitie servo bool аяктады = чын; // Ачык сактагыч
void setup () {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 op het juiste punt te laten starten
{for (int i = 0; i <4; i ++) // eneterCode {enterCode = 0; } pos = 100; // 100 gradens was voor mij de 'dichte' stand myservo.write (pos); // stuurt de pos naar de servo аяктады = жалган; // де коду niet compleet} else {int buttonState2 = digitalRead (inputPin2); int buttonState3 = digitalRead (inputPin3); int buttonState4 = digitalRead (inputPin4); int buttonState5 = digitalRead (inputPin5); if (buttonState2 == HIGH &&! oldbuttonState2) // button1 {Serial.println ("BUTTON1 PRESSED"); // баскыч баскычы enterCode [codeIndex] = 1; // zet het cijfer 1 enterCode codeIndex ++ ичинде; // теллер + 1 oldbuttonState2 = 1; // de knopтун кижкти gedrukt} else if (buttonState2 == LOW && oldbuttonState2) // als button1 los gelaten {oldbuttonState2 = 0; // күндөн -түнгө өтүү начарлайт} if (buttonState3 == HIGH &&! oldbuttonState3) // button2 {
Serial.println ("BUTTON2 PRESSED"); // баскыч баскычы enterCode [codeIndex] = 2; // zet het cijfer 2 enterCode codeIndex ++ ичинде; // теллер + 1 oldbuttonState3 = 1; // de knopтун кижкти gedrukt} else if (buttonState3 == LOW && oldbuttonState3) // als button2 los gelaten {oldbuttonState3 = 0; // күндөн эр andere in gedrukt worden}
if (buttonState4 == HIGH &&! oldbuttonState4) // button3 {Serial.println ("BUTTON3 PRESSED"); // баскыч баскычы enterCode [codeIndex] = 3; // zip het cijfer 3 enterCode codeIndex ++; // теллер + 1 oldbuttonState4 = 1; // de knopтун кижкти gedrukt} else if (buttonState4 == LOW && oldbuttonState4) // als button3 los gelaten {oldbuttonState4 = 0; // күндөн эр andere in gedrukt worden}
if (buttonState5 == HIGH &&! oldbuttonState5) // button4 {Serial.println ("BUTTON4 PRESSED"); // баскыч баскычы enterCode [codeIndex] = 4; // enterCode codeIndex ++ ичинде 4 -кат; // теллер + 1 oldbuttonState5 = 1; // de knopтун кижкти gedrukt} else if (buttonState5 == LOW && oldbuttonState5) // als button4 los gelaten {oldbuttonState5 = 0; // куннен эр andere in gedrukt worden}}
эгерде (codeIndex == 4) // башка дагы айтуучу Хогер дан 4 {codeIndex = 0; // zet de teller weer op 0 bool codeEnteredCorrectly = true; // maakt een nieuwe логикалык аан үчүн (int i = 0; i <4; i ++) // enterCode {if (correctCode ! = enterCode ) // het nietтин сөзү гекен туура коддун коду {codeEnteredCorrectly = false; // als er een cijfer op de foute plaatst staat dan word hij false}}
if (codeEnteredCorrectly) // дагы код туура: {pos = 0; // 0 graden was voor myij de 'open' stand myservo.write (pos); // Serial.println ("Аякталды"); // geeft indicatie dat hij compleet is delay (5000); // 5 сек. // de code is niet goed Serial.println ("кайра аракет кыл"); // көрсөткүчтөрдү текшерүү. }
}
4 -кадам: 4 -кадам АТКАРЫЛДЫ:
Көңүл ачкыла!
Ik lees graag wat jullie er van hebben gemaakt. Veel suc6 en maak er iets moois van!
Сунушталууда:
Кантип кадам эсептегич жасоо керек?: 3 кадам (сүрөттөр менен)
Step Counter кантип жасалат ?: Мен көптөгөн спортто жакшы аткарчумун: жөө басуу, чуркоо, велосипед тебүү, бадминтон ойноо ж.б. Мейли, менин ичимди карачы ……. Ооба, баары бир мен машыгуу үчүн кайра баштоону чечтим. Мен кандай жабдыктарды даярдашым керек?
IPodдо Doomду 5 жеңил кадам менен ойноңуз !: 5 кадам
Doom'ду IPodдо 5 жеңил кадам менен ойноңуз!: Doom жана башка ондогон оюндарды ойноо үчүн iPod'уңузда Rockboxту кантип кош жүктөө керектиги боюнча этап-этабы менен көрсөтмө. Бул чындыгында оңой нерсе, бирок менин iPodдо кыйроо ойноп жатканымды көргөндөрдүн көбү дагы эле таң калышат жана көрсөтмө менен чаташып кетишет
WordPressке плагиндерди 3 кадам менен кантип орнотсо болот: 3 кадам
WordPressке плагиндерди 3 этапта кантип орнотуу керек: Бул үйрөткүчтө мен сизге веб -сайтыңызга WordPress плагинин орнотуу үчүн эң маанилүү кадамдарды көрсөтөм. Негизи плагиндерди эки башка жол менен орнотсоңуз болот. Биринчи ыкма ftp же cpanel аркылуу болот. Бирок мен аны тизмектебейм, анткени бул чындыгында нааразы
Кадам моторун айдоо үчүн 556 таймерди колдонуу: 5 кадам
Step моторун айдоо үчүн 556 таймерди колдонуу: Бул инструкция 556 таймердин кантип тепкичтүү моторду айдай аларын түшүндүрүп берет
Акустикалык левитация Arduino Uno менен кадам-кадам (8-кадам): 8 кадам
Акустикалык левитация менен Arduino Uno Step-by-Step (8-кадам): ультрадыбыштуу үн өткөргүчтөр L298N Dc аял адаптеринин электр энергиясы менен камсыздоосу эркек токту Arduino UNOBreadboard Бул кантип иштейт: Биринчиден, сиз Arduino Uno кодун жүктөп бересиз (бул санарип менен жабдылган микроконтроллер) жана аналогдук порттор кодду айландыруу үчүн (C ++)