وبلاگ
اردوینو (Arduino):
آردوینو Arduino UNO ، یک پلتفرم سختافزاری و نرمافزاری باز است که برای توسعه و ساخت ابزارهای الکترونیکی تعبیهشده استفاده میشود. این پلتفرم توسط تیمی از دانشمندان و مهندسان در ایتالیا در سال 2005 توسعه یافته است. یکی از ویژگیهای برجسته اردوینو، سادگی استفاده و برنامهنویسی آن است که آن را به یکی از پراستفادهترین پلتفرمهای الکترونیکی تبدیل کرده است.
مهمترین قسمت اردوینو، برد اصلی آن است که بر اساس میکروکنترلرهای AVR (Atmel) ساخته شده است. مدلهای مختلفی از بردهای اردوینو وجود دارد، اما مدل معروفتری به نام “Arduino Uno” است که برای مثال در ادامه به آن اشاره خواهم کرد.
میکروکنترلر
شامل یک میکروکنترلر ATmega328P است که سرعت 16 مگاهرتز را دارد و دارای 14 پین دیجیتال ورودی/خروجی (Digital I/O) است که هر کدام میتوانند به عنوان ورودی یا خروجی تنظیم شوند، 6 پین آنالوگ ورودی (Analog Input)، پورتهای سریال UART (Universal Asynchronous Receiver-Transmitter) برای اتصال به دستگاههای سریالی، پورت USB برای اتصال به کامپیوتر و یک کانکتور برق برای تغذیه برد اردوینو است.
برنامهنویسی
برای برنامهنویسی از زبان برنامهنویسی C/C++ استفاده میکند. برنامههای توسعه داده شده برای اردوینو به عنوان “اسکچ” شناخته میشوند و میتوانند با استفاده از نرمافزار Arduino IDE (محیط توسعه متنباز) بر روی سیستمهای عامل مختلف نوشته و بارگذاری شوند.
پروژههای الکترونیکی
با استفاده از اردوینو، میتوانید انواع پروژههای الکترونیکی را انجام دهید. با اتصال سنسورها، ماژولها و دستگاههای مختلف مانند لمسگرها، سنسورهای حرکت، ماژولهای بلوتوث، موتورها و صفحهنمایشها به برد اردوینو، میتوانید وظایف مختلف را انجام داده وکنترل دستگاههای الکترونیکی را بر عهده بگیرید. مثلاً میتوانید یک روبات کوچک، یک سیستم خانه هوشمند، یک دستگاه اندازهگیری، یک سیستم کنترل خودکار و غیره را با استفاده از اردوینو طراحی و پیادهسازی کنید.
اردوینو یک پلتفرم سختافزاری و نرمافزاری باز است که به شما امکان میدهد تا با استفاده از میکروکنترلرهای AVR و برنامهنویسی به زبان C/C++، انواع پروژههای الکترونیکی خود را برنامهریزی و کنترل کنید. این پلتفرم برای مبتدیان و حرفهایان علاقهمند به الکترونیک و برنامهنویسی، به دلیل سادگی و قدرتش، بسیار مناسب است.
ONU (Optical Network Unit):
ONU به دستگاه شبکهای اشاره دارد که به شبکه فیبر نوری متصل میشود و در شبکههای FTTH (Fiber To The Home) مورد استفاده قرار میگیرد. وظیفه اصلی Optical Network Unit تبدیل سیگنال فیبر نوری به سیگنال الکتریکی برای اتصال دستگاههای مختلف مانند روترها، تلفنهای آنالوگ و دستگاههای شبکه را برعهده دارد.
در شبکه FTTH، نقش مهمی در ارائه اتصال اینترنت برای خانهها و ساختمانها با سرعت بالا دارد. آنها از طریق کابل فیبر نوری با یک سوییچ یا یک ایستگاه پایانی شبکه (OLT) در ارتباط هستند و سیگنالهای نوری را به سیگنالهای الکتریکی تبدیل میکنند تا بتوانند به دستگاههای متصل شده در خانهها ارتباط برقرار کنند.
سختافزاری و نرمافزاری برای توسعه ابزارهای الکترونیکی است و ONU یک دستگاه شبکه است که در شبکههای فیبر نوریمورد استفاده قرار میگیرد. این دو مفهوم متفاوت هستند و هیچ ارتباط مستقیمی با یکدیگر ندارند.
انواع آردوینو:
Arduino Uno:
آردوینو Arduino UNO R3 مدل معروف و رایجی است که در توضیحات قبلی به آن اشاره شد. برای پروژههای کوچک و متوسط مناسب است.
Arduino Uno Dip:
برد آردوینو Uno R3
یک نسخه از Arduino Uno است که به صورت DIP (Dual Inline Package) عرضه میشود. این نسخه از Arduino Uno به شکل یک مدار یکپارچه بدون قطعههای سطح بالایی (SMD) طراحی شده است.
دارای پینهای DIP است که بر روی برد قرار دارند و به کاربر امکان میدهند تا آن را به یک برد پروتوتایپ یا برد مادر دیگر متصل کند.
این نسخه از Arduino Uno دارای همه ویژگیهای استاندارد Uno است، از جمله میکروکنترلر ATmega328P، پورتهای ورودی/خروجی دیجیتال و آنالوگ، پورت USB برای برنامهریزی و ارتباط با رایانه، و منبع تغذیه 5 ولت.
Arduino Uno SMD:
برد آردوینو UNO SMD با تراشه CH340
نیز یک نسخه از Arduino Uno است، با این تفاوت که قطعات SMD (Surface Mount Device) بر روی برد استفاده شدهاند. قطعات SMD به صورت مستقیم بر روی برد سطح بالا نصب شدهاند و نیاز به قطعات DIP ندارد.
در اندازه و ویژگیهای آن با نسخه Dip مشابه است. با این حال، به دلیل استفاده از قطعات SMD، اندازه و ضخامت آن کمتر است که میتواند در مواردی که اندازه و فضای محدود مهم است مفید باشد.
Arduino Uno WiFi:
برد آردوینو UNO WIFI
نیز نسخه ای از Arduino Uno است که به ویژگی اتصال به شبکه بی سیم WiFi مجهز است.
دارای یک ماژول WiFi بر روی برد است که به کاربر امکان میدهد تا با استفاده از پروتکل WiFi به شبکههای بیسیم متصل شود و از طریق آنتن داخلی برد ارتباط برقرار کند.
با استفاده از Arduino Uno WiFi، میتوانید برنامههایی بسازید که به سرورها، دستگاهها یا اینترنت متصل شوند و از قدرت شبکه بیسیم برخوردار باشند.
لینکهای مرتبط با هر یک از این بردها را میتوانید در وبسایت رسمی Arduino پیدا کنید. ماژولهایی مانند ESP8266 یا ESP32 میتوانند به عنوان ماژول WiFi اضافی برای Arduino Uno استفاده شوند. با اتصال این ماژولها به برد Arduino Uno، قادر خواهید بود از طریق WiFi به شبکههای بیسیم متصل شده و از طریق آنتن ماژول ارتباط برقرار کنید.
Arduino Mega:
این مدل دارای پینها و منابع بیشتری نسبت به Uno است و برای پروژههای بزرگتر و پیچیده مناسب است.
Arduino Nano:
نسخه کوچکتری از Uno است که اندازه کوچکتری دارد و برای پروژههایی که نیاز به فضای کمتری دارند مناسب است.
Arduino Due:
از پردازنده ARM Cortex-M3 استفاده میکند و سرعت بالاتری دارد. مناسب برای پروژههایی که نیاز به پردازش قدرتمندتری دارند.
Arduino Leonardo:
دارای ویژگیهای خاصی است که امکان شبیهسازی دستگاههای USB را فراهم میکند.
Arduino Pro Mini:
نسخه کوچکتری از Uno است که بدون قابلیت برنامهریزی مستقیم USB میباشد و برای پروژههایی که نیاز به اندازه کوچک و مصرف کمتر انرژی دارند مناسب است.
مزایا و معایب آردوینو:
مزایا:
- سادگی استفاده و برنامهریزی
- هزینه مناسب و قابلیت دسترسی آسان
- پشتیبانی پهناور از سنسورها و ماژولهای خارجی
- جامعه فعال و پرسود برای پشتیبانی و اشتراک گذاری اطلاعات
معایب:
- محدودیتهای سختافزاری در پردازنده و حافظه
- عدم پشتیبانی از سیستمعاملهای پیشرفته
- محدودیت در تعداد ورودی/خروجیهای دیجیتال و آنالوگ
کارخانههای آردوینو Arduino UNO :
Arduino.cc: وبسایت رسمی آردوینو که بردهای اصلی را تولید میکند. لینک:
Arduino.org: یک شرکت دیگر است که در گذشته درگیری حقوقی با Arduino.cc داشته است. لازم به ذکر است که دو شرکت در سال 2017 با هم تصمیم به توحید کرده و یک شرکت به نام Arduino Holding تشکیل دادهاند.
ولتاژ و آمپر کارکرد:
آردوینو Uno و Nano: ولتاژ کارکرد 5 ولت و جریان حداکثر 40 میلیآمپر (mA).
آردوینو Mega و Due: ولتاژ کارکرد 5 ولت و جریان حداکثر 200 میلیآمپر (mA).
نرمافزار برنامهریزی:
Arduino IDE: نرمافزار رسمی برای برنامهنویسی آردوینو.
PlatformIO: یک محیط برنامهنویسی متنباز و قابل توسعه برای آردوینو و سایر پلتفرمهای میکروکنترلر.
بردهای جانبی و شیلدهای معروف:
شیلدهای معروف: (Shield)
Relay: برای کنترل و راه امندازی دستگاه ها و سیستم های خرجی با ولتاژ کار متفاوت بسیار استفاده می شود.
Ethernet : برای اتصال آردوینو به شبکه اینترنت از طریق پورت Ethernet.
Wi-Fi : برای اتصال آردوینو به شبکه بیسیم Wi-Fi.
Motor : برای کنترل موتورها و میکروموتورها.
LCD : برای نمایشگرهای LCD کاربری.
بردهای جانبی:
سنسورها: مانند سنسور دما، سنسور رطوبت، سنسور نور و…
ماژولها: مانند ماژول GPS، ماژول بلوتوث، ماژول RFID و…
کیتهای الکترونیکی: مانند کیت آموزشی آردوینو Starter Kit و…
بردهای آموزش، تحقیقاتی: مانند برد آردوینو بردبردی و …