آموزش اینترنت اشیا
3.57K subscribers
181 photos
365 videos
180 files
390 links
تخفیف ویژه یلدایی، دوستان علاقه مند میتونین سرفصل های دوره رو از پیام سنجاق شده مشاهده کنید

پیج اینستاگرام:
https://www.instagram.com/iot_tutorial

ایمیل:
mojshaderyan@gmail.com

آیدی ادمین:
@shaderyan

وبسایت:
iotvideo.ir
Download Telegram
با سلام و عرض ادب
هدف از راه اندازی این کانال، ارائه آموزش های مفید برنامه نویسی، انجام پروژه های برنامه نویسی با نازلترین قیمت می باشد.
لطفا این کانال رو به همه دوستان خود معرفی کنید.
هر درخواست آموزش برنامه نویسی و یا هر سوالی در زمینه برنامه نویسی داشتید میتونید با آیدی بنده در تماس باشید
@shaderyan
با سلام مجدد خدمت همه دوستان
تصمیم گرفتم با توجه به سوالات مکرر دوستان در مورد آردیونو مطالبی رو در اون خصوص داشته باشم
آردوینو چیست؟

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

آردوینو می تواند جهت ایجاد اشیای تعاملی، گرفتن ورودی از تعداد زیادی سوییچ و حسگر، و کنترل تنوعی از لامپ ها، موتورها، و سایر خروجی های فیزیکی به کار گرفته شود. پروژه های آردوینو می توانند مستقل باشند، و یا با نرم افزاری که روی کامپیوتر شما در حال اجراست(مثل Flash ، Processing، MaxMSP)، ارتباط برقرار کند. شما می توانید بردها را به طور دستی مونتاژ کنید و یا به صورت از پیش مونتاژ شده، خریداری کنید؛ محیط برنامه نویسی open-source را می توانید به صورت رایگان دانلود کنید.

زبان برنامه نویسی آردوینو، یک پیاده سازی از Wiring(یک پلت فرم محاسباتی و فیزیکی مشابه) است، که بر اساس محیط برنامه نویسی چندرسانه ای Processing کار می کند.
چرا آردوینو؟

تعداد زیادی میکروکنترلر و پلت فرم میکروکنترلر دیگر، جهت محاسبات فیزیکی موجود است. بردهای Parallax Basic Stamp، Netmedia's BX-24، Phidgets، MIT's Handyboard و بسیاری بردهای دیگر، عملکرد مشابهی را ارائه می دهند. کلیه این ابزارها، جزئیات درهم و برهمی از برنامه نویسی میکروکنترلر را برداشته و آن را در یک پکیج easy-to-use جمع بندی نموده اند. برد آردوینو همچنین فرایند کار با میکروکنترلرها را تسهیل می کند. لیکن مزایایی را برای معلمان، دانش آموزان و مبتدیان علاقه مند در کلیه سیستم های دیگر ارائه می دهد:

ارزان - در مقایسه با سایر پلت فرم های میکروکنترلر، بردهای آردوینو نسبتاً ارزان هستند. ارزان ترین نسخه از ماژول آردوینو می تواند به صورت دستی مونتاژ شود، و حتی ماژول های آردوینو از پیش مونتاژ شده، کمتراز 50 دلار قیمت دارد.
مستقل از سیستم عامل (Cross-platform) - نرم افزار آردوینو روی سیستم های عامل ویندوز، مکینتاش OSX و لینوکس اجرا می شود. اکثر سیستم های میکروکنترلر منحصر به ویندوز شده اند.
محیط برنامه نویسی شفاف و ساده - محیط برنامه نویسی آردوینو برای استفاده مبتدیان، ساده است، در عین حال جهت استفاده ی کاربران حرفه ای از مزیتها نیز به اندازه کافی منعطف است. برای مدرسان، بر اساس محیط برنامه نویسی Processing به راحتی قابل استفاده است، بدین ترتیب، دانش آموزانی که برنامه نویسی در آن محیط را یاد می گیرند، با ظاهر و باطن آردوینو آشنا خواهند شد.

نرم افزار قابل توسعه و open-source - نرم افزار آردوینو به صورت یک ابزار open-source منتشر شده است که برای توسعه توسط برنامه نویسان باتجربه موجود می باشد. این زبان می تواند از طریق کتابخانه های C++ گسترش یابد، و افرای که می خواهند جزئیات فنی را بفهمند، می توانند از آردوینو گریزی به زبان برنامه نویسی AVR C که زبان پایه ی آن است، بزنند. به طور مشابه اگر بخواهید، می توانید مستقیما کد AVR-C را درون برنامه های آردوینو خود درج کنید.
سخت افزار قابل توسعه و open-source - آردوینو بر اساس میکروکنترلرهای ATMEGA8 و ATMEGA168 شرکت Atmel پایه ریزی شده اند. طرح ماژول ها تحت لیسانس Creative Commons مجوز گرفته اند، بنابراین طراحان با تجربه مدار، می توانند ماژول خود را ساخته، توسعه داده و آن را بهبود ببخشند. حتی کاربران نسبتاً بی تجربه می توانند یک نسخه بردبوردی از ماژول را جهت فهم شیوه کار آن بسازند و هزینه ای جهت آن نپردازند.
محیط برنامه نویسی آردوینو

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

نرم افزاری که با استفاده از آردوینو نوشته می شود، اسکچ خوانده می شود. این اسکچ ها در ویرایشگر متن نوشته می شوند و با پسوند .ino ذخیره می شوند. این مسئله قابلیت هایی را برای cut/paste و search/replace کردن متن فراهم می کند. زمانی که عملیات ذخیره و Export انجام می شود، ناحیه پیام بازخورد می دهد. همچنین پیغام های خطا را نشان می دهد. کنسول، خروجی متنی را که توسط محیط برنامه نویسی آردوینو ایجاد می شود، شامل کلیه پیام های خطا و اطلاعات دیگر را نشان می دهد. گوشه سمت راست پایین پنجره، برد جاری و پورت سریال را نشان می دهد. دکمه های نوار ابزار به شما این امکان را می دهند تا برنامه را بازبینی و آپلود کنید، اسکچ ها را ایجاد، باز و ذخیره نمایید و Serial Monitor را باز کنید.

توجه: نسخه های قبل از 1.0 محیط برنامه نویسی آردوینو، اسکچ ها را با پسوند .pde ذخیره می کردند. باز کردن این فایلها با نسخه 1.0 نیز امکان پذیر است، هنگام ذخیره، برنامه از شما می خواهد که اسکچ را با پسوند .ino ذخیره کنید.


Verify
کد شما را جهت یافتن خطا بررسی می کند.


Upload
کد شما را کامپایل کرده و آن را به برد ورودی/خروجی آردوینو آپلود می کند. جهت کسب اطلاعات بیشتر، به قسمت آپلود کردن در زیر مراجعه کنید.

توجه: اگر از یک پروگرمر جانبی استفاده می کنید، می توانید هنگام استفاده از این آیکن، کلید "shift" کامپیوتر خود را پایین نگه دارید. در این صورت متن روی آن به "Upload using Programmer" تغییر می کند.


New
یک اسکچ جدید ایجاد می کند.


Open
فهرستی از همه اسکچ های موجود در SketchBook شما را نمایش می دهد. با کلیک کردن روی یکی از آنها، درون پنجره جاری باز می شود.

توجه: به سبب یک باگ در جاوا، این منو پیمایش(Scroll) نمی شود؛ اگر احتیاج دارید که یک اسکچ را از انتهای لیست باز کنید، به جای آن از منوی File | Sketchbook استفاده کنید.


Save
اسکچ شما را ذخیره می کند.


Serial Monitor
serial monitor را باز می کند.

فرمان های دیگری در 5 منو دیده می شود: File، Edit، Sketch، Tools، Help. منوها حساس به متن می باشند. یعنی تنها آن سری از موارد موجود است که مربوط به کاریست که هم اکنون در حال اجراست.

Edit

Copy for Forum
کد اسکچ شما را در قالبی مناسب برای ارسال به انجمن، کپی کرده و آن را از لحاظ رنگ بندی نیز تکمیل می نماید.
Copy as HTML
کد اسکچ شما را به صورت HTML، در قالبی که جهت وارد شدن در صفحه وب مناسب باشد، در کلیپ برد کپی می کند.

Sketch

Verify/Compile
اسکچ شما را برای یافتن خطا بررسی می کند.
Show Sketch Folder
پوشه اسکچ کنونی را باز می کند.
Add File...
یک فایل سورس را به اسکچ اضافه می کند (این فایل از مسیر جاری خود کپی می شود). فایل جدید در یک برگه جدید در پنجره اسکچ نمایش می یابد. فایل ها می توانند با استفاده از منوی Tab از اسکچ حذف شوند.
Import Library
با افزودن دستورات #include به بالای کد شما یک کتابخانه را به اسکچتان اضافه می کند. برای آگاهی از جزئیات بیشتر، به بخش کتابخانه ها در زیر مراجعه کنید. به علاوه، با نسخه 1.0.5 و نسخه های پس از آن از محیط برنامه نویسی آردوینو، می توانید یک کتابخانه را از یک فایل Zip وارد کنید.

Tools
Auto Format
این گزینه کد شما را به زیبایی قالب بندی می کند: قالب بندی به معنای ایجاد تو رفتگی هایی در کد است. یعنی آکولادهای باز شده و بسته شده را به خط می کند و دستورات داخل آکولادها کمی بیشتر به سمت داخل می روند.
Archive Sketch
یک کپی از اسکچ کنونی را در قالب .Zip بایگانی می کند. فایل بایگانی در همان مسیری قرار می گیرد که اسکچ در آن وجود دارد.
Board
بردی که از آن استفاده می کنید را انتخاب کنید. بخش توصیف بردهای مختلف را در زیر مشاهده کنید.
Serial Port
این منو شامل همه وسایل Serial (واقعی یا مجازی) روی سیستم شماست. این منو باید هر بار که منوی Tools را باز می کنید، به صورت خودکار به روزرسانی شود.
Programmer
جهت انتخاب یک پروگرمر سخت افزاری در زمان پروگرم کردن یک برد یا تراشه جدید، و بدون استفاده از اتصال USB-serial موجود روی برد از این منو استفاده می شود. به طور معمول، شما این گزینه را احتیاج ندارید، اما اگر یک Bootloader را روی یک میکروکنترلر جدید بارگذاری کنید، از این گزینه استفاده خواهید کرد.
Burn Bootloader
گزینه های این منو به شما این امکان را می دهد تا یک bootloader را روی یک میکروکنترلر بر روی یک برد آردوینو بارگذاری کنید. این مورد جهت استفاده عادی از یک برد آردوینو لازم نیست. اما اگر یک میکروکنترلر ATmega جدید خریداری می کنید (که به صورت عادی بدون یک bootloader می آید)، می تواند مفید باشد.
پیش از بارگذاری bootloader مطمئن شوید که برد صحیح را از منوی Boards انتخاب کرده باشید.

Sketchbook

محیط برنامه نویسی آردوینو از مفهوم Sketchbook استفاده می کند: محلی استاندارد جهت ذخیره سازی برنامه ها (یا اسکچ ها)ی شما. اسکچ های درون sketchbook را می توان از منوی File > Sketchbook یا از دکمه Openدر نوار ابزار باز شوند. اولین بار که نرم افزار آردوینو را اجرا می کنید، به طور خود کار پوشه ای برای sketchbook ایجاد خواهد کرد. شما می توانید مکان sketchbook را از طریق کادر مکالمه Preferences ببینید یا تغییر دهید.

زمانی که با نسخه 1.0 کار می کنید، فایل ها با پسوند .ino ذخیره می شوند. نسخه های قبلی از پسوند .pde استفاده می کنند. شما هنوز هم می توانید فایلهایی که در نسخه 1.0 و قبلتر از آن با پسوند .pde ذخیره شده اند را باز کنید، نرم افزار به طور خودکار پسوند آنهارا به .ino تغییر می دهد.

برگه ها، فایل های چندگانه و تلفیق

این امکان را به شما می دهد تا اسکچ هایی با بیش از یک فایل را (که هر یک در برگه خود ظاهر می شود) مدیریت کنید. این فایل ها می توانند فایل های معمولی کد آردوینو (بدون پسوند) باشند، یا فایل های C (با پسوند .C)،یا فایل های C++(با پسوند .CPP)، یا فایل های پیش پردازنده(با پسوند .h )

آپلود کردن

پیش از اینکه اسکچ خود را آپلود کنید، لازم است گزینه های صحیح را از منوی Tools > Board و Tools > Serial Port انتخاب کنید. بردها در زیر شرح داده شده اند. روی سیستم عامل مکینتاش، پورت سریال احتمالاً چیزی شبیه /dev/tty.usbmodem241 (برای بردهای Uno یا Mega2560 یا Leonardo) یا /dev/tty.usbserial-1B1 (برای بردهای Duemilanove یا بردهای USB جدیدتر)، یا /dev/tty.USA19QW1b1P1.1 (برای یک برد سریال که با یک آداپتور Keyspan USB-to-Serial متصل است)خواهد بود. در ویندوز، احتمالا COM1 یا COM2 (برای یک برد سریال) یا COM4، COM5، COM7یا بالاتر (برای یک برد USB ) می باشد. - جهت دانستن شماره پورت، در Windows Device Manager در قسمت Ports بگردید. در سیستم عامل لینوکس،
باید چیزی شبیه /dev/ttyUSB0 یا /dev/ttyUSB1 یا موارد مشابه باشد.

زمانی که شما برد و پورت سریال صحیح را انتخاب کردید، دکمه آپلود را در نوار ابزار کلیک کنید یا گزینه Upload را از منوی File انتخاب کنید. بردهای آردوینو کنونی، به طورخودکار ریست می شوند و عملیات آپلود را آغاز می کنند. با بردهای قدیمی تر، (pre_Diecimila) که فاقد ریست خودکار می باشند، لازم است پیش از آپلود کد، دکمه ریست روی برد را فشار دهید. روی بیشتر بردها، هنگام آپلود کد، چراغ های RX و TX را به صورت چشمک زن می بینید. محیط برنامه نویسی آردوینو زمانی که آپلود کامل شد، پیغامی را نمایش می دهد، و یا خطای آن را نشان می دهد.
زمانی که شما یک اسکچ را آپلود می کنید، از bootloader آردوینو استفاده می کنید، bootloader برنامه ای کوچک است که روی میکروکنترلر برد شما بارگذاری می شود. این برنامه به شما امکان می دهد تا کد خود را بدون استفاده از هیچ سخت افزار اضافی، آپلود کنید.
bootloader برای چند ثانیه در هنگام ریست شدن برد، فعال می شود؛ سپس اسکچی را که اخیراً روی میکروکنترلر آپلود شده است را شروع می کند. زمانی که bootloader آغاز می شود، چراغ موجود روی برد (متصل به پین 13) را به حالت چشمک زن در می آورد (یعنی زمانی که برد ریست می شود).

کتابخانه ها

کتابخانه ها عملکرد فوق العاده ای را برای استفاده از این اسکچ ها مثل، کار با سخت افزار یا دستکاری داده ها فراهم می کنند. جهت استفاده از یک کتابخانه در یک اسکچ، آن را از منوی Sketch > Import Library انتخاب کنید. این عمل یک یا چند دستور #include را در بالای اسکچ درج می کند و کتابخانه را با اسکچ شما کامپایل می کند. به این دلیل که کتابخانه ها همراه با اسکچ شما روی برد آپلود شده اند، مقدار فضایی که اشغال می کنند افزایش می یابد. اگر یک اسکچ فعلا احتیاجی به یک کتابخانه ندارد، به سادگی دستر #include را از بالای کدتان پاک کنید.

فهرستی از کتابخانه ها در مرجع وجود دارد. برخی کتابخانه ها در نرم افزار آردوینو تعبیه شده اند. سایر کتابخانه ها می تانند از منابع مختلف دانلود شوند. وقتی از نسخه 1.0.5 آردوینو استفاده می کنید، می توانید یک کتابخانه را از یک فایل Zip وارد کرده و در یک اسکچ باز از آن استفاده کنید. این دستورات را برای نصب یک کتابخانه Third-Partyمشاهده کنید.

جهت تهیه کتابخانه شخصی، این آموزش را مشاهده کنید.

سخت افزار Third-Party

پشتیبانی جهت سخت افزار third-party می تواند در مسیر hardware در پوشه اسکچتان اضافه شود. Support for third-party hardware can be added to the hardware directory of your sketchbook directory. پلت فرم هایی که در این مسیر نصب شده اند می توانند شامل مشخصات برد(که در منوی board ظاهر می شوند) ، کتابخانه های اصلی، bootloader ها، و مشخصات پروگرمرها باشد.

جهت نصب، پوشه hardware را ایجاد کنید، سپس پلت فرم third-party را درون زیرشاخه خودش unzip کنید. (از کلمه "arduino" به عنوان نام زیرشاخه استفاده نکنید و پلت فرم آردوینو را override نکنید.) جهت uninstall کردن آن، پوشه آن را حذف کنید.

جهت آگاهی از جزئیات بیشتر در مورد ایجاد بسته ها برای سخت افزار third-party، صفحه پلت فرم ها را در سایت Arduino Google Code developers مشاهده کنید.

Serial Monitor

داده های سریالی که از برد آردوینو (USB یا برد سریال) می آید را نمایش می دهد. جهت ارسال داده به برد، متن را وارد کنید روی دکمه "send" کلیک کنید یا کلید Enter را فشار دهید. baud rate ی را که برابر با پارامتر ورودی Serial.begin در اسکچ شماست از لیست کشویی انتخاب کنید. توجه داشته باشید که روی سیستم عامل لینوکس و مکینتاش، زمانی که با سریال مانیتور ارتباط برقرار می کنید، برد آردوینو ریست خواهد شد (یعنی اسکچ شما را به نقطه آغاز باز می گرداند).

به علاوه، شما می توانید از طریق Processing، Flash ، MaxMSP و غیره، با برد ارتباط برقرار کنید (صفحه ارتباط را جهت کسب اطلاعات بیشتر مشاهده کنید).

تنظیمات

در کادر مکالمه preferences، تنظیماتی وجود دارد که می توان آن ها را تعیین نمود. (این گزینه را می توانید زیر منوی Arduino در سیستم عامل مکینتاش، یا منوی File در ویندوز و لینوکس بیابید). سایر موارد را می توانید در فایل preferences که مسیر آن در کادر مکالمه preferences نشان داده شده است، پیدا کنید.
دوستان هر سوالی در خصوص برد آردیونو و برنامه نویسیش داشته باشن می تونن با بنده در تماس باشن
@shaderyan