Kazalo:
Video: Servo zaklepanje tipkovnice: 5 korakov
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
Pozdravljeni vsi, upam, da ste imeli lep dan. Če ne, upajmo, da se lahko z nekaj odprtega mišljenja preprosto vrnete v to vadnico in nekaj terapevtske glasbe. Programiranje je lahko težava. Na srečo ta vadnica ni težava, zato boste morda uspeli doseči priljubljeno stvar, imenovano (z mogočnim glasom): ZAKLJUČKA ZAPRTE SERVO KLJUČNICE !!! To je res samo moj uvod, upam, da vam je bil všeč. Kakorkoli, gremo prste za tipkanje. (Kul pesem: pesem can-can (klasična glasba)).
Zaloge:
-Tvoji prsti
-Tudi tvoje roke, to je pomembno
-USB kabel za Arduino
-Na voljo je katera koli vrsta arduina (imam Arduino Mega)
-Matrix tipkovnica (tipkovnica - ebay, tipkovnica - amazon)
-Mikro ali standardni servo (uporabljam mikro servo)
-* Izbirno* Omarica - katere koli vrste
-* Izbirno* Napajanje (5V)
Korak: Shematski čas
Torej, kaj najprej storiti? Arduino priključite na računalnik. Nato priključite tipkovnico. *Opomba - priključke z zadnjega zatiča na tipkovnici morate priključiti kot prvi digitalni zatič na arduinu. Po tem pojdite od desne proti levi*. Tipkovnica ima na arduinu nožice 2-9. Servo ima pin 10 kot digitalni signal. Povežite tudi podlage arduina, tipkovnice in servo ter 5V. * Upoštevajte tudi, da je servomotor najbolje uporabiti z zunanjim virom napajanja ali adapterjem s 5V (stenski vtič), vendar je še vedno neobvezen.* Ni vam treba fizično vezati tal in 5V, kar mislim samo za pritrditev žice iz Arduina na servo. Ta shema ne pomaga začetnikom, zato mi dovolite, da na kratko razložim. V bistvu je zadnji pin 2 in prvi 9, dva je 8, tri je 7 itd. Pojdite od leve proti desni 2 2.
2. korak: Čas kodiranja
V redu, zdaj gremo na del kodiranja! Tu se zgodi prava čarovnija! Torej obstaja preizkusni program, s katerim najprej preizkusite tipkovnico in servo. Tukaj:
//www.elegoo.com//2016.12.9
/* @file CustomKeypad.pde
|| @verzija 1.0 || @autor Alexander Brevig || @kontakt [email protected] || || @opis || | Prikazuje spreminjanje velikosti tipkovnice in vrednosti tipk. || # */ #vključi
const byte ROWS = 4; // štiri vrstice
const bajt COLS = 4; // štirje stolpci // definirajo činele na gumbih tipkovnic 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}; // povežemo se z odmiki vrstice bajta tipkovnice colPins [COLS] = {5, 4, 3, 2}; // povežemo se z izpiski stolpcev na tipkovnici
// inicializiramo primerek razreda NewKeypad
Tipkovnica customKeypad = Tipkovnica (makeKeymap (hexaKeys), rowPins, colPins, ROWS, COLS);
void setup () {
Serial.begin (9600); } void loop () {char customKey = customKeypad.getKey (); if (customKey) {Serial.println (customKey); }}
//www.elegoo.com//2016.12.08 #include
Servo myservo; // ustvarite servo objekt za nadzor servo
// na večini plošč je mogoče ustvariti dvanajst servo objektov
int pos = 0; // spremenljivka za shranjevanje položaja servo
void setup () {
myservo.attach (9); // pritrdi servo na pin 9 na servo objekt}
void loop () {
for (pos = 0; pos = 0; pos -= 1) {// gre od 180 stopinj do 0 stopinj myservo.write (pos); // povem servo, naj gre v položaj s spremenljivo zakasnitvijo 'pos' (15); // čaka 15 ms, da servo doseže položaj}}
Tukaj je koda projekta (odkrito vam bom rekel, nisem veliko naredil, samo dodal sem servo del, zahvali se ljudem, ki so naredili vso kodo!):
#include Password.h
#vključi tipkovnico
/*
|| Enostaven vnos gesla z uporabo matrične tipkovnice || 5.4.2012 Posodobitve Nathan Sobieck: [email protected] || *
/* je za potrditev gesla
//# je poskus ponastavitve gesla
/////////////////////////////////////////////////////////////////
#vključi
//https://www.arduino.cc/playground/uploads/Code/Password.zip #include //https://www.arduino.cc/playground/uploads/Code/Keypad.zip
Geslo za geslo = Geslo ("1234");
Servo myservo; // ustvarite servo objekt za nadzor servo
#define servoPin 10
const byte ROWS = 4; // Štiri vrstice
const bajt COLS = 4; // stolpci // Določimo znake tipk zemljevida tipk [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}};
byte rowPins [ROWS] = {9, 8, 7, 6}; // Povežite tipkovnico ROW0, ROW1, ROW2 in ROW3 s temi zatiči Arduino.
bajt colPins [COLS] = {5, 4, 3, 2,}; // Povežite tipkovnico COL0, COL1 in COL2 s temi zatiči Arduino.
// Ustvarite tipkovnico
Tipkovnica tipkovnice = Tipkovnica (makeKeymap (tipke), vrstice, colPins, ROWS, COLS);
void setup () {
myservo.attach (servoPin); // pritrdi servo na zatiču 9 na servo objekt
Serial.begin (9600);
keypad.addEventListener (keypadEvent); // dodamo poslušalca dogodkov za to tipkovnico
myservo.write (0);
}
void loop () {
keypad.getKey ();
}
// poskrbite za nekatere posebne dogodke
void keypadEvent (KeypadEvent eKey) {switch (keypad.getState ()) {case PRESSED: switch (eKey) {case '*': checkPassword (); zlom; privzeto: password.append (eKey); }}}
void checkPassword () {
if (password.evaluate () == true) {Serial.println ("Uspeh"); // Dodajte kodo za zagon, če deluje
myservo.write (180);
zamuda (3000);
myservo.write (0);
resetiranje gesla();
} else if (password.evaluate () == false) {
Serial.println ("Napačno");
myservo.write (0);
// dodajanje kode za zagon, če ni delovalo
}
}
3. korak: Kaj vse to pomeni?
Zgornja koda (prva) bo dala signal servo -ju, naj "pometa" ali pa gre le od 0 do 180 stopinj. Ali pa samo dokončate pol kroga vrtenja od leve proti desni ali od desne proti levi. Če želite več podrobnosti o kodi, vam lahko povem. Le vprašajte. Brez škode, preprosto preprosto vprašanje. Daj no, zmoreš! Kakorkoli, koda na sredini preskusi vsak gumb na tipkovnici. In zadnja koda se s servomotorjem "odklene", ko vnesete geslo "1234" v, uganili ste, tipkovnico.
4. korak: Odpravljanje težav
V: Moja tipkovnica ne deluje.
O: Ne pozabite, da je prvi zatič 9, zato pojdite dol. Prav tako ne pozabite priključiti arduina na vrata USB računalnika in programirati Arduino.
V: Servo ne deluje.
O: Ne pozabite, da je servo pin 10 in da potrebujete skupno ozemljitev. Če se povezujete naravnost z Arduina, ne pozabite, da je oranžni pin (na mikro servo) pin 10, rdeči pin 5V in rjavi zatič je zatič GND.
V: Arduino ne deluje:
O: Ste ga sploh povezali? Sliši se kot osebni problem
5. korak: Če imate kakršna koli vprašanja, vprašajte v razdelku za komentarje in se ne pozabite naročiti
Adijo, hvala za ogled moje vadnice. Bilo je zabavno.