مقدمه
اگر از علاقهمندان به الکترونیک و ساخت و توسعه پروژههای این دسته باشید، حتما با میکروکنترلرها آشنا هستید. انواع مختلف میکروکنترلرها تولید میشوند که دارای قابلیتهای متنوعی هستند. برای افرادی که به تازگی با این میکروکنترلرهای کوچک آشنا شدهاند حتماً این سوال پیش میآید که با کدامیک از آنها به این میدان وارد شوند.
در این آموزش، با معرفی دو خانواده میکروکنترلر آردوینو و میکروبیت، با قابلیتها و مزایای هر یک از آنها آشنا خواهیم شد.
آنچه در این آموزش یاد میگیرید
- آشنایی با میکروکنترلرهای میکروبیت
- آشنایی با قابلیتها و مزایای میکروکنترلرهای میکروبیت
- آشنایی با مزایا و معایب این میکروکنترلر در مقایسه با آردوینو
آردوینو یا میکروبیت: مقایسه کلی و سخت افزاری
میکروبیت و آردوینو، هر دو بردهای مبتنی بر میکروکنترلر هستند. هر یک دارای وسایل جانبی بر روی برد خود بوده و قابلیتهای ذاتی خود را دارند.
در اغلب بردهای آردوینو، تنها وسیله جانبی برد، مبدل USB به TTL است. در نسخههای جدید مانند Portenza یا UNO 4 که در سالهای 2022 به بعد معرفی شدند، قابلیت Wifi و بلوتوث هم به بردهای آردوینو اضافه شدند.
خانواده آردوینو متشکل از چندین میکروکنترلر از شرکتهای مختلف است که هرکدام به چند گروه تقسیم میشوند. به عنوان مثال، بردهای آردوینو UNO، DUE و Portenta به ترتیب میکروکنترلر 8 بیتی Atmega، میکروکنترلر 32 بیتی ARM Cortex-M3 و میکروکنترلر 32 بیتی 2 هستهای با پردازشگر گرافیکی ARM Cortex®-M7+M4 را در درون خود دارند. هر یک از آنها دارای قابلیت برقراری انواع پروتکلهای ارتباطی، انواع مبدلها، و تعدادی GPIO هستند. تنوع در آردوینو، بسیار وسیع است به خصوص وقتی که بردهای میکروکنترلی دیگر مانند رزبری پای پیکو یا خانواده ESP را هم به لیست آن اضافه کنید.
در تصویر فوق، دو برد آردوینو را میبینید. برد بالای تصویر، Arduino USB است که اولین نسل آردوینو بوده و در سال 2008 معرفی شده است. این برد به صورت خام وارد بازار شد و درواقع یک کیت بود با میکروکنترلر Atmega8.
برد پایین، آخرین نسل از بردهای آردوینو است که یک برد کاملاً صنعتی و حرفهای از این خانواده میباشد. این برد دارای دو هسته پردازشی NXP و STM32 است که پردازنده NXP آن از نسل Cortex®-A53 چهار هستهای 1.8 گیگاهرتز است و قابلیت اجرای سیستم عامل لینوکس را دارد. همچنین میکروکنترلر STM32H747 دارای یک هسته Cortex®-M7 480 مگاهرتزی و هسته M4 240 مگاهرتزی است. علاوه بر آن، این میکروکنترلر دارای پردازنده گرافیکی مجزا میباشد.
در مقابل، برد میکروبیت نسخه 2 دارای میکروکنترلر 32 بیت ARM Cortex-M4 64 مگاهرتزی است. فرق بزرگ بین این برد با بردهای آردوینو، وجود ماژولهای جانبی فراوان روی این برد است. بردهای میکروبیت، شامل ماژولهای شتابسنج، قطبنما، دماسنج و نورسنج در کنار 2 عدد کلید فشاری و یک نمایشگر ال ای دی ماتریسی 5 در 5 است. همچنین این برد به بلوتوث و وای فای نیز مجهز شده است.
وجود این تعداد ماژول متنوع بر روی یک برد میکروکنترلری، کار را برای تازهکاران بسیار سادهتر میکند.
آردوینو یا میکروبیت: مقایسه میزان سهولت در استفاده
یکی از مهمترین پارامترها در انتخاب هر ماژول یا برد الکترونیکی، میزان سهولت استفاده از آن است. در این قسمت، بردهای آردوینو و میکروبیت را از این لحاظ مقایسه خواهیم کرد.
بردهای آردوینو، از سال 2012 میلادی، مجهز به یک محیط توسعه یکپارچه (IDE) شدند. بسیاری از مهندسان و دانشجویان الکترونیک به دلیل سهولت استفاده، به این بردها علاقهمند شدند. امروزه، کمتر ماژول یا سنسوری در بازار پیدا میکنید که راهنما یا فایلهای راهاندازی آن برای نرمافزار Arduino IDE وجود نداشته باشد. وجود جامعه پشتیبانی بسیار گسترده، انجمنهای بسیار فعال و منابع و مثالهای جامع، هر فرد تازهکاری را امیدوار خواهد کرد.
از طرف دیگر، بردهای برد میکروبیت دارای ماژولهای روبردی متنوعی هستند که همگی آماده به کار هستند. وجود این حجم از ماژولها برای تازهکاران بسیار مفید است زیرا حجم سیمکشی را کاهش داده و احتمال بروز خطای احتمالی در آن را به حداقل میرساند.
بنابراین بین آردوینو و میکروبیت از لحاظ سهولت استفاده، تفاوت چشم گیری وجود ندارد.
آردوینو یا میکروبیت: مقایسه محیط نرمافزاری
کدنویسی برای بردهای آردوینو، در نرمافزار Arduino IDE انجام میشود. البته نرمافزارهای دیگری مانند PlatformIO نیز وجود دارد که برتریهایی نسبت به Arduino IDE دارند.
محیط این نرمافزار، کاملاً نوشتارمحور است. بنابراین، برای کدنویسی در این نرمافزار، نیاز به دانش فنی اولیه برنامهنویسی خواهید داشت. زبان برنامهنویسی مورد استفاده در آن C است که کمی از قابلیتهای زبان ++C نیز به آن اضافه شده است.
در طرف مقابل، نرمافزارهای Microsoft MakeCode و Python مخصوص بردهای میکروبیت هستند که کدنویسی در آن به شکل گرافیکی انجام میشود. در تصویر زیر، محیط این دو نرمافزار را مشاهده میکنید.
محیط برنامهنویسی MakeCode کاملاً گرافیکی و بلوکمحور است؛ تنها با چیدن بلوکهای مختلف در کنار هم، میتوانید کد خود را ایجاد کنید. هر دو نرمافزار فوق دارای شبیهساز هستند که به کاربران اجازه شبیهسازی برنامه نوشته شده را قبل از پروگرام کردن برد خود میدهد. اما نرمافزار Arduino IDE این قابلیت را ندارد. برنامه MakeCode، قابلیت اجرای Debug را نیز دارد که یافتن ایراد در کد را برای کاربر آسان میکند.
بنابراین، در زمینه برنامهنویسی، برد میکروبیت برای کاربران مبتدی مناسب است و برد آردوینو برای کاربران پیشرفتهتر پیشنهاد میشود.
آردوینو یا میکروبیت: مقایسه از لحاظ امکان اجرای پروژه
برای بررسی این موضوع، باید مقایسه را بین توسعهپذیری برد میکروبیت و برد آردوینو هم قیمت آن انجام دهیم. برد میکروبیت، قیمتی حدود 40 دلار دارد. برد آردوینو همرده آن DUE است که چیپ اصلی آن AT91SAM3X8E است و فرکانسی برابر 84 مگاهرتز دارد. این برد را در تصویر زیر مشاهده میکنید.
میزان قابلیتها و تواناییهای دو برد، به خود آنها و بردهایی که قابلیت راهاندازی با آنها را دارند بستگی دارد. بنابراین، ابتدا دو برد را از نظر سختافزاری مقایسه کرده، سپس قابلیت توسعهپذیری آنها را با استفاده از ماژولهای جانبی بررسی میکنیم.
در زمینه سختافزار، ابتدا به میکروکنترلرهای استفاده شده میپردازیم. میکروکنترلرهای استفاده شده در برد میکروبیت و آردوینو DUE، به ترتیب از نسل M4 و M3 خانواده ARM Cortex هستند. از لحاظ ساختاری و طراحی، بین آنها تفاوتی وجود ندارد. تنها برتری Cortex M4، داشتن قابلیت DSP است که سرعت انجام عملیات محاسباتی سنگین را افزایش میدهد.
حافظه فلش هردوی آنها 512 کیلوبایت است. حافظه رم AT91SAM3X8E، 100 کیلوبایت است و حافظه nRF52833، 128 کیلوبایت است.
بنابراین این دو میکروکنترلر از نظر قدرت پردازشی تفاوت چشم گیری با یکدیگر ندارند.
برد میکروبیت پر از امکانات جانبی است. از بلوتوث و ارتباط رادیویی گرفته تا حسگرهای مختلف، همگی برای انجام یک پروژه سرگرمی آماده هستند. اما در مقابل، برد آردوینو DUE فاقد هرگونه امکانات جانبی است. همه قابلیتهای آن، مربوط به میکروکنترلرش میشود.
برد آردوینو DUE در مقایسه با برد میکروبیت، دارای پایههای خروجی بیشتر و جامعتری است زیرا به غیر از پایههای سریال و تغذیه میکروکنترلر، باقی پایههای آن به پینهدرها سیمکشی شدهاند. در مقابل، برد میکروبیت با توجه به وجود انواع امکانات داخلی، بسیاری از پروتکلهای ارتباطی را در پایههای خروجی ندارد. این برد تنها 19 پایه خروجی دارد که شامل 6 پایه مبدل آنالوگ به دیجیتال، 1 رابط I2C و 1 رابط SPI است. اما برد آردوینو DUE دارای 6 عدد رابط SPI، 2 عدد TWI (I2C)، 4 عدد UART، 1 عدد I2S، 2 عدد CAN، 2 رابط حافظه HSMCI، 12 عدد مبدل آنالوگ به دیجیتال، 2 عدد مبدل دیجیتال به آنالوگ و 9 عدد پایه PWM 32 بیتی است. بنابر دلایل ذکر شده، توسعهپذیری برد آردوینو DUE بسیار بهتر است.
آردوینو یا میکروبیت: مقایسه از نظر قیمت و در دسترس بودن
هر دو برد، به دلیل محبوبیتی که نزد کاربران پیدا کردهاند، به راحتی در دسترس هستند.
بردهای آردوینو رنج قیمتی گستردهای دارد که شامل بردهای مبتدی چند دلاری تا بردهای پیشرفته چند صد دلاری میشود. بنابراین ابتدا باید برد آردوینو مناسب پروژه خود را انتخاب کنید. حال میتوانید بین برد انتخاب شده و برد میکروبیت مقایسه قیمت داشته باشید.
آردوینو یا میکروبیت: مقایسه جامعه پشتیبان
بردهای آردوینو، به دلیل سابقه بیشتر و بروزرسانیهای نرمافزاری و سخت افزاری مرتب، جامعه پشتیبانی بسیار قویتری دارد. به دلیل این حجم پشتیبانی، به سختی میتوانید سنسور یا عملگری را پیدا کنید که قبلاً برای آن کتابخانه مخصوص آردوینو نوشته نشده باشد.
محبوبیت بردهای میکروبیت نیز در سالهای اخیر رشد داشته است و به دنبال آن، انجمنها و جامعه پشتیبان در حال پیشرفت هستند. با توجه به وجود ماژولهای متنوع روی برد، عدم نیاز به سیم کشی و محیط نرمافزاری گرافیکی و کاربرپسند، نیاز کمتری به کمک دیگران خواهید داشت. گزینه help نرمافزارها و مثالهای موجود به خوبی شما را در انجام کارها کمک خواهند کرد.
نتیجهگیری
اگر تمامی پارامترها را در کنار یکدیگر قرار بدهیم، به این نتیجه میرسیم که بردهای میکروبیت، برای افرادی که قصد یادگیری دارند گزینه مناسبتری است. با توجه به ماژولهای قرار گرفته بر روی برد، نیاز به دانش الکترونیک تا حدودی کاسته میشود و کاربران مبتدی راحتتر میتوانند وارد فاز کدنویسی و اجرای آن شوند.
بردهای آردوینو، به خصوص سری پیشرفته آن، برای افرادی که به دنبال اجرای پروژههای مهندسی پیچیده هستند گزینه مناسبتری است زیرا کاربر در انتخاب نوع ماژول آزادی عمل بیشتری دارد. در کنار آن، شیلدها و ماژولهای فراوانی برای آردوینو طراحی شده و در بازار موجود هستند.
یک گام جلوتر
در این مقاله، بردهای میکروکنترلری آردوینو و میکروبیت را با یکدیگر مقایسه کردیم. اکنون میتوانید از بین آنها، بردی را که مناسب شما باشد پیدا کنید. انواع مختلف میکروکنترلرهای دیگری نیز وجود دارد که میتوانید آنها را بررسی کنید. امیدواریم که بتوانید بر اساس شاخصهای خود، بهترین و بهینهترین انتخاب را داشته باشید.