راهنمای خرید آردوینو: چگونه بهترین برد را برای پروژه خود انتخاب کنید

مقدمه

احتمالا بیشتر کسانی که این مقاله را می‌خوانند از قبل با آردوینو آشنا هستند و یا حداقل نام آن را شنیده اند. ما در این مقاله سعی داریم این پلتفرم را کمی دقیق تر معرفی کنیم و آن را از نگاه نقادانه بررسی کنیم، همچنین به ویژگی­هایی از بردهای آردوینو اشاره کنیم که حاصل تجربه شخصی ما در مورد استفاده از آن­ها بوده و تاکنون کمتر به آن­ها پرداخته شده است. در بخش اول مقاله در مورد گذشته، علت و نحوه به وجود آمدن آردوینو صحبت کرده و سپس اجزای آن را خواهیم شناخت. در بخش دوم با انواع بردهای آردوینو آشنا می­شویم و آن ها را از مناظر مختلف بررسی و مقایسه می­کنیم تا بتوانیم آردوینوی مناسب پروژه خود را انتخاب کنیم. اگر هنگام خرید یک نوع خاص از بردهای آردوینو دچار سردرگمی شده اید، در بخش سوم مقاله ما سعی داریم شما را در انتخاب برد اصلی و یا بردهای مشابه راهنمایی کنیم. اگر پروژه شما مربوط به حوزه اینترنت اشیا می­شود، خواندن بخش بعدی مقاله را از دست ندهید. در نهایت در پایان مقاله مزایا و معایب آردوینو را بررسی کرده و به این سوال که در آینده سرنوشت آردوینو چه خواهد شد پاسخ خواهیم داد.

آنچه در این مقاله یاد می گیرید

  • آردوینو چیست و از کجا آمده
  • آشنایی با ویژگی ها و اجزای آردوینو و علل محبوبیت آن
  • بررسی و مقایسه تخصصی انواع بردهای آردوینو
  • مقایسه برندهای تولید کننده و بررسی بردهای غیررسمی آردوینو
  • مقایسه آردوینو با بردهای ESP
  • بررسی عیب ها و نقص های آردوینو

آردوینو چیست؟

آردوینو یک پلتفرم متن باز الکترونیکی بر پایه میکرو کنترلر است که برای انجام انواع پروژه های الکترونیکی توسط میلیون­ها نفر در جهان مورد استفاده قرار می‌گیرد. شما می‌توانید با نوشتن چند خط برنامه ساده بدون اینکه دانش زیادی در مورد الکترونیک داشته باشید از آردوینو در پروژه­های خود استفاده کنید.

وقتی از پلتفرم صحبت می‌کنیم منظورمان تلفیقی از سخت افزار و نرم افزار است. آردوینو شامل مجموعه ای از بردهای الکترونیکی قابل برنامه ریزی است که به یک نرم افزار یا واسط کاربری متصل شده است. این واسط کاربری با نام محیط یک پارچه توسعه نرم افزار یا همان IDE (Integrated Development Environment) شناخته می­شود. در حقیقت پلتفرم آردوینو برای استفاده سریع و آسان از میکروکنترلرها طراحی شده است.

از پادشاه هزاره دوم تا پسر تحصیل کرده ایتالیایی!

شاید شما هم مثل من وقتی اولین بار اسم آردوینو را شنیده­اید، این سوال برایتان پیش آمده که “آردوینو یعنی چه!”

پیش از اینکه به این سوال جواب بدهیم باید تاریخچه ساخت آن را بدانیم. ایده ساخت آردوینو در سال 2003 در جریان پروژه کارشناسی ارشد Hernando Barragán زیر نظر Massimo Banzi در دانشگاه IDII ایتالیا جرقه خورد. در این پروژه هدف ساخت یک پلتفرم توسعه یافته پردازشی با کاربری آسان و قیمت ارزان برای مهندسان غیرالکترونیک بود. تا پیش از این مهندسان اغلب از برد گران قیمت BASIC Stamp استفاده می کردند ولی به دلیل عدم وجود محیط نرم افزاری و کتابخانه ها و البته قیمت زیاد برای دانشجویان محبوبیت زیادی نداشت. در ادامه­ی این پروژه هسته اصلی آردوینو توسط Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, and David Mellis شکل گرفت. نام آردوینو از کافه ای در شهر Ivrea که جلسات گروه داخل آن برگزار می­شد اقتباس شده ­است. البته نام این کافه نیز از Arduin یکی از اشراف ایتالیا گرفته شده که در سال های 1002 تا 1014 حکومت می­کرد.

در سال 2005 اولین برد آردوینو برای کمک به دانشجویان طراحی یعنی کسانی که هیچ تجربه ای در زمینه الکترونیک و برنامه نویسی میکروکنترلرها نداشتند، معرفی شد. اگرچه اولین ورژن آردوینو دارای میکروکنترلر ATmega8 بود ولی دیری نگذشت که اکثر بردهای آردوینو به ATmega32 مجهز شد. استقبال بی نظیر دانشجویان و مهندسین از این پلتفرم متن باز باعث شد که تا سال 2010 بیش از 120 هزار برد به فروش رود. با رشد زیاد استفاده از این برد در اروپا و کشورهای شرقی تا اواسط سال 2013 بیش از 700 هزار برد رسمی توسط شرکت Arduino LLC به فروش رسید.

چرا باید آردوینو بخریم؟

اگرچه امروزه شرکت های زیادی دست به طراحی و ساخت بردهای توسعه یافته زده­اند اما هنوز آردوینو در بین افراد مبتدی و یا حتی مهندسان محبوبیت زیادی دارد. برخلاف تصور آنچه که باعث محبوبیت این برد شده است فقط ویژگی های سخت افزاری آن نیست بلکه عوامل دیگری در رشد و همه گیر شدن این برد نقش داشته است که در ادامه به بررسی آن می پردازیم.

آردوینو سازگار با همه!

محیط نرم افزاری آردوینو (Arduino IDE) تحت تمام سیستم عامل­ها از جمله ویندوز، ویندوز اپ، لینوکس و حتی مکینتاش قابل استفاده است در حالی که اکثر پروگرمرهای میکروکنترلر فقط تحت ویندوز کار می­کنند. همچنین تمام درایورهای مورد نیاز بردها به همراه نرم افزار آردوینو نصب می شود و اگر شما از برد اصلی آن استفاده می کنید دیگر نیازی به نصب فایل های اضافه ندارید.

آردوینو برای همه!

همانطورکه گفته شد مهمترین علت پیدایش آردوینو، دستیابی نرم افزاری آسان به محیط سخت افزار بود. در این راه آردوینو توانست به خوبی رسالت خود را انجام دهد. محیط ساده برنامه نویسی بر پایه C و C++ باعث شد کار کردن با این برد برای همه آسان شود. وجود آموزش های ساده، کتابخانه ها و محیط پرسش و پاسخی که سازندگان آن فراهم نمودند بیش از هر محصول دیگری فضای آموزش الکترونیک را برای همه تسهیل کرد. امروزه بیشتر استفاده کنندگان آردوینو دانشجویان رشته های غیرالکترونیک است و همچنین بسیاری از مشتریان آردوینو را دانش آموزان تشکیل می­دهند.

آردوینو ارزان برای همه!

بیشتر بردهای آردوینو موجود در بازار بین 10 تا 30 دلار قابل خریداری اند. با خرید برد آردوینو شما تقریبا هزینه خرید میکروکنترلر و پروگرمر آن را پرداخت می کنید ولی از ویژگی های بسیار زیاد دیگری نیز بهره مند خواهید شد.

آردوینو رایگان برای همه!

یکی از مهمترین دلایلی که باعث همه گیر شدن و توسعه آردوینو شد، استراتژی سازندگان آن در قبال طراحی محصول بود. یعنی تولید یک محصول متن باز. البته از آنجا که آردوینو از محیط آکادمیک برخاسته و در محیط تجاری به وجود نیامده این رویکرد سازندگان دور از ذهن نیست. دسترسی در سطح سخت افزاری و نرم افزاری به تمام نقشه ها و کدهای آردوینو شما را بسیار ترقیب می کند که در تولید پروتوتایپ­های خود از این پلتفرم به جای پلتفرم­های مشابه استفاده کنید. علاوه بر آن با این استراتژی همه افراد در توسعه و تکمیل آردوینو سهیم می­شوند. میلیون ها پروژه و هزاران کتابخانه­ی نوشته شده برای آردوینو همگی حاصل این رویکرد می­باشد.
نرم افزار آردوینو IDE به صورت کاملا رایگان و با امکانات کامل از سایت آردوینو قابل دانلود می­باشد. در حالی که برای خرید لایسنس نرم افزارهای برنامه ریزی AVR نظیر  CodeVisionو BASCOM باید هزینه ای معادل 120 تا 200 دلار پرداخت کنید.

آردوینو راحت برای همه!

یکی از نقاط قوت آردوینو طراحی آن است. تفاوتی نمی کند که میکروکنترلر بر روی آردوینو شما AVR باشد یا ARM، کوچک باشد یا بزرگ، پکیج آن DIP باشد یا SMD، شما پایه های DIP در اختیار دارید. میتوانید آردوینو خود را به راحتی با سیم های جامپر به سنسور ها وصل کنید، یا آن را روی برد بورد قرار دهید، آن را با کابل USB به کامپیوتر خود وصل کرده و به راحتی برنامه ریزی کنید. حتی طراحان آن یک گام فراتر رفته و کار شما را ساده تر کرده اند؛ تعداد زیادی برد آماده تحت عنوان شیلد وجود دارد که شما به راحتی می­توانید آن ها را روی برد خود قرار دهید و حتی از سیم کشی بی نیاز شوید.
یکسان سازی زبان برنامه نویسی یکی از دلایل آسان شدن کار با آردوینو است، به طوریکه برای برنامه­ریزی میکروکنترلرهای مختلف از جمله AVR و ARM و… نیازی نیست از زبان­ها و نرم افزارهای مختلفی استفاده شود. همه این­ قابلیت­ها درون آردینو IDE وجود دارد.

اجزای آردوینو را بشناسیم

احتمالا تا الان حدودا متوجه شده­اید که از چه چیزی صحبت می­کنیم و برد آردوینو تقریبا چه قطعاتی دارد. حال بیایید نگاهی دقیق‌تر و موشکافانه به آن بیندازیم.

پردازشگر

بدون شک پسر ارشد خانواده آردوینو برد UNO می­باشد که بیشترین شباهت به اجداد اولیه خود دارد. با نگاه اجمالی به آن متوجه می­شویم که بخش اصلی آن یک پردازشگر AVR می­باشد. بخش اصلی اکثر بردهای آردوینو پردازشگر AVR است. یا به زبان دیگر قلب آن!

پروگرمر

در اغلب بردهای آردوینو، پردازشگر زبان کامپیوتر را نمی فهمد پس نیاز به یک مترجم یا پروگرمر داریم. عمل تبدیل USB به سریال را در بردهای اصلی آردوینو یک پردازشگر ATmega16U4 یا یک آی سی FTDI انجام می­دهد. هرچند که در نمونه های غیر اصلی گاهی اوقات از آی سی های ارزان تر نظیر CH340 نیز استفاده می­شود.

این قطعه در تمام بردهای آردوینو وجود ندارد. برخی از بردها تهیه این قطعه را بر عهده کاربر گذاشته است. در تعدادی از بردها نیز پردازشگر اصلی از USB پشتیبانی می­کند و نیازی به این قطعه وجود ندارد.

کریستال اسیلاتور

کریستال اسیلاتور یکی از قطعاتی است که در تمام آردوینوها وجود دارد و وظیفه اصلی آن تولید سیگنال الکتریکی با فرکانس بسیار دقیق برای پردازشگر می­باشد. در برخی بردهای آردوینو از کریستال با فرکانس 8 مگاهرتز، در برخی 16 مگاهرتز و در معدودی از بردها از فرکانس­های بیشتر تا 84 مگاهرتز استفاده می­شود.

آردوینو - کریستال اسیلاتور

تغذیه

در بخش تغذیه، یکی از قطعات اصلی هر برد آردوینو رگولاتورهای آن است. هر برد آردوینو 2 سطح ولتاژ دارد. ولتاژ ورودی و ولتاژ کاری. منظور از ولتاژ کاری ولتاژی است که پردازشگر با آن کار می کند. طبیعی است که پایه های ورودی و خروجی آردوینو که با پردازشگر در ارتباط اند نیز با این ولتاژ کار می کنند. اما ولتاژ ورودی ولتاژ تغذیه آردوینو است و همواره از ولتاژ کاری آن بالاتر است. این ولتاژ به وسیله رگولاتورها کاهش و تثبیت پیدا کرده و در اختیار پردازشگر و بخش های دیگر آردوینو قرار می گیرد.

جک آداپتور

ولتاژ ورودی آردوینو از طرق پایه Vin و یا جک آداپتور در اختیار برد قرار می­گیرد و البته تمام بردهای آردوینو جک آداپتور ندارند. جک آداپتور به رگولاتور وصل شده و معمولا می­تواند ولتاژ 7 تا 12 ولت را به عنوان ورودی دریافت کند.

در برخی مدل های آردوینو ولتاژ کاری 3.3 ولت است و در این بردها می­توان از یک باتری لیتیومی 1 سل به عنوان منبع تغذیه استفاده نمود. در این بردها بعضا بجای جک آداپتوری از کانکتور JST استفاده می­شود.

یک قانون سرانگشتی

اگر روی برد آردینو شما جک آداپتور وجود دارد می­توانید از آداپتور 7 تا 12 ولت استفاده کنید و اگر روی آردوینوی شما کانکتور JST وجود دارد ولتاژ 3.4 تا 5 ولت مناسب است.

درگاه USB

وجود درگاه USB یک خبر خوش آیند برای کاربران آردوینو است. وجود USB به این معناست که شما با وصل کردن کابل USB به کامپیوتر به راحتی می­توانید برد خود را برنامه ریزی کنید و از این قابلیت بهره ببرید. البته در تمام بردهای آردوینو این امکان وجود ندارد و اگر برد شما آی سی مبدل USB به سریال نداشته باشد و پردازشگر از USB پشتیبانی نکند، از USB خبری نیست.

در مورد استفاده از USB نیز آردوینو همواره یکسان عمل نکرده و متاسفانه از اکثر پکیج های USB در بردهای مختلف استفاده کرده است. دوست داران UNO، MEGA مجبور به استفاده از USB تایپ B، دوست داران LEONARDO و DUE و MICRO و  LILYPAD USB مجبور به استفاده از میکرو USB و طرفداران NANO و FIO مجبور به استفاده از مینی USB  می­باشند. البته در برد YUN از پورت USB تایپ A به صورت vertical right angle استفاده شده است.

توجه

استفاده از پورت USB به عنوان تغذیه آردوینو اصلا توصیه نمی­شود زیرا این درگاه به رگولاتور وصل نیست و مستقیما برق پردازشگر و پروگرمر را تامین می­کند.

پایه های ورودی و خروجی

پایه های ورودی و خروجی برد آردوینو در مدل های مختلف از نظر تعداد و نوع متفاوت می­باشد. در برخی مدل ها مانند UNO، MEGA، LEONARDO، YUN و DUE از پین هدر مادگی استفاده شده که امکان استفاده از شیلدهای مختلف را فراهم می­سازد. در برخی بردها مانند NANO، MICRO و MINI و FIO اغلب از پین هدر نری و در برخی بردها مانند LILYPAD به منظور کم شدن اندازه فقط از پد استفاده شده و معمولا از پین هدر استفاده نمی­شود.

در بردهای YUN و ETHERNET علاوه بر درگاه USB درگاه ETHERNET نیز وجود دارد.

سایر اجزای آردوینو

علاوه بر موارد بالا که اجزای اصلی بردهای آردوینو می­باشد، تعدادی LED و یک کلید جهت ریست کردن پردازنده روی برد وجود دارد. در همه بردهای آردوینو یکی از LED ها برای پاور می­باشد و معمولا دو LED به پورت سریال اختصاص دارد.

راهنمای انتخاب آردوینو

تا اینجا با پلتفرم آردوینو آشنا شده ایم. اگر تصمیم گرفته اید که از بردهای آردوینو در پروژه های خود استفاده کنید، سوالی که مطرح می­شود این است که کدام برد را انتخاب کنیم. در ادامه مقاله ما سعی می کنیم به سوال شما پاسخ دهیم.

اولین چالش این است که چه پارامتری برای ما اهمیت دارد؟

اگر پردازنده برایمان اهمیت دارد

هر چقدر آردوینو در مورد استفاده از درگاه USB ثبات زیادی نداشته در عوض در مورد استفاده از پردازشگر وسواس به خرج داده و فقط از میکروکنترلرهای شرکت Atmel استفاده کرده است.

پردازشگرهای استفاده شده در انواع بردهای آردوینو از تعداد انگشتان دست کمتر است، که در ادامه معرفی می­شوند.

  • ATmega328
    این پردازنده در تعداد زیادی از بردهای آردوینو استفاده شده است. از جمله آردوینو UNO، MINI، NANO، PRO، FIO، ETHERNET و LILYPAD. این پردازنده 8 بیتی دارای دو نوع با ولتاژهای کاری 5 ولت و 3.3 ولت می­باشد. در بردهایی که ولتاژ کاری مدار 5 ولت است، از اسیلاتور 16مگاهرتزی و در بردهایی که ولتاژ کاری 3.3 ولت دارند از اسیلاتور 8 مگاهرتزی استفاده شده است زیرا اسیلاتور 16 مگاهرتزی مصرف انرژی بالاتری دارد. این پردازنده 1 کیلوبایت حافظه EERPOM، 2 کیلوبایت SRAM، 32 کیلوبایت حافظه فلش و دارای 1 پورت سریال می­باشد. هرچند که در تمام بردهای آردوینو دسترسی به این پورت به راحتی میسر نیست. همچنین تعداد GPIO های در دسترس بسته به نوع آردوینو متفاوت است.
    استفاده از این پردازنده در بردهای نامبرده برای انجام کارهای روزمره و برقراری ارتباط با ماژول های ساده کافی است. ATmega328 حافظه نه چندان زیاد ولی قابل قبولی دارد. اما اگر به دنبال سرعت و تعداد پایه های بیشتر هستید باید به سراغ بردهای دیگر آردوینو بروید.
  • ATmega168

بردهای LILYPAD، NANO و PRO دارای دو ورژن می­باشند. در یک ورژن آنها بجای پردازشگر ATmega328 از پردازشگر ضعیف تر ATmega168 استفاده شده که دارای 0.5 کیلوبایت حافظه EERPOM، 1 کیلوبایت SRAM، 16 کیلوبایت حافظه فلش می­باشد. البته امروزه استفاده از این بردها بسیار کم شده است و تقریبا تولید نمی­شوند.

    • ATmega32U4

    این میکروکنترلر بر روی بردهای LEONARDO، MICRO، LILYPAD USB و YUN قرارگرفته است. از نظر سرعت و حافظه تفاوت چندانی با میکروکنترلر ATmega328 ندارد و تنها حافظه SRAM آن بجای 2کیلوبایت، 2.5 کیلوبایت می­باشد.

    اما تفاوت بسیار مهم آن داشتن پروتکل USB است که برد آردوینو را از آی سی مبدل USB به سریال بی نیاز می کند که این مساله در قیمت برد هم می­تواند موثر باشد. تفاوت مهم دیگر تعداد پایه های PWM و ADC است که در این بردها از بردهای مبتنی بر ATmega328 بیشتر است.

  • ATmega2560

اگر به دنبال پردازنده قوی تر و تعداد GPIO های بیشتری نسبت به UNO هستید، برد آردوینو MEGA یکی از مناسب ترین گزینه هاست. MEGA تنها برد آردوینو است که از میکروکنترلر ATmega2560 با حافظه EEPROM 4کیلوبایتی، SRAM 8 کیلوبایتی و فلش 256 کیلوبایتی استفاده می­کند. ناگفته نماند که این میکروکنترلر 4 پورت ارتباطی سریال دارد.

    • ATtiny85

    روشن کردن LED یا خواندن یک سوییچ و یا حتی خواندن یک سنسور ساده نیازی به استفاده از میکروکنترلر قدرتمند ندارد. برد آردوینو GEMMA که برخی شرکت های سازنده دیگر آن را با نام TINY LILYPAD نامگذاری می­کنند دارای یک میکرو کنترلر ATtiny85 با حافظه EEPROM و SRAM 0.5کیلوبایتی و فلش 8 کیلوبایتی است که البته شرکت آردوینو آن را از رده خارج می­داند اما هنوز توسط شرکت های دیگر تولید می­شود.

  • ATSAMD21

اگر سرعت آردوینو MEGA هم پاسخگوی نیاز شما نیست و از پردازنده های AVR نا امید شده اید یک فرصت دیگر به آردوینو بدهید. برد ZERO دارای پردازنده آرم 32بیتی ATSAMD21G18 با اسیلاتور 48 مگاهرتزی، حافظه SRAM 32کیلوبایتی و فلش 256 کیلوبایتی می باشد. به طور کلی میکروکنترلرهای آرم دارای مصرف کمتر می­باشند بنابرین فراموش نکنید که ولتاژ کاری ZERO 3.3 ولت است. همچنین این برد دو پورت USB مجزا دارد.

  • ATSAM3X8E

اگر باز هم انتظار بیشتری از آردوینو دارید، وقت آن رسیده که برگ برنده نهایی آردوینو را به شما معرفی کنیم. برد آردوینو DUE به یک پردازشگر آرم 32 بیتی ATSAM3X8E با اسیلاتور 84 مگاهرتزی با حافظه SRAM 96کیلوبایتی و فلش 512 کیلوبایتی مجهز شده است، دارای 4 پورت سریال و 2 درگاه USB است و بیش از 60 پایه GPIO دارد.

  • Intel Curie

بالاخره آردوینو هم در استفاده از میکروکنترلرهای Atmel تسلیم شد و در برد آردوینو 101 از پردازنده Intel Curie استفاده کرده است. این پردازنده 32 بیتی به یک اسیلاتور 32مگاهرتزی مجهز شده و دارای حافظه SRAM 24 کیلوبایتی و فلش 196 کیلوبایتی است. اگرچه سرعت پردازشی این برد در مقایسه با ZERO و DUE زیاد به نظر نمی رسد اما این برد از ویژگی­های منحصر به فرد دیگری مانند بلوتوث، ژیروسکوپ و شتاب سنج بهره می­گیرد.

اگر به دنبال امکانات و ویژگی های خاص هستیم

اگر می­خواهید برای اولین بار به دنیای آردوینو وارد شوید ما آردوینو UNO و NANO را به شما پیشنهاد می­کنیم. آردوینو UNO یکی از معمول­ترین و پرفروش­ترین بردهای آردوینو است. همانطور که پیش تر گفته شد این برد به میکروکنترلر ATmega328 مجهز شده است. این برد دارای پین هدرهای مادگی استاندارد به فاصله 2.54 میلیمتر است و با شیلدهای مختلف سازگار است. 14 پایه ورودی و خروجی که 6 عدد از آنها قادر به ساخت سیگنال PWM هستند در کنار 6 پایه­ ورودی آنالوگ، این برد را برای انجام پروژه های ساده، راه اندازی انواع LCDها، موتورها و…. مناسب می­سازد. برای برقراری ارتباط با سنسورها نیز این برد امکانات خوبی دارد. از جمله پورت Serial (UART) که البته با درگاه USB مشترک است و قابلیت ساخت Serial نرم افزاری. پروتکل ارتباطی SPI و I2C از دیگر امکانات این برد برای برقراری ارتباط با انواع سنسورها می­باشد.

جک آداپتوری که روی این برد قرار گرفته است بهترین و آسان ترین راه برای روشن کردن این برد می­باشد. البته وجود USB تایپ B برای پروگرم کردن این برد زیاد کاربرپسند نیست اما معمولا یک کابل کوتاه به همراه برد به فروش می­رسد. اگر به دقت به مسیرهای جریان قرارگرفته بر روی برد نگاه کنید متوجه می­شوید که فضای خالی زیادی بر روی برد وجود دارد که این مساله باعث افزایش اندازه برد شده است. همچنین حضور یک میکروکنترلر ATmega328 از نوع DIP کمی عجیب به نظر می­رسد. البته استفاده از میکروکنترل DIP امکان برنامه ریزی مجدد و آپدیت آن را برای کاربر میسر می­سازد. اما فراموش نشود که این برد برای افراد تازه کار طراحی شده و ممکن است هیچ وقت از این امکان بهره نبرند. این برد میراث بردهای ابتدایی آردوینو را یدک می­کشد و هنوز طراحی کلاسیک خود را حفظ کرده است. در کنار مشکل اندازه، مشکل دیگری که کاربران با آن روبرو هستند پین هدر های مادگی است. این پین هدرها امکان قرارگیری UNO بر روی برد بورد و بردهای هزارسوراخ را از ما می­گیرد و برای استفاده از پایه ها ناچار به استفاده از سیم جامپر هستیم. البته برای راه اندازی یک ماژول توسط UNO مشکلی وجود ندارد اما این مشکل زمانی حاد می­شود که بخواهیم از یک پایه (مانند پایه 5v) به صورت همزمان برای چند ماژول یا سنسور استفاده کنیم.

اگر فکر می­کنید اندازه برایتان مهم است و علاقه دارید آردوینو خود را روی برد بورد قرار دهید، پیشنهاد ما به شما برد NANO می­باشد. NANO برخلاف جثه­ی کوچکی که دارد تمام ویژگی­های UNO را در یک پنجم فضا جا داده است. این برد نیز دارای میکروکنترلر ATmega328 اما با پکیج SMD می­باشد. 14 پایه ورودی و خروجی دارد که 6 عدد از آنها قادر به ساخت سیگنال PWM است. در مورد پایه های آنالوگ جالب است بدانید که NANO با اینکه از UNO بسیار کوچکتر است اما 2 پایه ورودی آنالوگ بیشتر دارد.

برد بورد! در آردوینو NANO و MICRO مشکل استفاده از پایه ها در UNO حل شده است. در این بردها از پین هدرهای نری استفاده شده که امکان قرار دادن آن روی برد بورد را فراهم می­سازد.

در برد NANO استفاده از پورت USB مینی به کوچک کردن اندازه این برد کمک به سزایی کرده است. اما خبر بد این است که در این برد از جک آداپتور خبری نیست و برای روشن کردن آن ناچار به استفاده از پایه Vin هستید. نقطه ضعف دیگر این کوچولوی دوست داشتنی عدم سازگاری آن با شیلدهای استاندارد آردوینو است.

بردهای MINI و PRO MINI نیز از نظر اندازه و نوع پین هدر، برای قرارگیری روی برد بورد مناسب اند اما هیچ یک قابلیت های برد NANO را ندارند تعداد کمتر پایه ها و عدم وجود پورت USB از جمله بزرگترین محدودیت های این بردها است.

به پایه های بیشتری نیاز دارید؟ وقت آن رسیده که با آردوینو MEGA کمی بیشتر آشنا شویم. همانطورکه در بخش قبل بحث شد، این برد دارای یک میکروکنترلر ATmega2560 می­باشد. بدون شک این برد بیشترین تعداد ورودی خروجی را در بین بردهای آردوینو در اختیار شما قرار می­دهد. برد آردوینو MEGA 54 پایه ورودی خروجی دیجیتال دارد که 15 عدد از آن ها قادر به تولید سیگنال PWM است. علاوه بر پایه های دیجیتال این برد 16 پایه ورودی آنالوگ نیز دارد. قابلیت مهم دیگری که برد MEGA را بسیار توانمند می­سازد، 4 پورت سریال سخت افزاری است که برای آن تعبیه شده است. بنابرین با صرف 1.5 برابر فضا و کمی هزینه بیشتر شما 4 برد UNO را در قالب 1 برد MEGA بدست می­آورید.

پردازنده قوی­تری می­خواهید؟ در این مورد باید در بخش قبلی مقاله باید به دنبال پاسخ این نیاز خود باشید. همانطورکه بحث شد آردوینو DUE با در اختیار داشتن یک میکروکنترلر 32 بیتی ARM با سرعت کلاک 84 مگاهرتز سریع ترین گزینه است. در دست داشتن 96 کیلوبایت حافظه SRAM و 512 کیلوبایت حافظه فلش این برد را قادر به انجام حجم زیادی از پیچیده ترین محاسبات می­سازد. این برد دارای امکانات دیگری نظیر 4 پورت سریال، 2 درگاه میکرو USB OTG و قابلیت خواندن و نوشتن فلش و…از طریق این آنها می­باشد. دسترسی مستقیم به حافظه (Direct Memory Access) این اجازه را به میکرو کنترلر می دهد تا وظایف دسترسی به حافظه را آزاد کند، بنابراین می تواند همزمان عملیات دیگری را انجام دهد، و علاوه بر این موارد وجود 2 خروجی آنالوگ (DAC) از دیگر ویژگی های منحصر به فرد DUE می­باشد.

بدون شک این حجم از قابلیت­ها در کنار تعداد بسیار زیاد پایه های ورودی خروجی این برد را  به قدرتمندترین برد آردوینو تبدیل کرده است. این برد ظاهری مشابه به برد MEGA دارد.

نقشه Arduino Due

می­خواهید از شیلدهای آردوینو استفاده کنید؟ شیلد یک برد سازگار با آردوینو است که روی آن قرار می­گیرد و با اهداف مختلف قابلیت های متعددی را به برد آردوینو اضافه می­کند. برای مثال شما می­توانید با استفاده از شیلد موتور، چند موتور DC را کنترل کنید. یا با استفاده از شیلد LCD، به راحتی روی یک LCD اطلاعات را نمایش دهید. تا کنون شیلدهای زیادی برای بردهای آردوینو ساخته شده است که بیشتر آنها سازگار با برد UNO می­باشد. از آنجا که نحوه قرارگیری پایه ها و نوع پین هدرها در برد LEONARDO کاملا مشابه با برد UNO می­باشد، شما می­توانید از شیلدها بر روی برد LEONARDO نیز استفاده کنید. علاوه بر برد UNO و LEONARDO، برد MEGA و DUE نیز نه تنها با شیلدهای آردوینو سازگار است بلکه علاوه بر پایه های اشغال شده توسط شیلد پایه های آزاد زیاد دیگری نیز در اختیار کاربر قرار می­دهد.

شیلدهای آردوینو

اینترنت اشیا! اگر در پروژه خود نیاز به استفاده از اینترنت دارید و علاقه ای به استفاده از ماژول­های جداگانه ندارید پیشنهاد آردوینو برای شما سه برد UNO WIFI، ETHERNET و YUN می­باشد. آردوینو UNO WIFI یک برد UNO است که یک چیپ ECC608 روی آن قرار گرفته است که امکان انتقال اطلاعات و حتی برنامه ریزی را از طریق ارتباط وای فای فراهم می­سازد.

برد  ETHERNET نیز مشابه UNO است اما فاقد ماژول وای فای می­باشد این برد از یک کانکتور RJ45 جهت انتقال اطلاعات از طریق کابل LAN بهره گرفته است. البته به دلیل استفاده از پایه های میکرو برای بهره برداری از این کانکتور تعداد پایه های ورودی و خروجی و PWM کم شده است. نداشتن مبدل سریال به USB از دیگر محدودیت های این برد می­باشد. البته در کنار این نقاط ضعف استفاده از یک درگاه میکروSD برای ذخیره اطلاعات یکی از نکات مثبت این برد می­باشد.

اگر برای پردازش اطلاعات اینترت اشیا نیاز به پردازشگر قوی تری دارید و ATmega328 پاسخگوی نیاز شما نیست، بد نیست نگاهی به برد YUN بیندازید. این برد از یک پردازشگر 8 بیتی ATmega32U4 در کنار یک پردازشگر 32 بیتی AR9331 Linux استفاده کرده است. شما می­توانید از سیستم عامل لینوکس روی آردوینوی خود بهره­مند شوید و به آسانی از دستورات آردوینو استفاده کنید. وجود درگاه USB تایپ A و عدم نیاز به مبدل سریال به USB به دلیل استفاده از میکروکنترلر ATmega32U4، وجود یک درگاه میکرو SD، 20 پایه ورودی و خروجی، 7 پایه PWM و 12 پایه­ی ورودی آنالوگ در کنار ماژول وایفای از دیگر ویژگی­های منحصر به فرد برد YUN می­باشد و تعجبی ندارد که این برد به سرعت، برد ETHETNET را از رده خارج کرده است.

آردوینو و اینترنت اشیا

اگر میخواهید آردوینو را با تلفن همراه خود کنترل کنید آردوینو 101 این امکان را برای شما فراهم می­سازد. در این برد از یک پردازنده 32 بیتی دو هسته ای Intel با سرعت کلاک 32 مگاهرتز بجای پردازنده های AVR و ARM استفاده شده است. این پردازنده جدید دارای امکان برقراری ارتباط به صورت بلوتوث می­باشد. بنابرین شما می­توانید برد آردوینوی خود را به تلفن همراه  متصل کنید.

قطعا ائتلاف آردوینو و INTEL برای طراحی این برد یکی از گام های موثر آردوینو برای ورود به نسل جدیدی از آردوینوها به شمار می­رود.

ماوس، کیبرد و جوی استیک! اگر در پروژه می­خواهید از امکاناتی مانند ماوس و کیبورد و جوی استیک USB استفاده کنید، باید از بردهای مبتنی بر میکروکنترلر ATmega32U4 استفاده کنید. در این مورد بهترین گزینه برد آردوینو LEONARDO می­باشد زیرا کتابخانه های متنوعی در این زمینه برای آن نوشته شده است.

باتری لیتیوم؟ همواره تغذیه یکی از مهمترین چالش­ها در انجام پروژه ها می­باشد. خوشبختانه آردوینو به دلیل رگولاتورهایی که دارد معمولا مشکل چندانی با تغذیه ورودی ندارد. البته همانطورکه اشاره شد بردهای مختلف آردوینو اغلب دو ولتاژ کاری دارند. 5 ولت و 3.3 ولت. اگر از بردهای UNO، MEGA، NANO، MINI، LEONARDO و یا YUN استفاده می­کنید به ولتاژ ورودی بیشتر از 5 ولت نیاز دارید. بنابرین نمی­توان با  یک باتری تک سل لیتیومی، آردوینو را راه اندازی کرد. اگر در پروژه ای نیاز دارید که فقط از یک باتری تک سل لیتیومی استفاده کنید باید بردهایی نظیر GEMMA، LILYPAD، PRO MINI و یا FIO استفاده کنید. بعضا روی این بردها، کانکتور JST مناسب برای باتری لیتیومی نیز تعبیه شده که راه اندازی آن را بسیار ساده می­کند.

آردوینو روی لباس! سازندگان خوش ذوق آردوینو علاقه­ی ویژه ای به انجام پروژه­های مربوط به لباس دارند. از این رو با همکاری Sparkfun بردهای سری LILIPAD را طراحی کرده اند. این بردها فاقد پین هدر می­باشند تا ضخامتشان تا حدامکان کم باشد و امکان قرار دادن آن ها در لباس فراهم شود. همچنین در این بردها پدها به گونه ای طراحی شده که امکان دوخته شدن به لباس را دارد. بر روی بردهای LILYPAD از میکروکنترلرهای مختلف استفاده شده است. در مدل اصلی LILYPAD از ATmega238  و ATmega168 استفاده شده است اما در این برد مبدل USB به سریال وجود ندارد. در مدل LILYPAD USB به جای ATmega238  از ATmega32U4 استفاده شده است بنابرین در این برد نیازی به استفاده از مبدل سریال به USB نیست و یک درگاه میکرو USB روی آن تعبیه شده است.

اگر بودجه مان برای انجام پروژه محدود است

یکی از مهمترین پارامترها در انتخاب یک برد آردوینوی مناسب برای انجام پروژه­ها مساله هزینه است. بدون شک هر چقدر امکانات یک برد آردوینو افزایش یابد، قیمت آن نیز بالاتر می­رود. در جدول زیر قیمت بردهای آردوینو مشاهده می­شود.

اگر مشکل فضا و اندازه داریم

شاید در پروژه شما نیاز به محاسبات و تعداد پایه های زیاد نباشد اما اندازه برایتان اهمیت زیادی داشته باشد، به طور مثال استفاده از آردوینو در یک ربات کوچک، یا قرار دادن آن در لباس و کفش و… در این صورت اندازه یک عامل تاثیرگذار در انتخاب آردوینو می­باشد. خوشبختانه آردوینو در این مورد نیز دست شما را باز گذاشته است. هرچند که بردهای اصلی آردوینو که اغلب با شیلدها سازگاری دارند اندازه کوچکی ندارند، اما آردوینو تعدادی برد کوچک نیز برای حل مشکل اندازه طراحی کرده است. اگر به بیش از3 پایه نیازی ندارید و قابلیت­های برد برایتان اهمیت ندارد پیشنهاد ما به شما آردوینو GEMMA است. این برد بسیار کوچک تقریبا به اندازه یک سکه است. پین هدر ندارد بنابرین ضخامت کمی دارد. خوشبختانه پورت میکرو USB دارد و با یک باتری لیتیومی روشن می­شود. اگر به تعداد پایه های بیشتری نیاز دارید (تا 10 پایه) بردهای LILYPPAD simple و LILYPAD USB برای شما مناسب است. این بردها نیز پین هدر ندارند و برای قرارگرفتن در لباس مناسب هستند. اگر باز هم قابلیت های بیشتری از برد آردوینوی کوچک خود انتظار دارید، بردهای pro MINI و NANO و MICRO آخرین گزینه ها هستند. در جدول زیر بردهای آردوینو برحسب اندازه لیست شده­اند.

توجه

متاسفانه در سایت آردوینو فقط ابعاد PCB گزارش شده است، اما در جدول فوق اندازه ها با درنظر گرفتن جک آداپتور، USB و پین هدرها بیان شده است.

در نهایت کدام آردوینو را انتخاب کنیم؟

در بخش­های قبل بردهای آردوینو را از جهات مختلف مورد بررسی دقیق قرار دادیم. شاید ارائه­ی تمام این مطالب تصمیم  گیری را برای شما دشوار کند. در این صورت گراف زیر احتمالا می­تواند راهنمای خوبی برای مقایسه تمام پارامترهای انتخاب یک برد مناسب برای پروژه شما باشد.

آردوینو نماها!

آردوینوی مورد نظر خود را انتخاب کرده اید؟ حال با این سوال مواجه می­شوید که از کجا و کدام آردوینو را بخرید! آردوینوی آبی، سبز، قرمز، GENUINO، DFRduino، Metro و… این همه نام مختلف برای فقط یک برد UNO! در نگاه اول ممکن است بسیار گیج کننده باشد اما این تنوع خیلی هم بد نیست. در این بخش می­خواهیم تفاوت این برد­ها را بررسی و در مورد بردهای  اصلی (original) و غیراصلی بحث کنیم.

این همه تنوع در تولید بردهای آردوینو کاملا به دلیل متن باز بودن آن می­باشد. هر سازنده ای می­تواند برد آردوینو را با نام دلخواه خود تولید کند. اما آیا همه بردهای آردوینوی موجود در بازار کاملا یکسان است و کیفیت مشابهی دارند؟ خیر، حتی با اینکه همه اطلاعات بردهای آردوینو در سایت آن موجود می­باشد، کیفیت قطعات استفاده شده در آنها متفاوت است. البته در این بین گاهی سازندگان سعی در بهبود ویژگی های بردهای اصلی نیز داشته­اند.

سبز یا آبی؟

آردوینو در ابتدا بردهای خود را به رنگ آبی چاپ می­کرد اما اکنون بردهایی نظیر UNO، NANO، MEGA، LEONARDO و MICRO را به رنگ سبز چاپ می­کند. بردهای اصلی آردوینو مشخصات منحصر به فرد خود را دارند. از جمله رنگ مخصوص، کیفیت چاپ سیلک، نوع قطعات و ICهای استفاده شده و حتی کیفیت مسیرهای جریان و پدها. برای کسب اطلاعات بیشتر در این مورد می­توانید  سایت آردوینو را مشاهده کنید.

ARDUINO یا GENUINO؟

Arduino و Genuino در اصل هیچ تفاوتی با یکدیگر ندارند. اجزای تشکیل دهنده، مشخصات و کیفیت هر دو برد یکسان است. تنها تفاوت در محل ارائه ی بردها است. در گذشته بردهای آردوینو در آمریکا با نام Arduino و بردهای خارج از آمریکا با نام Genuino به فروش می­رسیده است. این تفاوت در نام صرفا به دلیل اختلاف نظر بین مؤسسان آردوینو بوده است.

از سال 2015 تاکنون آردوینو بردهای خود را در آمریکا با همکاری شرکت Adafruit تولید می­کند. البته این شرکت بردهای شبیه آردوینوی خود را نیز با نام METRO به فروش می­رساند. از آنجا که آردوینو یک سخت افزار متن باز است، هر تولیدکننده‌ای این اجازه را دارد تا بردهای آردوینو را تولید کند البته تا زمانی که از نام آردوینو برای این بردها استفاده نکند. علاوه بر Adafruit شرکت های دیگری مانند Sparkfun  و DFRobot نیز بردهای آردوینوی خود را با نام های RedBoard و DFRduino تولید می­کنند.

قرمز یا مشکی؟

همانطورکه اشاره شد شرکت Adafruit بردهای آردوینوی خود را با برند METRO تولید می­کند. برخی از این بردها به پردازشگرهای قدرتمند Arm مجهز شده اند و امکاناتی نظیر پورت دوربین، استریو و درگاه میکرو SD دارند. به دلیل استفاده از بوت ‌لودر UF2 امکان برنامه ریزی این بردها از طریق Arduino IDE و CircuitPython وجود دارد. برای آشنایی با بردهای Metro می­توانید به اینجا مراجعه کنید. این شرکت برد ATmega328 خود را کاملا مشابه آردوینو UNO طراحی کرده است، نحوه قرارگیری پایه ها، ترتیب و تعداد آنها کاملا مشابه آردوینو UNO می­باشد، بنابرین امکان استفاده از شیلدهای آردوینو برای این برد وجود دارد. در کنار شباهت های زیادی که با برد آردوینو UNO دارد اما تفاوت­هایی نیز وجود دارد. این برد از پردازشگر ATmega328 با پکیج SMD استفاده کرده و برای تبدیل سریال به USB از چیپ CP2104 بهره گرفته که این مساله باعث کاهش قیمت این برد نسبت به برد UNO اصلی شده است. برد مترو بجای استفاده از USB تایپ B برای برنامه­ریزی از پورت میکرو USB استفاده کرده است. در کنار جک آداپتور، یک کلید کوچک برای قطع و وصل کردن جریان وجود دارد. ولتاژ کاری (منطقی) این برد 5 ولت می­باشد اما بر روی برد پدی وجود دارد که با لحیم کردن آن می­توان ولتاژ منطقی را به 3.3 ولت تغییر داد.

اگر در پروژه خود مشکل فضا دارید Adafruit برد ATmega328 خود را بدون پین هدر و جک لحیم نیز به فروش می­رساند.

شرکت DFRobot نیز تعدادی از مدل های آردوینو را با نام DFRduino تولید می­کند. از جمله شبیه­ترین بردها به آردوینوی اصلی می­توان به  DFRduino UNO، DFRobot Leonardo وDFRduino Mega  اشاره کرد. برد DFRduino UNO  کاملا مشابه UNO R3 می­باشد. این برد از پکیج DIP میکروکنترلر ATmega328 استفاده کرده تا امکان برنامه ریزی و آپدیت پردازشگر را از کاربر نگیرد، برای تبدیل سریال به USB مشابه UNO اصلی از یک میکروکنترلر ATmega16U4 استفاده شده و برای درگاه USB نیز تایپ B انتخاب شده است. تنها تفاوت این برد با برد UNO R3 اصلی استفاده از پین­هدرهای رنگی است. رنگ قرمز برای پین های تغذیه، آبی برای پایه های ورودی آنالوگ و سبز برای پین های دیجیتال استفاده شده است. استفاده از پین­هدرهای رنگی برای تازه کارها و کسانی که می­خواهند از ماژول های دیگر DFRobot استفاده کنند می­تواند ایده خوبی باشد. ناگفته نماند که قیمت این برد نیز با برد اصلی آردوینو تفاوت چندانی ندارد.

شرکت DFRobot نیز تعدادی از مدل های آردوینو را با نام DFRduino تولید می­کند. از جمله شبیه­ترین بردها به آردوینوی اصلی می­توان به  DFRduino UNO، DFRobot Leonardo وDFRduino Mega  اشاره کرد. برد DFRduino UNO  کاملا مشابه UNO R3 می­باشد. این برد از پکیج DIP میکروکنترلر ATmega328 استفاده کرده تا امکان برنامه ریزی و آپدیت پردازشگر را از کاربر نگیرد، برای تبدیل سریال به USB مشابه UNO اصلی از یک میکروکنترلر ATmega16U4 استفاده شده و برای درگاه USB نیز تایپ B انتخاب شده است. تنها تفاوت این برد با برد UNO R3 اصلی استفاده از پین­هدرهای رنگی است. رنگ قرمز برای پین های تغذیه، آبی برای پایه های ورودی آنالوگ و سبز برای پین های دیجیتال استفاده شده است. استفاده از پین­هدرهای رنگی برای تازه کارها و کسانی که می­خواهند از ماژول های دیگر DFRobot استفاده کنند می­تواند ایده خوبی باشد. ناگفته نماند که قیمت این برد نیز با برد اصلی آردوینو تفاوت چندانی ندارد.

آیا بردهای غیر اصلی بخریم؟

علاوه بر شرکت­های معرفی شده در بخش قبل و دیگر شرکت ها که بردهای مشابه آردوینو را تولید می­کنند، تولیدکنندگان غیرمعتبر زیادی در کشورهای مختلف وجود دارند که بردهای آردوینو را با لوگو و نام آردوینو به فروش می­رسانند. شرکت آردوینو از این برد­ها با عنوان counterfeit یاد می­کند و تفاوت های این برد­ها با بردهای اصلی تولید Arduino LLC را در سایت Arduino.cc معرفی کرده است. بردهای counterfeit کاملا مشابه آردوینوهای اصلی می­باشد و تا حد زیادی عملکرد مشابهی دارد اما قیمت این برد ها نسبت به بردهای اصلی بسیار کمتر است. همین امر سبب رشد زیاد و تنوع بردهای غیر اصلی شده است. اما سوالی که یک کاربر عادی با آن مواجه می­شود این است که آیا خرید این بردهای ارزان برای انجام پروژه مطلوب است یا خیر؟

شاید خرید یک برد ارزان تر با مشخصات یکسان برای شما اغواکننده باشد و منطقی به نظر برسد. همانطورکه در ابتدای مقاله ذکر شد، آردوینو یک پلتفرم متن باز است و هر کسی می­تواند آردوینوی خود را بسازد اما این امر تا زمانی مورد تایید بنیان گذاران آردوینو است که از نام و لوگوی آردوینو استفاده نشود. اگر می­خواهید پول کمتری خرج کنید از تولیدکنندگان مورد تایید آردوینو که برخی از آن ها در بخش قبل معرفی شد، خرید کنید. وقتی شما بردهای  counterfeit را خریداری می­کنید در حقیقت از فروشندگان غیر رسمی حمایت کرده که قانون کپی رایت را نقض کرده­اند. اما مساله به همین جا ختم نمی­شود، بردهای تقلبی که با نام آردوینو روانه بازار می­شوند به ظاهر مشخصات یکسانی با بردهای اصلی آردوینو دارند اما در واقع کیفیت و نوع قطعات استفاده شده در آنها بسیار متفاوت است. به طور مثال دقت ولتاژ خروجی این بردها از بردهای اصلی کمتر است. جریان مجازی که تغذیه و پین­های این برد­ها فراهم می­کنند با آنچه که آردوینو ادعا می­کند متفاوت است همین مساله سبب می­شود بردهای counterfeit  به راحتی خراب شوند. حتی در برخی از این بردها برای کاهش هزینه، قطعات مورد استفاده با قطعات برد اصلی کاملا متفاوت است. به طور مثال در برد UNO برای تبدیل USB به سریال بجای استفاده از ATmega16U4 از چیپ­هایی نظیر FTDI و یا حتی آی سی CH340 استفاده می­شود. بنابرین این بردها قابلیت سازگاری با برخی سیستم عامل­ها را ندارند و یا برای راه اندازی آن ها نیاز به اقدامات دیگری می­باشد.

هشدار

در این پروژه به دلیل پروگرام کردن مستقیم ماژول ESP8266، firmware ماژول پاک می شود و دیگر از دستورات AT command پشتیبانی نمی کند. اگر مجددا نیاز به استفاده از AT command داشته باشید، باید مجددا firmware ماژول را روی آن آپلود کنید.

نبرد آردوینو و سایر بردهای اینترنت اشیا

در سال 2008 که آردوینو رسما کار خود را آغاز کرد، رقیب جدی دیگری در عرصه­ی تولید بردهای توسعه وجود نداشت، اما با پیشرفت سریع پردازنده ها و پیدا شدن پدیده ای به نام اینترنت اشیا رقیبان دیگری در این عرصه پدیدار شدند. در ابتدا تولید کنندگان ماژول هایی نظیر وایفای، GSM و بلوتوث بیشتر در خدمت میکروکنترلرهای دیگر و بردهای توسعه نظیر آردوینو بوده­اند اما با گذشت زمان کم­ کم این ماژول­ها به پردازنده­های قوی­تر و امکانات بیشتر مجهز شدند و خود به بردهای توسعه تبدیل شده­اند.

شرکت Espressif Systems یکی از پیشتازان در این زمینه است که کارخود را از سال 2008 آغازکرده­است. اصلی­ترین محصول این کمپانی چیپ­های وایفای ESP8266 بوده است. پس از گذشت مدتی در سال 2013 این شرکت از برد توسعه خود به نام NodeMCU رونمایی کرد. این برد توسعه با هدف IOT و بر پایه زبان برنامه­نویسی Lua طراحی شده ­است. البته بردهای NodeMCU با نرم افزار آردوینو IDE نیز برنامه نویسی می­شوند و به همین دلیل مورد توجه قرارگرفته ­اند. یکی دیگر از محصولات جدید این شرکت ESP32 می­باشد که به پردازنده 2 هسته ای مجهز شده و علاوه بر وایفای، دارای بلوتوث نسل4 نیز می­باشد. یکی از مهمترین نقاط قوت بردهای توسعه NodeMCU در مقابل بردهای IOT آردوینو، قیمت بسیار کم آن­ها می­باشد به طوریکه قوی­ترین مدل NodeMCU یعنی ESP32 با امکانات بسیار زیادی که در اختیار کاربر قرار می­دهد، کمتر از 10 دلار قیمت دارد. در جدول زیر مشخصات بردهای NodeMCU در مقایسه با بردهای IOT آردوینو قابل مشاهده است.

جمع بندی: آردوینو آری یا نه؟

اگر تاکنون نتوانستید در مورد خرید یا عدم خرید برد آردوینو تصمیم گیری کنید، امیدواریم خواندن این بخش بتواند در تصمیم گیری نهایی به شما کمک کند.

در بخش های گذشته ضمن آشنایی با پلتفرم آردوینو و سرگذشت آن، به بررسی و مقایسه بردهای مختلف آردوینو بر اساس پارامترهایی نظیر پردازشگر، امکانات، اندازه، هزینه و… پرداخته شد. در این بخش بار دیگر قصد داریم مزایا و معایب آردوینو را درکنار یکدیگر بررسی کنیم تا در مورد استفاده یا عدم استفاده از این برد توسعه تصمیم گیری کنیم.

مزایا و امکانات آردوینو

  • از جمله مهمترین مزیت های آردوینو، هماهنگی سخت افزار و نرم افزار با یکدیگر، سادگی کاربا آن و کامپکت بودن می­باشد. وقتی از یک برد توسعه صحبت می­کنیم انتظار می­رود تمام امکانات برای راه اندازی و برنامه­ریزی دراختیار کاربر قرار گرفته باشد. در اکثر بردهای آردوینو کافی است کابل USB را به برد آردوینو وصل کنید و با فشردن 1 کلید برنامه نوشته شده در محیط آردوینو IDE را به برد انتقال دهید.
  • برتری مهم دیگر پلتفرم آردوینو، سازگاری آن با تمام سیستم عامل­ها می­باشد. این در حالی است که اکثر نرم افزارهای برنامه ریزی AVR تنها با سیستم عامل ویندوز یا لینوکس سازگار است.
  • تنوع زیاد بردهای آردوینو و در نظر گرفتن نیاز کاربران مختلف، یکی دیگر از نقاط قوت آردوینو می­باشد. هرچند که تنها تعداد کمی از بردهای آردوینو شناخته شده هستند اما آردوینو بیش از 40 برد مختلف با کاربری­های مختلف طراحی کرده­ است. برای آشنایی با تمام این بردها می­توانید به سایت آردوینو مراجعه کنید.
  • گسترش زیاد منابع و کتابخانه ها یکی دیگر از نقاط قوت آردوینو می­باشد. متن باز بودن سخت افزار و نرم افزار باعث شده تا آردوینو از سطح یک برد الکترونیکی فراتر رود و به یک خط فکری تبدیل شود. هزاران توسعه دهنده که در سراسر جهان از آردوینو استفاده می کنند هر روز ماژول­ها و سخت افزار­های جدیدی برای آردوینو طراحی می کنند و کتابخانه های آن را به صورت رایگان به همراه مثال های فراوان در اختیار استفاده کنندگان قرار می­دهند. این حجم زیاد آموزش­ها و مطالب باعث می­شود که شما با صرف کمترین زمان ممکن بتوانید با ترکیب کدها و کتابخانه ها نیاز پروژه­ی خود را برطرف سازید.
  • علاوه بر امکان برقراری ارتباط با سنسوها و ماژول­های مختلف توسط آردوینو و وجود کتابخانه­های مختلف برای این ماژول­ها، کتابخانه­های بسیاری برای ایجاد ارتباط بین بردهای آردوینو و سایر نرم افزارها نظیر MATLAB، Simulink، LabVIEW و حتی Python وجود دارد. اگر به زبان C مسلط نیستید و یا برای انجام پروژه خود نیاز به استفاده از محیط کامپیوتر دارید، نگران نباشید چون آردوینو این امکان را برای شما به راحتی فراهم می­کند. امروزه با صرف تنها 20 دلار و خرید یک آردوینو UNO می­توانید به راحتی سنسورها و عملگرهای پروژه خود را به کامپیوتر وصل کنید و دیگر نیازی به استفاده از کارت­های گران قیمت DAQ ندارید.

امروزه با صرف تنها 20 دلار و خرید یک آردوینو UNO می­توانید به راحتی سنسورها و عملگرهای پروژه خود را به کامپیوتر وصل کنید و دیگر نیازی به استفاده از کارت های گران قیمت DAQ ندارید.

  • در کنار تمام ویژگی­های مثبتی که سخت افزار و نرم افزار آردوینو دارد، باید به این نکته نیز اشاره کرد که پلتفرم آردوینو تا حدودی جنبه آموزشی دارد و اساسا یکی از اهداف ساخت این پلتفرم آموزش الکترونیک برای تمام افراد بوده است. زبان برنامه نویسی آسان و وجود آموزش­ها و کتابخانه­های متعدد و همچنین وجود انجمن Arduino Forum برای تبادل اطلاعات و پشتیبانی کاربران آردوینو از جمله اهداف آموزشی این پلتفرم می­باشد.

معایب و محدودیت های آردوینو

در کنار مزایای مهم آردوینو بد نیست برخی معایب آن را نیز برشماریم. همانطورکه وجود بردهای متنوع با کاربردهای مختلف می­تواند یکی از نقاط قوت برای آردوینو باشد، عدم وجود برد جامع که اکثر این ویژگی­ها را در بر داشته باشد می­تواند به نقطه ضعفی برای آردوینو تبدیل شود. در بین بردهای آردوینو برد DUE اکثر ویژگی­های مثبت بردهای آردوینو را داراست اما ابعاد این برد برای انجام بسیاری از پروژه ها مطلوب نیست. از طرفی در این برد قدرتمند از وایفای و بلوتوث خبری نیست. به طورکلی آردوینو در تولید محصولات خود، به حوزه اینترت اشیا و بردهای صنعتی کمتر پرداخته است و بردهایی که برای این حوزه طراحی کرده است، از نظر قیمت قابلیت رقابت با نمونه­های مشابه را ندارد.

یکی دیگر از نقاط ضعف آردوینو استفاده محدود از پردازنده های قوی­تر و جدیدتر ARM است. مصرف کمتر و سرعت پردازش این پردازنده ها قربانی تعصب آردوینو در استفاده از   پردازنده­های mega شده است. شاید تولید برد 101 بتواند نوید سنت شکنی آردوینو و استفاده از پردازنده های نسل جدید باشد.

عدم استاندارد سازی استفاده از پورت USB یکسان و عدم به کارگیری تمام امکانات میکروکنترلر در اکثر بردها از دیگر نقاط ضعف آردوینو است.

آینده آردوینو چه می شود؟

امروزه شاهد پیشرفت و پیدایش بردهای توسعه با قابلیت­های فراوان و قیمت ارزان هستیم. حتی برخی از این بردها قابلیت­های بیشتر و خلاقانه­تری نسبت به آردوینو ارائه می­کنند. با پیشرفت روزافزون این بردهای توسعه آیا باید منتظر افول آردوینو و تسلیم شدن آردوینو در برابر دیگر توسعه دهندگان باشیم؟ آیا توسعه دهندگان دیگر در آینده گوی سبقت را از آردوینو می­ربایند؟ به نظر شما آردوینو برای مقابله با پلتفرم­های جدید باید چه اقداماتی انجام دهد؟

حمله بهترین دفاع! یکی از سیاست­های جالب آردوینو درمورد رقبای خود، همکاری با آن­ها است. آردوینو در آمریکا با Adafruit و Sparkfun همکاری خوبی دارد. همانطورکه در بخش اول مقاله اشاره شد، آردوینو از روز اول با هدف تجاری شکل نگرفته است و تعصبی در مورد تولید و حفظ محصولات خود ندارد. به همین دلیل می­تواند به راحتی با سایر توسعه دهندگان همکاری‌های سازنده داشته باشد. سیاست متن باز بودن سخت افزار و نرم افزار، بهترین راه تبلیغ و گسترش آردوینو بوده ­است و می­تواند یکی از مهمترین پارامترها در بقای آردوینو به شمار رود.

پدر مهربان! آردوینو علاوه بر ارائه­ی پلتفرم یک خط فکری منحصر به خود ایجاد کرده است به طوریکه بیشتر رقبای آردوینو برای گسترش محصولات خود علاوه بر ارائه­ی نرم افزار خود سعی می­کنند تا ماژول­هایی متناسب با آردوینو IDE عرضه کنند. این امر سبب می­شود تا محصولات توسعه دهندگان جدید به نحوی زیر مجموعه­ی آردوینو قرارگیرد. در این مورد آردوینو برای حفظ نقش پدرانه خود باید با ارائه آموزش­های منسجم برای در دست گرفتن این خط فکری اهتمام بیشتری داشته باشد.

به روز باش! در چند سال اخیر گره خوردن سخت افزار و نرم افزار بیش از گذشته به چشم می­آید. بسیاری از مهندسان نرم افزار به راحتی هزاران خط برنامه را روی سخت افزار پیاده می­کنند. بدون شک آردوینو یکی از عوامل مهم در رشد این پدیده بوده است اما برای ماندن در کورس رقابت باید سعی کند امکانات نرم افزاری و سخت افزاری لازم در این زمینه را ارتقا دهد. به طور مثال پرداختن به زمینه های جدید مانند اینترنت اشیا و فراهم کردن سخت افزار مورد نیاز آن روی بردها و همچنین درگیر شدن با نرم افزارهای روبه رشدی نظیر Python می­تواند ضامن بقای آردوینو باشد.

Share this post

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *