ארדואינו

אַרְדוּאִינוֹ (מאיטלקית: Arduino) הוא מיקרו-בקר בעל מעגל מודפס יחיד (Single Board MicroController), עם סביבת פיתוח משולבת (IDE) ברישיון קוד פתוח, אשר מטרתה ליצור סביבה נוחה וזולה לפיתוח פרויקטים המשלבים תוכנה עם רכיבי אלקטרוניקה.

לארדואינו קהילת משתמשים גדולה ומדריכים מקוונים המסייעים להוריד את חסם הכניסה לתחום הפיתוח המשלב חומרה ותוכנה.

היסטוריה
ארדואינו החל כפרויקט לסטודנטים במכון לתכנון אינטראקציה, איווריאה, איטליה. השם "ארדואינו" הוא כשמו של בר באיווריאה, בו כמה ממייסדי הפרויקט נהגו להיפגש. הבר עצמו קרוי על שמו של ארדואין מאיוורה מרקיז איווריאה בין השנים 990-999 ומלך איטליה בין השנים 1002 עד 1014.

רכיבי הארדואינו

חומרה 
רכיב החומרה העיקרי על המעגל המודפס של הארדואינו הוא מיקרובקר בן 8 סיביות מסדרת AVR של חברת ATMEL, אשר מריץ את התוכנה ומכיל זיכרון הבזק (Flash Memory) לאחסונה.

לארדואינו גרסאות חומרה שונות למטרות שונות. לדוגמה, ה-LilyPad הוא לוח ארדואינו בעיצוב דק הניתן לקיפול, וניתן לתופרו לתוך בגד.

המעגל המודפס מכיל בנוסף, כמעט תמיד:
 בקר USB וחיבור USB, המשמש לטעינת התוכנה, וכמקור מתח אפשרי
 מייצב מתח עם ערך של 5 וולט ושקע לכבל חשמלי
 14 פינים (ולפעמים יותר) לחיבורי חיישנים או התקני חומרה אחרים
 6 פינים מתוכם מסוגלים לקבל קלט אנלוגי בדיוק של 10 ביט
 6 פינים מתוכם מסוגלים לייצר Pulse-Width Modulated Signal
 מתנד המספק אות שעון בתדירות של 16 MHZ

תוכנה 
סביבת הפיתוח של ארדואינו מאפשרת כתיבת תוכניות, הדרתן וצריבתן (Flashing) לארדואינו.
שפת התכנות לארדואינו היא C או C++ או פייתון בגרסה מיוחדת, והסביבה מגיעה עם תוכניות דוגמה רבות, על מנת להקל על משתמשים חדשים. כמו כן, ניתן לשלוח פקודות לבקר וכן גם לבצע בקרה על פעולות שמתרחשות בזמן אמת {עם דיליי קטן}.

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

אחת מתוכניות הדוגמה של ארדואינו גורמת להבהוב של נורית LED המחוברת לפין מס' 13:
#define LED_PIN 13

void setup () {
 pinMode (LED_PIN, OUTPUT); // הגדרת יציאה מס' 13 כפלט, או ספקית מתח
}

void loop () {
 digitalWrite (LED_PIN, HIGH); // הדלקת הנורית על ידי אספקת מתח ליציאה
 delay (1000); // המתנה של שנייה או 1000 מילישניות
 digitalWrite (LED_PIN, LOW); // כיבוי הנורית על ידי הפסקת המתח ליציאה
 delay (1000); // המתנה של שנייה
}

סביבת הפיתוח עצמה פותחה בשפת Java, וכך מתאפשרת הרצתה על מערכות הפעלה שונות כגון Windows, לינוקס, ו-OSX.

לוחות הרחבה 

יצרנים שונים בנו לוחות הרחבה רבים לארדואינו (Arduino Shields) שמרחיבים את יכולותיו. את הלוחות מרכיבים על מערך הפינים של הארדואינו, וניתן אף להרכיב לוחות זה על גבי זה.

להלן מספר דוגמאות ללוחות הרחבה:
 לוח הרחבה לרשת אלחוטית
 לוח הרחבה לרשת מקומית
 לוח הרחבה להפעלת מנועים
 לוח הרחבה להתקן ופרוטוקול CAN-BUS, פרוטוקול המשמש לתקשורת עם מחשב הרכב

רישוי 
תרשימי הבנייה של הארדואינו פתוחים ומוגנים ברישיון קוד פתוח. מותר לבנות ולמכור לוחות ארדואינו, ולכנותם 'תואמי ארדואינו'.

ברם, על מנת להשתמש במותג "Arduino", יש צורך לרכוש רישיון שהכנסותיו משמשות לקידום פרויקטי ארדואינו, ולעמוד בדרישות איכות.

בפועל, קיימים בשוק לוחות משני הסוגים הנ"ל.

רכיבים המתקשרים עם הארדואינו 
יש מספר רב של רכיבים הנפוצים בין היתר בשימוש עם הארדואינו. הרכיבים הללו מאפשרים לבנות פרויקטים, לבצע ניסויים, לביצוע מדידות ועוד.

להלן מספר רכיבים לדוגמה:
 לד (LED)
 מנוע סרוו Servo Motor)
 מנוע זרם ישר (DC Motor)
 חיישן לזיהוי אלכוהול
 חיישן אולטרה סאונד (Ultrasonic Sensor)
 חיישן לזיהוי מים
 תצוגת LCD
 תצוגת שבעה מקטעים

שימושים לדוגמה 

ישנם פרויקטים רבים ומגוונים שעשו שימוש בארדואינו.

להלן כמה דוגמאות:
 מנעול לדלת הנפתח בנקישה סודית
 רובוט הפותר קובייה הונגרית
 שלט רחוק אוניברסלי
 אוסצילוסקופ קוד פתוח
מכונת מזון
מעלית חשמלית
טנק חכם
כספת חכמה

ראו גם 
 סביבת MSP430
 מערכת משובצת מחשב
 ESP
 Lora

לקריאה נוספת 
 ריכוז הספרים על ארדואינו (אנגלית)  באתר ArduinoBooks

קישורים חיצוניים 

 

 מדריך עברי לארדואינו  באתר HWZone
 קבוצת חובבי ארדואינו בישראל (עברית)
 האתר הרשמי של ארדואינו (אנגלית)
 קהילת משתמשי ארדואינו (אנגלית)

הערות שוליים 

מיקרו-בקרים
איטליה: המצאות