Satura rādītājs:
- 1. darbība: shematisks laiks
- 2. solis: kodēšanas laiks
- 3. darbība: ko tas viss nozīmē?
- 4. darbība. Problēmu novēršana
- 5. solis: ja jums ir kādi jautājumi, jautājiet komentāru sadaļā un neaizmirstiet abonēt
Video: Tastatūras servo bloķēšana: 5 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:51
Sveiki visiem, ceru, ka jums bija laba diena. Ja nē, tad cerams, ka jūs varat vienkārši attīt ar nelielu atvērtību šai apmācībai un terapeitiskai mūzikai. Programmēšana var būt apgrūtinoša. Par laimi, šī apmācība nav apgrūtinoša, tāpēc jūs, iespējams, varat paveikt populāru lietu, ko sauc (varenā balsī): ULTIMATE SERVO KEYPAD LOCK! Tas tiešām ir tikai mans ievads, ceru, ka jums patika. Lai vai kā, sasildīsim pirkstus mašīnrakstīšanai. (Forša dziesma: can-can dziesma (klasiskā mūzika)).
Piegādes:
-Jūsu pirksti
-Tavas rokas arī, tas ir svarīgi
-USB kabelis Arduino
-Pieejams jebkura veida arduino (man ir Arduino Mega)
-Matrix tastatūra (tastatūra - ebay, tastatūra - amazon)
-Mikro vai standarta servo (es izmantoju mikro servo)
-* Pēc izvēles* Maizes dēlis - jebkura veida
-* Pēc izvēles* Barošanas avots (5V)
1. darbība: shematisks laiks
Tātad, ko darīt vispirms? Pievienojiet Arduino datoram. Tālāk pievienojiet tastatūru. *Piezīme - tapas no pēdējās tastatūras tapas ir jāpievieno kā pirmā digitālā tapa uz arduino. Un pēc tam pārejiet no labās uz kreiso*. Tastatūrai arduino ir piespraudes 2-9. Servo ir tapas 10 kā digitālie signāli. Piesaistiet arduino, tastatūras un servo pamatus un arī 5V. * Ņemiet vērā arī to, ka servo vislabāk var izmantot ar ārēju barošanas avotu vai adapteri ar 5 V (sienas spraudnis), taču tas joprojām nav obligāts.* Jums nav fiziski jāpiesaista pamatne un 5 V, es domāju lai vienkārši pievienotu vadu no Arduino pie servo. Šī shēma nepalīdz iesācējiem, tāpēc ļaujiet man sīki paskaidrot. Būtībā pēdējā tapa ir 2 un pirmā ir 9, divas ir 8, trīs ir 7 utt. Pāriet no kreisās uz labo 2 2.
2. solis: kodēšanas laiks
Labi, tagad mēs ķeramies pie kodēšanas daļas! Šeit notiek īstā maģija! Tātad, ir testa programma, lai vispirms pārbaudītu tastatūru un servo. Šeit:
//www.elegoo.com//2016.12.9
/* @file CustomKeypad.pde
|| @versija 1.0 || @autors Aleksandrs Brevigs || @contact [email protected] || || @apraksts || | Parāda tastatūras lieluma un taustiņu vērtību maiņu. || # */ # iekļaut
const baits ROWS = 4; // četras rindas
const baits COLS = 4; // četras kolonnas // definē simboli uz tastatūras pogām char hexaKeys [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5 ',' 6 ',' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}}; baits rowPins [ROWS] = {9, 8, 7, 6}; // pieslēgties tastatūras rindu pinouts baitiem colPins [COLS] = {5, 4, 3, 2}; // izveidot savienojumu ar tastatūras kolonnu pinouts
// inicializēt klases NewKeypad eksemplāru
Tastatūra customKeypad = Tastatūra (makeKeymap (hexaKeys), rowPins, colPins, ROWS, COLS);
void setup () {
Sērijas sākums (9600); } void loop () {char customKey = customKeypad.getKey (); if (customKey) {Serial.println (customKey); }}
//www.elegoo.com//2016.12.08 #include
Servo myservo; // izveidot servo objektu, lai kontrolētu servo
// Lielākajā daļā dēļu var izveidot divpadsmit servo objektus
int pos = 0; // mainīgais, lai saglabātu servo pozīciju
void setup () {
myservo.attach (9); // piestiprina 9. tapas servo servo objektam}
void loop () {
for (pos = 0; pos = 0; pos -= 1) {// iet no 180 grādiem līdz 0 grādiem myservo.write (pos); // sakiet servo, lai tas mainītos 'pos' kavējumā (15); // gaida 15 ms, lai servo sasniegtu pozīciju}}
Šeit ir projekta kods (es būšu godīgs pret jums, es neko daudz nedarīju, es vienkārši pievienoju servo daļu, saku paldies cilvēkiem, kuri izveidoja visu kodu!):
#iekļaut paroli.h
#ieskaitot tastatūru
/*
|| Vienkārša paroles ievadīšana, izmantojot matricas tastatūru || 5.4.2012 Atjauninājumi Nathan Sobieck: [email protected] || *
/* ir paroles apstiprināšanai
//# ir paroles atiestatīšanas mēģinājums
/////////////////////////////////////////////////////////////////
#iekļaut
//https://www.arduino.cc/playground/uploads/Code/Password.zip #include //https://www.arduino.cc/playground/uploads/Code/Keypad.zip
Parole parole = Parole ("1234");
Servo myservo; // izveidot servo objektu, lai kontrolētu servo
#define servoPin 10
const baits ROWS = 4; // Četras rindas
const baits COLS = 4; // kolonnas // Definējiet taustiņu karšu taustiņus [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}};
baits rowPins [ROWS] = {9, 8, 7, 6}; // Savienojiet tastatūru ROW0, ROW1, ROW2 un ROW3 ar šīm Arduino tapām.
baits colPins [COLS] = {5, 4, 3, 2,}; // Pievienojiet tastatūru COL0, COL1 un COL2 šīm Arduino tapām.
// Izveidojiet tastatūru
Tastatūras tastatūra = tastatūra (makeKeymap (taustiņi), rowPins, colPins, ROWS, COLS);
void setup () {
myservo.attach (servoPin); // piestiprina servo 9. tapā pie servo objekta
Sērijas sākums (9600);
keypad.addEventListener (keypadEvent); // pievienojiet notikumu klausītāju šai tastatūrai
myservo.write (0);
}
void loop () {
keypad.getKey ();
}
// rūpēties par dažiem īpašiem notikumiem
void keypadEvent (KeypadEvent eKey) {switch (keypad.getState ()) {case PRESSED: switch (eKey) {case '*': checkPassword (); pārtraukums; noklusējums: password.append (eKey); }}}
void checkPassword () {
ja (parole.evaluate () == true) {Serial.println ("Panākumi"); // Pievienojiet kodu, lai palaistu, ja tas darbojas
myservo.write (180);
kavēšanās (3000);
myservo.write (0);
parole.reset ();
} cits if (password.evaluate () == false) {
Serial.println ("Nepareizs");
myservo.write (0);
// pievienojiet kodu, lai palaistu, ja tas nedarbojās
}
}
3. darbība: ko tas viss nozīmē?
Augšup esošais kods (pirmais) dos signālu servo "slaucīt" vai vienkārši pāriet no 0 līdz 180 grādiem. Vai vienkārši pabeidziet pusi rotācijas apļa no kreisās uz labo vai no labās uz kreiso. Ja vēlaties iegūt sīkāku informāciju par kodu, es varu jums pateikt. Vienkārši lūdzu pajautājiet. Nav nodarīts kaitējums, tikai vienkāršs mazs jautājums. Nāc, tu to vari! Jebkurā gadījumā vidējais kods pārbauda katru tastatūras pogu. Un pēdējais kods vienkārši “atbloķējas” ar servo, kad ierakstāt paroli “1234”, jūs uzminējāt, tastatūrā.
4. darbība. Problēmu novēršana
J: Mana tastatūra nedarbojas.
A: Atcerieties, ka pirmā tapa ir 9, tāpēc ejiet uz leju no turienes. Noteikti pievienojiet arduino datora USB portam un ieprogrammējiet Arduino.
J: Servo nedarbojas.
A: Atcerieties, ka servo tapa ir 10. tapa un ka jums ir nepieciešams kopīgs pamats, ja veidojat savienojumu tieši no Arduino, atcerieties, ka oranžā tapa (uz mikro servo) ir 10. tapa, sarkanā tapa ir 5 V un brūna tapa ir GND tapa.
J: Arduino nedarbojas:
A: Vai jūs to pat savienojāt? Tas izklausās pēc personīgas problēmas
5. solis: ja jums ir kādi jautājumi, jautājiet komentāru sadaļā un neaizmirstiet abonēt
Čau, paldies, ka apskatījāt manu pamācību. Ir bijis jautri.
Ieteicams:
Servo piekares bloķēšana ar vienu pogu: 3 soļi
Servo piekares bloķēšana ar vienu pogu: Pilnas balstiekārtas kalnu velosipēdi nodrošina vienmērīgu braukšanu, taču, braucot pedāļus augšup, bieži vien ir jāatslēdz piekare. Pretējā gadījumā balstiekārta saspiež, stāvot uz pedāļiem, tērējot šīs pūles. Velosipēdu ražotāji to zina un nodrošina
Tinkercard kodu bloķēšana: 4 soļi
Tinkercard Codeblocks: Instrukcijas Izveidojiet kādu kontekstu ap matemātiku & Kodēšana Kā matemātiķi vai datorzinātnieki var līdzināties māksliniekiem? Modeļu veidošana ir viena lieta, kas viņiem visiem ir kopīga. Modelis ir atkārtots dekoratīvs dizains. Modeļa izpēte ir
Tastatūras saskarne ar 8051 un tastatūras numuru parādīšana 7 segmentos: 4 soļi (ar attēliem)
Tastatūras saskarne ar 8051 un tastatūras numuru parādīšana 7 segmentos: šajā apmācībā es jums pastāstīšu par to, kā mēs varam saslēgt tastatūru ar 8051 un parādīt tastatūras numurus 7 segmentu displejā
Servo motora tastatūras vadība: 7 soļi
Servomotora tastatūras vadība: vispirms ir jāiestata servomotors. Vidējais vads iet uz 5V portu Kreisais iet uz GND portu Pievienojiet pēdējo (vadības vadu) pie porta 9
Tastatūras durvju bloķēšana: 7 soļi (ar attēliem)
Tastatūras durvju slēdzene: Arduino UNO Breadboard LCD 1602 modulis Potenciometrs 10K Ω Servo motors