Raspberry Pi הוא לוח מבוסס מעבד ארכיטקטורה של ARM המיועד למהנדסים אלקטרוניים וחובבים. ה- PI היא אחת מפלטפורמות פיתוח הפרויקטים המהימנות ביותר שקיימות כעת. עם מהירות מעבד גבוהה יותר ו- 1 GB RAM, ניתן להשתמש ב- PI לפרויקטים רבים בפרופיל גבוה כמו עיבוד תמונה ואינטרנט של הדברים.
לצורך ביצוע פרויקטים בפרופיל גבוה, יש להבין את הפונקציות הבסיסיות של PI. אנו נסקור את כל הפונקציות הבסיסיות של פטל פאי במדריכים אלה. בכל הדרכה נדון באחת הפונקציות של PI. בסוף סדרת הדרכה זו של פטל, תוכל לבצע פרויקטים בעלי פרופיל גבוה בעצמך. עבור להדרכות למטה:
- תחילת העבודה עם פטל פי
- תצורת פטל פי
- נורית LED מהבהבת
- ממשק כפתור פטל פי
- דור ה- PWM של פטל פי
- שליטה במנוע DC באמצעות Raspberry Pi
- בקרת מנוע צעד עם פטל פי
במדריך זה להרשמת משמרת של פטל, נתממש את הרשמת המשמרת עם פי. ל- PI 26 פינים של GPIO, אך כשאנחנו מבצעים פרויקטים כמו מדפסת תלת-ממדית, סיכות הפלט שמספקות PI אינן מספיקות. לכן אנו זקוקים ליותר סיכות פלט, להוספת סיכות פלט נוספות ל- PI, אנו מוסיפים Shift Register Chip. שבב Shift Register לוקח נתונים מלוח PI באופן סדרתי ונותן פלט מקביל. השבב הוא של 8 ביט, כך שהשבב לוקח 8 ביטים מה- PI באופן סדרתי ואז מספק את פלט ההיגיון של 8 ביט דרך 8 פינים של פלט.
עבור רישום משמרות של 8 סיביות, אנו נשתמש ב- IC 74HC595. זה שבב עם 16 PIN. תצורת הסיכה של השבב מוסברת בהמשך בהדרכה זו.
במדריך זה נשתמש בשלושה סיכות GPIO של PI כדי לקבל שמונה יציאות מ- Shift Register Chip. זכור שכאן ה- PIN של השבב מיועד לפלט בלבד, ולכן איננו יכולים לחבר חיישנים כלשהם לפלט השבבים ולצפות שה- PI יקרא אותם. נוריות LED מחוברות ביציאת השבב כדי לראות את הנתונים של 8 סיביות שנשלחו מ- PI.
נדון קצת בפיני פטל GPIO של פטל לפני שנמשיך הלאה,
ישנם 40 סיכות פלט של GPIO ב- Raspberry Pi 2. אך מתוך 40 ניתן לתכנת רק 26 סיכות GPIO (GPIO2 ל- GPIO27). חלק מהפינים הללו מבצעים כמה פונקציות מיוחדות. עם הצבת GPIO מיוחד, נותרו לנו רק 17 GPIO. כל אחד מ -17 סיכות ה- GPIO הללו יכול לספק זרם מקסימלי של 15mA. וסכום הזרמים מכל סיכות GPIO אינו יכול לעלות על 50mA. למידע נוסף על סיכות GPIO, עברו על: LED מהבהב עם Raspberry Pi
רכיבים נדרשים:
כאן אנו משתמשים ב- Raspberry Pi 2 דגם B עם Raspbian Jessie OS. כל דרישות החומרה והתוכנה הבסיסיות נדונו בעבר, אתה יכול לחפש את זה במבוא לפטל, מלבד זה שאנחנו צריכים:
- סיכות חיבור
- 220Ω או 1KΩ נגד (6)
- נורית (8)
- קבלים 0.01 μF
- 74HC595 IC
- לוח לחם
תרשים מעגל:
Shift Register IC 74HC595:
בואו נדבר על ה- PIN של רישום ה- SHIFT שאנו נשתמש כאן.
שם סיכה |
תיאור |
Q0 - Q7 |
הם סיכות הפלט (מלבן אדום), שם אנו מקבלים נתונים מקבילים של 8 סיביות. נחבר אליהם שמונה נוריות כדי לראות את הפלט המקביל. |
פין נתונים (DS) |
נתונים ראשונים נשלחים טיפין טיפים לסיכה זו. כדי לשלוח 1, אנו מושכים את סיכת ה- DATA גבוהה וכדי לשלוח 0 אנו מושכים את סיכת ה- DATA. |
סיכת שעון (SHCP) |
כל דופק בסיכה זו מאלץ את הרושמים לקחת פיסת נתונים אחת מסיכת DATA ולאחסן אותה. |
פלט משמרת (STCP) |
לאחר קבלת 8 ביטים, אנו מספקים דופק לסיכה זו כדי לראות את הפלט. |
זרימת עבודה:
נעקוב אחר תרשים הזרימה ונכתוב תוכנית מונה עשרונית ב- PYTHON. כאשר אנו מריצים את התוכנית, אנו רואים ספירת LED באמצעות Shift Register ב- Raspberry Pi.
הסבר לתכנות:
לאחר שהכל מחובר לפי דיאגרמת המעגל, אנו יכולים להפעיל את ה- PI כדי לכתוב את התוכנית ב- PYHTON.
נדבר על כמה פקודות בהן נשתמש בתוכנית PYHTON, אנו הולכים לייבא קובץ GPIO מהספרייה, הפונקציה הבאה מאפשרת לנו לתכנת סיכות GPIO של PI. אנו גם משנים את השם "GPIO" ל- "IO", ולכן בתוכנית בכל פעם שברצוננו להתייחס לסיכות GPIO נשתמש במילה 'IO'.
ייבא את RPi.GPIO כ- IO
לפעמים, כאשר סיכות ה- GPIO, בהן אנו מנסים להשתמש, עשויות לבצע פונקציות אחרות. במקרה כזה נקבל אזהרות בזמן ביצוע התוכנית. הפקודה למטה אומרת ל- PI להתעלם מהאזהרות ולהמשיך בתוכנית.
IO.setwarnings (שקר)
אנו יכולים להפנות את סיכות ה- GPIO של PI, על ידי מספר סיכה על הלוח או על ידי מספר הפונקציה שלהן. כמו 'PIN 29' על הלוח הוא 'GPIO5'. אז אנו אומרים כאן או שנציג את הסיכה כאן על ידי '29' או '5'.
IO.setmode (IO.BCM)
אנו מגדירים סיכות GPIO4, GPIO5 ו- GPIO6 כפלט
IO.setup (4, IO.OUT) IO.setup (5, IO.OUT) IO.setup (6, IO.OUT)
פקודה זו מבצעת את הלולאה 8 פעמים.
עבור y בטווח (8):
בעוד 1: משמש לולאת אינסוף. באמצעות פקודה זו ההצהרות בתוך הלולאה הזו יבוצעו ברציפות.
הסבר נוסף על התוכנית מופיע בסעיף הקוד להלן. יש לנו את כל ההוראות הדרושות כדי לשלוח נתונים לרשום SHIFT כעת.