אמנם פטל פי וארדואינו הם שתי חומרה שונות מבחינת היישומים והמבנה שלהם, אך שניהם נחשבים כשתי פלטפורמות חומרה קוד מתחרות. לשניהם יש קהילה ותמיכה חזקים מאוד. היום נשנה מעט דברים ונראה לכם כיצד אנו יכולים לנצל את שניהם. אם יש לך גם לוחות Arduino ו- Raspberry pi, מאמר זה יראה לך כיצד להשתמש ב- Raspberry pi ו- Python כדי לשלוט על Arduino.
נשתמש בקושחת PyFirmata בכדי לתת פקודות לארדואינו באמצעות סקריפט פיתון של Raspberry Pi. PyFirmata היא בעצם חבילת ספריה שנבנתה מראש של תוכנית פיתון שניתן להתקין בארדואינו כדי לאפשר תקשורת טורית בין סקריפט פיתון בכל מחשב לארדואינו. חבילת פיתון זו יכולה לתת גישה לקרוא ולכתוב כל סיכה על הארדואינו. אז הנה נפעיל את תוכנית הפיתון בארדואינו באמצעות פטל פטל.
אז במדריך זה ננצל את הספרייה הזו ונשתמש בזה בלוח Arduino שלנו כדי לשלוט על Arduino באמצעות Raspberry Pi.
דרישות
- Raspberry Pi עם מערכת הפעלה Raspbian מותקנת בו
- Arduino Uno או כל לוח Arduino אחר
- כבל USB מסוג Arduino
- לד
במדריך זה אני משתמש בצג חיצוני באמצעות כבל HDMI לחיבור ל- Raspberry Pi. אם אין לך צג, אתה יכול להשתמש בלקוח SSH (Putty) או בשרת VNC כדי להתחבר ל- Raspberry pi באמצעות מחשב נייד או מחשב. אם אתה מוצא קושי כלשהו, עקוב אחר המדריך שלנו להתבונן בו עם פטל פי.
התקנת PyFirmata בארדואינו באמצעות פטל פטל
כדי להעלות את הקושחה של PyFirmata בארדואינו, עלינו להתקין את Arduino IDE ב- Raspberry Pi. בצע את השלבים הבאים להתקנה:
שלב 1: - חבר את ה- Raspberry Pi לאינטרנט. פתח את מסוף הפקודה והקלד את הפקודה הבאה ולחץ על Enter
sudo apt - לקבל - y להתקין Arduino Python - כַּספִּיתִי סדר
חכה כמה דקות, זה ייקח זמן. פקודה זו תתקין את ה- Arduino IDE ב- Raspberry Pi שלך.
שלב 2: - כעת נתקין קבצי pyFirmata באמצעות github הנתון:
שיבוט git https://github.com/tino/pyFirmata
לאחר מכן הפעל את הפקודה הבאה:
cd pyFirmata sudo python setup.py להתקין
שלב 3: - התקנו את כל הקבצים וההגדרות הנדרשות.
כעת חבר את לוח ה- Arduino שלך ל- Raspberry Pi באמצעות כבל USB והפעל את Arduino IDE על ידי הקלדת arduino בחלון המסוף.
שלב 4: - ואז הקלד את הפקודה lsusb כדי לבדוק אם ארדואינו מחובר לפאי הפטל שלך.
ב- Arduino IDE, עבור אל כלים ובחר את הלוח ואת היציאה הטורית שלך.
שלב 5: - העלה את הקושחה של PyFirmata בארדואינו על ידי לחיצה על קובץ -> דוגמאות -> Firmata -> Firmata רגילה ואז לחץ על כפתור ההעלאה. כפי שמוצג מטה.
התקנו בהצלחה את הקושחה pyFirmata בלוח Arduino. כעת, אנו יכולים לשלוט בארדואינו באמצעות פטל פטל.
להדגמה ואנו למצמץ ונמוג נורית על Arduino ידי כתיבת קודים פיתון פטל Pi.
הסבר קוד
עבור חלק קידוד, עליך לקרוא תיעוד של pyFirmata להבנה טובה יותר. נשתמש בפונקציות pyFirmata כדי לכתוב את הקוד שלנו. תוכל למצוא תיעוד של pyFirmata על ידי לחיצה על הקישור.
אז בואו נתחיל לכתוב את הקוד
פתח את עורך הטקסט המועדף עליך ב- Raspberry Pi וייבא את ספריית pyFirmata.
ייבא pyfirmata
הגדר סיכה על הארדואינו לחיבור ה- LED
led_pin = 9
כעת עלינו לכתוב שם יציאה טורית שעליה מחובר לוח Arduino באמצעות פונקציית pyfirmata. Arduino () ואז ליצור מופע על ידי הקצאת יציאה במשתנה לוח .
לוח = pyfirmata.Arduino ("/ dev / ttyACM0") הדפס "קוד פועל"
בשנת בעוד לולאה, הופכים LED גבוהה סיכה ונמוך באמצעות board.digital.write () פונקציה ועיכוב תן באמצעות board.pass_time () פונקציה.
בעוד נכון: board.digital.write (0) board.pass_time (1) board.digital.write (1) board.pass_time (1)
הקוד שלנו מוכן, שמור קוד זה על ידי הצבת סיומת .py לשם הקובץ.
פתח את מסוף הפקודה והקלד python blink.py להפעלת הקוד בלוח Arduino. וודא כי לוח ה- Arduino מחובר ללוח ה- Raspberry Pi באמצעות כבל USB.
עכשיו, אתה יכול לראות נורית מהבהבת על לוח Arduino.
הקוד השלם להבהוב LED באמצעות pyFirmata ניתן בסוף.
דוהה נורית על Arduino באמצעות pyFirmata
כעת, אנו נכתוב קוד לדהיית הנורית כדי להכיר יותר את הפונקציות pyFirmata. קוד זה קל כמו הקודם. אתה צריך להשתמש בשני עבור לולאות, אחת עבור בהירות עלייה ואחרות עבור בהירות ירידה.
בקוד זה הגדרנו את הסיכות בצורה שונה כמו led = board.get_pin ('d: 9: p') כאשר d פירושו סיכה דיגיטלית . זוהי פונקציה של ספריית pyFirmata. קרא את התיעוד לפרטים נוספים.
הקוד השלם לדהיית נוריות באמצעות pyFirmata ניתן בסוף.
עכשיו, אתה יכול להוסיף חיישנים נוספים למערכת שלך ולהפוך אותה למגניבה יותר, לבדוק את הפרויקטים האחרים שלנו ב- Arduino ולנסות לבנות אותם באמצעות Raspberry pi ו- python script.