فهرست مطالب:
- مرحله 1: قطعات مورد نیاز
- مرحله 2: ایجاد رابط
- مرحله 3: منابع پروژه
- مرحله 4: وارد کردن تصاویر
- مرحله 5: ایجاد GUI
- مرحله 6: صفحه 0-صفحه چلپ چلوپ
- مرحله 7: صفحه 1 - کنترل کننده موتور پله ای
- مرحله 8: صفحه 2 - پیانو موتور پله ای
- مرحله 9: اشکال زدایی
- مرحله 10: ARDUINO SETUP
- مرحله 11: نهایی کردن+شماتیک
تصویری: پخش آهنگها با استفاده از Stepper Motor !!: 11 مرحله (همراه با تصاویر)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:57
این پروژه در مورد طراحی یک رابط پویا ساده است که به شما امکان می دهد با دو روش مختلف با یک موتور پله ای تعامل داشته باشید.
رابط اول جهت و سرعت موتور پله ای را با استفاده از رابط کاربری گرافیکی ساده که دارای پیکان چپ و راست جهت جهت و پیکان بالا و پایین سرعت است ، کنترل می کند.
رابط دوم بیشتر موسیقی دارد و به شما امکان می دهد آهنگهای ساده را با استفاده از صداهای چرخشی موتور پله پخش کنید.
مرحله 1: قطعات مورد نیاز
- Arduino UNO (یا برد سازگار)
- Nextion Enhanced NX4827K043 از iTead Studio.
- صفحه گسترش Nextion برای صفحه نمایش Nextion Enhanced
- کارت Micro SDHC
- SD Card Reader/Writer - برای انتقال فایل ها از رایانه به کارت SDHC
- تخته نان
- استپر موتور (42BYGHM809)
- 100 uF CapacitorDuinotech Stepper Motor Driver (L298) - [قسمت JayCar# XC4492].
- منبع تغذیه خارجی - به عنوان مثال منبع تغذیه آزمایشگاهی تنظیم شده
مرحله 2: ایجاد رابط
اولین قدم ایجاد رابط ها در ویرایشگر Nextion در رایانه شما است.
می توانید ویرایشگر Nextion را از اینجا بارگیری کنید.
ویرایشگر Nextion را بارگذاری کرده و یک پروژه جدید ایجاد کنید. هنگام شروع یک پروژه جدید ، باید مطمئن شوید که دستگاه Nextion صحیح را از بین گزینه های موجود انتخاب کرده اید. در اینجا از دستگاه "Nextion Enhanced NX4827K043" استفاده می شود.
- File را انتخاب کنید New نام پروژه را انتخاب کرده و آن را در محل مناسب هارد ذخیره کنید.
-
دستگاه Nextion مناسب را از بین گزینه های موجود انتخاب کنید
اندازه صفحه نمایش دستگاه من 480 27 272 پیکسل است
مرحله 3: منابع پروژه
شما باید تمام منابع (به عنوان مثال تصاویر و فونت ها) را به پروژه خود وارد کنید و سپس رابط را متناسب با نیازهای خاص خود طراحی کنید.
فونت ها
هیچ فونت خاصی استفاده نمی شود ، اما اگر می خواهید متنی را روی صفحه بنویسید ، باید یک فونت در ویرایشگر Nextion ایجاد کنید.
الف) ابزارها. ژنراتور قلم
- ارتفاع قلم را انتخاب کنید (به عنوان مثال 16).
- نوع کد فونت را انتخاب کنید (به عنوان مثال iso-8859-2)
- انتخاب کنید که می خواهید Bold باشد یا نه
- فونت مورد نظر خود را انتخاب کنید (به عنوان مثال Arial)
- فاصله را انتخاب کنید (به عنوان مثال 0)
- و در نهایت یک نام منحصر به فرد به این قلم بدهید (به عنوان مثال Arial_16)
- دکمه "ایجاد قلم" را در پایین سمت راست پنجره فشار دهید.
هنگامی که دکمه Generate Font را فشار می دهید ، فونت را با استفاده از پسوند *.zi ذخیره می کنید و به طور خودکار از شما می پرسد که آیا مایل به افزودن فونت ایجاد شده هستید؟ به پروژه اگر از فونت راضی هستید و می خواهید از این فونت در پروژه خود استفاده کنید ، "Yes" را انتخاب کنید ، در غیر این صورت "No" را انتخاب کرده و دوباره شروع کنید.
تا زمانی که فونت را وارد یا اضافه نکرده اید ، نمی توانید هیچ متنی به پروژه خود اضافه کنید. همه فونت های پروژه شما در پنجره فونت ها نمایش داده می شود.
** توجه: هر فونت به صورت خودکار نمایه می شود ، بنابراین در صورت نیاز می توانید فونت را به صورت دستوری مرجع کنید. در واقع تمام منابعی که به پروژه خود اضافه می کنید یک عدد اختصاص داده می شود و برای هر منبعی که اضافه می شود یک عدد افزایش می یابد. برای برخی منابع ، می توانید این شماره را در سمت چپ مورد مشاهده کنید. به عنوان مثال. در تصویر بالا ، فونت پیک دارای نمایه 0 است ، در حالی که فونت Arial دارای نمایه 1 است. اگر منبع را حذف کنید ، ممکن است شماره فهرست برای آن مورد تغییر کند.
مرحله 4: وارد کردن تصاویر
در دستگاه Nextion Enhanced NX4827K043 ، هر تصویر باید دارای اندازه 480 در 272 پیکسل باشد.
اکنون تصاویر زیر را به ویرایشگر Nextion وارد می کنیم تا بتوانیم از آنها در پروژه استفاده کنیم. در گوشه سمت چپ پایین ویرایشگر Nextion پنجره منبع "Fonts and Picture" قرار دارد:
- برگه Picture را انتخاب کنید
- سپس نماد "+" را انتخاب کنید
- با این کار یک کادر محاوره ای باز می شود تا به شما اجازه دهد عکس (ها) را برای افزودن به پروژه انتخاب کنید. می توانید بیش از یک تصویر را برای وارد کردن انتخاب کنید.
برای صفحه چلپ چلوپ می توانید هر تصویری را مطابق انتخاب خود ایجاد کنید.
و برای استپر موتور و رابط پیانو می توانید تصویر بالا را بارگیری کنید.
مرحله 5: ایجاد GUI
هر منبع بر اساس ترتیب اضافه شدن یک شناسه دریافت می کند و هر منبع به طور خودکار یک نام دریافت می کند.
می توانید نام منبع یا شیء را تغییر دهید ، اما نمی توانید شناسه را ویرایش کنید.
سه صفحه برای مطابقت با معیارهای شرح داده شده در بالا طراحی خواهد شد.
برای افزودن یک صفحه ، به سادگی نماد "افزودن" را از "پنجره صفحه" انتخاب کنید. و به افزودن صفحات ادامه دهید تا مجموعاً 3 صفحه (صفحه 0 ، صفحه 1 و صفحه 2) داشته باشید.
مرحله 6: صفحه 0-صفحه چلپ چلوپ
هنگامی که Nextion روشن می شود ، صفحه نمایش چلپ چلوپ به مدت 3 ثانیه نمایش داده می شود تا صفحه Stepper Motor Controller نمایش داده شود. از مراحل زیر برای ایجاد splash screen استفاده کردم.
تصویر صفحه چلپ چلوپ را به صفحه 0 اضافه کنید
- "صفحه 0" را از پنجره Page انتخاب کنید
- "Picture" را از پنجره Toolbox انتخاب کنید
- از پنجره Attribute روی ویژگی "pic" دوبار کلیک کنید
- تصویر splash screen را از لیست انتخاب کنید
- دکمه OK را فشار دهید
2. یک تایمر به صفحه 0 اضافه کنید
- تایمر را از پنجره جعبه ابزار انتخاب کنید
- ویژگی "tim" را از 400 به 3000 در پنجره Attribute تغییر دهید
- "page1" را در قسمت کد کاربر رویداد تایمر وارد کنید (0) این رویداد تایمر باعث می شود Nextion بعد از 3 ثانیه به صفحه 1 پرش کند.
این رویداد تایمر باعث می شود Nextion بعد از 3 ثانیه به صفحه 1 پرش کند.
مرحله 7: صفحه 1 - کنترل کننده موتور پله ای
این صفحه برای کنترل جهت و سرعت موتور پله ای طراحی شده است. دو دکمه جهت (چپ و راست) و دو دکمه سرعت (سریعتر و کندتر) وجود خواهد داشت. و یک دکمه دیگر برای رفتن به صفحه بعدی (یعنی صفحه پیانو موتور پله ای). این دکمه ها همچنین به برد گسترش Nextion نگاشته می شوند. دکمه های لمسی صفحه گسترش یک روش جایگزین برای کنترل موتور ارائه می دهد.
تصویر Stepper Motor Controller را به صفحه 1 اضافه کنید
- "page1" را از پنجره Page انتخاب کنید
- "Picture" را از پنجره Toolbox انتخاب کنید
- از پنجره Attribute روی ویژگی "pic" دوبار کلیک کنید
- تصویر "Stepper Motor Controller" را از لیست انتخاب کنید
- دکمه OK را فشار دهید
2. Hotspots را روی هر دکمه در تصویر Stepper Motor Controller اضافه کنید
الف) "Hotspot" را از پنجره جعبه ابزار انتخاب کنید
ب) Hotspot را بکشید و تغییر اندازه دهید تا دکمه "Left" را بپوشاند
- این ناحیه ای است که به فشارهای "دکمه سمت چپ" پاسخ می دهد.
- وقتی روی برد Nextion بارگذاری شود ، شفاف خواهد بود
ج) برگه "Touch Press Event" را در پنجره Event انتخاب کنید
د) تیک "Send Component ID" را بردارید
ه) کد زیر را در بخش "کد کاربر" پنجره رویداد وارد کنید:
چاپ "L"
f) با استفاده از فرایند زیر ، نام شیء hotspot را به "Left" تغییر دهید:
- objname را از پنجره ویژگی انتخاب کرده و متن را از "m0" به "Left" تغییر دهید.
- تغییر نام شیء hotspot اجباری نیست. با این حال بعداً کمک خواهد کرد
g) مراحل 2a-2f را برای هر یک از دکمه های دیگر به ترتیب زیر و مطابق جدول زیر تکرار کنید
- درست
- سریعتر
- آرام تر
- بعد
کد اعشاری ASCII برای حرف "L" 76 است ، بنابراین وقتی صفحه نمایش Nextion Enhanced حرف L را به آردوینو با استفاده از دستور چاپ "L" ارسال می کند ، آردوینو شماره 76 را دریافت می کند. وقتی دکمه سمت راست را فشار دهید ، آن را شماره 82 و غیره را دریافت می کند. دکمه "بعدی" چیزی را به آردوینو منتقل نمی کند ، فقط برای رفتن به رابط بعدی در صفحه نمایش Nextion Enhanced وجود دارد ، بنابراین دلیل متفاوت بودن کد کاربر برای آن دکمه است.
3. دکمه ها را به صفحه Expansion بکشید
الف) "page0" و سپس "page1" را از پنجره Page انتخاب کنید
ب) برگه "Preinitialize Event" را از پنجره Event انتخاب کنید
ج) کد زیر را در قسمت "User Code" در برگه Preinitialize Event وارد کنید:
- cfgpio 5 ، 1 ، چپ
- cfgpio 2 ، 1 ، راست
- cfgpio 4 ، 1 ، سریعتر
- cfgpio 3 ، 1 ، Slower
- cfgpio 1 ، 1 ، بعدی
*** لطفا توجه داشته باشید: بین cfgpio و شماره کنار آن یک فاصله وجود دارد ، اما هیچ فاصله دیگری در هر خط وجود ندارد. اگر فضاهای اضافی را وارد کنید ، کامپایل نمی شود. این کد دکمه های روی برد گسترش را به اشیاء hotspot در صفحه 1 ترسیم می کند. به عنوان مثال ، وقتی دکمه Left (IO5) روی برد گسترش فشار داده می شود ، اقدامات یا رویدادهای مرتبط با hotspot m0/Left را شبیه سازی می کند. در این حالت مقدار "L" (76) را برای آردوینو ارسال می کند.
شماره IO در داخل براکت روی برد گسترش مشخص شده است.
مرحله 8: صفحه 2 - پیانو موتور پله ای
رابط کاربری او شبیه پیانو طراحی شده است و به من امکان می دهد موتور پله ای را طوری کنترل کنم که نت را در همان کلیدی که روی صفحه Nextion فشار می دهم تولید کند. موتور پله ای با چرخاندن در فرکانس خاصی نت را تولید می کند.
1. تصویر Stepper Motor Piano را به صفحه 2 اضافه کنید.
- "page2" را از پنجره Page انتخاب کنید
- "Picture" را از پنجره Toolbox انتخاب کنید
- از پنجره Attribute روی ویژگی "pic" دوبار کلیک کنید
- تصویر "Stepper Motor Piano" را از لیست انتخاب کنید
- دکمه OK را فشار دهید
2. بر روی هر کلید بر روی تصویر Stepper Motor Piano ، Hotspots اضافه کنید
الف) "Hotspot" را از پنجره جعبه ابزار انتخاب کنید
ب) Hotspot را بکشید و اندازه آن را تغییر دهید تا کلید "A" را بپوشاند. این ناحیه ای است که به فشارهای "A-key" پاسخ می دهد. هنگام بارگذاری در برد Nextion شفاف خواهد بود.
ج) برگه "Touch Press Event" را در پنجره Event انتخاب کنید.
د) موارد زیر را در بخش "کد کاربر" وارد کنید
چاپ 1
ه) مراحل 2a-2d را برای هر یک از کلیدهای دیگر مطابق جدول زیر تکرار کنید.
** هنگامی که کلید خاص فشار داده می شود ، تخته Nextion Enhanced شماره چاپ شده و سه مقدار 0x00 را ارسال می کند. مقادیر پایانی را می توان نادیده گرفت.
3. دکمه "بازگشت" به من اجازه می دهد تا به رابط قبلی روی برد Nextion Enhanced برگردم.
الف) با استفاده از فرآیند زیر یک نقطه اتصال برای دکمه بازگشت ایجاد کنید:
- از پنجره جعبه ابزار Hotspot را انتخاب کنید
- نقطه/نقطه را روی دکمه "برگشت" منتقل/تغییر دهید
ب) پنجره Event را انتخاب کنید.
ج) اطمینان حاصل کنید که برگه "Touch press event" انتخاب شده است
د) صفحه صفحه 1 را در قسمت User Code وارد کنید
مرحله 9: اشکال زدایی
نکته خوب در مورد ویرایشگر Nextion این است که می توانید قبل از بارگذاری آن روی برد ، عملکرد رابط کاربری را آزمایش کنید.
- با فشار دادن دکمه ذخیره در نوار وظیفه ، پروژه را ذخیره کنید
- سپس دکمه کامپایل را فشار دهید
- سپس دکمه اشکال زدایی را فشار دهید.
یک پنجره شبیه ساز Nextion ظاهر می شود. پس از بارگذاری فایل Nextion روی برد ، این پنجره باید همانند ماژول Nextion پاسخ دهد. این شبیه ساز یک راه عالی برای آزمایش رابط کاربری شما و اطمینان از ظاهر و عملکرد مطابق انتظار است. هنگامی که از رابط کاربری راضی بودم ، فایل Nextion کامپایل شده را به کارت SD منتقل کردم:
- دکمه کامپایل را فشار دهید
- فایل → پوشه Build را باز کنید
- فایل *.tft را با نام پروژه انتخاب کنید.
- آن را در کارت micro SDHC کپی کنید
- کارت SDHC را در شکاف کارت SD در صفحه Nextion قرار دهید
- برد Nextion را روشن کنید
منتظر بمانید تا فایل Nextion فلش شود و پیامی به این شکل مشاهده کنید:
مرحله بعدی خاموش کردن برد Nextion و حذف کارت SDHC است.
مرحله 10: ARDUINO SETUP
صفحه نمایش Nextion Enhanced آماده است و اکنون نوبت آردوینو است. آردوینو طوری برنامه ریزی شده است که پیام های سریال را از صفحه نمایش Nextion Enhanced دریافت کرده و موتور پله ای را بر اساس حروف یا اعداد دریافتی کنترل می کند. حروف یا اعداد منحصر به فرد که از صفحه Nextion منتقل می شوند ، به Arduino اجازه می دهد تا بفهمد چه دکمه ای فشرده می شود و از این اعداد یا حروف برای کنترل جریان کد به منظور انجام اقدامات خاص پله ای استفاده می کند.
از کتابخانه SoftwareSerial برای فعال کردن ارتباط سریال بین آردوینو و صفحه نمایش Nextion Enhanced استفاده می شود. از کتابخانه AccelStepper برای ساده سازی فرایند کنترل موتور پله ای استفاده می شود.
حداکثر و حداقل سرعت را برای موتورها و برخی کلیدهای از پیش تعریف شده تنظیم کنید. امکان تنظیم موتور با استفاده از اولین رابط صفحه نمایش Nextion وجود دارد. می توانید این کار را با چرخاندن سریعتر یا کندتر موتور تا رسیدن به کلید مورد نظر انجام دهید. در اینجا برنامه "Tuner T1 Free" از فروشگاه برنامه iTunes برای شناسایی زمانی که موتور یک یادداشت در کلید تولید می کرد ، استفاده می شود. هنگامی که موتور یک یادداشت خاص تولید می کرد ، سرعت موتور پله ای را که روی پنجره مانیتور سریال چاپ می شد ، می نوشتم. هر بار که سرعت موتور افزایش یا کاهش می یابد ، کد آردوینو سرعت را در پنجره سریال مانیتور چاپ می کند. سپس از این سرعتها برای به روز رسانی آرایه notes در کد آردوینو استفاده می کنم. آرایه نت ها سرعت موتورهای پله ای را که مطابق با نت های فردی پیانو است ، نگه می دارد. صفحه نمایش Nextion اساساً شماره فهرست نت را برای پخش از آرایه یادداشت ها بر روی آردوینو ارسال می کند ، در نتیجه کد مورد نیاز برای چرخاندن موتور در 16 سرعت مختلف ساده می شود.
مرحله 11: نهایی کردن+شماتیک
در حالی که همه بردها خاموش هستند ، گام بعدی این است که تمام سخت افزارهای لازم را به آردوینو متصل کنید. دو بخش عمده را باید در نظر گرفت:
- راننده و موتور استپر موتور
- هیئت مدیره Nextion Enhanced.
شما باید اطمینان حاصل کنید که از منبع تغذیه خارجی برای تغذیه هر دو موتور پله ای و برد بعدی Nextion Enhanced استفاده می کنید. تخته راننده موتور پله ای خود بدون هیچ مشکلی از آردوینو تغذیه می کرد ، اما موتور پله ای واقعی به منبع تغذیه خارجی نیاز دارد. برد بعدی Nextion به منبع تغذیه خارجی نیز احتیاج دارد زیرا به جریان بیشتری نسبت به آردوینو نیاز دارد.
منبع تغذیه خارجی مورد استفاده را یادداشت کنید. من مطمئن شدم که منبع تغذیه کافی برای رسیدگی به نیازهای برق پروژه دارم و از برگه های داده مربوطه برای شناسایی این الزامات استفاده کردم. اگر قصد دارید این پروژه را تکرار کنید ، مطمئن شوید که نیازهای خاص موتور ، راننده موتور و صفحه نمایش Nextion خود را در نظر بگیرید. آردوینو فقط می تواند 400mA جریان را از پین 5 ولت تامین کند. با اتصال همه چیز به صفحه نمایش Nextion ، سپس آردوینو را روشن کردم. موتور پله ای به طور خودکار شروع به چرخش می کند. من از رابط اول برای تغییر جهت و/یا سرعت موتور استفاده کردم. لطفاً به حداکثر و حداقل سرعتهای تنظیم شده در کد آردوینو توجه کنید. سپس از دکمه Next برای پرش به رابط دوم روی صفحه نمایش Nextion Enhanced استفاده کردم. رابط دوم شبیه به پیانو است. و هنگامی که من یک کلید روی صفحه نمایش پیانو را فشار می دهم ، موتور سرعت خود را برای مطابقت با نتی که فشار داده ام تغییر می دهد.
این تمام است. اکنون کار شما تمام شده است.
امیدوارم اینو دوست داشته باشی
توصیه شده:
صحبت کردن با آردوینو - پخش MP3 با آردوینو بدون هیچ ماژولی - پخش فایل Mp3 از Arduino با استفاده از PCM: 6 مرحله
صحبت کردن با آردوینو | پخش MP3 با آردوینو بدون هیچ ماژولی | پخش فایل MP3 از آردوینو با استفاده از PCM: در این دستورالعمل نحوه پخش یک فایل mp3 با arduino بدون استفاده از هیچ ماژول صوتی را یاد می گیریم ، در اینجا ما از کتابخانه PCM برای Arduino استفاده می کنیم که PCM 16 بیتی با فرکانس 8kHZ پخش می کند ، بنابراین اجازه دهید این کار را انجام دهیم
پخش سی دی بدون پخش کننده سی دی ، با استفاده از هوش مصنوعی و یوتیوب: 10 مرحله (همراه با تصاویر)
پخش سی دی بدون پخش کننده سی دی ، با استفاده از هوش مصنوعی و یوتیوب: آیا می خواهید سی دی های خود را پخش کنید اما دیگر سی دی پلیر ندارید؟ آیا وقت نداشتید سی دی های خود را پاره کنید؟ آنها را پاره کرد اما در صورت نیاز فایل ها در دسترس نیستند؟ مشکلی نیست. بگذارید هوش مصنوعی (هوش مصنوعی) سی دی شما را شناسایی کند و یوتیوب آن را پخش کند! من یک برنامه Android برای شما نوشتم
پخش صدا و پخش ویدئو با استفاده از Raspberry Pi 3 .: 6 مرحله
پخش صوتی و پخش ویدئو با استفاده از Raspberry Pi 3: اصلی ترین ابزار این پروژه پخش صدا به Raspberry Pi 3 از هر دستگاهی است که به شبکه WiFi مشترک متصل شده است و تهیه ویدیو از Raspberry Pi 3 به هر دستگاه متصل به یک شبکه WiFi مشترک
اتصال دستگاه پخش MP3 به نوار پخش کننده: 6 مرحله (همراه با تصاویر)
اتصال پخش کننده MP3 به نوار پخش کننده: نحوه اتصال پخش کننده mp3 یا منبع استریو دیگر به دستگاه پخش نوار به منظور گوش دادن به موسیقی
نحوه حذف آهنگها یا موارد دیگر از DVD به عنوان MP3: 4 مرحله
نحوه حذف آهنگها یا موارد دیگر از DVD به عنوان MP3: اگر یک DualDisc با آهنگهایی دارید که می خواهید در Ipod به آنها گوش دهید ، یا یک DVD معمولی با شاید یک آهنگ تفسیری که می خواهید به آن گوش دهید یک Ipod ، بقیه این مقاله را بخوانید تا این کار را انجام دهید. وسایل مورد نیاز-کامپیوتر ، دست ، مغز ، DVD ، Ipod