תוכנת פרוססינג (processing) היא תוכנה שיושבת על המחשב שלנו ויכולה לעבוד בשיתוף פעולה עם ארדואינו. מכיוון שלמחשב אין רגלי קלט/פלט כמו לארדואינו התוכנה הזו מגשרת ביניהם כדי לאפשר למחשב להתממשק עם העולם הפיזי. את התוכנה אפשר להוריד כאן:
אחרי שהורדנו אותה אפשר לראות שהיא מזכירה מאוד את סביבת הפיתוח של ארדואינו. גם בה יש שתי פונקציות שנדרשות להפעלת הסקיצה:
void setup(){ } void draw(){ }
פונקציית draw רצה בלולאה ומציירת על המסך את הצורות והצבעים לפי מה שנכתב בסקיצה. האינטראקציה עם התוכנה היא בדרך כלל עם המקלדת והעכבר והנה תוכנה טיפוסית שבה שולטים בפרקטלים עם העכבר:
אך במקרה של ארדואינו אנחנו מוסיפים עוד מימד ולכן כל מה שנעשה עם ארדואינו יכול להיות מוצג על המסך. אפשר גם ליצור תקשורת הפוכה ואז התוכנה היא זו ששולטת בארדואינו. התקשורת בין התוכנה לארדואינו נעשית כמובן בתקשורת טורית.
הנה דוגמה לשתי תוכנות טיפוסיות בפרוססינג:
- בתוכנה הראשונה ניצור ממשק משתמש בתוכנת פרוססינג ששולט ברגליים של ארדואינו
- בתוכנה השנייה ניצור משחק פונג שנשלט על ידי ג’ויסטיק שמחובר לארדואינו
ממשק שליטה בארדואינו
מה שקורה כאן זה שאנחנו מציירים עיגולים על הרגליים של ארדואינו כדי לכבות ולהדליק אותם. אפשר להשתמש בזה כאפליקציה לבית חכם או לשימושים אחרים שמצריכים הדלקה וכיבוי של רגליים על ידי המשתמש.
כשצבע הכפתור הוא אדום הרגל כבויה וכשהוא ירוק היא דלוקה, הרגליים האלה הם פלט בארדואינו. את רגל 2 אנחנו מקצים להיות קלט בארדואינו ויש לנו חיווי לדעת אם כפתור נלחץ. רגליים A0-A5 הם אנלוגיות ויכולות לתת מידע מחיישנים אנלוגים.
זה מה שקורה בצד של המחשב בתוכנת הפרוססינג:
וזה מה שקורה בצד של הארדואינו :
לחיצה על 13 מדליקה אור אדום, 12 מדליקה אור ירוק וששניהם לחוצים יש אור צהוב.
בנוסף שלוחצים על הכפתור בג’ויסטיק פין מספר 2 הופך לירוק.
ככה אפשר ליצור ממשק משתמש לכיבוי והפעלה של כל הפינים.
הקוד של פרוססינג הוא לא פשוט וצריך כל הזמן לצייר על המסך כדי לראות צבעים וצורות. כל סיבוב של הלולאה DRAW צריך מחדש לצייר ולעשות את השינויים הדרושים. היתרון הוא שהקוד רץ על המחשב אז מבחינת מהירות וכח מחשוב אין לנו בעיה בכלל.
יש פה קטע מעניין – שתי התוכנות של ארדואינו ופרוססינג נראות בדיוק אותו דבר אז שוכחים שאחת רצה על מיקרו-בקר והשנייה על מחשב לכן יש פה צורך בהשהיות קטנות וניקוי פורט בצד של המחשב. פרוססינג רצה במהירות מטורפת בעוד התוכנה של ארדואינו מזדחלת לאיטה במהירות 16MHz.
משחק פונג
פה אנחנו יוצרים משחק פונג על המחשב ושולטים בו בג’ויסטיק דרך הארדואינו.
והנה הקוד
אפשר לשלוט במהירות הכדור ובגודל הכדור. אפשר ליצור מוזיקת רקע. וכמו שאפשר לראות אפשר להשתמש בצבעים פסיכדליים שהכדור נוגע בקיר.
פרוססינג היא תוכנה מאוד מעניינת וחבל שלא הרבה משתמשי ארדואינו מכירים או משתמשים בה.
שימו לב לכמה דוגמאות שאומנים ומעצבים עשו איתה.