ישנם מספר "Arduinos" עם יכולות זיכרון הנעות בין מעט פחות מ 32k / 2k / 16MHz (Flash / RAM / CPUClock) ("Uno") ועד 512k / 96k / 84MHz ("Due".) בנוסף, יש הם לוחות "תואמים בעיקר" המרחיבים את הטווח עד פחות מ- 8k / 512 / 8MHz ("Gemma", "Digistump") ועד לכ -1M / 256k / 120MHz (TI "EK-TM4C1294XL Launchpad"), ו"משהו לוחות "תואמים עם 4G / 1G / 400MHz (אינטל" אדיסון ")
אם אלה מספיקים ל"רובוטיקה מלאה" תלוי במה שאתה חושב שזה אומר. אדיסון הוא כנראה המתמודד היחיד אם אתה רוצה לכלול ראיית מחשב, למשל, וזה כנראה לא עושה את זה טוב מאוד. ("למה ציפית בליבה אחת בלבד ב -400 מגה-הרץ ?!")
גם Arduinos הקטנים כנראה לא תומכים ב"ספריות הגדולות מאוד "שלך. לדוגמא, בעוד ש"שפת Arduino "היא טכנית C ++, התמיכה ב- C ++ STL אינה כלולה בגלל מגבלות של המעבדים הקטנים המשמשים וסביבת זמן הריצה שלהם.
32k של זיכרון התוכנית (על Uno פופולרי מספיק ל"אלפי שורות קוד ", אבל אני חושב שרובוטיקה נוטה לרוץ לעבר הרבה יותר מכך. הכמות הקטנה של זיכרון RAM הזמין ברוב המיקרו-בקרים מבוססי-פלאש נוטה להוות מגבלה רצינית כשמתחילים לבחון אלגוריתמים סטנדרטיים עתירי נתונים. 32k / 2k נעלמים די מהר אם מתחילים ליישם ממשק משתמש נרחב, רשתות או גרפיקה. הייתי אומר שארדואינו של Uno-class מתאים להטמעת רכיבי מערכות רובוטיקה (נהגי מנוע, ניהול חיישנים וכו '), אך כנראה לא רובוט שלם.
דוגמה טובה לתוכנות גדולות דמויות רובוטיקה. שפועל על חומרה מסוג Arduino ניתן למצוא כנראה במדפסת התלת מימד. קושחת "מרלין" פועלת על ארדואינו מגה או שווה ערך (256k / 8k / 16MHz) (עם מגן RAMPS), וישנן חבילות דרייבר חלופיות הפועלות על חומרה קטנה וגדולה יותר כמו ארדואינו. מרלין הוא כ -280,000 שורות קוד, על פי cloc.
לרוב החומרה של Arduino אין זיכרון הניתן להרחבה. ה- AVR cpus אינו יכול להריץ קוד אלא מהפלאש הפנימי שלהם, ולמעטים מהלוחות האחרים יש אוטובוס זיכרון כלשהו שיכול לשמש להרחבה.