מבוא פתוח-מקור Microcontroller Platforms for Hobbyists

עולם התחביבות האלקטרוניקה עבר טרנספורמציה על ידי פלטפורמות מיקרו-בקר בקוד פתוח.אלה כלים זולים, תכליתיים וקהילתיים מעצימים יצרנים, סטודנטים ואנשי מקצוע לאבן-טיפוס כל דבר ממצמץ LEDs ועד מערכות אוטומציה ביתיות מתוחכמות.בניגוד לפתרונות קנייניים, פלטפורמות קוד פתוח מציעות עיצובים שקוף, ערכות פיתוח תוכנה זמינות באופן חופשי (SDKs), ומערכת אקולוגית משגשגת של קוד משותף ומדריכים משותפים.

בחירת הפלטפורמה מיקרובקר הנכון יכול להיות מרתיע בהתחשב באפשרויות רבות הזמינות.כל פלטפורמה יש נקודות חוזק ייחודיות: כמה להקלה מוקדמת של שימוש למתחילים, אחרים להתמקד קישוריות אלחוטית עבור האינטרנט של דברים (IoT) פרויקטים, ועדיין אחרים שואפים לביצועים בזמן אמת ביישומים תעשייתיים. מאמר זה מספק השוואה מפורטת של פלטפורמות מיקרו-בקר פתוח-בקר פתוח;Arduino, 82/ESPO, דרישות על בסיס קלטת, ו-Prafcto-ofcvone.

מפתחי מפתח לשקול בעת בחירת פלטפורמת מיקרובקר

לפני צלילה לתוך מפרט פלטפורמה, חיוני להבין את הקריטריונים החשובים ביותר עבור פרויקטים התחביבים:

  • (FLT:0) ניהול כוח וזיכרון: מהירות השעון של 1FIRLT, RAM ומחסן פלאש קובעים כמה מורכב תוכנית אתה יכול לרוץ.
  • אפשרויות להתאמה:0 (Connectivity Options:FLT:1Build-in Wi-Fi, Bluetooth, Ethernet, או יכולות מארחות USB הן קריטיות לפרויקטים של IoT ותקשורת.
  • (ב) ויקרא י"א: ויקרא י"א): "המספר של לוחות GPIO, הזנת אנלוגי, ערוצי PWM, ותמיכה בפרוטוקולים כמו IveFLT:2033FLT 3C, SPI ו-UART.
  • (FLT:0) שיפור שפה וסביבה: חלק מהפלטפורמות מציעות IDEs ידידותיים למתחילים (Arduino IDE), בעוד אחרים תומכים C / C++, MicroPython, או אפילו התפלגות לינוקס מלאה.
  • (ב) קומוניזם ומערכת אקולוגית: 1FLT:1 Availability של ספריות, מגינים, לוחות פורצים ופורומים פעילים לפתרון בעיות.
  • (FLT:0) Cost:BuildFLT:1) מחירי מועצת המנהלים נע בין 5 $ ל- 60 $, המשפיעים על תקציב עבור פרויקטים בקנה מידה גדול או חינוך.

ניתוח פלטפורמה

Arduino: The Beginner's Best Friend

Arduino הוא השם המוכר ביותר בחומרה מיקרו-בקר בקוד פתוח. שפותחה במקור באיטליה למטרות חינוכיות, פלטפורמת Arduino כוללת כעת עשרות גרסאות לוח כולל Uno הקלאסי, ננו, מגה, ומודלים עדכניים יותר כמו Arduino Due (ARM-based) ו-ArduinoR סדרת הסימון שלה הוא הפשטות של ArduinoDE, אשר משתמשת בתצורה פשוטה של C.

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

(FLT:0)Pros:BuildFLT:1) מאוד ידידותי, קהילה גדולה, מבחר עצום של ספריות ומגינים, יציב 5V לוגיקה (חיישנים מונים פועלים ישירות).

(FLT:0)Cons:BuildFLT:1) כוח עיבוד מוגבל (8 סיביות AVR עבור Uno, לא קישוריות אלחוטית מובנה במודלים בסיס, עלות גבוהה יחסית בהשוואה לפלטפורמות חדשות יותר עם היבטים דומים.

Arduino נשאר בחירה חזקה עבור חינוך פרויקטים מורכבים נמוך. עבור יישומים מתקדמים יותר, לשקול את לוחות ARM של Arduino, כגון Due או Portenta H7, המציע ביצועים גדולים יותר.

ESP8266 ו- ESP32: ⁇ IoT במחירים נמוכים

Espressif Systems מהפכה בתחביבי IoT עם ESP8266, מיקרובקר זעיר הכולל Wi-Fi משולב ונמכר עבור מתחת 5. יורשו, ESP32, מוסיף מעבדי Bluetooth קלאסי וBLE, כפול-core, יותר RAM, ופריפריה נוספת. שבבים אלה הפכו להיות עמוד השדרה של אינספור מכשירים חכמים, תחנות מזג אוויר, ורשתות חיישן אלחוטיות.

ESP32 הוא משכנע במיוחד: הוא כולל שתי ליבות Tensilica Xtensa LX6 (אחד או שניהם ניתן להשתמש), עד 520 KB של SRAM, 16 MB של פלאש (חיצוני), ותמיכה Wi-Fi 802.11 b / g /n, Bluetooth v4.2, ו- BLE.I / O כולל מספר ADCs, DACs, , חיישנים מגע ו- CMI יכול להיות cc-DIDIDIDIDID (D) עם cc-DIDIDIDIDO, , , CMDIDIDO, , CMDIDIDIDIDIDIDI (D) עם CMDO, , CMDIDIDIDIDIDIDIDI, CMDI / CMDIDI / CMDID2, CM, עם CMDI / CMDI / CMDI, CM, CMDI / CMD2, CM, CMDI / CM, CMDI, CM, CM,

(FLT:0)Pros:IRFLT:1 בעלות נמוכה מאוד, בנוי Wi-Fi ו Bluetooth, ביצועים גבוהים עבור המחיר, הקהילה פעילה, זמין נרחב לוחות פיתוח (למשל, NodeMCU, DevKitC).

(FLT:0)Cons:cioFLT:1 לוגיקה 3.3V (שינויים ברמת ההחלפה עבור 5V חיישנים), תיעוד מוגבל עבור כמה היקפים, צריכת חשמל יכולה להיות גבוהה יותר מאשר כמה מתחרים במצב שינה עמוק (למרות ESP32 שיפר מצבי שינה משופרים).

עבור כל פרויקט הדורש קישוריות אלחוטית, משפחת ESP832/ESP8266 היא ברירת המחדל. למתחילים יכולים להתחיל עם ESP32 באמצעות Arduino IDE; משתמשים מנוסים יותר יכולים למנף ESP-IDF לשליטה עתירה.

Raspberry Pi Pico: The RP2040 Powerhouse

Raspberry Pi, הידוע במחשבים בודדים שלה, נכנס לשוק המיקרובקר בשנת 2021 עם Raspberry Pi Pico, מבוסס על שבב RP2040 מותאם אישית שלו RP2040, כולל כפול ARM Cortex-M0+ מעבד פועל ב-133 MHz, 264 KB של SRAM, ו 2 MB של פלאש (על לוח פיצ'ו) מה קובע את התוכנית בנפרד / IPUs מותאם אישית (מערכת ההפעלה) המאפשרת ממשק C.

הפיקניק הוא אידיאלי עבור פרויקטים משובצים הדורשים תזמון מדויק, כגון נהיגה WS2812b LED רצועות, רכישת נתונים במהירות גבוהה, או חיקוי חומרה מורשת.ה SDK הרשמי שלה תומך C / C++ ו- MicroPython, ויש ליבת Arduino זמין.

(FLT:0)Pros:BuildFLT:1) בעלות נמוכה מאוד (~ $ 4, ליבת כפולה ARM, ייחודי PIO לפרוטוקולים מותאמים אישית, MicroPython תמיכה מתוך הקופסה, תיעוד רשמי נרחב של Raspberry Pi.

(FLT:0)Cons:BuildFLT:1 לא בנוי Wi-Fi או Bluetooth (ניתן להוסיף באמצעות מגינים או מודולים נפרדים), מספר מוגבל של פיות אנלוגיות, 3.3V לוגיקה בלבד.

Raspberry Pi Pico הוא בחירה פנטסטית עבור התחביבים שרוצים ללמוד תכנות מוטבע עם שבב מודרני, היטב documented. תכונה PIO שלה מושך לאלה המעוניינים בעיצוב דיגיטלי ברמה נמוכה ללא צורך FPGA.

BeagleBone: Linux-Powered Real-Time control

הפלטפורמה BeagleBone שפותחה על ידי BeagleBoard.org, תופסת חלל ייחודי בין מיקרובקר למחשב לוח יחיד.מועצות כמו BeagleBone Black ו-BeagleBone Blue לרוץ לינוקס מלאה (בדרך כלל דביאן), אך לספק יכולות מיקרו-בקר בזמן אמת באמצעות שתי יחידות בזמן אמת-מחדש (PRUs) מאפשר חיישנים היברידיים, עם שרתי ראייה מורכבים.

ה-BeagleBone Black כולל מעבד AM3358 1GHz ARM Cortex-A8, 512 MB DDR3 RAM, 4 GB eMMC אחסון, שני ליבות PRU, ושפע של I / O: 65 pins GPIO, שמונה קלטות אנלוגיות, 4 UARTs, 2 אוטובוסים SPI, ושני IFLT:02FLT,2Falrated Ruby, כולל שירות CJ, CJ, CJ, כולל CJ, 4, CJO, CRU, 4, CRU, 4, 4, 4, 2, 2, 2, CRUC, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, C.

(FLT:0)Pros:BuildFLT:1 לינוקס הסביבה מלאה של משימות ברמה גבוהה, PRUs for Real-time control, נרחב I / O, מערכת אקולוגית תוכנה עשירה (חבילות, ספריות).

(FLT:0)Cons:cioFLT:1 עולה גבוה (~ 60+), עקומת למידה תלולה יותר בשל מורכבות לינוקס, צריכת חשמל גבוהה יותר (כמה מאות mA) בהשוואה מיקרובקרים פשוטים יותר, קהילה קטנה יותר מאשר Arduino של Arduino.

BeagleBone מתאים ביותר עבור תחביבים מתקדמים הזקוקים לכוח של לינוקס לצד שליטה בחומרה מדויקת.דוגמאות כוללות מזל"טים (BeagleBone Blue הוא מטרה עבור רובוטים), בקרים אוטומציה, ו קיוסקי מולטימדיה.

השוואות צד-by-Side

Feature Arduino Uno R3 ESP32 DevKitC Raspberry Pi Pico BeagleBone Black
Processor ATmega328P (8-bit, 16 MHz) Dual-core Xtensa LX6 (240 MHz) Dual-core Cortex-M0+ (133 MHz) ARM Cortex-A8 (1 GHz) + 2 PRUs
RAM/Flash 2 KB SRAM, 32 KB Flash 520 KB SRAM, 16 MB Flash (ext) 264 KB SRAM, 2 MB Flash 512 MB DDR3, 4 GB eMMC
Connectivity None (add shield) Wi-Fi, Bluetooth/BLE None (add Pico W for Wi-Fi) Ethernet, 2x USB, HDMI (via cape)
GPIO Pins 14 digital (6 PWM), 6 analog ~25 (16 PWM, 2 8-bit DAC, 12-bit ADC) 26 (including 3 analog) 65 (8 analog, 8 PRU I/O)
Programming Arduino IDE (C++ sketches) Arduino IDE, ESP-IDF, MicroPython MicroPython, C/C++ (SDK), Arduino Linux languages, PRU assembly/C
Typical Cost $20–25 $5–10 $4–8 $60–70
Best For Beginners, simple sensors/actuators IoT, wireless projects Embedded learning, PIO experiments Complex Linux+real-time projects

(ב) ,0) הערה: קופים משתנים על ידי מודלים ספציפיים של לוח בתוך כל פלטפורמה.

כיצד לבחור את הפלטפורמה הנכונה לפרויקט שלך

בחירת פלטפורמה מיקרו-בקר תלויה בדרישות הפרויקט הספציפיות שלך. להלן הם תרחישים התואמים עם כל חוזקות הפלטפורמה.

למתחילים ושימוש חינוכי

אם אתה חדש לאלקטרוניקה, ה-FLT:0 ארדוינו אונוארנופל 1 נשאר תקן הזהב.הספקת 5V לוגיקה, פיקוח מתח חזק, ואוסף מסיבי של הדרכות להפוך את זה כמעט בלתי אפשרי להיות תקוע. לחלופין, ה-FLT:2Raspberry Pi PicoFLT 3 הוא גם ידידותי, במיוחד אם אתה רוצה ללמוד מיקרו-פייתון, אשר הוא קל יותר מאשר כיתה C.

פרויקטים אלחוטיים ו-IoT

עבור כל פרויקט הדורש Wi-Fi, Bluetooth או BLE, בחר את ה-FLT:0ESP32cioFLT:1 (קשה לנצח את יחס המחירים לביצועים עבור מכשירים מחוברים.

מערכות Embedded או Prototyping Real-Time Systems

כאשר אתה צריך תזמון מדויק עבור שליטה מוטורית, אנימציה LED, או דור פרוטוקול מותאם אישית, ה-ARM-M0+ יכול להתמודד עם משימות במקביל ללא מערכת מלאה של PIOFLT:1 (עם PIO שלה) הוא מצוין.ה-line-core הכפול שלה ARM Cortex-M0+ יכול להתמודד עם משימות קבוע ללא ממשק מלא של מערכת ההפעלה (Berv) עבור יישומים הדורשים סביבת לינוקס - כגון הפעלת OpenCV, שרת אינטרנט, או מורכבות נתונים מורכבים - O.

תקציבים - פרויקטים גדולים

אם אתה צריך מודולים זהים רבים עבור רשת חיישן, ה- 0ESP32FLT 1 (או ESP8266) הוא האפשרות היעילה ביותר עבור 5 $ בכל אחד, אתה יכול לפרוס עשרות צמתים. עבור פרויקטים הדורשים קלטות אנלוגיות רבות או ספירת גבוה, לשקול את FLT:2ESP32Fal 3, כמו גם, כמו גם יש הרבה פריפריה.

משאבים חיצוניים ללמידה עמוקה יותר

[ה] החל בכל אחת מהפלטפורמות הללו, התיעוד הרשמי הוא המקום הראשון לחפש: עבור ארדונו, בקר ב- ESPFLT:0Arduino Getting Start GuideFLT:1 ESP32 תיעוד זמין מ-FLT:2Espressif's ESP-IDF GuideFLT 3: for the Raspberry Pico, theLTF:4 החל מ-Bul ivd: 7Beric.

בנוסף, מומלץ לחפש הדרכות ספציפיות לפרויקט באתרים כמו האקראי, בלתי ניתן להורות, ו- GitHub. The Open-source Nature of theseפלטפורמות אומר תמיד כי אתה יכול למצוא מישהו שפתור בעיה דומה.

מסקנה: Embrace the Open-Source Ecosystem

פלטפורמות קוד פתוח מיקרובקר יש אלקטרוניקה דמוקרטית, המאפשרת לתחביבים ליצור פרויקטים מתוחכמים ללא תקציבים גדולים או שרשראות כלי קנייני. בין אם אתה מתחיל ממצמץ LED, חובב בונה חיישן גן IoT, או יצרנית מתקדמת הפרוטוטציה זרוע רובוט עם לינוקס, יש פלטפורמה מותאם לצרכים שלך.

המפתח הוא להתחיל עם דרישות הפרויקט שלך ולאחר מכן לחקור את המערכת האקולוגית סביב כל פלטפורמה. קנה לוח, להתקין את סביבת הפיתוח, ולהפעיל את "Hello World" שווה ערך - קישור LED ברגע שיש לך את הבסיס הזה, אתה יכול להרחיב לתוך מחשוב אלחוטי, בזמן אמת או גבוה.קהילת הקוד הפתוח תהיה שם כדי לעזור לך בכל שלב שמח!