Агуулгын хүснэгт:
- Алхам 1: Хяналтын товчлууруудыг Arduino руу холбоно уу
- Алхам 2: Ардуино Леонардог кодлох:
- Алхам 3:
- Алхам 4:
- Алхам 5:
- Алхам 6:
- Алхам 7:
- Алхам 8: Эв нэгдэл дэх кодлох хөдөлгөөн:
- Алхам 9:
- Алхам 10:
- Алхам 11:
- Алхам 12:
- Алхам 13:
- Алхам 14: Гэрлийг Arduino руу залгаарай
- Алхам 15: Arduino Uno -г кодлох
- Алхам 16:
- Алхам 17:
- Алхам 18: Гэрлийг кодлох тал Эв нэгдэл:
- Алхам 19:
- Алхам 20:
- Алхам 21:
- Алхам 22:
- Алхам 23:
- Алхам 24:
Видео: Arduino тоглоомын хянагч нь таны эв нэгдлийн тоглоомд хариу үйлдэл үзүүлдэг гэрэл: 24 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:03
Эхлээд би энэ үгийг үгээр бичсэн. Энэ бол би анх удаа зааварчилгааг ашиглаж байгаа зүйл юм, ийм үед би кодыг бичээрэй гэж хэлээрэй.
Энэ төсөлд би 2 ардуиног ашиглан 2 тусдаа бит код ажиллуулдаг, учир нь үүнийг ганцхан програмтай ажиллахад асуудал гардаг.
Эдгээр нь Юно ба Леонардо нар юм
Энэ төслийг хэрэгжүүлэхэд танд хэрэгтэй зүйл бол энэ юм.
· 7 товчлууртай
· 23 холбогч утас
· 1 arduino Leonardo + usb кабель
· 4 резистор · 4 LED
· 1 arduino uno + USB кабель
· 2 талхны самбар
Алхам 1: Хяналтын товчлууруудыг Arduino руу холбоно уу
Энэ хэсгийг холбохын тулд танд юу хэрэгтэй вэ:
· 7 товчлууртай
· 14 холбогч утас
· 1 arduino Leonardo + usb кабель
· Талхны самбар
Товчлуурууд нь холбоход маш энгийн боловч зураг хэлбэрээр харуулахын тулд маш хурдан эмх замбараагүй байдал үүсгэж болзошгүй юм.
· Та эхлээд товчлууруудыг дээрх зураг дээр тэмдэглэсэн байрлалд байрлуулна уу.
· Хоёрдугаарт, та arduino Leonardo дээрх газрын үүрнээс үсрэгчийг талхны хасах эгнээнд холбохыг хүсч байна.
· Одоо та хасах эгнээний аль ч өнцгөөс товчлуурын баруун товчлууртай нийцсэн эгнээ рүү холбогч холбоно уу. энэ нь түүнд хүч өгөх болно.
· Дараа нь та товчлуурынхаа зүүн зүүтэй тохирч байгаа эгнээнээс холбогч утсыг Леонардогийн дижитал оролт руу залгахыг хүсч байна. Энд байгаа товчлууруудын хувьд би 2 - 3 - 4 - 5 - 6 - 7 - 8 үүрийг ашигласан
Би зөвхөн зураг дээр 8 -р оролт руу орох утсыг харуулсан, учир нь бүх утаснууд бие биенээ огтлолцож байгааг харуулах нь маш эмх замбараагүй зураг болно.
Алхам 2: Ардуино Леонардог кодлох:
Тиймээс би үүнд Леонардог ашиглаж байгаа шалтгаанаа хэлье. Учир нь энэ нь тодорхой чиптэй тул Uno нь компьютерийг USB оролтын төхөөрөмж гэж танихгүй. Яг л гар шиг болно. Энэ нь бидэнд энэ төслийн програмист болох бидний амьдралыг үнэхээр хөнгөвчлөх зүйлийг хийх боломжийг олгодог. Гарын эмуляци. Бид хянагч дээрх товчлуурыг дарж байхдаа гар дээрх зарим товчлуурыг дарж байна гэж компьютерийг хуурах болно.
Одоо би кодыг алхам алхамаар бодож үзэхийг танд хэлэх болно.
Нэгдүгээрт, дээд хэсэгт бид Keyboard.h. Энэ нь бидний кодонд ашиглах гарын функцийг ашиглах боломжийг бидэнд олгоно.
Алхам 3:
Дараа нь бид дижитал оролтын үүрийг тодорхойлох хэрэгтэй
Товчлуур бүрийн хувьд Леонардо.
Би бас дууриах гэж буй түлхүүрийнхээ нэрээр нэрлэсэн.
Алхам 4:
Тэндээс бид тохиргооны функц руу ордог. Энэ нь хэлдэг
arduino эхлэхэд юу хийдэг вэ.
Эхлээд бид Serial.begin гэж бичдэг бөгөөд энэ нь цуваа портыг нээж өгөгдлийн хурдыг 9600 bps болгож тохируулна
мөн бид бүгдийг оролт гэж нэрлэсэн голтой гэж тодорхойлдог.
Алхам 5:
Эцэст нь бид давталтынхаа функцийг бичдэг
товчлуурууд дарагдаж байгаа бөгөөд үүнд хэрхэн хариу өгөхийг arduino -д хэлж байна.
Эхлээд бид Keyboard.begin гэж бичдэг бөгөөд энэ нь гарын функцийг ашиглан биднийг хайх хэрэгтэй гэдгийг arduino -д хэлэх болно
Алхам 6:
Дараа нь товчлуур бүрийн хувьд иймэрхүү байдлаар if/else мэдэгдэл бичдэг
Энд миний arduino -д хэлсэн зүйл бол хэрэв хянагч дээр миний зүүн товчлуур дарагдсан бол компьютер биднийг "а" товчлуур дарж байна гэж бодоорой, хэрэв тийм биш бол бид түлхүүрээ орхисон гэж бодоорой.
Та үндсэндээ кодын блокыг хянагчийнхаа товчлуур бүрт давтана. хувьсагч бүрийн өөрчлөлт болон хувьсагчийн дууриах шаардлагатай түлхүүрүүд
Алхам 7:
Бидний компьютерт энд дарна гэж хэлсэн түлхүүрүүд нь W - A - S - D юм
Энэ нь компьютер тоглоом болон E-Q-дээрх хөдөлгөөний стандарт бөгөөд энэ кодон дахь "" товчлуурууд нь миний тоглоомыг авах, унтраах, галлахад ашигладаг товчлуурууд юм. Эдгээрийг тоглоом/хянагчдаа илүү тохиромжтой гэж бодож байгаа түлхүүр болгон өөрчилж болно.
Эцэст нь бид arduino -д Keyboard.end -ийг шалгахыг зогсоохыг хэлье
Алхам 8: Эв нэгдэл дэх кодлох хөдөлгөөн:
Юуны өмнө би үүнийг 2д тоглолтонд зориулж хийж байгаагаа хэлье
Таны үзэх гэж буй жишээнүүд үүнд зориулагдсан болно. Голчлон би вектор2 -ийг хаана ашигладаг вэ гэсэн үг, хэрэв та 3d дээр ажиллаж байгаа бол вектор3 -ийг ашиглах болно. Учир нь та 3d дахь хөдөлгөөний нэмэлт хэмжээсийн талаар санаа зовох хэрэгтэй болно.
Ардуино талд гарны эмуляцыг ашиглах болсон шалтгаан бол Юнитид бидний ашиглаж болох гар дээрх товчлууруудыг таних зориулалттай зүйл байгаа явдал юм.
Хэрэв та төслөө нэгдмэл байдлаар нээвэл Edit -> Project settings -> Input руу орно уу. Та байцаагчдаа оролтын менежерийг асааж байгааг харж болно. Хэрэв та Axes дээр дарвал та одоо бидний хийж байгаа шиг компьютер хянагчдад ашигладаг олон тооны оролтын нэр нээгдэж байгааг харж болно. Бидний ашиглах гэж буй 2 оролт нь хэвтээ ба босоо байдлаар хийгдсэн бөгөөд үүнийг та W-A-S-D гэж таамаглаж байна.
Эхлээд та эв нэгдлийн дүр зураг дээр таны тоглогч болох объект хийхийг хүсч байна. Миний хувьд энэ хөгжилтэй бяцхан залуу. Энэ нь танд хэрэгтэй зүйл байж болох ч миний тоглоомын зорилгоор би энэ залууг бүтээсэн.
Алхам 9:
Та энэ тоглогчид 2 зүйл өгөхийг хүсч байна. 2d ба
a Rigidbody 2d, тэдгээрийг дээрх зураг шиг болгоорой.
Алхам 10:
Дараа нь та өөрийн төслийн хавтас руу орж a үүсгэхийг хүсч байна
C# скрипт. Би үүнийг PlayerMovement гэж нэрлэсэн.
Энэ скрипт дээр та 2 хувьсагчийг тодорхойлох болно. Миний MoveSpeed гэж нэрлэдэг олон нийтийн хөвөгч. Энэ нь таны хэр хурдан явахыг тодорхойлох болно. Мөн би RigidPlayer гэж нэрлэдэг хувийн Rigidbody2D. Энэ нь таны тоглогчдыг хайж олох болно.
Эв нэгдлийн редактор дээрээ очиж тоглуулагч дээрээ дарж энэ шинэ скриптийг байцаагч руу чирж, moveSpeed -ийн тооны утгыг тохируулахаа бүү мартаарай.
Алхам 11:
Одоо Start () дээрээ та нэг л зүйл хийхийг хүсч байна
Таны RigidPlayer таны төлбөр төлөгч rigidbody 2d -ийг олох боломжтой эсэхийг шалгаарай. Та үүнийг дараах кодын мөрөөр хийдэг.
Алхам 12:
Дараа нь бид шинэчлэлт рүү шилждэг (). Энд бид хаашаа явж байна
тоглогчийг хөдөлгөх.
Бид үүнийг хэвтээ (AD) ба босоо (SW) сөрөг ба эерэг түлхүүрүүдийг хараад үүнийг тоглогчоо түлхэхийн тулд хатуу бие 2d дээрээ тавих гэж байгаа тул үүнийг тоон болгон ашиглах маш энгийн if хэллэгээр хийдэг. чиглэл. Энэ тоог moveSpeed хувьсагчаар үржүүлэх болно.
Алхам 13:
Эцэст нь та тоглогч хэзээ хөдлөхөө болихыг хүсч байна
та юу ч дардаггүй. Энэ нь танд таалагдаж байна:
Хэрэв та өөр 3 товчлуурыг өөр зүйлд ашиглахыг хүсч байвал if if ашиглан: if (Input. GetKeyDown (Keycode. Space))
хоосон зайны оронд зайны оронд бусад товчлууруудад ашиглахаар сонгосон бусад түлхүүрүүдийн үсгийг оруулна уу.
Алхам 14: Гэрлийг Arduino руу залгаарай
·
Энэ хэсгийг холбохын тулд танд юу хэрэгтэй вэ:
· 9 холбогч утас
· 4 эсэргүүцэл
· 4 LED
· 1 arduino uno + USB кабель
· Талхны самбар
Гэрлийг холбох ажлыг Uno -ээр дамжуулан хийх болно.
Энэ нь дээрх зураг шиг харагдах болно.
Та резисторыг LED -ийн урт талд холбоно. Дараа нь та тоон зүү тооноос холбогчийг резистор руу холбоно уу. Энэ тохиолдолд би дижитал зүү 9 -10 -11 -12 -ийг ашигласан бөгөөд эдгээр тоонууд нь бид дэнлүүний код руу ороход хамааралтай болно.
Тэндээс та arduino Uno дээрх газрын үүрнээс холбогчийг самбар дээрх хар утсан дээрх зурган дээрх утсан дээр холбохыг хүсч байна.
Дараа нь та 4 холбогчийг LED тус бүрийн богино үзүүрт оруулахыг хүсч байна
Алхам 15: Arduino Uno -г кодлох
За, эхлээд бид хувьсагчаа дахин тодорхойлох болно
Тиймээс эхлээд бид гэрэлд ямар дижитал оролтыг ашиглаж байна. Тэгээд бид myCol нэртэй char хийх гэж байна [20]
Алхам 16:
Дараа нь тохиргоонд бид Serial.begin -ийг дахин хийхийг хүсч байна. Бидний бүх LED гаралтыг асааж, асаах үед бүгдийг нь унтраа.
Алхам 17:
Эцэст нь та өөрийн давталтын функцийг бичихийг хүсч байна.
Энэ нь Arduino -ийг хоёр үйл явдлын нэг болох хүртэл цувралаар орж ирж буй өгөгдлийг уншихад хүргэнэ. Аль нэг шугамын тэжээлийн тэмдэгт илэрсэн; Энэ нь lf -ээр тодорхойлогддог бөгөөд үүнийг 10 гэж тохируулсан бөгөөд эхний аргумент эсвэл тодорхой хэмжээний байтыг уншсан болно. Энэ бол гурав дахь аргумент бөгөөд энэ жишээг зөвхөн нэг байтаар тохируулсан болно. Өгөгдөл нь myCol хувьсагч дээр хадгалагддаг бөгөөд үүнийг char гэж тохируулсан бөгөөд 20 гэсэн хязгаартай байдаг. ReadBytesUntil хүртэл энэ бол хоёр дахь аргумент юм. Эсвэл үүнийг тайлбарлах өөр нэг арга бол Serial.readBytesUntil (terminatorCharacter, buffer, byteLimit);
If мэдэгдэл нь эв нэгдэл дохио өгөхөд тодорхой гэрэл асдаг эсэхийг шалгах болно. Энэ тохиолдолд би 4 өөр өнгийн гэрэлтэй болсон тул би ногоон гэрлийг g, цэнхэр LED -ийг асаах, улаан LED -ийг асаах, шар LED -ийг асаахын тулд эв нэгдлийг бий болгодог.
Алхам 18: Гэрлийг кодлох тал Эв нэгдэл:
Үүнийг хийхээс өмнө 2 зүйлийг анхаарч үзээрэй.
1. arduino кодлох програм дээрээ Tool -> Port -> руу очоод аль COM таны uno асаалттай байгааг шалгаарай. Миний хувьд түүний COM3 (энэ нь кодонд чухал байх болно)
2. эв нэгдэлтэйгээр Засварлах -> Төслийн тохиргоо -> Тоглогч руу очоод бусад тохиргоон дээр дарж Api нийцтэй байдлын түвшин рүү очоод. NET 2.0 дэд сүлжээнээс зүгээр л. NET 2.0 болгон солино уу.
За ингээд боллоо. Үүнд орцгооё.
Шат шатандаа хулганы баруун товчийг дараад хоосон болгох дээр дарна уу.
Энэ бол бидний хувьд нэг скриптийг хадгалахын тулд таны тоглоомонд байх хоосон тоглоомын объект байх болно. Би энэ объектыг Init гэж нэрлэсэн.
Алхам 19:
Дараа нь төслүүдийнхөө таб руу ороод шинэ C# скрипт үүсгээрэй
мөн үүнийг Илгээх гэж нэрлэдэг.
Таны хийх ёстой хамгийн эхний зүйл бол кодоо ашиглах хэсгүүдэд эдгээр мөрүүдийг бичих явдал юм.
System. IO. Ports ашиглах;
System. Threading ашиглах;
Ингэснээр бид SerialPort хувьсагчийг ашиглаж болно
Алхам 20:
Энэ скриптээр бид дараах хувьсагчдыг гаргах гэж байна. Би COM3 -ийг авсан гэдгийг анхаарна уу, энэ нь бидний энэ алхамын эхэнд хэлэлцсэн шиг өөр байж магадгүй юм. Хэрэв энэ нь 3 -ийг танд зориулж бичсэн тоогоор солино уу.
Алхам 21:
Эхлээд бид скриптийг ашиглахыг OpenConnection гэж хэлдэг
Бидний жаахан бичих функц
Шинэчлэлт нь юу юунаас илүү туршилт юм, гэхдээ хэрэв та үүнийг оруулахыг хүсч байвал эв нэгдэл рүү илгээсэн мессежүүдийг туршиж үзээрэй. Та үүнийг шударгаар үл тоомсорлож болно.
Алхам 22:
Энэ OpenConnection функцийг одоо ашиглаарай. Энэ бол зүгээр л том зүйл
if/else холболтыг нээлттэй байлгадаг бол үүнийг бичсэн шиг хуулаад өг, тэгвэл та зүгээр байх болно.
Алхам 23:
Одоо миний шалгасан arduino кодоос санаж байна уу
эв нэгдэл үүнд хүргэх болно гэсэн дохио юм.
за энд ийм зүйл болдог. Миний хувьд 4 гэрэл асаасан тул би маш энгийн 4 функц бичсэн. Тэд дуудсан үедээ arduino руу захидал илгээдэг. Ардуино энэ үсгийг авмагц тухайн үсэгтэй тохирох гэрлийг асаадаг.
Алхам 24:
Үүнийг яаж ингэж дуудах вэ гэж та гайхаж байж магадгүй юм
функц? Та үүнийг тоглоомондоо ашигладаг бусад c# скриптүүдийн аль нэг дээр энгийн мөрөөр хийх боломжтой. Илгээх. NameFunctionhere ();. Жишээлбэл, миний тоглоомонд тоглогч 4 өнгийн бөмбөрцөг цуглуулах үүрэгтэй. Тиймээс би бяцхан скрипт бичжээ, тэр нэг рүү ойртож, баруун товчлуур дээр дарахад тэр үүнийг авдаг бөгөөд энэ тохиолдолд шар бөмбөрцөг авсан гэсэн дохиог arduino руу илгээдэг. Үүнийг мэдэхийн тулд би шар өнгийн LED -ийг асаах ёстой.
Та энэ ганц мөрийн кодыг хүссэн газартаа байрлуулж болно. Хэрэв та тоглоом эхлэхэд асахыг хүсч байвал үүнийг эхлүүлэх функцэд оруулна уу. Түүнийг үхэхэд гэрэл асахыг хүсч байгаа нь тоглогчдын үхэлд зориулагдсан болно. Бага зэрэг туршиж үзээрэй. Дэлгэцийг эмх цэгцгүй цуглуулах ёстой бөмбөлгүүдийг хянахын тулд би гэрлийг тоглоомын гаднах төрлийн интерфэйсийн элемент болгохоор сонгосон.
Зөвлөмж болгож буй:
Tap Tap Rainbow - 2 тоглогчтой хурдан хариу үйлдэл үзүүлэх тоглоом: 4 алхам (зурагтай)
Tap Tap Rainbow - 2 тоглогчтой хурдан хариу үйлдэл үзүүлэх тоглоом: 2 долоо хоногийн өмнө миний охин солонгын өнгөөр хурдан хариу үйлдэл үзүүлэх гайхалтай санаатай байсан (тэр бол солонгын мэргэжилтэн: D). Энэ санаа надад шууд таалагдсан бөгөөд бид үүнийг хэрхэн жинхэнэ тоглоом болгох талаар бодож эхлэв. Танд солонго байна
Arduino дээр суурилсан DIY тоглоомын хянагч - Arduino PS2 тоглоомын хянагч - DIY Arduino Gamepad ашиглан Tekken тоглох: 7 алхам
Arduino дээр суурилсан DIY тоглоомын хянагч | Arduino PS2 тоглоомын хянагч | DIY Arduino Gamepad ашиглан Tekken тоглох: Сайн байна уу залуусаа, тоглоом тоглох нь үргэлж хөгжилтэй байдаг, гэхдээ өөрийн гараар хийсэн DIY тоглоомын хянагчтай тоглох нь илүү хөгжилтэй байдаг тул бид энэ зааварт arduino pro micro ашиглан тоглоом хянагч хийх болно
Хөлбөмбөгийн хаалгачны хариу үйлдэл үзүүлэх сургалт: Arduino: 5 алхам
Ардуиногийн хөлбөмбөгийн хаалгачны хариу үйлдэл хийх сургалт: Миний Arduino төслийн тайлбар: Дасгалжуулагчийн дасгалжуулагч - Таны авхаалж самбаа, хариу урвалыг зүүн, баруун тийш шалгаарай. урд ба хойд; хөлбөмбөгийн хаалгачын хариу үйлдлийг дуурайх. Янз бүрийн өнгөтэй таван самбарыг газар дээр тавь; нэг цагаан самбар байгаа
Arduino Led Strip -д хариу үйлдэл үзүүлэх зүрхний цохилт мэдрэгч: 5 алхам
Arduino Led Strip -д хариу үйлдэл үзүүлэх зүрхний цохилт мэдрэгч: Миний хийсэн анхны зүйл бол Grove -ийн зүрхний цохилтын мэдрэгчийг Arduino -тойгоо холбоход маш хялбар YouTube дээрх заавар юм. https://www.youtube.com/watch?v=Dzq4tnJ0LjAhttps://www.kiwi-electronics.nl/grove-finger-clip
Хөгжимд хариу үйлдэл үзүүлдэг гэрэл шоуны хүрэм: 7 алхам (зурагтай)
Хөгжимд нөлөөлдөг гэрэл шоуны хүрэм: Энэхүү хичээлийг Йоркийн их сургуулийн хөгжмийн технологи, хэрэглээний электроникийн чиглэлээр төгсөх жилийн төслийнхөө нэг хэсэг болгон бэлтгэсэн болно. Энэ нь электроник сонирхдог хөгжимчдөд зориулагдсан болно. Эцсийн бүтээгдэхүүн нь LED матри байх болно