תוכן עניינים:
- שלב 1: שימוש ב- Processing.serial
- שלב 2: הבנת המעמד הסידורי
- שלב 3: מחלקה סדרתית של ארדואינו
- שלב 4: בנה בקר פלחי GUI 7
וִידֵאוֹ: חיבור עיבוד וארדואינו ובצע 7 מגזרים ובקר ממשק משתמש GUI: 4 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:13
עבור כמה פרויקטים שעשית צורך להשתמש ב- Arduino מכיוון שהוא מספק פלטפורמת אב טיפוס קלה אך הצגת גרפיקה במסך הטורי של Arduino עשויה להימשך זמן רב ואף קשה לביצוע. אתה יכול להציג גרפים במסך הסידורי של Arduino אך גרפים הם לא הדבר היחיד שתצטרך להציג. כל האובייקטים האינטראקטיביים כמו מחוונים, לחצנים, תוכניות עם פלט דו -ממדי, תלת -ממדי, PDF או SVG ותוכל גם ליצור אנימציות בקלות. מצב התכנות המוגדר כברירת מחדל לעיבוד הוא Java, אך תוכל להחליף אותו ל- Android, p5.js, REPL, CoffeeScript ו- JavaScript. עם זאת, במדריך זה נשתמש במצב תכנות Java.
כל התוכן והקוד זמינים גם ב github שלי כאן.
שלב 1: שימוש ב- Processing.serial
קוד עיבוד
שתי שורות הקוד הראשונות יהיו
ייבוא עיבוד. סדרה.*; MyPort סידורי;
כאן בשורה הראשונה אנו מייבאים את הספרייה - עיבוד ובשורה השנייה אנו יוצרים אובייקט מהמחלקה Serial בשם myPort, אתה יכול לתת לה שם איך שאתה אוהב בהתאם לכללי שמות המזהה.
בעיבוד יש לנו התקנת void () ו- void draw () כאשר void הוא סוג ההחזרה של הפונקציה, תוכל גם לשנות אותו ל- int setup () ו- int draw () או סוג נתונים אחר שאתה אוהב, אך יהיה עליך להחזיר ערך בעל אותו סוג נתונים כמו סוג הנתונים שבו אתה משתמש לפני הפונקציות.
ב- setup () אנו כותבים את ההצהרות שעלינו לבצע פעם אחת ואילו בתיקו () אנו כותבים את ההצהרות שעלינו לבצע מספר פעמים רב. יש לכתוב את שתי שורות הקוד שהוזכרו לעיל מעל הגדרת הריק () מכיוון שהן צריכות להיות בעלות גישה גלובלית.
בהגדרת הריק () נאתחל את האובייקט myPort.
הגדרת בטל () {
גודל (800, 800);
myPort = סידורי חדש (זה, "COM18", 9600);
}
גודל הקו (800, 800); מגדיר את גודל המסך שהוא 800 פיקסלים על 800 פיקסלים.
מילת המפתח חדשה בשורה השנייה משמשת לשמירת מקום לאובייקט בזיכרון, הטענה שמדובר במשתנה התייחסות המתייחס לאובייקט הנוכחי. הטענה COM18 היא הנמל של Arduino מחובר, אנו זקוקים לזה מכיוון שנעביר את הנתונים באמצעות ממשק טורי. המספר 18 עשוי להיות שונה במקרה שלך, תוכל למצוא אותו תחת כלים> יציאה ב- Arduino IDE ו- 9600 הוא קצב השידור שאתה יכול לשנות זאת הן בארדואינו והן בעיבוד.
שלב 2: הבנת המעמד הסידורי
הבונה של סדרת
סידורי (אב, שם שם, baudRate, זוגיות, dataBits, stopBits)
טיעונים:
הורה: השתמש בדרך כלל ב"זה"
baudRate (int): 9600 היא ברירת המחדל
portName (String): שם היציאה (COM1 היא ברירת המחדל)
זוגיות (char): 'N' עבור אף אחד, 'E' עבור זוגיות, 'O' עבור אי -זוגיות, 'M' לסימן, 'S' עבור רווח ('N' היא ברירת המחדל)
dataBits (int): 8 היא ברירת המחדל
stopBits (float): 1.0, 1.5 או 2.0 (1.0 היא ברירת המחדל)
שיטות חשובות:
- myPort.available () - מחזירה את מספר הבייטים הזמינים.
- myPort.clear () - מרוקנת את המאגר ומסירה את כל הנתונים המאוחסנים שם.
- myPort.read () - מחזירה מספר בין 0 ל -255 עבור הבייט הבא שמחכה במאגר.
- myPort.readString () - מחזירה את כל הנתונים מהמאגר כמחרוזת או null אם אין שום דבר זמין.
- myPort.write ("test") - כותב בתים, תווים, ints, בתים , מחרוזות ליציאה הטורית.
- myPort.stop () - עוצר את הנחלת הנתונים ביציאה.
שלב 3: מחלקה סדרתית של ארדואינו
אין צורך לייבא את המחלקה הסדרתית בארדואינו לפני השימוש בה.
בארדואינו יש 2 פונקציות הנקראות setup () ו- loop () ההתקנה פועלת רק פעם אחת אך הלולאה פועלת מספר פעמים. ב- setup () עלינו לכתוב השתמש בשיטת begin () כדי להתחיל את התקשורת הטורית. בארדואינו בניגוד לעיבוד אין צורך להזכיר את הפורט כטיעוני השיטה begin () מכיוון שכבר אנו מציינים את היציאה תוך העלאת הסקיצה בארדואינו.
אז ההתקנה () תיראה כך:
הגדרת בטל () {
Serial.begin (9600); // התחל את התקשורת הסדרתית
}
9600 כאן מציין את קצב השידור שהזכרנו זאת גם בקובץ העיבוד. לתקשורת נכונה שני קצבי השידור צריכים להיות שווים או שאתה עשוי לראות את הפלט הטורי כמשהו זבל.
עכשיו נראה את החלק של הלולאה (). חלק זה של הקוד פועל מספר פעמים. אם נרצה לקרוא כמה נתונים לפי היציאה נשתמש בשיטת Serial.read (). פונקציה זו מחזירה null אם אין נתונים זמינים ולכן נקרא לשיטה זו רק כאשר יש לנו נתונים זמינים בזרם הסידורי.
כדי לבדוק אם יש נתונים זמינים נשתמש בשיטת Serial.available (). אם הוא מחזיר ערך גדול מ -0 - נתונים מסוימים זמינים.
אז חלק הלולאה () ייראה כך:
לולאת חלל () {
אם (Serial.available ()> 0) {// אם יש נתונים מסוימים ביציאה הטורית
char char = Serial.read (); // קרא את הערך
// אם הצהרות או החלפת מקרה
}
}
כעת נוכל להשתמש אם סולם או אם ישנן תוצאות אפשריות רבות נוכל להשתמש במקרה מתג גם למצב משתנה.
שלב 4: בנה בקר פלחי GUI 7
הקבצים מצורפים כאן. הערה: לצורך עיבוד תצטרך להתקין גם את ספריית ה- p5 הפקודה בה השתמשתי ליצירת לחצנים אינטראקטיביים של GUI.
מספרי סיכה
7 מקטעים (בסדר אלפביתי) מפנים את התמונה
א - סיכה דיגיטלית 2
ב - סיכה דיגיטלית 3
c - סיכה דיגיטלית 4
d - סיכה דיגיטלית 5
e - סיכה דיגיטלית 6
f - סיכה דיגיטלית 7
g - סיכה דיגיטלית 8
dp - סיכה דיגיטלית 9
כל התוכן והקוד זמינים גם ב github שלי כאן
מוּמלָץ:
ממשק משתמש אוטומטי למכירה מודרנית באמצעות פאי של פטל עם DJANGO: 4 שלבים
ממשק משתמש אוטומטי של מכונות אוטומטיות באמצעות RASPBERRY PI עם DJANGO: האם אנו יכולים ליצור ממשק משתמש מודרני באמצעות שפות אינטרנט למכונות אוטומטיות? התשובה שלמעלה היא כן, אנחנו יכולים. אנחנו יכולים להשתמש בכאלו למכונות אוטומטיות באמצעות מצב קיוסק. הרעיון הבא כבר יישמתי על הפרויקט הקיים שלי וזה עובד מצוין ואנו בודקים
כיצד לשלוט על מנוע סרוו ממחשב עם ממשק משתמש: 5 שלבים
כיצד לשלוט על מנוע סרוו ממחשב עם GUI: motor מנוע סרוו को מחשב interface ממשק משתמש גרפי (GUI) के באמצעות בקרה Shareरने के लिए में अपनी נתח הניתן להנחיה हूँर रहा हूँ myblog-www.mechanic37.com से आप ऐसे बहुत से פרויקט Read सकते है इस קריאה להוראה करें जिसके द्वारा अपने अपने מחשבים אישיים
עיצוב תפריט ARDUINO עם ממשק משתמש OLED (ממשק משתמש): 4 שלבים
עיצוב תפריט ARDUINO עם OLED-UI (ממשק משתמש): היי כולם! במדריך זה אנסה להסביר כיצד ליצור עיצוב תפריט ARDUINO באמצעות מסך OLED i2c. הוא ידוע גם בשם ממשק משתמש (ממשק משתמש). הוא משמש לפרויקטים רבים אך הוא חייב להיות מוכר לך ממדפסות תלת מימד :) כאן גם סרטון
חיווט נוריות חיבור סדרה נכונה מול חיבור מקבילי: 6 שלבים
חיווט נוריות נכונות סדרה מול חיבור מקבילי: בהנחיה זו אנו מדברים על דיודות דיודות פולטות אור וכיצד נוכל לחבר אותן אם יש לנו מספר יחידות. זהו שיעור אחד שהלוואי שידעתי מההתחלה כי עוד כשהתחלתי להתעסק במעגלים אלקטרוניים בניתי כמה
כיצד לשלוט בלדים עם עיבוד וארדואינו: 5 שלבים
כיצד לשלוט בלדים עם עיבוד וארדואינו: לפני כמה ימים התעמתתי עם בעיה מעניינת, הייתי צריך לשלוט על סדרת נורות מאינטראקציה על מסך המחשב וזה היה צריך להיות זול ככל האפשר. מיד חשבתי על ארדואינו. היה בו כל