תוכן עניינים:

מנעול סרוו מקשים: 5 שלבים
מנעול סרוו מקשים: 5 שלבים

וִידֵאוֹ: מנעול סרוו מקשים: 5 שלבים

וִידֵאוֹ: מנעול סרוו מקשים: 5 שלבים
וִידֵאוֹ: תרגיל 5-8A 2024, נוֹבֶמבֶּר
Anonim
מנעול סרוו מקשים
מנעול סרוו מקשים
מנעול סרוו מקשים
מנעול סרוו מקשים
מנעול סרוו מקשים
מנעול סרוו מקשים

שלום לכולם, מקווה שהיה לכם יום טוב. אם לא בתקווה שתוכל פשוט להריץ אחורה עם קצת ראש פתוח להדרכה הזו וקצת מוזיקה טיפולית. תכנות יכול להיות טרחה. למרבה המזל, הדרכה זו אינה מהווה טרחה, כך שאולי תוכל להשיג דבר פופולרי שנקרא (בקול אדיר): נעילת מפתחות הכפתור האולטימטיבית של SERVO !!! זו באמת רק ההקדמה שלי, מקווה שאהבתם. בכל מקרה, בואו נחמם את האצבעות לקראת ההקלדה. (שיר מגניב: שיר יכול (מוזיקה קלאסית)).

אספקה:

-האצבעות שלך

-גם הידיים שלך, זה חשוב

-כבל USB עבור Arduino

-כל סוג של arduino זמין (יש לי את Arduino Mega)

-מקשים מטריקס (לוח מקשים - eBay, לוח מקשים - אמזון)

-מיקרו או סרוו סטנדרטי (אני משתמש בסרוו מיקרו)

-* אופציונלי* לוח לחם - מכל סוג

-* אופציונלי* ספק כוח (5V)

שלב 1: זמן סכמטי

זמן סכמטי!
זמן סכמטי!
זמן סכמטי!
זמן סכמטי!

אז מה עושים קודם? חבר את הארדואינו למחשב. חבר את לוח המקשים הבא. *הערה - עליך לחבר את הפינים מהסיכה האחרונה בלוח המקשים כסיכה הדיגיטלית הראשונה בארדואינו. ועבור מימין לשמאל אחרי זה*. למקלדת יש סיכות 2-9 על הארדואינו. לשרת יש סיכה 10 כאותות דיגיטליים. קשרו את השטח של הארדואינו, לוח המקשים והסרוו וגם 5V. * שימו לב גם - שהסרוו משמש בצורה הטובה ביותר עם מקור חשמל חיצוני או מתאם עם 5V (פלאג -אין לקיר), אך הוא עדיין אופציונלי.* אין צורך לקשור את השטח ו- 5V פיזית, מה שאני מתכוון הוא רק כדי לחבר חוט מהארדואינו לסרוו. סכמטי זה אינו עוזר למתחילים, אז הרשה לי להסביר בפירוט קצר. בעיקרון, הסיכה האחרונה היא 2 והראשונה היא 9, שתיים הן 8, שלוש הן 7 וכן הלאה. עבור משמאל לימין 2 2.

שלב 2: זמן קידוד

זמן קידוד!
זמן קידוד!
זמן קידוד!
זמן קידוד!

אוקיי אז עכשיו אנחנו עוברים לחלק הקידוד! כאן קורה הקסם האמיתי! לכן, יש תוכנית בדיקה לבדיקה ראשית של לוח המקשים והסרוו. פה:

//www.elegoo.com//2016.12.9

/* @קובץ CustomKeypad.pde

|| @גרסה 1.0 || @המחבר אלכסנדר ברוויג || @contact [email protected] || || @תיאור || | מדגים שינוי גודל לוח המקשים וערכי המפתח. || # */ # כולל

שורות const byte = 4; // ארבע שורות

const byte COLS = 4; // ארבע עמודות // הגדירו את המצילים בכפתורי לוח המקשים char hexaKeys [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5 ',' 6 ',' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}}; בתים rowPins [ROWS] = {9, 8, 7, 6}; // התחבר לשורות החריפות של בייט המקשים colPins [COLS] = {5, 4, 3, 2}; // התחבר לסיבוכי העמודות של לוח המקשים

// לאתחל מופע של מחלקת NewKeypad

לוח מקשים customKeypad = לוח מקשים (makeKeymap (hexaKeys), rowPins, colPins, ROWS, COLS);

הגדרת בטל () {

Serial.begin (9600); } לולאת חלל () {char customKey = customKeypad.getKey (); if (customKey) {Serial.println (customKey); }}

//www.elegoo.com//2016.12.08 #כלול

סרוו מיסרבו; // צור אובייקט סרוו לשליטה בסרוו

// ניתן ליצור 12 אובייקטים של סרוו ברוב הלוחות

int pos = 0; // משתנה לאחסון מיקום הסרוו

הגדרת בטל () {

myservo.attach (9); // מחבר את הסרוו על סיכה 9 לאובייקט הסרוו}

לולאת חלל () {

עבור (pos = 0; pos = 0; pos -= 1) {// עובר מ -180 מעלות ל- 0 מעלות myservo.write (pos); // אמור לסרוו ללכת למיקום בהשהיית 'pos' משתנה (15); // ממתין 15 ms עד שהסרוו יגיע למיקום}}

הנה קוד הפרויקט (אני הולך להיות כנה איתך, לא עשיתי הרבה, רק הוספתי את החלק סרוו, תגיד תודה לאנשים שעשו את כל הקוד!):

#כלול Password.h

#כלול לוח מקשים

/*

|| הזנת סיסמה פשוטה באמצעות לוח מקשים מטריקס || 4/5/2012 עדכונים Nathan Sobieck: [email protected] || *

/* הוא לאמת את הסיסמה

//# הוא לאפס ניסיון סיסמה

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

#לִכלוֹל

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

סיסמא סיסמא = סיסמה ("1234");

סרוו מיסרבו; // צור אובייקט סרוו לשליטה בסרוו

#הגדר servoPin 10

שורות const byte = 4; // ארבע שורות

const byte COLS = 4; // עמודות // הגדר את מפתחות התווים של Keymap [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' ב '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}};

בתים rowPins [ROWS] = {9, 8, 7, 6}; // חבר את לוח המקשים ROW0, ROW1, ROW2 ו- ROW3 לסיכות Arduino אלה.

בת colPins [COLS] = {5, 4, 3, 2,}; // חבר את לוח המקשים COL0, COL1 ו- COL2 לסיכות ארדואינו אלה.

// צור את לוח המקשים

לוח מקשים = לוח מקשים (makeKeymap (מקשים), rowPins, colPins, ROWS, COLS);

הגדרת בטל () {

myservo.attach (servoPin); // מחבר את הסרוו על סיכה 9 לאובייקט הסרוו

Serial.begin (9600);

keypad.addEventListener (keypadEvent); // הוסף מאזין לאירועים עבור לוח המקשים הזה

myservo.write (0);

}

לולאת חלל () {

keypad.getKey ();

}

// לדאוג לכמה אירועים מיוחדים

void keypadEvent (KeypadEvent eKey) {switch (keypad.getState ()) {case PRESSED: switch (eKey) {case '*': checkPassword (); לשבור; ברירת מחדל: password.append (eKey); }}}

void checkPassword () {

if (password.evaluate () == true) {Serial.println ("הצלחה"); // הוסף קוד להפעלה אם זה עובד

myservo.write (180);

עיכוב (3000);

myservo.write (0);

איפוס סיסמא();

} אחר אם (password.evaluate () == false) {

Serial.println ("לא נכון");

myservo.write (0);

// הוסף קוד להפעלה אם זה לא עבד

}

}

שלב 3: מה כל זה אומר?

מה המשמעות של כל זה?
מה המשמעות של כל זה?

הקוד למעלה (הראשון) ייתן אות לשרווו "לטאטא" או פשוט לעבור מ -0 ל -180 מעלות. או פשוט להשלים חצי מעגל סיבוב משמאל לימין או מימין לשמאל. אם אתה רוצה עוד פרטים על הקוד אני יכול להגיד לך. רק תשאל בבקשה. אין נזק, רק שאלה קטנה. קדימה, אתה יכול לעשות את זה! בכל מקרה, הקוד באמצע בודק כל כפתור של לוח המקשים. והאחרון של הקוד פשוט "נועל" עם הסרוו כשאתה מקליד את מפתח הסיסמה "1234", ניחשת נכון, לוח המקשים.

שלב 4: פתרון בעיות

פתרון תקלות
פתרון תקלות

ש: לוח המקשים שלי לא עובד.

ת: זכור שהסיכה הראשונה היא 9 אז רד משם. הקפד גם לחבר את הארדואינו ליציאת ה- USB של המחשב ולתכנת את הארדואינו.

ש: סרוו לא עובד.

ת: זכור כי סיכת סרוו היא סיכה 10 וכי אתה זקוק לקרקע משותפת, אם אתה מתחבר היישר מהארדואינו, זכור כי הסיכה הכתומה (על המיקרו סרוו) היא סיכה 10, הסיכה האדומה היא 5V, וה- סיכה חומה היא סיכת ה- GND.

ש: Arduino לא עובד:

ת: חיברת אותו בכלל? זה נשמע כמו בעיה אישית

שלב 5: אם יש לך שאלות, אל תהסס לשאול בחלק ההערות וזכור להירשם

להתראות, תודה שצפית בהדרכה שלי. זה היה כיף.

מוּמלָץ: