برد آردوینو چیست و چه کاربردهایی دارد
مقدمه ای بر بردهای آردوینو
برد آردوینو یک برد مدار چاپی است که در ساخت آن از یک میکروکنترلر و تعدادی ورودی و خروجی استفاده شده است . در این برد قطعات الکترونیکی دیگری نیز وجود دارند که برای راه اندازی میكروکنترلر و توسعه امکانات موجود در آن تعبیه شده اند .
میکروکنترلر ها در واقع کامپیوترهای کوچکی هستند که درون یک تراشه قرار داده شده اند. میکروکنترلرها ابزاری کارآمد برای برنامه ریزی و کنترل کردن فرآیندهای موجود در محیط واقعی می باشند.بردهای میکروکنترلری زیادی وجود دارند که در آنها از یک میکروکنترلر و تعدادی کانکتورهای ورودی و خروجی استفاده شده است ، که به کاربر این امکان را می دهند تا بسادگی پایه های ورودی و خروجی میکروکنترلر را در دسترس داشته باشد . برد PIC , wiring و Basic Stamp نمونه هایی از این بردهای کنترل کننده می باشند.
در آردوینو ، برنامه توسط کاربر در نرم افزار آردوینو نوشته می شود . این برنامه در واقع به میکروکنترلر می گوید که چه کاری را باید انجام دهد . به عنوان مثال ، با نوشتن یک خط در برنامه می توانیم یک LED را روشن یا خاموش کنیم . در صورتی که یک کلید را به عنوان ورودی به برد متصل کنیم و خط دیگری نیز به برنامه اضافه کنیم ، می توانیم زمانی که کلید را فشار دهیم ، LED روشن شود . کار دیگری که می توانیم انجام دهیم این است که با تغییر برنامه ، تا زمانیکه دستمان روی کلید نگه داشته شده است LED چشمک زن شود .
مثال هایی که در بالا گفته شد ساده ترین کارهایی است که با یک برد میکروکنترلر می توان انجام داد. با داشتن این بردها می توان فرآیندهایی را تعریف و پیاده سازی نمود که اجرا و پیاده سازی آنها بدون این بردها امکان پذیر نمی باشد .
بردهای آردوینو نیز مانند یک کامپیوتر عادی می توانند توابع زیادی را اجرا نمایند . برای انجام این کار باید داده هایی به عنوان ورودی به برد داده شود و پس از انجام پردازش های لازم خروجی های مد نظر فعال یا غیرفعال شوند . این ورودی ها و خروجی ها سبب می شوند تا برد آردوینو محیط فیزیکی را حس کرده و روی آن تاثیر بگذارد.
1-1- تاریخچه برد آردوینو
آردوینو در مدرسه طراحی تعاملی Ivera[1]در ایتالیا ساخته و طراحی شده است . تمرکز اصلی در فعالیت های این موسسه این است که چگونه مردم با محصولات دیجیتال ، سیستم ها و محیط تعامل دارند و چگونه این تجهیزات بصورت متقابل انسان ها را تحت تاثیر قرار می دهد.
عبارت طراحی تعاملی [2] در اواسط سال 1980 توسط بیل ورپلانک [3] و بیل موگریج [4] ابداع شد. طرحواره شکل 1-1 كه توسط ورپلانک کشیده شده است ایده اصلی در طراحی تعاملی را نشان می دهد.طرحواره نمایش بسیار خوبی از کارکرد فرآیند تعامل را نشان می دهد. در صورتی که شما کاری انجام دهید ، تغییری را احساس خواهید کرد و پس از آن شما می توانید چیزی را راجع به دنیا متوجه شوید.
اگر چه این اصل یک اصل کلی می باشد ، هدف از طراحی تعاملی بیشتر این است که چگونه ما با استفاده از قطعات جانبی نظیر موس ، صفحه کلید و صفحه نمایش های لمسی با کامپیوترهای مرسوم و موجود تعامل برقرار می کنیم تا در یک محیط دیجیتالی که بصورت گرافیکی در صفحه نشان داده می شود ، کارهایمان را انجام دهیم .
تعریف دیگری نیز در این زمینه وجود دارد که محاسبات فیزیکی [5] نامیده می شود . هدف در این محاسبات فیزیکی توسعه محدودة برنامه های کامپیوتری ، نرم افزارها و سیستم ها می باشد.
از طریق دانش الکترونیک ، کامپیوترها می توانند حس بیشتری از محیط واقعی داشته باشند و بنابراین بتوانند تاثیر فیزیکی بیشتری نیز روی محیط واقعی داشته باشند .
هر دو زمینه گفته شده ، طراحی تعاملی و محاسبات فیزیکی ، نیاز به نمونة اولیه ای دارند که به صورت کامل بتواند فضای تعاملی را درک و آن را ایجاد نماید که این مساله به عنوان یک مانع بزرگ برای کسانی است که دانش زیادی از الکترونیک و طراحی این بردها ندارند .
در سال 2001 ، کیسی ریس [6] و بنجامین فرای [7] پروژه ای را شروع کردند که نام این پروژه پروسسینگ [8] بود. هدف از انجام این پروژه ایجاد محیطی برای کسانی بود که دانشی در برنامه نویسی نداشتند و با استفاده از این محیط می توانستند تصاویر گرافیگی را روی صفحه نمایش با ساده ترین حالت ممکن انجام دهند . در این پروژه کاربر با نوشتن برنامه خود در یک محیط متنی و در کمترین زمان ممکن می تواند ایده های خود را پیاده سازی کند . شکل زیر محیط برنامه نویسی این نرم افزار را نشان می دهد .
در سال 2003 ، هرناندو باراگان[9] با استفاده از همان اصول برنامه نویسی Processing یک برد مبتنی بر میکروکنترولر با نام wiring ساخت ، این برد به عنوان نسل اول بردهای آردوینو می باشد.
برد wiring اولیه |
در پروژه wiring نیز مانند پروژه Processing هدف این بود افرادی که تخصصی در زمینه بردها و طراحی آنها ندارند ، هنرمندان ، طراحان بتوانند بسادگی از این برد استفاده کنند . اما در wiring هدف بیشتر بحث الکترونیک بود تا برنامه نویسی . برد wiring نسبت به بردهای میکروکنترلری دیگر نظیر PIC و Basic stamp قیمت مناسب تری داشت ، اما برای دانشجویانی که می خواستند با این بردها کار کنند هنوز قیمت مناسب نبود.
در سال 2005 پروژه آردوینو در پاسخ به نیاز برای کاهش قیمت و ساده بودن کارکرد در بردهای تعاملی شروع شد . پروژه آردوینو از تجربیات حاصل از پروژه های wiring و Processing استفاده کرده است . به عنوان مثال در واسط کاربری نرم افزاری نرم افزار آردوینو از محیط برنامه نویسی Processing استفاده شده است . در ابتدا واسط کاربری از نرم افزارProcessing بصورت امانت گرفته شده است ، اگر چه در ظاهر هنوز شباهت های بسیاری وجود دارد ، اما سپس اصلاحاتی روی آن انجام گرفت تا برای استفاده از بردهای آردوینو بهینه گردد.
در نرم افزارآردوینو ، نامگذاری پروژه ها نیز بصورت نرم افزار Processingمی باشد و با کلمه sketch شروع می شود . همانطور که Processing یک محیط برای ایجاد و تست سریع برنامه ها را به کاربرانش می دهد ، آردوینو نیز محیطی را فراهم می سازد که کاربران این بردها بتوانند ایده های سخت افزاری خود را با حداقل زمان ممکن پیاده سازی نمایند.
برد آردوینو سریال |
بردهای آردوینو که در شکل بالا نشان داده شده است، نسبت به بردهای میکروکنترلری قبلی بسیار مطمئن تر و کارآمدتر می باشد . سوختن میکروکنترلرها در هنگام استفاده علی الخصوص برای دانش جویان و کسانی که کار با میکروکنترلرها را تازه شروع کرده اند بسیار رایج می باشد . به عنوان مثال در صورتی که سیم ها به اشتباه متصل شوند یا تغذیه اشتباه وصل شود میکروکنترلر سریعاً خواهد سوخت که این مساله نقطه ضعف بزرگی در استفاده از آنها می باشد. در بردهای آردوینو سعی شده است تا حد قابل توجهی این ایراد برطرف گردد.در بردهای آردوینو می توان میکروکنترلر موجود در برد را تعویض نمود . بنابراین در صورتی که میکروکنترلر روی برد آردوینو آسیب دید ، به سادگی می توان یک میکروکنترلر جدید جایگزین نمود و نیازی به تعویض کل برد نمی باشد .تفاوت عمده دیگری که بین بردهای آردوینو و سایر بردهای میکروکنترلری دیگر وجود دارد هزینه می باشد در سال 2018 قیمت یک برد Basic Stamp در حدود 4 برابر قیمت برد آردوینو و برد wiring در حدود 2 برابر قیمت برد آردوینو می باشد.
[1]-Interaction Design InstitueIvera