بردهای آردوینو در موسسه طراحی تعامل Ivrea برای دانشآموزانی که هیچ آشنایی با الکترونیک و مفاهیم برنامه نویسی ندارند طراحی شده است. بردهای آردوینو در طی سالیان در جهت انطباق با نیازها و چالش های جدید تغییرات زیادی داشته اند. این بردها از بردهای ساده 8 بیتی به بردهایی برای استفاده در اینترنت اشیا، پرینترهای 3 بعدی، تکنولوژی پوشیدنی و غیره توسعه پیدا کرده اند. همه بردها کاملا متن باز هستند و به کاربر اجازه میدهند که آنها را بهطور کاملاً مجزا و دقیقاً منطبق با نیازهای خود بسازد. در طی سالیان انواع مختلفی از بردهای آردوینو در پروژههای بسیاری از ساده تا پیچیده به کار گرفته شده اند. در این مقاله یک نگاه اجمالی در مورد انواع مختلف بردهای آردوینو خواهیم داشت و همچنین به مقایسه آنها می پردازیم.
چند نوع برد آردوینو وجود دارد؟
برد آردوینو یک پایگاه متن باز برای ساخت پروژههای الکترونیک است. این برد هم از میکروکنترلر و هم از یک بخش نرم افزار یا محیط توسعه یکپارچه (IDE) تشکیل شده است که میتواند بر روی PC اجرا شود و برای اتصال و بارگذاری کد کامپیوتر به برد فیزیکی استفاده میشود.
برخلاف بسیاری از بردهای قابل برنامهریزی قبلی، آردوینو به سخت افزار مجزا برای پروگرام کردن کد جدید بر روی برد نیاز ندارد و فقط میتوان از یک کابلUSB استفاده نمود. همچنین IDE آردوینو از نسخه اصلی ++C استفاده میکند که برای یادگیری سادهتر است. در آخر، بردهای آردوینو امکانات یک میکروکنترلر را بهصورت توابع و پکیج های ساده و قابل دسترس در اختیار تمامی افراد قرار میدهد.
بردهای آردوینو برای ساخت پروژههای مهندسی مختلف و کاربردهای مختلف استفاده میشود. نرم افزار آردوینو علاوه بر تازهکارها، توسط افراد حرفه ای تر نیز قابل استفاده است. این نرم افزار در سیستم عامل های ویندوز، لینوکس و Mac قابل اجرا است. آردوینو علاوه بر اینکه فرآیند کار با میکروکنترلر را برای افرادی که با نحوه راه اندازی آن آشنا نیستند، ساده تر میکند، مزیت های دیگری نیز دارد. از جمله این مزیت ها عبارت است از:
- قیمت ارزان
- محیط برنامه نویسی ساده
- نرم افزار متن باز و قابل توسعه
- سخت افزار متن باز و قابل توسعه
عملکرد برد آردوینو
بردهای آردوینو را میتوان در زمینه های زیادی به کار گرفت. این برد میتواند به آسانی به ماژولهای مختلف مانند حسگرها ، آشکارسازها، ماژول GSM، ماژول GPS و غیره متصل شود. بردهای آردوینو برای کنترل و پردازش عملیات مدار در سیستم های الکترونیکی استفاده میشود. به طور خلاصه، کار آن خواندن ورودی، پردازش آن و ارائه نتیجه به صورت خروجی در جهت کنترل یک عمل در مدار است. کاربرد اصلی بردهای آردوینو در پروژههای مختلف الکترونیکی در حوزه برق، الکترونیک، رباتیک و غیره است.
ویژگیهای انواع مختلف بردهای آردوینو
ویژگیهای انواع مختلف بردهای آردوینو در جدول زیر آمده است:
Arduino Board | Processor | Memory | Digital I/O | Analogue I/O |
Uno | 16Mhz ATmega328 | 2KB SRAM, 32KB flash | 14 | 6 input, 0output |
Due | 84MHz AT91SAM3X8E | 96KB SRAM, 512KB flash | 54 | 12 input, 2 output |
Mega | 16MHz ATmega2560 | 8KB SRAM, 256KB flash | 54 | 16 input, 0 output |
Leonardo | 16MHz ATmega32u4 | 2.5KB SRAM, 32KB flash | 20 | 12 input, 0 output |
انواع مختلف بردهای آردوینو
بردهای آردوینو شامل موارد زیر است:
- آردوینو Uno (R3)
- آردوینو Nano
- آردوینو Micro
- آردوینو Due
- آردوینو LilyPad
- آردوینو Bluetooth
- آردوینو Diecimila
- آردوینو RedBoard
- آردوینو Mega (R3)
- آردوینو Leonardo
- آردوینو Robot
- آردوینو Esplora
- آردوینو Pro Mic
- آردوینو Ethernet
- آردوینو Zero
- آردوینو Fastest
آردوینو Uno (R3)
برد Uno انتخاب خوبی برای آردوینو مقدماتی است. این برد آردوینو بر اساس میکروکنترلر ATmega328P است. در مقایسه با بردهای دیگر آردوینو مانند برد آردوینو Mega به سادگی قابل استفاده است. این برد شامل 14 پایه دیجیتال I/O است که 6 پایه میتواند به عنوان PWM (خروجی های مدولاسیون پهنای پالس ) بکار رود ، 6 پایه ورودی های آنالوگ، یک کلید ریست، یک پاورجک ، یک اتصال USB، یک هدر ICSP و غیره دارد. این برد تمام امکانات یک میکروکنترلر را دارد و براحتی به کمک کابل USB به PC وصل میشود و برای تغذیه تنها به یک باطری یا آداپتور نیاز دارد. برد UNO پرکاربردترین برد آردوینو است و برای افراد تازه کار بسیار مناسب است.
برای مطالب بیشتر در مورد این برد به این لینک Arduino Uno Board مراجعه نمایید.
آردوینو Nano
آردوینو Nano یک برد کوچک بر پایه میکروکنترلرهایی مانند ATmega328P و ATmega628 است. اما اتصالات این برد مشابه با برد Uno است. این برد کوچک، محکم و قابل اطمینان است.
این برد در مقایسه با برد Uno سایز کوچکتری دارد و برای ساخت یک پروژه علاوه بر برد به ادواتی مانند مینی USB و IDE آردوینو نیاز است. این برد شامل 8 پایه آنالوگ و 14 پایه دیجیتال که به عنوان پین I/O بکار میرود. 6 پایه تغذیه و 2 پایه ریست است. برای دانستن بیشتر درباره این برد به لینک Arduino Nano Board مراجعه شود.
آردوینو Micro
هسته اصلی برد آردوینو Micro میکروکنترلر ATmega32U4 است. این برد دارای 7 پایه PWM و 12 پایه برای ورودی آنالوگ است. . به علاوه برد آردوینو Micro شامل قطعات مختلفی مانند هدر ICSP، کلید ریست (RST)، USB، کریستال اسیلاتور 16MHz نیز میشود. این برد نسخه کوچک شده برد آردوینو Leonardo است.
آردوینو Due
آردوینو Due اولین برد آردوینو است که میکروکنترلر Cortex-M3 ARM در هسته آن قرار دارد. این برد شامل 54 پایه ورودی/خروجی دیجیتال، 12 پایه خروجی PWM ،12 پایه آنالوگ، 4 پایه USART،یک کلاک 84MHz، یک OTG USB، یک فیش و جک آداپتوری، دو پایه برای TWI، یک هدر JTAG، یک هدر SPI، دو کلید برای ریست و پاک کردن است.
حداکثر ولتاژ کاری این برد 3.3V است و بیشترین ولتاژ قابل تحمل برای پایه های ورودی/خروجی 3.3V است. به این معنا که اگر ولتاژی بیشتر از 3.3 به پایه ها اعمال شود، برد آسیب می بیند. برای تغذیه این برد هم میتوان از کابل USB استفاده کرد و هم میتوان با یک آداپتور AC به DC ولتاژ تغذیه آن را فراهم کرد. این برد با تمام شیلدهای آردوینو در ولتاژ 3.3V متناسب است.
آردوینو LilyPad
این برد یک تکنولوژی الکترونیکی پوشیدنی است . این برد توسط Leah، Buechley و SparkFun طراحی و توسعه داده شد. هر برد دارای پدهای بزرگ و پشت مسطح است که بتوان بهراحتی با نخ های هادی آنها را به لباس دوخت. این برد همچنین شامل پورت های ورودی/خروجی، تغذیه و بردهای حسگر است که بهطور ویژه برای منسوجات الکترونیکی ساخته شده است و قابل شستشو میباشد.
آردوینو Bluetooth
این برد مبتنی بر میکروکنترلر ATmega168 است و این برد همچنین برد آردوینو BT نامیده میشود. این نوع برد شامل 16 پایه دیجیتال، 6 پایه آنالوگ، اسیلاتور کریستال 16MHz، کلید ریست ، ترمینال پیچ، ICSP است که ترمینال پیچ برای تغذیه استفاده میشود. برنامهریزی این میکروکنترلر میتواند از طریق بلوتوث انجام شود.
آردوینو Diecimila
این برد بر پایه میکروکنترلر ATmega168 است. این برد دارای 14 پایه دیجیتال I/O است که 6 پایه آن میتواند برای خروجی های PWM و 6 پایه به عنوان ورودی آنالوگ استفاده شود. این برد همچنین شامل USB، کریستال اسیلاتور 16MHz ،هدر CSP ، کلید ریست، فیش آداپتوری میباشد. این برد میتواند با استفاده از کابل USB به کامپیوتر متصل شود و بوسیله آداپتور AC به DC یا باطری تغذیه شود .
Diecimila در ایتالیایی به معنی 10000 است و این نام مشخص میکند که بالغ بر 10000 برد آردوینو تا قبل از آن طراحی شده است
آردوینو RedBoard
این برد با استفاده از کابل Mini-B USB در IDE آردوینو برنامهریزی میشود. این برد بدون تغییر تنظیمات امنیتی در ویندوز 8 قابل اجرا است .بهسادگی میتوان از این برد برای پروژه استفاده کرد. برای این کار لازم است که پس از اتصال تغذیه برد، در نرم افزار آردوینو برد UNO انتخاب و برنامه روی آن بارگذاری شود. از کابل USB یا فیش آداپتوری میتوان برای تغذیه برد استفاده کرد.
آردوینو Mega (R3)
این برد بسیار شبیه برد Uno است. این برد دارای پایههای دیجیتال زیادی است که 14 پایه آن میتواند برای خروجی PWM استفاده شود. به علاوه، برد آردوینو Mega شامل 6 ورودی آنالوگ، کلید ریست، USB ، فیش آداپتوری نیز میباشد. این برد تمام امکانات میکروکنترلر را در برمیگیرد و بهراحتی به کمک کابل USB به PC وصل میشود و برای راهاندازی با باطری یا آداپتور AC به DC تغذیه میشود. زیاد بودن پایه های این برد امکان پیاده سازی پروژه هایی که در آن به پایه های ورودی/خروجی زیادی نیاز است را فراهم میکند.
آردوینو Leonardo
اولین برد توسعه یافته آردوینو است. این برد از یک میکروکنترلر همراه با USB استفاده میکند. بنابراین این برد یک برد ساده و ارزان است. از آنجایی که اتصال مستقیم به USB دارد، کتابخانه های آن اجازه میدهد که برد آردوینو به صفحه کلید یا موس کامپیوتر دسترسی داشته باشد
آردوینو Robot
این برد اولین برد چرخ دار است. در این برد بر روی هر برد دو پردازنده قرار دارد. دو برد یکی برد موتور و دیگری برد کنترل است که برد موتور برای کنترل موتورها و برد کنترل برای خواندن حسگرها استفاده میشود. هر برد یک برد آردوینو کامل است و بهوسیله نرم افزار آردوینو قابل برنامه ریزی است. . این برد بر پایه میکروکنترلر ATmega32u4 است.
پایههای این برد بر محرکها و حسگرهای روی برد نگاشته میشود. فرایند برنامهریزی کردن این برد مانند برد Leonardo است. این برد یک کامپیوتر کوچک هم میتواند نامیده شود و در رباتیک کاربرد زیادی دارد. این برد دارای اسپیکر، صفحه رنگی، پنج کلید، دو موتور، یک قطب نمای دیجیتال، یک عدد SD Card خوان، 2 پتانسیومتر، 5 حسگر کف دارد. کتابخانه این ربات میتواند برای کنترل حسگرها مانند کنترل محرکها بکار رود.
آردوینو Esplora
این برد شامل میکروکنترلر با تعدادی پایه ورودی و خروجی است. ورودیهای این برد شامل حسگر نور، 4 کلید، میکروفن، شتابسنج، جوی استیک، اسلایدر، حسگر دما و غیره است و خروجی ها شامل از LED 3 رنگ و یک بازر است. این برد مانند کنترلر بازی ویدئویی است.
برنامهریزی این برد با استفاده از نرم افزار آردوینو مانند IDE انجام میشود که داده را از ورودیها دریافت کرده و خروجیهایی مانند صفحه کلید و موس را کنترل میکند. در مقایسه با دیگر بردهای آردوینو این برد کاملا متفاوت است زیرا ورودیها مانند خروجیها به برد متصل شده اند. اتصال ادواتی مانند حسگرها و محرکها به برد بسیار ساده است. برنامهریزی این برد در مقایسه با دیگر بردها تا حدی متفاوت است. برد Esplora دارای کتابخانه است که نوشتن و خواندن داده از حسگرها و محرکها را بسیار ساده میکند.
آردوینو Pro Mic
این برد به غیر از میکروکنترلر ATmega32U4 در دیگر جهات مانند برد آردوینو Mini است. این برد 12 پایه I/O دیجیتال، 5 پایه PWM، اتصال سریال TX، RX و مبدل آنالوگ به دیجیتال (ADC) 10 بیتی دارد.
آردوینو Ethernet
این برد بر پایه میکروکنترلر ATmega328 است. این برد شامل 5 پایه آنالوگ، 14 پایه I/O دیجیتال، کلید RST، یک اتصالRJ45 ، کریستال اسیلاتور، فیش آداپتوری، هدر ICSP و غیره است. این برد از طریق شیلد Ethernet به اینترنت وصل میشود.
آردوینو Zero
این برد مانند یک برد ساده 32 بیتی قدرتمند است و بهترین انتخاب برای پروژههایی مانند تکنولوژی پوشیدنی، ادوات اینترنت اشیا ، رباتیک، اتومبیلهای پیشرفته و غیره است. این برد توسعه یافته و پیشرفته امکان انجام گستره ای از پروژه ها را فراهم میسازد و همچنین میتواند به عنوان یک ابزار آموزشی قدرتمند به کار گرفته شود.
این برد شامل 6 پایه ورودی آنالوگ، 14 پایه I/O دیجیتال، فیش آداپتور، کلید AREF، پین های USART، کانکتور USB، هدر ICSP، هدر تغذیه و غیره است. این برد با استفاده از میکروکنترلر SAMD21 ساخته شرکت Atmel راه اندازی میشود. ویژگی اصلی آن برخورداری از قابلیت EDBG (Embedded Debugger) است که امکان دیباگ کردن بدون نیاز به سخت افزار اضافی را فراهم میکند.
سریع ترین برد آردوینو
برد hifive1 یکی از بهترین بردهای آردوینو است. این برد مشابه بردهای UNO و MEGA است که شامل یک میکروکنترلر RISC-V با فرکانس 320MHz است. برد hifive1 دارای میکروکنترلر Cortex M-7 با فرکانس 400 مگاهرتز است. مشخصات میکروکنترلر به صورت زیر است:
- حافظه Flash بیش از Mbyte2
- RAM برابر Mbyte1
- DMA کنترلر – 4 عدد
- ارتباطات جانبی- بیش از 35
- ماکزیمم رزولوشن 16 بیتی با 3 عدد ADC
- 2 مبدل های دیجیتال به آنالوگ 12 بیتی
- کدک JPEG مبتنی بر سخت افزار
- 22 عدد تایمر و تایمر نگهبان 200MHz
- تقویم HW و RTC با دقت کمتر از ثانیه
- Cryptographic Acceleration
مشخصات برد Hifive1 به صورت زیر است:
- مشابه آردوینو Mega & Uno
- شارژر برای باطری
- SD Card با آشکارساز مشخصات کارت
- اترنت
- حافظه فلش QSPI اختیاری 133MHz
- واسط های CAN, SWD, Camera
- USB-OTG
شیلدهای آردوینو
شیلدهای آردوینو مدارهای از پیش ساخته شده است که برای اتصال به بعضی از بردهای آردوینو استفاده میشود. این بردها برای فراهم کردن قابلیت های بیشتر مانند اتصال به اینترنت، کنترل موتور، ارتباطات بیسیم، کنترل LCD، و غیره بر روی برد آردوینو قرار میگیرند. انواع مختلف شیلدهای آردوینو عبارتند از:
- شیلدهای بیسیم
- شیلدهای GPS
- شیلدهای Ethernet
- شیلدهای Proto
مقایسه بردهای آردوینو
مقایسه بردهای آردوینو در جدول زیر آمده است:
Arduino Board | Voltage of System | CLK Speed | Digital I/O | Analog Inputs | PWM | UART | Interface of Programming |
Arduino Uno – R3 | 5V | 16MHz | 14 | 14 | 6 | 1 | USB through ATMega16U2 |
Arduino Uno R3 SMD | 5V | 16MHz | 14 | 14 | 6 | 1 | USB through ATMega16U2 |
RedBoard | 5V | 16MHz | 14 | 14 | 6 | 1 | USB through FTDI |
Arduino Pro 3.3V/8MHz | 3.3V | 8MHz | 14 | 14 | 6 | 1 | FTDI-Compatible Header |
Arduino Pro 5V/16MHz | 5V | 16MHz | 14 | 14 | 6 | 1 | FTDI-Compatible Header |
Arduino Mini 05 | 5V | 16MHz | 14 | 14 | 8 | 1 | FTDI-Compatible Header |
Arduino Pro Mini 3.3V/8MHz | 3.3V | 8MHz | 14 | 14 | 6 | 1 | FTDI-Compatible Header |
Arduino Pro Mini 5V/16MHz | 5V | 16MHz | 14 | 8 | 6 | 1 | FTDI-Compatible Header |
Arduino Ethernet | 5V | 16MHz | 14 | 6 | 6 | 1 | FTDI-Compatible Header |
Arduino Fio | 3.3V | 8MHz | 14 | 8 | 6 | 1 | FTDI-Compatible Header or Wirelessly via XBee† |
LilyPad Arduino 328 Main Board | 3.3V | 8MHz | 14 | 6 | 6 | 1 | FTDI-Compatible Header |
LilyPad Arduino Simple Board | 3.3V | 8MHz | 9 | 4 | 5 | 0 | FTDI-Compatible Header |
انتخاب برد آردوینو
همانطور که گفته شد، برنامهریزی بردهای آردوینو بوسیله نرم افزار IDE آردوینو انجام میشود که علاوه بر نوشتن کد امکان آپلود آن بر روی برد را نیز فراهم میکند. اما تفاوت بردها در مشخصات و امکاناتی است که در اختیار کاربر قرار میدهد. برای مثال این بردها در تعداد پین های ورودی/خروجی، سرعت و مقدار ولتاژ با یکدیگر تفاوت دارند. بنابراین برد آردوینو باید با توجه به نوع کاربری آن و میزان امکانات مورد نیاز انتخاب شود.