Агуулгын хүснэгт:

Stepper мотор ашиглан дуу тоглоорой !!: 11 алхам (зурагтай)
Stepper мотор ашиглан дуу тоглоорой !!: 11 алхам (зурагтай)

Видео: Stepper мотор ашиглан дуу тоглоорой !!: 11 алхам (зурагтай)

Видео: Stepper мотор ашиглан дуу тоглоорой !!: 11 алхам (зурагтай)
Видео: 125 САМЫХ ИННОВАЦИОННЫХ ЭЛЕКТРОТРАНСПОРТНЫХ И ЛИЧНЫХ ТРАНСПОРТНЫХ СРЕДСТВ 2024, Арваннэгдүгээр
Anonim
Stepper мотор ашиглан дуу тоглоорой !!
Stepper мотор ашиглан дуу тоглоорой !!

Энэхүү төсөл нь энгийн динамик интерфэйсийг зохион бүтээх явдал бөгөөд энэ нь stepper мотортой хоёр янзаар харилцах боломжийг олгодог.

Эхний интерфэйс нь зүүн ба баруун сумтай, хурдны хувьд дээш, доош сумтай энгийн GUI ашиглан stepper моторын чиглэл, хурдыг хянах болно.

Хоёрдахь интерфэйс нь илүү хөгжмийн шинж чанартай байх бөгөөд энэ нь stepper моторын эргэлтийн дууг ашиглан энгийн дуунуудыг тоглуулах боломжийг олгоно.

Алхам 1: Шаардлагатай эд анги

  1. Arduino UNO (эсвэл нийцтэй самбар)
  2. ITead Studio -аас Nextion Enhanced NX4827K043.
  3. Nextion Өргөтгөсөн самбар Nextion Өргөтгөсөн дэлгэц
  4. Micro SDHC карт
  5. SD карт уншигч/бичигч - файлыг компьютерээс SDHC карт руу шилжүүлэх
  6. Талхны самбар
  7. Stepper мотор (42BYGHM809)
  8. 100 uF конденсаторDuinotech Stepper Motor Driver (L298) - [JayCar хэсэг# XC4492].
  9. Гадаад цахилгаан хангамж - жишээ нь. Зохицуулалттай лабораторийн цахилгаан хангамж

Алхам 2: Интерфэйс үүсгэх

Интерфэйс үүсгэх
Интерфэйс үүсгэх

Эхний алхам бол компьютер дээрээ Nextion Editor дээр интерфэйс үүсгэх явдал юм.

Nextion Editor -ийг эндээс татаж авах боломжтой.

Nextion Editor -ийг ачаалж, шинэ төсөл үүсгээрэй. Та шинэ төсөл эхлүүлэхдээ боломжтой хувилбаруудаас Nextion төхөөрөмжийг зөв сонгосон эсэхээ шалгах хэрэгтэй. Энд "Nextion Enhanced NX4827K043" төхөөрөмжийг ашигладаг.

  1. Файл → Шинэ сонгоно уу Төслийн нэрийг сонгоод хатуу дискний тохиромжтой газар хадгална уу.
  2. Боломжтой хувилбаруудаас тохирох Nextion төхөөрөмжийг сонгоно уу

    Миний төхөөрөмж 480 x 272 пикселийн дэлгэцийн хэмжээтэй

Алхам 3: Төслийн нөөц

Төслийн нөөц
Төслийн нөөц
Төслийн нөөц
Төслийн нөөц
Төслийн нөөц
Төслийн нөөц

Та бүх нөөцийг (жишээ нь, зураг, фонт) өөрийн төсөлд оруулж, интерфэйсийг өөрийн хэрэгцээнд нийцүүлэн зохион бүтээх хэрэгтэй.

Үсэг

Тодорхой фонт ашигладаггүй, гэхдээ хэрэв та дэлгэц дээр текст бичихийг хүсч байвал Nextion Editor дээр фонт үүсгэх шаардлагатай болно.

A) Хэрэгслүүд → Фонт үүсгэгч

  1. Үсгийн өндрийг сонгоно уу (жишээ нь. 16).
  2. Фонтын кодын төрлийг сонгоно уу (жишээ нь. Iso-8859-2)
  3. Болд үсгээр бичихийг хүсч байгаа эсэхээ сонгоно уу
  4. Ашиглахыг хүссэн фонтоо сонгоно уу (жишээ нь. Arial)
  5. Зайг сонгоно уу (жишээ нь. 0)
  6. Эцэст нь энэ фонтод өвөрмөц нэр өг (жишээ нь Arial_16)
  7. Цонхны баруун доод буланд байгаа "Үсэг үүсгэх" товчийг дарна уу.

Үсэг үүсгэх товчлуурыг дарсны дараа *.zi өргөтгөлийг ашиглан фонтыг хадгалах боломжтой бөгөөд "Үүсгэсэн фонтыг нэмэх үү?" Та автоматаар асуух болно. төсөл рүү. Хэрэв та фонтонд сэтгэл хангалуун байгаа бөгөөд энэ фонтыг төсөлдөө ашиглахыг хүсч байвал "Тийм" гэж сонгоно уу, үгүй бол "Үгүй" гэж сонгоод дахин эхлүүлнэ үү.

Та фонт оруулах эсвэл оруулахаас өмнө төсөлдөө ямар ч текст нэмэх боломжгүй. Таны төслийн бүх фонтууд фонтын цонхонд харагдах болно.

** Тэмдэглэл: Фонт бүрийг автоматаар индексжүүлдэг тул шаардлагатай бол үсгийн дүрмийг дүрмийн дагуу лавлах боломжтой болно. Үнэн хэрэгтээ таны төсөлд оруулсан бүх нөөцөд дугаар өгч, нэмж оруулсан нөөц бүрт нэгээр нэмэгдүүлдэг. Зарим нөөцийн хувьд та энэ дугаарыг тухайн зүйлийн зүүн талд харж болно. Жишээлбэл Дээрх зураг дээр Courier Font нь 0 гэсэн индекстэй байхад Arial фонт нь 1 гэсэн индекстэй. Хэрэв та нөөцийг устгавал тухайн зүйлийн индексийн дугаар өөрчлөгдөж магадгүй юм.

Алхам 4: Зургийг импортлох

Зураг импортлох
Зураг импортлох
Зураг импортлох
Зураг импортлох

Nextion Enhanced NX4827K043 төхөөрөмж дээр зураг тус бүр 480 x 272 пиксел хэмжээтэй байх ёстой.

Бид одоо дараах зургуудыг Nextion редактор руу импортлох бөгөөд ингэснээр тэдгээрийг төсөлд ашиглах боломжтой болно. Nextion редакторын зүүн доод буланд "Фонт ба зураг" нөөцийн цонх байна.

  1. Зургийн табыг сонгоно уу
  2. Дараа нь "+" дүрсийг сонгоно уу
  3. Энэ нь төсөлд оруулах зургийг сонгох боломжийг танд олгох харилцах цонхыг нээх болно. Та импортлох нэгээс олон зургийг сонгож болно.

Splash Screen -ийн хувьд та хүссэнээрээ ямар ч зураг хийх боломжтой.

Мөн Stepper мотор, төгөлдөр хуурын интерфэйсийн хувьд дээрх зургийг татаж авах боломжтой.

Алхам 5: GUI хийх

GUI хийх
GUI хийх

Нөөц бүр нэмэгдсэн дараалалд үндэслэн ID авах бөгөөд нөөц бүр автоматаар нэр авах болно.

Та нөөц эсвэл объектын нэрийг өөрчилж болох боловч ID -г засах боломжгүй.

Дээр дурдсан шалгуурыг хангахын тулд гурван хуудас хийх болно.

Хуудас нэмэхийн тулд та "хуудасны цонх" дээрээс "Нэмэх" дүрсийг сонгох хэрэгтэй. Нийт 3 хуудас (хуудас0, хуудас1 ба хуудас2) хүртэл хуудсуудаа нэмж оруулаарай.

Алхам 6: Хуудас 0-Splash Screen

Хуудас 0-Splash Screen
Хуудас 0-Splash Screen

Nextion -ийг асаахад дэлгэцийг Stepper Motor Controller -ийн дэлгэцийг харуулахаас өмнө 3 секундын турш харуулна. Дэлгэц үүсгэхийн тулд би дараах алхмуудыг ашигласан.

Дэлгэцийн зургийг 0 -р хуудсанд нэмнэ үү

  • Хуудасны цонхноос "0 -р хуудас" -ыг сонгоно уу
  • Toolbox цонхноос "Зураг" -г сонгоно уу
  • Аттрибут цонхноос "pic" атрибут дээр давхар товшино уу
  • Жагсаалтаас дэлгэцийн дэлгэцийн зургийг сонгоно уу
  • OK товчийг дарна уу

2. 0 -р хуудсанд Таймер нэмнэ

  • Toolbox цонхноос Timer -ийг сонгоно уу
  • Аттрибутын цонхонд байгаа "tim" шинж чанарыг 400 -аас 3000 болгож өөрчил
  • Timer Event -ийн Хэрэглэгчийн код хэсэгт "page1" оруулна уу (0) Энэхүү таймерын үйл явдал нь Nextion -ийг 3 секундын дараа 1 -р хуудас руу шилжүүлэх болно.

Энэхүү таймер үйл явдал нь Nextion -ийг 3 секундын дараа 1 -р хуудас руу шилжүүлэх болно.

Алхам 7: Хуудас 1 - Stepper Motor Controller

Энэ хуудас нь stepper моторын чиглэл, хурдыг хянахад зориулагдсан болно. Чиглэлийн хоёр товчлуур (Зүүн ба Баруун), хоёр товчлуур (Хурд ба Удаан) байх болно. Дараагийн хуудас руу шилжих өөр нэг товчлуур (өөрөөр хэлбэл Stepper Motor Piano page). Эдгээр товчлуурууд нь Nextion өргөтгөлийн самбар дээр зурагдах болно. Өргөтгөх самбарын хүрэлцэх товчлуурууд нь моторыг удирдах өөр аргыг өгөх болно.

Stepper Motor Controller зургийг 1 -р хуудсанд нэмнэ үү

  • Хуудасны цонхноос "page1" -ийг сонгоно уу
  • Toolbox цонхноос "Зураг" -г сонгоно уу
  • Аттрибут цонхноос "pic" атрибут дээр давхар товшино уу
  • Жагсаалтаас "Stepper Motor Controller" зургийг сонгоно уу
  • OK товчийг дарна уу

2. Stepper Motor Controller -ийн зураг дээрх товчлуур бүрийн дээр халуун цэгүүдийг нэмнэ үү

a) Toolbox цонхноос "Hotspot" -ийг сонгоно уу

b) Халуун цэгийг "Зүүн" товчлуурыг хамрахаар чирж, хэмжээг нь өөрчилнө үү

  • Энэ бол "Зүүн товчлуур" дарахад хариу өгөх газар юм.
  • Nextion самбарт байршуулах үед ил тод байх болно

c) Үйл явдлын цонхноос "Touch Press Event" табыг сонгоно уу

d) "Бүрэлдэхүүн хэсгийн ID илгээх" хайрцгийг арилгана уу

e) Үйл явдлын цонхны "Хэрэглэгчийн код" хэсэгт дараах кодыг оруулна уу.

"L" хэвлэх

f) Дараах процессыг ашиглан халуун цэгийн объектын нэрийг "Зүүн" болгож өөрчилнө үү.

  • Атрибутын цонхноос objname -г сонгоод "m0" текстийг "Зүүн" болгож өөрчилнө үү.
  • Халуун цэгийн объектын нэрийг өөрчлөх нь заавал байх албагүй; гэхдээ энэ нь дараа нь туслах болно.

g) Дараах дарааллаар болон доорх хүснэгтийн дагуу бусад товчлууруудын хувьд 2a-2f алхамуудыг давтана

  • Зөв
  • Илүү хурдан
  • Удаан
  • Дараачийн

"L" үсгийн аравтын бутархай ASCII код нь 76 байх тул Nextion Enhanced дэлгэц нь L үсгийг Arduino руу "L" хэвлэх командыг ашиглан илгээхэд Arduino 76 дугаарыг хүлээн авах болно. Баруун товчлуур дарагдсан үед 82 дугаарыг авах болно гэх мэт. "Дараагийн" товчлуур нь Arduino руу юу ч дамжуулдаггүй бөгөөд Nextion Enhanced дэлгэц дээрх дараагийн интерфэйс рүү шилжихэд л товчлуурын хэрэглэгчийн код өөр байдаг.

3. Товчлууруудыг Өргөтгөх самбар дээр буулгана уу

a) Хуудасны цонхноос "page0", дараа нь "page1" -ийг сонгоно уу

b) Үйл явдлын цонхноос "Үйл явдлыг урьдчилан эхлүүлэх" табыг сонгоно уу

c) Үйл явдлыг урьдчилан эхлүүлэх табын "Хэрэглэгчийн код" талбарт дараах кодыг оруулна уу.

  • cfgpio 5, 1, Зүүн
  • cfgpio 2, 1, Баруун
  • cfgpio 4, 1, хурдан
  • cfgpio 3, 1, Удаан
  • cfgpio 1, 1, Дараа нь

*** Анхаарна уу: cfgpio болон хажууд байгаа дугаарын хооронд нэг зай байгаа боловч мөр бүрт өөр зай байхгүй байна. Хэрэв та нэмэлт хоосон зай оруулбал энэ нь эмхэтгэхгүй болно. Энэ код нь өргөтгөлийн самбар дээрх товчлууруудыг 1 -р хуудасны халуун цэгийн объектуудтай харьцуулдаг. Жишээлбэл, өргөтгөлийн самбар дээрх Зүүн товчлуур (IO5) дарагдсан үед m0/Left hotspot -той холбоотой үйлдэл эсвэл үйл явдлыг дуурайдаг. Энэ тохиолдолд "L" (76) утгыг Arduino руу илгээх болно.

IO дугаарыг өргөтгөх самбар дээрх хаалтанд тэмдэглэв.

Алхам 8: Хуудас 2 - Stepper мотор төгөлдөр хуур

Хуудас 2 - Stepper мотор төгөлдөр хуур
Хуудас 2 - Stepper мотор төгөлдөр хуур
Хуудас 2 - Stepper мотор төгөлдөр хуур
Хуудас 2 - Stepper мотор төгөлдөр хуур

Түүний интерфэйс нь төгөлдөр хуур шиг харагдахаар бүтээгдсэн бөгөөд надад stepion моторыг хянах боломжийг олгодог бөгөөд ингэснээр Nextion дэлгэц дээр дарсан товчлууртай ижил тэмдэглэл гаргадаг. Stepper мотор нь тодорхой давтамжтай эргүүлэх замаар тэмдэглэл гаргах болно.

1. Stepper Motor Piano зургийг 2 -р хуудсанд нэмнэ үү.

  • Хуудасны цонхноос "хуудас2" -ыг сонгоно уу
  • Toolbox цонхноос "Зураг" -г сонгоно уу
  • Аттрибут цонхноос "pic" атрибут дээр давхар товшино уу
  • Жагсаалтаас "Stepper Motor Piano" зургийг сонгоно уу
  • OK товчийг дарна уу

2. Stepper Motor Piano дүрс дээрх товчлуур бүрийн дээр халуун цэгүүдийг нэмнэ үү

a) Toolbox цонхноос "Hotspot" -ийг сонгоно уу

b) Халуун цэгийг "А" товчлуурыг хамрахаар чирж, хэмжээг нь өөрчил. Энэ бол "А товчлуур" дарахад хариу өгөх хэсэг бөгөөд Nextion самбарт байршуулах үед ил тод байх болно.

c) Үйл явдлын цонхноос "Event Press Event" табыг сонгоно уу.

d) "Хэрэглэгчийн код" хэсэгт дараахь зүйлийг оруулна уу

хэвлэх 1

e) Дараах хүснэгтийн дагуу бусад түлхүүр тус бүрийн хувьд 2a-2d алхамуудыг давтана.

** Тухайн товчлуурыг дарахад Nextion Enhanced самбар нь хэвлэгдсэн дугаарыг дамжуулж, дараа нь гурван 0x00 утгыг дамжуулна. Төгсгөлийн утгыг үл тоомсорлож болно.

3. "Буцах" товчлуур нь Nextion Enhanced самбар дээрх өмнөх интерфэйс рүү буцах боломжийг надад олгоно.

a) Дараах процессыг ашиглан буцах товчлуурын халуун цэгийг үүсгэнэ үү.

  1. Toolbox цонхноос Hotspot -ийг сонгоно уу
  2. "Буцах" товчлуур дээр халуун цэгийг зөөх/хэмжээг өөрчлөх

b) Event цонхыг сонгоно уу.

c) "Touch press event" табыг сонгосон эсэхийг шалгаарай

d) Хэрэглэгчийн код хэсэгт хуудасны хуудас1 гэж бичнэ үү

Алхам 9: Дебаг хийх

Дебаг хийх
Дебаг хийх
Дебаг хийх
Дебаг хийх

Nextion Editor -ийн сайн тал нь та самбар дээр байршуулахаасаа өмнө интерфэйсийн ажиллагааг туршиж үзэх боломжтой юм.

  1. Ажлын талбар дээрх хадгалах товчийг дарж төслийг хадгална уу
  2. Дараа нь хөрвүүлэх товчийг дарна уу
  3. Дараа нь дибаг хийх товчийг дарна уу.

Nextion эмулятор цонх гарч ирнэ. Энэ цонх нь Nextion файлыг самбар дээр байршуулсны дараа Nextion модулийн нэгэн адил хариу өгөх ёстой. Энэхүү эмулятор нь таны интерфэйсийг туршиж үзэх, хүлээгдэж буй байдлаар харагдаж, ажиллаж байгаа эсэхийг шалгах гайхалтай арга юм. Би интерфэйс (үүд) -д сэтгэл хангалуун байсныхаа дараа эмхэтгэсэн Nextion файлыг SD карт руу шилжүүлэв.

  1. Эмхэтгэх товчийг дарна уу
  2. Файл → Бүтээх хавтсыг нээнэ үү
  3. Төслийн нэртэй ижил нэртэй *.tft файлыг сонгоно уу.
  4. Үүнийг бичил SDHC карт руу хуулж ав
  5. SDHC картыг Nextion дэлгэц дээрх SD картны үүрэнд оруулна уу
  6. Nextion самбарыг асаана уу

Файл Nextion самбарыг анивчихыг хүлээгээд иймэрхүү мессежийг харах болно.

Дараагийн алхам бол Nextion самбарыг унтрааж, SDHC картыг салгах явдал юм.

Алхам 10: ARDUINO SETUP

Nextion Enhanced дэлгэц бэлэн болсон бөгөөд одоо Arduino -ийн ээлж ирлээ. Arduino нь Nextion Enhanced дэлгэцээс цуваа мессеж хүлээн авах, хүлээн авсан үсэг эсвэл тоон дээр үндэслэн stepper моторыг удирдахаар програмчлагдсан болно. Nextion самбараас дамжуулж буй өвөрмөц үсэг эсвэл тоонууд нь Arduino -д ямар товчлуур дарагдаж байгааг ойлгох боломжийг олгодог бөгөөд тодорхой тоормосны хөдөлгүүрийн үйлдлийг гүйцэтгэхийн тулд кодын урсгалыг хянахад эдгээр тоо эсвэл үсгийг ашигладаг.

SoftwareSerial номын сан нь Arduino болон Nextion Enhanced дэлгэцийн хооронд цуваа холболтыг идэвхжүүлэхэд ашиглагддаг. AccelStepper номын санг stepper моторын хяналтыг хялбаршуулахад ашигладаг.

Хөдөлгүүрийн дээд ба доод хурдыг тохируулах, зарим товчлуурыг урьдчилан тохируулах. Nextion дэлгэцийн эхний интерфэйсийг ашиглан моторыг "тааруулах" боломжтой. Та хүссэн товчлууртаа хүрэх хүртэл хөдөлгүүрийг илүү хурдан эсвэл удаан эргүүлэх замаар үүнийг хийж болно. Энд iTunes апп дэлгүүрийн "Tuner T1 Free" аппликейшн нь мотор түлхүүрийн тэмдэглэл хийж байгааг тодорхойлоход ашиглагддаг. Мотор тодорхой тэмдэглэл гаргах үед би цуваа дэлгэцийн цонхонд хэвлэгдсэн stepper моторын хурдыг бичдэг байсан. Хөдөлгүүрийн хурдыг нэмэгдүүлэх эсвэл бууруулах бүрт Arduino код нь хурдыг цуваа дэлгэцийн цонхонд хэвлэдэг. Дараа нь би эдгээр хурдыг ашиглан Arduino код дээрх тэмдэглэл массивыг шинэчилж байна. Тэмдэглэл массив нь төгөлдөр хуур дээрх хувь хүний тэмдэглэлтэй тохирох stepper моторын хурдыг агуулдаг. Nextion дэлгэц нь үндсэндээ Arduino дээрх тэмдэглэлийн массиваас тоглох тэмдэглэлийн индексийн дугаарыг илгээдэг бөгөөд ингэснээр моторыг 16 өөр хурдтайгаар эргүүлэхэд шаардлагатай кодыг хялбаршуулдаг.

Алхам 11:+схемийг эцэслэх

Төгсгөл+схем
Төгсгөл+схем
Төгсгөл+схем
Төгсгөл+схем
Төгсгөл+схем
Төгсгөл+схем
Төгсгөл+схем
Төгсгөл+схем

Бүх самбарыг унтраасан тохиолдолд дараагийн алхам бол шаардлагатай бүх техник хангамжийн холболтыг Arduino руу хийх явдал юм. Анхаарах хоёр үндсэн хэсэг байдаг:

  • Stepper моторын жолооч ба мотор
  • Nextion Сайжруулсан самбар.

Та гадны тэжээлийн эх үүсвэр ашиглан stepper мотор болон Nextion Enhanced хавтанг хоёуланг нь тэжээх хэрэгтэй. Stepper мотор жолоочийн самбар нь өөрөө Arduino -ээр ямар ч асуудалгүй ажилладаг байсан боловч жинхэнэ stepper моторт гаднаас цахилгаан хангамж шаардлагатай болно. Nextion Enhanced самбар нь Arduino -ийн аюулгүйгээр хангаж чадахаас илүү их гүйдэл шаарддаг тул гаднаас цахилгаан тэжээл авах шаардлагатай болдог.

Ашигласан гадаад цахилгаан хангамжийг анхаарч үзээрэй. Би төслийн эрчим хүчний хэрэгцээг хангах хангалттай том цахилгаан хангамжтай гэдгээ шалгаад холбогдох шаардлагын хүснэгтийг ашиглан эдгээр шаардлагыг тодорхойлоход тусалсан. Хэрэв та энэ төслийг давтахаар төлөвлөж байгаа бол мотор, мотор жолооч, Nextion дэлгэцийнхээ эрчим хүчний тодорхой шаардлагыг анхаарч үзэх хэрэгтэй. Arduino нь зөвхөн 5V зүүгээр 400 мА гүйдэл өгөх боломжтой. Бүх зүйл холбогдсоны дараа би Nextion дэлгэцийг асааж, дараа нь Arduino -г асаасан. Stepper мотор автоматаар эргэлдэж эхэлдэг. Би моторын чиглэл ба/эсвэл хурдыг өөрчлөхийн тулд анхны интерфэйсийг ашигласан. Arduino код дээр тохируулсан хамгийн дээд ба хамгийн бага хурдыг анхаарч үзээрэй. Дараа нь би Nextion товчлуурыг ашиглан Nextion Enhanced дэлгэц дээрх хоёр дахь интерфэйс рүү шилжсэн. Хоёр дахь интерфэйс нь төгөлдөр хуур шиг харагдаж байна. Төгөлдөр хуурын дэлгэц дээрх товчлуурыг дарахад мотор миний дарсан тэмдэглэлтэй таарч хурдыг өөрчилдөг.

Одоо боллоо.

Танд таалагдана гэж найдаж байна

Зөвлөмж болгож буй: