Tartalomjegyzék:

Billentyűzet szervozár: 5 lépés
Billentyűzet szervozár: 5 lépés

Videó: Billentyűzet szervozár: 5 lépés

Videó: Billentyűzet szervozár: 5 lépés
Videó: OLED KIJELZŐS BILLENTYŰZET?! 🤯 | ASUS ROG Azoth Billentyűzet 2024, Július
Anonim
Billentyűzet szervo zár
Billentyűzet szervo zár
Billentyűzet szervo zár
Billentyűzet szervo zár
Billentyűzet szervo zár
Billentyűzet szervo zár

Üdv mindenkinek, remélem jól telt a nap. Ha nem, akkor remélhetőleg csak nyitott szemmel tekerhet vissza erre az oktatóanyagra és néhány terápiás zenére. A programozás gondot okozhat. Szerencsére ez az oktatóanyag nem okoz gondot, így talán végre tud hajtani egy népszerű dolgot (hatalmas hangon): AZ ULTIMATE SERVO KEYPAD LOCK !!! Ez csak a bemutatkozásom, remélem tetszett. Mindenesetre melegítsük fel az ujjainkat a gépeléshez. (Egy klassz dal: can-can dal (klasszikus zene)).

Kellékek:

-Az ujjaid

-A kezed is, ez fontos

-USB kábel az Arduino számára

-Bármilyen típusú arduino elérhető (az Arduino Mega van)

- Mátrix billentyűzet (billentyűzet - ebay, billentyűzet - amazon)

-Mikro vagy Standard szervó (én mikro szervót használok)

-* Opcionális* Breadboard - bármilyen típusú

-* Opcionális* Tápegység (5V)

1. lépés: Vázlatos idő

Sematikus idő!
Sematikus idő!
Sematikus idő!
Sematikus idő!

Szóval, mit tegyen először? Csatlakoztassa az Arduino -t a számítógéphez. Ezután csatlakoztassa a billentyűzetet. *Megjegyzés - a billentyűzet utolsó érintkezőjének csapjait az arduino első digitális tűjeként kell csatlakoztatnia. És utána menjen jobbról balra*. A billentyűzeten 2-9 érintkező található az arduino-n. A szervónak 10 -es csapja van digitális jelekként. Kösse össze az arduino, a billentyűzet és a szervo alapjait és az 5V -ot is. * Vegye figyelembe azt is, hogy a szervót legjobb külső áramforrás vagy 5 V -os adapter (fali csatlakozó) esetén használni, de ez még opcionális. hogy csak egy vezetéket rögzítsen az Arduino -ról a szervóra. Ez a vázlat nem segít a kezdőknek, ezért engedje meg, hogy röviden elmagyarázzam. Alapvetően az utolsó csap 2, az első 9, kettő 8, három 7, és így tovább. Menj balról jobbra 2 2.

2. lépés: Kódolási idő

Kódolási idő!
Kódolási idő!
Kódolási idő!
Kódolási idő!

Rendben, akkor most a kódolási résznél tartunk! Itt történik az igazi varázslat! Tehát van egy tesztprogram, amely először teszteli a billentyűzetet és a szervót. Itt:

//www.elegoo.com//2016.12.9

/* @file CustomKeypad.pde

|| @verzió 1.0 || @szerző Alexander Brevig || @contact [email protected] || || @description || | Bemutatja a billentyűzet méretének és a kulcsértékek megváltoztatását. || # */ # magában foglalja

const byte ROWS = 4; // négy sor

const bájt COLS = 4; // négy oszlop // határozza meg a szimbólumokat a billentyűzet gombjain char hexaKeys [SOROK] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5 ',' 6 ',' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}}; byte rowPins [SOROK] = {9, 8, 7, 6}; // csatlakozás a billentyűzet sorkapcsaihoz bájt colPins [COLS] = {5, 4, 3, 2}; // csatlakozzon a billentyűzet oszloppisztolyaihoz

// inicializálja a NewKeypad osztály egy példányát

Billentyűzet customKeypad = Billentyűzet (makeKeymap (hexaKeys), rowPins, colPins, ROWS, COLS);

void setup () {

Sorozat.kezdet (9600); } void loop () {char customKey = customKeypad.getKey (); if (customKey) {Serial.println (customKey); }}

//www.elegoo.com//2016.12.08 #include

Szervo myservo; // szervo objektum létrehozása a szervó vezérlésére

// a legtöbb táblán tizenkét szervo objektum hozható létre

int pos = 0; // változó a szervo pozíció tárolására

void setup () {

myservo.attach (9); // a szervót a 9 -es tűn rögzíti a szervo -objektumhoz}

void loop () {

for (pos = 0; pos = 0; pos -= 1) {// 180 fokról 0 fokra megy myservo.write (pos); // mondja meg a szervónak, hogy menjen a pozícióba a "pos" késleltetésben (15); // 15 ms -ig vár, amíg a szervó eléri a pozíciót}}

Íme a projekt kódja (őszinte leszek veled, nem sokat csináltam, csak hozzáadtam a szervo részt, mondj köszönetet azoknak, akik elkészítették az összes kódot!):

#include Password.h

#tartalmazza a billentyűzetet

/*

|| Egyszerű jelszóbevitel a Mátrix billentyűzet használatával || 2012.04.05. Frissítések Nathan Sobieck: [email protected] || *

/* a jelszó érvényesítése

//# a jelszó visszaállításának kísérlete

/////////////////////////////////////////////////////////////////

#befoglalni

//https://www.arduino.cc/playground/uploads/Code/Password.zip #include //https://www.arduino.cc/playground/uploads/Code/Keypad.zip

Jelszó jelszó = Jelszó ("1234");

Szervo myservo; // szervo objektum létrehozása a szervó vezérlésére

#define servoPin 10

const byte ROWS = 4; // Négy sor

const bájt COLS = 4; // oszlopok // A Keymap karakteres billentyűinek meghatározása [SOROK] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}};

byte rowPins [SOROK] = {9, 8, 7, 6}; // Csatlakoztassa a ROW0, ROW1, ROW2 és ROW3 billentyűzetet ezekhez az Arduino érintkezőkhöz.

bájt colPins [COLS] = {5, 4, 3, 2,}; // Csatlakoztassa a COL0, COL1 és COL2 billentyűzetet ezekhez az Arduino csapokhoz.

// Hozza létre a billentyűzetet

Billentyűzet billentyűzet = Billentyűzet (makeKeymap (billentyűk), rowPins, colPins, ROWS, COLS);

void setup () {

myservo.attach (servoPin); // a 9 -es csap szervóját a szervo -objektumhoz rögzíti

Sorozat.kezdet (9600);

keypad.addEventListener (keypadEvent); // eseményfigyelő hozzáadása ehhez a billentyűzethez

myservo.write (0);

}

void loop () {

keypad.getKey ();

}

// gondoskodjon néhány különleges eseményről

void keypadEvent (KeypadEvent eKey) {switch (keypad.getState ()) {case PRESSED: switch (eKey) {case '*': checkPassword (); szünet; alapértelmezett: password.append (eKey); }}}

void checkPassword () {

if (password.evaluate () == true) {Serial.println ("Siker"); // Adjon hozzá kódot a futtatáshoz, ha működik

myservo.write (180);

késleltetés (3000);

myservo.write (0);

jelszó visszaállítása();

} else if (password.evaluate () == false) {

Serial.println ("Rossz");

myservo.write (0);

// add hozzá a kódot a futtatáshoz, ha nem működik

}

}

3. lépés: Mit jelent mindez?

Mit jelent mindez?
Mit jelent mindez?

A fenti kód (az első) jelzést ad a szervónak, hogy "söpörjön", vagy csak menjen 0 -ról 180 fokra. Vagy csak végezzen fél kör forgást balról jobbra vagy jobbról balra. Ha további részleteket szeretne a kódról, elmondhatom. Csak kérdezzen. Nem árt, csak egy egyszerű kérdés. Gyerünk, meg tudod csinálni! A középső kód egyébként teszteli a billentyűzet minden gombját. És az utolsó kód csak "kinyit" a szervóval, amikor beírja az "1234" jelszót a billentyűzetbe.

4. lépés: Hibaelhárítás

Hibaelhárítás
Hibaelhárítás

K: A billentyűzetem nem működik.

V: Ne feledje, hogy az első csap 9, ezért menjen le onnan. Ügyeljen arra is, hogy az arduino -t a számítógép USB -portjához csatlakoztassa, és programozza be az Arduino -t.

K: A szervó nem működik.

V: Ne feledje, hogy a szervotüske a 10 -es érintkező, és hogy közös alapokra van szüksége, ha egyenesen az Arduino -ról csatlakozik, ne feledje, hogy a narancssárga csap (a mikroszervón) a 10 -es, a piros csap 5V, és a barna csap a GND csap.

K: Az Arduino nem működik:

V: Egyáltalán csatlakoztatta? Ez személyes problémának tűnik

5. lépés: Ha bármilyen kérdése van, kérdezzen bátran a megjegyzés rovatban, és ne felejtse el feliratkozni

Szia, köszönöm, hogy megnézted az oktatóanyagomat. Szórakoztató volt.

Ajánlott: