در آموزش قبلی نحوه اجرای همزمان دو موتور پلهای را از یک موقعیت شروع معین به یک مقصد مشخص با استفاده از آردوینو و یک رابط کاربری بسیار ساده دیدیم. آن رابط کاربری محدود به برخی میکروسوئیچ ها و LED ها بود که هر دو روی تخته نان نصب شده بودند.
همانطور که وعده داده شده بود، این آموزش جدید نشان می دهد
- چگونه یک صفحه نمایش کوچک OLED اضافه کنیم،
- نحوه اجرای آردوینو، موتورها و صفحه نمایش از یک منبع تغذیه و
- چگونه همه را در یک جعبه کنترل فانتزی قرار دهیم.
در پایان، شما یک دستگاه برای کنترل استپرها نه تنها در خانه، بلکه همچنین "در طبیعت" خواهید داشت، به عنوان مثال از یک پاوربانک USB / شارژر قابل حمل.
تدارکات
- 1x آردوینو نانو
- 2x 28BYJ-48 Stepper Motors (نسخه 5 ولت) + تابلوهای درایور ULN 2003
- 1 x صفحه نمایش OLED 0.96 اینچی (160x80px، SPI، 8 پین، به عنوان مثال این یکی )
- 3 عدد میکروسوئیچ (اختیاری، برای آزمایش)
- 1x تخته نان (830 سوراخ، اختیاری، برای آزمایش)
- کابل های جامپر 15x (نر به نر، 10…20 سانتی متر، اختیاری، برای آزمایش)
- کابل های جامپر 12x (نر به ماده، 10…20 سانتی متر، اختیاری، برای آزمایش)
- 1x تخته پرف (70 میلیمتر در 30 میلیمتر - 24×10 سوراخ)
- 1 عدد سوکت جک بشکه DC 5.5 میلی متر / 2.1 میلی متر (برای پایه پانل، با مهره M7)
- 3 عدد دکمه فشاری (قطر 7 میلی متر، مانند اینها )
- 1 عدد خازن الکترولیتی (100μF)
- منبع تغذیه 1× 5 ولت
- چاپگر سه بعدی یا خدمات چاپ سه بعدی (اختیاری، جعبه پلاستیکی یا جعبه چوبی نیز خوب است)
مرحله 1: اضافه کردن صفحه نمایش
![](https://duino4projects.com/wp-content/uploads/2021/07/Adding-the-Screen.jpg)
به عنوان اولین قدم، مدار را از دستورالعمل قبلی بازبینی می کنیم و صفحه نمایش کوچک 0.96 اینچی OLED را به برد برد اضافه می کنیم. این مرحله برای آزمایش تمام اجزاء اختیاری است. از طرف دیگر، می توانید آن را نادیده بگیرید و به مرحله 2 ادامه دهید.
برد برد خود را همانطور که در تصاویر بالا نشان داده شده است تنظیم کنید:
- GND و 5 ولت منبع تغذیه را به ریل های قرمز و آبی بالای تخته نان وصل کنید .
- ریل های زمینی بالا و پایین (آبی) و پایه GND آردوینو را به یکی از آن وصل کنید.
- پین های D2 تا D5 آردوینو به In1 تا In4 اولین برد ULN2003 می روند.
- پین های D6 تا D9 آردوینو به In1 تا In4 برد دوم ULN2003 می روند.
- پین D11 آردوینو به پین SDA (یا Data یا MOSI) نمایشگر می رود.
- پایه D13 آردوینو به پین SCL (یا CLK یا SCK) نمایشگر می رود.
- پایه A3 آردوینو به پایه DC (یا SA0 یا A0) نمایشگر می رود.
- پایه A4 آردوینو به پین CS نمایشگر می رود.
- پایه RST آردوینو را به پایه RST (یا RES) نمایشگر وصل کنید .
- پایه GND نمایشگر را به یکی از ریل های زمین و پایه Vin نمایشگر را به پایه 5 ولت آردوینو وصل کنید .
- پایه های آردوینو A1 تا A3 را به میکروسوئیچ ها وصل کنید. طرف دیگر میکروسوئیچ ها را به GND وصل کنید . ما در اینجا از هیچ مقاومتی برای جلوگیری از اتصال کوتاه استفاده نخواهیم کرد، زیرا از کشش هایی استفاده می کنیم که قبلاً در آردوینو یکپارچه شده اند.
لطفاً توجه داشته باشید : صفحه نمایش 0.96 اینچی که من استفاده کرده ام (به پیوند زیر "تدارکات" مراجعه کنید) رسماً ولتاژ کاری 3.3 ولت را درخواست می کند. از این رو، تمام پینگ ها (یعنی Vin و سیگنال ها) با ولتاژ پایه های خروجی آردوینو Uno/Nano/Mega که دارای 5 ولت هستند مطابقت ندارند. بنابراین، شما باید پین Vin را به 3.3 ولت وصل کنید و باید مبدل های سیگنال را برای خطوط دیگر با استفاده از یک تراشه تغییر دهنده سطح منطقی دو جهته همانطور که در اینجا ارائه شده است یا یک تقسیم کننده ولتاژ مبتنی بر مقاومت همانطور که در اینجا نشان داده شده است اضافه کنید . اما: آموزش های دیگری مانند این یا این یکی همانطور که در طرح بالا انجام دادم، حداقل خطوط سیگنال را مستقیماً به پایه های خروجی آردوینو وصل کنید، زیرا نمایشگر معمولاً 5 ولت تحمل دارد. علاوه بر این، برخی از کاربران در انجمنهای آردوینو هنگام اتصال Vin به 3.3 ولت، متوجه شدند که صفحه نمایش سوسو میزند یا کاملاً سیاه میشود - که تجربه من نیز بود. از این رو، توصیه می کنم ابتدا صفحه نمایش خود را با خطوط سیگنالی که مستقیماً به آردوینو و Vin متصل به 3.3 ولت وصل شده اند، آزمایش کنید . اگر کار نکرد، Vin را مانند روشی که در بالا توضیح دادم، به 5 ولت تغییر دهید.
مرحله 2: اضافه کردن نرم افزار
![](https://duino4projects.com/wp-content/uploads/2021/07/Adding-the-Software.jpg)
آردوینو IDE را راه اندازی کنید و فایل .ino-فایل پیوست شده را باز کنید. ساختار نرم افزار تقریباً مشابه آموزش قبلی است . علاوه بر این، کتابخانه Adafruit GFX و کتابخانه Adafruit ST7735 مورد نیاز خواهد بود. اگر اینها هنوز نصب نشدهاند، لطفاً به « ابزارها » → « مدیریت کتابخانهها» بروید…"، سپس به دنبال این کتابخانه ها بگردید و دکمه "Install" را بزنید. پس از نصب تمام کتابخانه ها، کد دانلود باینری حاصل را در آردوینو خود کامپایل کنید. اگر مرحله 2 را نادیده گرفته اید (یعنی اگر عناصر را روی تخته نان تنظیم نکرده اید)، لطفاً اکنون مرحله بعدی را ادامه دهید. در غیر این صورت، نمایشگر باید مانند تصویر بالا باشد. اکنون، می توانید با استفاده از دکمه سمت چپ، سیستم را از طریق پنج منو تغییر دهید. در هر منو، دکمه وسط و سمت راست عملکردهای متفاوتی خواهند داشت:
- در منوی " اجرا " می توانید هر دو موتور را راه اندازی کنید تا همزمان آنها را به موقعیت های شروع و پایان حرکت دهید. مستقیماً پس از روشن شدن، این کار چندان منطقی نیست زیرا ما هیچ موقعیت استارت یا توقفی را آموزش ندادیم، بنابراین همه آنها در موقعیت هایی تنظیم می شوند که موتورها هنگام راه اندازی سیستم در آن قرار داشته اند. بنابراین، لطفا دکمه سمت چپ را تغییر دهید تا به منوی بعدی بروید.
- در منوهای زیر (" M1 - Start ", " M2 - Start ", " M1 - End ", " M2 - End”) میتوانید هر موتور را با فشار دادن دکمههای میانی و راست به جلو و عقب برانید تا موقعیت شروع یا پایان آنها را برای حرکت مشترک بعدی که در منوی «Execute» فعال میشود، تنظیم کنید. میتوانید هر چند وقت یکبار برای تنظیم موقعیتها، منوها را جابهجا کنید. اگر وارد یکی از این منوها شوید، موقعیت فعلی موتور آدرسدهی شده را در بالا و موقعیت شروع یا پایان ذخیره شده فعلی را در براکتهای زیر مشاهده خواهید کرد. اگر دکمه وسط یا راست را فشار دهید، موقعیت شروع یا پایان این موتور را با یک مقدار جدید بازنویسی می کنید (که – پس از حرکت موتور به جلو و عقب) موقعیت موتور هنگام خروج از منو خواهد بود. اگر دکمه وسط یا راست را لمس نکنید، موقعیت بدون تغییر باقی می ماند.
- آخرین منو (" سرعت ") را می توان برای تغییر سرعت سیستم با استفاده از دکمه میانی و راست استفاده کرد. نمایشگر سرعت (بر حسب درجه در ثانیه) و زمان حاصله برای حرکت مشترک بین موقعیتهای شروع و توقف انتخاب شده فعلی را نشان میدهد.
- پس از تنظیم موقعیت ها و سرعت، یک بار دیگر دکمه سمت چپ را برای بازگشت به " اجرا " تغییر دهید، جایی که اکنون می توانید هر دو موتور را به طور همزمان به موقعیت های پایانی (دکمه سمت راست) یا بازگشت به موقعیت های شروع (دکمه وسط) حرکت دهید.
مرحله 3: لحیم کاری
![](https://duino4projects.com/wp-content/uploads/2021/07/Soldering-1.jpg)
اکنون میخواهیم از شر منابع برق جدا شده برای موتورها (منبع تغذیه خارجی) و آردوینو با نمایشگر متصل (تاکنون از طریق USB) خلاص شویم. از آنجایی که موتورها با ولتاژ 5 ولت کار می کنند، ساده ترین راه این است که پورت USB را جدا کنید و آردوینو را به همان منبع برق 5 ولتی وصل کنید - نه به پین Vin (که حداقل 6 ولت انتظار دارد) بلکه به پایه 5 ولت. این برای آردوینو کاملاً خوب است، اما لطفاً مطمئن شوید که از منبع تغذیه تنظیم شده یا تنظیم باتری استفاده می کنید که از این مقدار زیاد تجاوز نمی کند. طبق گفته سازندگان تراشههای آردوینو نانو/یونو/مگا، بهتر است کمی بالاتر از 5 ولت بروید، اما نباید از 5.5 ولت بیشتر استفاده کنید. معمولاً ثابت نگه داشتن ولتاژ برای منابع تغذیه معمولی مشکلی ندارد، اما یک نکته دیگر نیز باید در نظر گرفته شود: موتورهای 28BYJ-48 هر کدام حدود 240 میلی آمپر انرژی مصرف می کنند (جزئیات را ببینید اینجا ) و آردوینو و نمایشگر با هم به حدود 100 میلی آمپر نیاز دارند. در مجموع، این یک چیز بزرگ نیست، اما کمی بیشتر از 500 میلی آمپر خواهد بود، بنابراین
- کل تنظیمات را از پورت USB رایانه شخصی یا لپ تاپ خود تغذیه نکنید و
- اطمینان حاصل کنید که منبع تغذیه مورد استفاده برای جریان خروجی بیش از 500 میلی آمپر درجه بندی شده است.
لطفاً توجه داشته باشید : هنگام استفاده از یک منبع تغذیه، خطوط 5 ولت و GND موتورها و آردوینو را به هم وصل می کنیم. در حالی که شما نباید موتورها را در این پیکربندی از درگاه USB اجرا کنید ، اما اگر موتورها را روشن نکنید، اتصال سیستم به پورت USB به عنوان مثال برای تغییر برنامه آردوینو کاملاً مشکل است . بنابراین، برای برنامه ریزی مجدد، لطفا منبع تغذیه خارجی را قطع کنید، دستگاه را به پورت USB وصل کنید، کد را تغییر دهید و دانلود کنید، پورت USB را جدا کنید و تنها پس از وصل مجدد منبع تغذیه خارجی، موتورها را روشن کنید.