نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی. پرتال اطلاعاتی

پروژه های واقعی با آردوینو آردوینو برای مبتدیان: دستورالعمل های گام به گام

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

چگونه این را پیاده سازی کنیم؟

راحت ترین راه برای خرید کامپوننت برای اجرای یک ایده در AliExpress است. همچنین می توانید ساختمان های مختلفی را در آنجا پیدا کنید. در مورد ما، بدن برای به دست آوردن ظاهری قابل فروش برای خلقت ما ضروری است.

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

کنترل اتوماتیک دمای خانه


به ترتیب: آردوینو نانو، آردوینو اونو و NRF24L01


من نمی خواستم این مورد را یک خانه "هوشمند" بنامم، زیرا این ایده فقط در مورد کنترل دما است. من این ایده را با استفاده از چندین Arduino Nano و یک Arduino Mega/Uno اجرا می کنم. ارتباط بین آنها با استفاده از ماژول رادیویی NRF24L01 انجام خواهد شد. این ماژول به شما امکان می دهد تا شش آردوینو را متصل کنید.

آردوینو نانو در یک جعبه کوچک همراه با سنسور دما و رطوبت DHT22، یک ماژول ارتباط رادیویی NRF24L01 و یک منبع تغذیه - به عنوان مثال، یک باتری قرار خواهد گرفت. تعدادی از این جعبه های کوچک در سرتاسر خانه قرار خواهند گرفت.


DHT2 و صفحه نمایش ال سی دی متنی


داده‌های آردوینو نانو توسط «پایه» دریافت می‌شود، که Arduino Uno یا Mega است که در یک جعبه بزرگ به همراه NRF24L01 (به عنوان گیرنده)، صفحه نمایش LCD متنی و منبع تغذیه (باتری) محصور شده است. همه اینها در نزدیکی سیستم گرمایش قرار خواهد گرفت. "پایه" قادر به دریافت و پردازش داده های دما خواهد بود و بسته به مقدار این داده ها، فرمانی برای افزایش یا کاهش دما به سیستم گرمایش ارسال می شود.

گلخانه "هوشمند".


نمونه ای از راه حل های آماده.


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


به ترتیب: آردوینو مگا، DHT22 و نمایشگر LCD متنی.


One Arduino قادر به نظارت بر دمای گلخانه (با استفاده از همان سنسور DHT22)، نمایش اطلاعات لازم بر روی صفحه نمایش LCD، ارسال فرمان باز کردن شیر آب برای تامین آب و همچنین کنترل موتورها برای باز و بسته کردن درها است. .

دستگاه CNC


به ترتیب: آردوینو مگا، L298N و استپر موتور.


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

ربات ها


نمونه ای از راه حل های آماده.


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

به ترتیب: HC-SR04، L293D، HC-06 و NRF24L01


مسافت یاب اولتراسونیک HC-SR04 می تواند فاصله تا موانع را تعیین کند تا متعاقباً از آنها اجتناب کند. درایور موتور L293D که به عنوان برد انبساط استفاده می شود، قادر است چهار موتور و سه سروو را همزمان کنترل کند. از نظر ارتباطی ما خیلی محدود نیستیم. می توانید از ماژول بلوتوث HC-06 استفاده کنید، که به شما امکان می دهد تا ذهن خود را از طریق تلفن هوشمند کنترل کنید، اما نمی تواند از محدوده ارتباطی خوبی برخوردار باشد، که نمی توان در مورد ماژول ارتباط رادیویی NRF24L01 از قبل شناخته شده گفت. با این حال، پس از آن شما توانایی کنترل از گوشی هوشمند خود را از دست خواهید داد.


18650 باتری


به عنوان منبع تغذیه، می توانید از 18650 باتری متصل به صورت موازی برای افزایش ظرفیت کل استفاده کنید.

خط پایین

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

در هر صورت امیدوارم براتون جالب بوده باشه. در نظرات بنویسید، آیا به ایده های مشابهی برخورد کرده اید؟

" دوره آموزشی "آردوینو برای مبتدیان" را ارائه می دهد. این مجموعه از 10 درس و همچنین مطالب اضافی تشکیل شده است. دروس شامل دستورالعمل های متنی، عکس ها و فیلم های آموزشی است. در هر درس فهرستی از اجزای مورد نیاز، فهرست برنامه و نمودار اتصال را خواهید یافت. هنگامی که این 10 درس اساسی را کامل کردید، می توانید به سراغ مدل های جالب تر و ساخت ربات های مبتنی بر آردوینو بروید. این دوره مختص افراد مبتدی است و برای شروع آن نیازی به اطلاعات اضافی از مهندسی برق یا رباتیک نیست.

اطلاعات مختصری در مورد آردوینو

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

آردوینو (Arduino) یک پلت فرم محاسباتی سخت افزاری است که اجزای اصلی آن یک برد ورودی-خروجی و یک محیط توسعه است. آردوینو را می توان برای ایجاد اشیاء تعاملی مستقل یا اتصال به نرم افزارهای در حال اجرا بر روی رایانه استفاده کرد. آردوینو یک کامپیوتر تک بردی است.

آردوینو و ربات ها چگونه به هم متصل می شوند؟

پاسخ بسیار ساده است - آردوینو اغلب به عنوان استفاده می شود مغز ربات

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

درس 1. چراغ چشمک زن در آردوینو

در درس اول یاد خواهید گرفت که چگونه یک LED را به آردوینو متصل کنید و آن را کنترل کنید تا چشمک بزند. این ساده ترین و ابتدایی ترین مدل است.

دیود ساطع نور- یک وسیله نیمه هادی که با عبور جریان الکتریکی از آن در جهت جلو، تشعشع نوری ایجاد می کند.

درس 2. اتصال دکمه در آردوینو

در این آموزش نحوه اتصال دکمه و LED به آردوینو را خواهید آموخت.

هنگامی که دکمه فشار داده می شود، LED روشن می شود و با فشار دادن دکمه، روشن نمی شود. این هم مدل پایه

درس 3. اتصال پتانسیومتر در آردوینو

در این آموزش نحوه اتصال پتانسیومتر به آردوینو را خواهید آموخت.

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

درس 4. کنترل سروو در آردوینو

در این آموزش نحوه اتصال سروو به آردوینو را خواهید آموخت.

سرووموتوری است که موقعیت شفت آن با تنظیم زاویه چرخش قابل کنترل است.

سرووها برای شبیه سازی حرکات مکانیکی مختلف روبات ها استفاده می شوند.

درس 5. ال ای دی سه رنگ در آردوینو

در این آموزش نحوه اتصال LED سه رنگ به آردوینو را خواهید آموخت.

ال ای دی سه رنگ(rgb led) - این سه LED با رنگ های مختلف در یک محفظه هستند. آنها یا با یک برد مدار چاپی کوچک عرضه می شوند که مقاومت ها روی آن قرار دارند، یا بدون مقاومت داخلی. درس هر دو گزینه را پوشش می دهد.

درس 6. عنصر پیزوالکتریک در آردوینو

در این درس یاد خواهید گرفت که چگونه یک عنصر پیزو را به آردوینو متصل کنید.

عنصر پیزو- یک مبدل الکترومکانیکی که ترجمه می کندولتاژ الکتریکی به ارتعاش غشا این ارتعاشات صدا ایجاد می کند.

در مدل ما فرکانس صدا با تنظیم پارامترهای مناسب در برنامه قابل تنظیم است.

درس 7. مقاومت نوری در آردوینو

در این درس از دوره ما، نحوه اتصال یک مقاومت نوری به آردوینو را خواهید آموخت.

مقاومت نوری- مقاومتی که مقاومت آن به روشنایی نوری که بر روی آن می تابید بستگی دارد.

در مدل ما، LED فقط در صورتی روشن می شود که روشنایی نور بالای مقاومت نوری کمتر از مقدار مشخصی باشد؛ این روشنایی را می توان در برنامه تنظیم کرد.

درس 8. سنسور حرکت (PIR) در آردوینو. ارسال خودکار ایمیل

در این درس از دوره ما، نحوه اتصال سنسور حرکت (PIR) به آردوینو و همچنین سازماندهی ارسال خودکار ایمیل را خواهید آموخت.

سنسور حرکت (PIR)- حسگر مادون قرمز برای تشخیص حرکت یا حضور افراد یا حیوانات.

در مدل ما، هنگام دریافت سیگنال در مورد حرکت انسان از یک سنسور PIR، آردوینو دستوری برای ارسال ایمیل به رایانه می‌فرستد و نامه به صورت خودکار ارسال می‌شود.

درس 9. اتصال سنسور دما و رطوبت DHT11 یا DHT22

در این درس ما، نحوه اتصال سنسور دما و رطوبت DHT11 یا DHT22 را به آردوینو و همچنین با تفاوت‌های ویژگی‌های آنها آشنا می‌شوید.

سنسور دما و رطوبتیک سنسور دیجیتال کامپوزیت متشکل از یک حسگر خازنی رطوبت و یک ترمیستور برای اندازه گیری دما است.

در مدل ما، آردوینو قرائت سنسورها را می خواند و خوانش ها را روی صفحه کامپیوتر نمایش می دهد.

درس 10. اتصال صفحه کلید ماتریسی

در این درس از دوره آموزشی ما، نحوه اتصال صفحه کلید ماتریسی به برد آردوینو و همچنین با مدارهای مختلف جالب آشنا خواهید شد.

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

درس 11. اتصال ماژول ساعت بیدرنگ DS3231

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

ماژول ساعت زمان واقعی- این یک مدار الکترونیکی است که برای ثبت داده های زمان سنجی (زمان فعلی، تاریخ، روز هفته و غیره) طراحی شده است و سیستمی متشکل از یک منبع برق مستقل و یک دستگاه ضبط است.

کاربرد. قاب های آماده و ربات های آردوینو


شما می توانید یادگیری آردوینو را نه تنها از خود برد، بلکه با خرید یک ربات آماده و تمام عیار مبتنی بر این برد - ربات عنکبوتی، ماشین ربات، ربات لاک پشت و غیره آغاز کنید. چنینمسیر همچنین برای کسانی که علاقه خاصی به مدارهای الکتریکی ندارند نیز مناسب است.

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

گزینه دیگر خرید یک قاب یا بدنه ربات است: یک پلت فرم روی چرخ یا یک مسیر، یک انسان نما، یک عنکبوت و غیره. در این صورت باید خودتان پر کردن ربات را انجام دهید.

کاربرد. دایرکتوری موبایل


– دستیار توسعه دهندگان الگوریتم های پلتفرم آردوینو که هدف آن این است که به کاربر نهایی این فرصت را بدهد که مجموعه ای از دستورات تلفن همراه (کتاب مرجع) داشته باشد.

برنامه شامل 3 بخش اصلی است:

  • اپراتورها؛
  • داده ها؛
  • کارکرد.

آردوینو را از کجا بخریم


کیت های آردوینو

دوره با دروس تکمیلی به روز می شود. ما را دنبال کنید

آردوینو یک پلتفرم جهانی برای میکروکنترلرهای DIY است. سپرها (کارت های توسعه) و سنسورهای زیادی برای آن وجود دارد. این تنوع به شما امکان می دهد تعدادی پروژه جالب با هدف بهبود زندگی خود و افزایش راحتی آن ایجاد کنید. حوزه های کاربردی هیئت مدیره نامحدود است: اتوماسیون، سیستم های امنیتی، سیستم های جمع آوری و تجزیه و تحلیل داده ها و غیره.

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

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

ربات جاروبرقی

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

برای مونتاژ آن شما نیاز دارید:

1. Arduino Pro-mini یا هر سایز مشابه و مناسب دیگری ...

2. آداپتور USB-TTL اگر از Pro mini استفاده می کنید. اگر آردوینو نانو را انتخاب کردید، پس نیازی به آن نیست. قبلاً روی برد نصب شده است.

3. درایور L298N برای کنترل و معکوس کردن موتورهای DC مورد نیاز است.

4. موتورهای کوچک با گیربکس و چرخ.

5. 6 سنسور IR.

6. موتور برای توربین (بزرگتر).

7. خود توربین یا بهتر است بگوییم پروانه از جاروبرقی.

8. موتور برای برس (کوچک).

9. 2 سنسور برخورد.

10. 4 عدد باتری 18650.

11. 2 مبدل DC-DC (تقویت و کاهش).

13. کنترل کننده عملکرد (شارژ و دشارژ) باتری ها.

سیستم کنترل به شکل زیر است:

و این هم سیستم قدرت:

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

آنها قادر به تولید شار نورانی از هر رنگی هستند، معمولاً از LED هایی استفاده می کنند که در محفظه آنها سه کریستال وجود دارد که در رنگ های مختلف می درخشند. برای کنترل آنها، کنترلرهای RGB ویژه فروخته می شود؛ ماهیت آنها تنظیم جریان عرضه شده به هر یک از رنگ های نوار LED است، بنابراین، شدت درخشش هر یک از سه رنگ (به طور جداگانه) تنظیم می شود.

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

عکس نمونه ای از استفاده از یک LED RGB را نشان می دهد. برای کنترل نوار، به یک منبع تغذیه 12 ولت اضافی نیاز دارید، سپس آنها دروازه های ترانزیستورهای اثر میدان موجود در مدار را کنترل می کنند. جریان شارژ گیت توسط مقاومت های 10 کیلو اهم محدود می شود؛ آنها بین پین آردوینو و گیت به صورت سری با آن نصب می شوند.

کنترل پنل مبتنی بر آردوینو و گوشی هوشمند

با استفاده از یک میکروکنترلر، می توانید یک کنترل از راه دور جهانی که از تلفن همراه کنترل می شود بسازید.

برای این شما نیاز خواهید داشت:

    آردوینو از هر مدلی؛

    گیرنده مادون قرمز TSOP1138;

    IR LED;

    ماژول بلوتوث HC-06.

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

وب کم بر روی مکانیزم چرخشی نصب شده است. با نرم افزار نصب شده به کامپیوتر متصل می شود. این بر اساس کتابخانه بینایی کامپیوتر - OpenCV (کتابخانه چشم انداز کامپیوتر منبع باز) است، پس از اینکه برنامه یک چهره را تشخیص داد، مختصات حرکت آن از طریق یک کابل USB منتقل می شود.

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

این ویدئو نحوه عملکرد این دستگاه را نشان می دهد.

مراقب حیوانات خود باشید!

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

در این مورد، ابعاد دستگاه در اینجا نقش تعیین کننده ای دارد، زیرا حیوان نباید از آن احساس ناراحتی کند. برای ضبط داده ها، می توانید از آن برای کار با کارت های حافظه Micro-SD استفاده کنید.

در زیر نمودار نسخه اصلی دستگاه را مشاهده می کنید.

در نسخه اصلی این پروژه از برد TinyDuino و شیلدهایی برای آن استفاده شده است. اگر نمی توانید یکی را پیدا کنید، می توانید از نسخه های کوچک آردوینو استفاده کنید: مینی، میکرو، نانو.

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

سارق قفل رمزی

برای شکستن قفل های ترکیبی با استفاده از آردوینو، به یک سروو موتور و استپر نیاز دارید. این پروژه توسط هکر سامی کامکار توسعه یافته است. این یک پروژه کاملاً پیچیده است. عملکرد این دستگاه در فیلم نشان داده شده است که نویسنده در آن تمام جزئیات را توضیح می دهد.

البته بعید است که چنین وسیله ای برای استفاده عملی مناسب باشد، اما یک وسیله نمایشی عالی است.

آردوینو در موسیقی

به احتمال زیاد این یک پروژه نیست، بلکه نمایش کوچکی از نحوه استفاده نوازندگان از این پلت فرم است.

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

رتبه بندی قطعات:

    ترانزیستور نوع NPN، به عنوان مثال 2n3904 - 1 عدد.

    مقاومت 1 کیلو اهم (R2، R4، R5) - 3 عدد.

    330 اهم (R6) - 1 عدد.

    10 کیلو اهم (R1) - 1 عدد.

    100 کیلو اهم (R3) - 1 عدد.

    خازن الکترولیتی 3.3 uF - 1 pc.

برای اینکه پروژه کار کند، باید کتابخانه را برای گسترش سریع سری فوریه وصل کنید.

این یک پروژه نسبتاً ساده و جالب "شما می توانید به دوستان خود نشان دهید" است.

3 پروژه ربات

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

ربات BEAM در آردوینو

برای مونتاژ یک ربات راه رفتن چهار پا به موارد زیر نیاز دارید:

    برای حرکت دادن پاها به سروموتور نیاز دارید، به عنوان مثال، Tower Hobbies TS-53.

    یک قطعه سیم مسی با ضخامت متوسط ​​(به طوری که بتواند وزن سازه را تحمل کند و خم نشود، اما خیلی ضخیم نباشد، زیرا منطقی نیست).

    میکروکنترلر - برد AVR ATMega 8 یا آردوینو از هر مدلی.

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

در نتیجه دریافت خواهید کرد:

قابل ذکر است که این ربات رانندگی نمی کند، بلکه راه می رود، می تواند از ارتفاع 1 سانتی متری بالا برود.

بنا به دلایلی این پروژه مرا به یاد ربات کارتون Wall-e انداخت. ویژگی خاص آن استفاده از آن برای شارژ باتری است. مانند ماشین روی 4 چرخ حرکت می کند.

اجزای تشکیل دهنده آن:

    بطری پلاستیکی با اندازه مناسب؛

  • جامپرهای مامان و بابا;

    پنل خورشیدی با ولتاژ خروجی 6 ولت؛

    به عنوان اهدا کننده چرخ، موتور و سایر قطعات - یک ماشین رادیویی کنترل شده.

    دو سروو چرخش پیوسته؛

    دو سروو معمولی (180 درجه)؛

    نگهدارنده برای باتری های AA و برای "تاج"؛

    سنسور برخورد؛

    LED ها، مقاومت های نوری، مقاومت های ثابت 10 کیلو اهم - در مجموع 4 قطعه؛

    دیود 1n4001.

در اینجا اساس است - یک برد آردوینو با یک محافظ اولیه.

این همان چیزی است که قطعات یدکی از - چرخ ها به نظر می رسد.

ساختار تقریباً مونتاژ شده است، سنسورها نصب شده اند.

ماهیت کار ربات این است که به سمت نور می رود. او برای ناوبری به فراوانی نیاز دارد.

این بیشتر یک دستگاه CNC است تا یک ربات، اما پروژه بسیار سرگرم کننده است. این دستگاه نقشه کشی 2 محوره است. در اینجا لیستی از اجزای اصلی که شامل آن است آورده شده است:

    درایوهای سی دی (DVD) - 2 عدد؛

    2 درایور برای موتورهای پله ای A498.

    سروو درایو MG90S;

    آردوینو اونو;

    منبع تغذیه 12 ولت؛

    قلم توپی و سایر عناصر طراحی.

درایو دیسک نوری از بلوک هایی با یک موتور پله ای و یک میله راهنما استفاده می کند که سر نوری را قرار می دهد. موتور، شفت و کالسکه از این بلوک ها حذف می شوند.

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

روند کامل مونتاژ و عملیات در این ویدیو نشان داده شده است.

نتیجه

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

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

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

آردوینو چیست و چه کاربردی دارد؟

آردوینو یک کیت ساخت و ساز الکترونیکی است که به هر کسی اجازه می دهد تا انواع دستگاه های الکترومکانیکی بسازد. آردوینو از نرم افزار و سخت افزار تشکیل شده است. بخش نرم افزار شامل یک محیط توسعه (برنامه ای برای نوشتن و اشکال زدایی سیستم عامل)، بسیاری از کتابخانه های آماده و راحت و یک زبان برنامه نویسی ساده شده است. این سخت افزار شامل خط بزرگی از میکروکنترلرها و ماژول های آماده برای آنها می باشد. به لطف این، کار با آردوینو بسیار آسان است!

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

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

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

کیت اصلی آردوینو برای مبتدیان:خرید کنید
مجموعه بزرگ برای آموزش و اولین پروژه ها:خرید کنید
مجموعه ای از سنسورها و ماژول های اضافی:خرید کنید
Arduino Uno ابتدایی ترین و راحت ترین مدل از این خط است:خرید کنید
تخته نان بدون لحیم برای یادگیری آسان و نمونه سازی:خرید کنید
مجموعه ای از سیم ها با اتصال دهنده های مناسب:خرید کنید
مجموعه LED:خرید کنید
کیت مقاومت:خرید کنید
دکمه ها:خرید کنید
پتانسیومترها:خرید کنید

محیط توسعه آردوینو IDE

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

نسخه پنجره ها Mac OS X لینوکس
1.8.2

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

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

برنامه نویسی آردوینو از نسخه ساده شده زبان C++ با توابع از پیش تعریف شده استفاده می کند. مانند سایر زبان های برنامه نویسی C مانند، قوانینی برای نوشتن کد وجود دارد. در اینجا اساسی ترین آنها وجود دارد:

  • هر دستورالعمل باید با یک نقطه ویرگول (;) دنبال شود.
  • قبل از اعلان یک تابع، باید نوع داده ای را که توسط تابع برگردانده شده است مشخص کنید، یا اگر تابع مقداری را برنگرداند، void شود.
  • همچنین لازم است قبل از اعلام یک متغیر، نوع داده را مشخص کنید.
  • نظرات مشخص شده اند: // درون خطی و /* بلوک */

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

تمام سفت‌افزار آردوینو باید حداقل دارای ۲ عملکرد باشد. اینها setup() و loop() هستند.

عملکرد راه اندازی

برای اینکه همه چیز کار کند، باید یک طرح بنویسیم. اجازه دهید پس از فشار دادن دکمه، LED روشن شود و پس از فشار بعدی خاموش شود. این اولین طرح ما است:

// متغیرهای دارای پین های دستگاه های متصل int switchPin = 8; int ledPin = 11; // متغیرهایی برای ذخیره وضعیت دکمه و LED boolean lastButton = LOW; دکمه جریان بولی = LOW; بولی ledOn = نادرست; void setup() (pinMode(switchPin, INPUT)؛ pinMode(ledPin, OUTPUT)؛ ) // تابعی برای debounse boolean debounse(boolean last) (Bolean current = digitalRead(switchPin); if(last!= current) ( تاخیر ( 5؛ جریان = digitalRead(switchPin)؛ ) جریان برگشتی؛ ) void loop() (currentButton = debounse(lastButton)؛ if(lastButton == LOW && currentButton == HIGH) (ledOn = !ledOn;) lastButton = currentButton; digitalWrite (ledPin، ledOn)؛

// متغیرها با پین های دستگاه های متصل

int switchPin = 8 ;

int ledPin = 11 ;

// متغیرهایی برای ذخیره وضعیت دکمه و LED

بولی lastButton = LOW ;

جریان بولی دکمه = LOW ;

بولی ledOn = نادرست ;

void setup() (

pinMode (SwitchPin، INPUT)؛

pinMode (ledPin، OUTPUT)؛

// تابع برای debouncing

دبونس بولی (آخرین بولی) (

جریان بولی = DigitalRead(SwitchPin);

اگر (آخرین != فعلی) (

تاخیر (5);

جریان = DigitalRead (SwitchPin)؛

جریان برگشتی؛

حلقه خالی() (

currentButton = debounse(lastButton);

اگر (آخرین دکمه == کم و دکمه فعلی == بالا) (

ledOn = ! ledOn;

lastButton = currentButton ;

digitalWrite (ledPin، ledOn)؛

در این طرح، من یک تابع debounse اضافی برای سرکوب جهش تماس ایجاد کردم. اطلاعاتی در مورد پرش مخاطب در وب سایت من وجود دارد. حتما این مطالب را بررسی کنید.

PWM آردوینو

مدولاسیون عرض پالس (PWM) فرآیند کنترل ولتاژ با استفاده از چرخه وظیفه یک سیگنال است. یعنی با استفاده از PWM می‌توانیم بار را به آرامی کنترل کنیم. به عنوان مثال، شما می توانید به آرامی روشنایی یک LED را تغییر دهید، اما این تغییر در روشنایی نه با کاهش ولتاژ، بلکه با افزایش فواصل سیگنال پایین به دست می آید. اصل عملکرد PWM در این نمودار نشان داده شده است:

وقتی PWM را روی LED اعمال می کنیم، به سرعت شروع به روشن شدن و خاموش شدن می کند. چشم انسان قادر به دیدن آن نیست زیرا فرکانس بسیار زیاد است. اما هنگام فیلمبرداری، به احتمال زیاد لحظاتی را خواهید دید که LED روشن نمی شود. این به شرطی اتفاق می افتد که نرخ فریم دوربین مضربی از فرکانس PWM نباشد.

آردوینو دارای تعدیل کننده عرض پالس داخلی است. شما می توانید از PWM فقط روی آن پین هایی استفاده کنید که توسط میکروکنترلر پشتیبانی می شوند. به عنوان مثال، Arduino Uno و Nano دارای 6 پایه PWM هستند: این پایه‌ها D3، D5، D6، D9، D10 و D11 هستند. ممکن است پین ها در سایر تخته ها متفاوت باشند. می توانید شرح تابلویی را که به آن علاقه دارید بیابید

برای استفاده از PWM در آردوینو تابعی وجود دارد که عدد پین و مقدار PWM را از 0 تا 255 به عنوان آرگومان می گیرد. بیایید به عنوان مثال یک طرح ساده بنویسیم. بیایید LED را به آرامی روشن کنیم، یک ثانیه صبر کنیم و به همان آرامی محو شوند، و به همین ترتیب بی نهایت ادامه دهیم. در اینجا مثالی از استفاده از این تابع آورده شده است:

// LED به پین ​​11 int ledPin = 11 متصل است. void setup() (pinMode(ledPin, OUTPUT); ) void loop() (برای (int i = 0; i< 255; i++) { analogWrite(ledPin, i); delay(5); } delay(1000); for (int i = 255; i >0; i--) ( analogWrite(ledPin, i)؛ تاخیر(5)؛ )

// LED متصل به پین ​​11

int ledPin = 11 ;

void setup() (

pinMode (ledPin، OUTPUT)؛

حلقه خالی() (

برای (int i = 0 ; i< 255 ; i ++ ) {

analogWrite (ledPin، i)؛

تاخیر (5);

تاخیر (1000);

برای (int i = 255; i > 0; i -- ) (

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

معرفی

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

شروع کنید

ایجاد یک پروژه در آردوینو شامل 3 مرحله اصلی است: نوشتن کد، نمونه سازی (breadboarding) و سیستم عامل. برای نوشتن کد و سپس فلش کردن برد، به یک محیط توسعه نیاز داریم. در واقع تعداد کمی از آنها وجود دارد، اما ما در محیط اصلی - Arduino IDE برنامه ریزی خواهیم کرد. ما خود کد را در C++ که برای آردوینو اقتباس شده است می نویسیم. می توانید آن را در وب سایت رسمی دانلود کنید. اسکچ برنامه ای است که روی آردوینو نوشته می شود. بیایید به ساختار کد نگاه کنیم:


main())( void setup())() void loop())())

لازم به ذکر است که پردازنده آردوینو تابع main() را ایجاد می کند که در C++ مورد نیاز است. و نتیجه چیزی که برنامه نویس می بیند این است:


void setup() () void loop() ()

بیایید به دو تابع مورد نیاز نگاه کنیم. تابع setup() تنها یکبار در هنگام راه اندازی میکروکنترلر فراخوانی می شود. این اوست که تمام تنظیمات اولیه را تنظیم می کند. تابع حلقه () چرخه ای است. در کل زمان کارکرد میکروکنترلر در یک حلقه بی پایان فراخوانی می شود.

برنامه اول

برای درک بهتر اصل عملکرد پلت فرم، اجازه دهید اولین برنامه را بنویسیم. ما این ساده ترین برنامه (Blink) را در دو نسخه اجرا خواهیم کرد. تنها تفاوت آنها در مونتاژ است.


int LED = 13; // متغیر Led را روی پایه 13 اعلام کنید (خروجی) void setup() (pinMode(Led, OUTPUT); // متغیر را تعریف کنید) void loop() ( digitalWrite(Led, HIGH)؛ // اعمال ولتاژ به تاخیر پایه 13 (1000)؛ // 1 ثانیه صبر کنید DigitalWrite (Led، LOW)؛ // ولتاژ را به تاخیر پین 13 اعمال نکنید (1000)؛ // 1 ثانیه صبر کنید)

اصل کار این برنامه بسیار ساده است: LED برای 1 ثانیه روشن می شود و برای 1 ثانیه خاموش می شود. برای گزینه اول، ما نیازی به مونتاژ طرح نداریم. از آنجایی که پلتفرم آردوینو دارای یک LED داخلی است که به پین ​​13 متصل است.

سیستم عامل آردوینو

برای آپلود یک طرح در آردوینو، ابتدا باید آن را به سادگی ذخیره کنیم. در مرحله بعد، برای جلوگیری از بروز مشکل در هنگام بارگذاری، باید تنظیمات برنامه نویس را بررسی کنید. برای انجام این کار، تب "ابزار" را در پانل بالا انتخاب کنید. در بخش «پرداخت»، پرداخت خود را انتخاب کنید. این می تواند Arduino Uno، Arduino Nano، Arduino Mega، Arduino Leonardo یا دیگران باشد. همچنین در بخش "پورت" باید پورت اتصال خود را انتخاب کنید (پورتی که پلتفرم خود را به آن متصل کرده اید). بعد از این مراحل می توانید طرح را آپلود کنید. برای انجام این کار، روی فلش کلیک کنید یا "دانلود" را در برگه "Sketch" انتخاب کنید (همچنین می توانید از میانبر صفحه کلید "Ctrl + U" استفاده کنید). سیستم عامل برد با موفقیت تکمیل شد.

نمونه سازی/طراحی

برای مونتاژ تخته نان به عناصر زیر نیاز داریم: LED، مقاومت، سیم کشی (پرش)، تخته نان. برای اینکه چیزی نسوزند و برای اینکه همه چیز با موفقیت کار کند، باید با LED مقابله کنید. دو "پا" دارد. کوتاه یک منهای است، بلند یک مزیت است. زمین (GND) و یک مقاومت را به مقاومت کوتاه وصل می کنیم (به منظور کاهش جریان عرضه شده به ال ای دی تا نسوزد) و به طول (به پایه 13 وصل) برق می دهیم. پس از اتصال، اگر قبلاً این کار را نکرده‌اید، طرح را روی برد آپلود کنید. کد ثابت می ماند.


این پایان قسمت اول است. با تشکر از توجه شما.

بهترین مقالات در این زمینه