INHOUDSOPGAWE:

Toetsenbord servo slot: 5 stappe
Toetsenbord servo slot: 5 stappe

Video: Toetsenbord servo slot: 5 stappe

Video: Toetsenbord servo slot: 5 stappe
Video: КАК НАСТРОИТЬ L4D2 2024, November
Anonim
Toetsenbord servo slot
Toetsenbord servo slot
Toetsenbord servo slot
Toetsenbord servo slot
Toetsenbord servo slot
Toetsenbord servo slot

Hallo almal, hoop julle het 'n goeie dag gehad. As dit nie hopelik is nie, kan u net met 'n oop gemoed na hierdie tutoriaal en terapeutiese musiek terugspoel. Programmering kan moeilik wees. Gelukkig is hierdie tutoriaal nie 'n probleem nie, sodat u miskien 'n gewilde ding (met 'n magtige stem) kan bereik: DIE ULTIMATE SERVO KEYPAD LOCK !!! Dit is eintlik net my inleiding, hoop dat u daarvan gehou het. In elk geval, laat ons ons vingers warm maak vir tik. ('N Cool liedjie: blikkie-liedjie (klassieke musiek)).

Benodighede:

-Jou vingers

-Jou hande ook, dit is belangrik

-USB -kabel vir Arduino

-Elke tipe arduino beskikbaar (ek het die Arduino Mega)

-Matrix -toetsenbord (klavier - eBay, toetsenbord - Amazon)

-Micro of standaard servo (ek gebruik 'n mikro servo)

-* Opsioneel* Breadboard - enige tipe

-* Opsioneel* Kragtoevoer (5V)

Stap 1: Skematiese tyd

Skematiese tyd!
Skematiese tyd!
Skematiese tyd!
Skematiese tyd!

So, wat moet u eers doen? Sluit die Arduino aan op die rekenaar. Koppel die toetsbord daarna. *Let wel - u moet die penne van die laaste pen op die bedieningspaneel verbind as die eerste digitale pen op die arduino. En gaan daarna van regs na links*. Toetsenbord het penne 2-9 op die arduino. Die servo het pen 10 as digitale seine. Bind die terrein van die arduino, bedieningspaneel en servo en die 5V ook vas. * Let ook op: die servo word die beste gebruik met 'n eksterne kragbron of 'n adapter met 5V (plug -in), maar dit is steeds opsioneel.* U hoef nie die grond en 5V fisies vas te maak nie. om net 'n draad van die Arduino aan die servo vas te maak. Hierdie skema help nie beginners nie, dus laat ek kortliks verduidelik. Basies is die laaste pen 2 en die eerste een is 9, twee is 8, drie is 7, ensovoorts. Gaan van links na regs 2 2.

Stap 2: Koderingstyd

Koderingstyd!
Koderingstyd!
Koderingstyd!
Koderingstyd!

Ok, nou is ons aan die koderingsdeel! Dit is waar die ware magie gebeur! Daar is dus 'n toetsprogram om die bedieningspaneel en servo eers te toets. Hier:

//www.elegoo.com//2016.12.9

/* @lêer CustomKeypad.pde

|| @weergawe 1.0 || @skrywer Alexander Brevig || @kontak [email protected] || || @beskrywing || | Toon aan dat die grootte van die klavier en sleutelwaardes verander word. || # */ #insluit

const byte RYDE = 4; // vier rye

const byte COLS = 4; // vier kolomme // definieer die simbole op die knoppies van die bedieningsblokke char hexaKeys [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5 ',' 6 ',' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}}; byte rowPins [ROWS] = {9, 8, 7, 6}; // maak verbinding met die ry -uitknoppies van die sleutelbord -byte colPins [COLS] = {5, 4, 3, 2}; // maak verbinding met die kolomknoppies van die bedieningspaneel

// initialiseer 'n instansie van die klas NewKeypad

Toetsenbord customKeypad = Toetsenbord (makeKeymap (hexaKeys), rowPins, colPins, ROWS, COLS);

ongeldige opstelling () {

Serial.begin (9600); } leemte lus () {char customKey = customKeypad.getKey (); as (customKey) {Serial.println (customKey); }}

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

Servo myservo; // skep servo -voorwerp om 'n servo te beheer

// twaalf servo -voorwerpe kan op die meeste borde geskep word

int pos = 0; // veranderlike om die servoposisie op te slaan

ongeldige opstelling () {

myservo.attach (9); // plak die servo op pen 9 aan die servo -voorwerp}

leemte -lus () {

vir (pos = 0; pos = 0; pos -= 1) {// gaan van 180 grade tot 0 grade myservo.write (pos); // sê vir servo om in posisie te gaan met veranderlike 'pos' -vertraging (15); // wag 15 ms vir die servo om die posisie te bereik}}

Hier is die projekkode (ek sal eerlik wees met u, ek het nie veel gedoen nie, ek het net die servo -deel bygevoeg, dankie vir die mense wat al die kode gemaak het!):

#sluit wagwoord in. h

#sluit sleutelbord in

/*

|| Eenvoudige wagwoordinvoer met behulp van Matrix -toetsbord || 4/5/2012 Opdaterings Nathan Sobieck: [email protected] || *

/* is om die wagwoord te bekragtig

//# is om die wagwoordpoging terug te stel

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

#insluit

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

Wagwoord wagwoord = Wagwoord ("1234");

Servo myservo; // skep servo -voorwerp om 'n servo te beheer

#definieer servoPin 10

const byte RYDE = 4; // Vier rye

const byte COLS = 4; // kolomme // Definieer die sleutels vir sleutelkaart [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}};

byte rowPins [ROWS] = {9, 8, 7, 6}; // Koppel die bedieningspaneel ROW0, ROW1, ROW2 en ROW3 aan hierdie Arduino -penne.

byte colPins [COLS] = {5, 4, 3, 2,}; // Koppel die bedieningspaneel COL0, COL1 en COL2 aan hierdie Arduino -penne.

// Skep die sleutelbord

Toetsblok -sleutelbord = Toetsenbord (makeKeymap (sleutels), rowPins, colPins, ROWS, COLS);

ongeldige opstelling () {

myservo.attach (servoPin); // plak die servo op pen 9 aan die servo -voorwerp

Serial.begin (9600);

keypad.addEventListener (keypadEvent); // voeg 'n gebeurtenisluisteraar by vir hierdie klavier

myservo.write (0);

}

leemte -lus () {

sleutelbord.getKey ();

}

// sorg vir 'n paar spesiale geleenthede

void keypadEvent (KeypadEvent eKey) {switch (keypad.getState ()) {case PRESSED: switch (eKey) {case '*': checkPassword (); breek; verstek: password.append (eKey); }}}

void checkPassword () {

if (wagwoord.evalueer () == waar) {Serial.println ("Sukses"); // Voeg kode by om uit te voer as dit werk

myservo.write (180);

vertraging (3000);

myservo.write (0);

password.reset ();

} anders as (wagwoord.evalueer () == vals) {

Serial.println ("Verkeerd");

myservo.write (0);

// voeg kode by om uit te voer as dit nie werk nie

}

}

Stap 3: Wat beteken dit alles?

Wat beteken dit alles?
Wat beteken dit alles?

Die kode hierbo (die eerste een) gee 'n sein aan die Servo om te "vee" of net van 0 tot 180 grade te gaan. Of voltooi net 'n halwe rotasiesirkel van links na regs of regs na links. As u meer inligting oor die kode wil hê, kan ek u dit vertel. Vra maar net. Geen skade berokken nie, net 'n eenvoudige vraag. Komaan, jy kan dit doen! In elk geval, die kode in die middel toets elke knoppie van die toetsbord. En die laaste van die kode "ontsluit" net met die servo as u die wagwoord "1234" intik, u het dit raai, die toetsbord.

Stap 4: Probleemoplossing

Probleemoplossing
Probleemoplossing

V: My bedieningspaneel werk nie.

A: Onthou dat die eerste pen 9 is, so gaan daarvandaan af. Sluit ook die arduino aan op die USB -poort van die rekenaar en programmeer die Arduino.

V: Servo werk nie.

A: Onthou dat die servospeld pen 10 is en dat u 'n gemeenskaplike grond nodig het, as u direk vanaf die Arduino aansluit, onthou dat die oranje pen (op die mikroservo) pen 10 is, die rooi pen 5V en die bruin pen is die GND -pen.

V: Arduino werk nie:

A: Het u dit selfs gekoppel? Dit klink na 'n persoonlike probleem

Stap 5: As u enige vrae het, vra dit gerus in die kommentaarafdeling en onthou om in te teken

Totsiens, dankie dat u my tutoriaal gekyk het. Dit was lekker.

Aanbeveel: