Բովանդակություն:

Ձեռքի Arduino Pong վահանակ ՝ 6 քայլ (նկարներով)
Ձեռքի Arduino Pong վահանակ ՝ 6 քայլ (նկարներով)

Video: Ձեռքի Arduino Pong վահանակ ՝ 6 քայլ (նկարներով)

Video: Ձեռքի Arduino Pong վահանակ ՝ 6 քայլ (նկարներով)
Video: Arduino լուսադիոտներով աշխատանք 2024, Հունիսի
Anonim
Ձեռքի Arduino Pong վահանակ
Ձեռքի Arduino Pong վահանակ

DFRobot- ը վերջերս դիմեց ինձ ՝ ցանկանալով օգտագործել իրենց հատուկ Arduino Nano տախտակը և OLED- ը: Սկզբում ես ուզում էի ստեղծել խելացի հեծանիվ, և այն կառուցեցի ամբողջությամբ: Բայց, ցավոք, Նանոն չափազանց թույլ էր վազելու և պահելու համար անհրաժեշտ հսկայական ուրվագիծը: Այսպիսով, ես որոշեցի վերանայել իմ նախորդ նախագծերից մեկը ՝ Neopixel մատրիցան, որը վարում էր պոնգյան խաղ: Ես ուզում էի դրա փոխարեն դյուրակիր դարձնել, և 1.7 դյույմանոց OLED- ը կատարյալ էկրան կդարձներ:

Մասերի ցանկ.

  • Արդուինո նանո
  • OLED
  • Խոսնակ

Քայլ 1: Տեսանյութ

Image
Image

Քայլ 2: Խաղի ձևավորում

Խաղի ձևավորում
Խաղի ձևավորում

Պոնգի այս խաղի համար ես ուզում էի այն համեմատաբար պարզ պահել, ինչը նշանակում էր ոչ համակարգչով վերահսկվող թիակով կամ շքեղ գնդակի արտացոլման ալգորիթմներ: Հիմնականում կա մեկ թիավարություն, որը օգտագործողը կարող է շարժվել վեր կամ վար, և եթե գնդակը բախվի թիակին, նրա x առանցքի վեկտորը կշրջվի: Ամեն անգամ, երբ գնդակը դիպչում է, հնչում է մի ձայն: Երբ խաղային սարքը միացված է, էկրանին հայտնվում է խաղի անվանումը և հրահանգները: Բացի այդ, մայրիկս ստեղծեց մի փոքրիկ թեմա, որը պտտվում է հետին պլանում մինչև վերևի կոճակը սեղմելը:

Քայլ 3: Խաղային սարքի ձևավորում

Խաղային սարքի նախագծում
Խաղային սարքի նախագծում
Խաղային սարքի նախագծում
Խաղային սարքի նախագծում
Խաղային սարքի նախագծում
Խաղային սարքի նախագծում
Խաղային սարքի նախագծում
Խաղային սարքի նախագծում

Իմ CAD ծրագիրը Fusion 360 է, ուստի ես որոշեցի օգտագործել այն իմ պոնգ խաղային սարքը նախագծելու համար: Ես սկսեցի նախագծել օգտագործվող յուրաքանչյուր բաղադրիչ ՝ OLED, Arduino Nano և բարձրախոս: Այս կերպ ես կարող եմ հստակ տեսնել, թե որտեղ և ինչպես յուրաքանչյուր բաղադրիչ պետք է տեղավորվի պարիսպի ներսում: Այնուհետև ես Nano- ն և PCB- ն դրեցի պատյանի հետևի մասում, իսկ OLED- ն ՝ դրա վերևում: Հաջորդը այն հարցն էր, թե որտեղ դնել բարձրախոսը և կոճակները: Ես որոշեցի, որ 3W բարձրախոսը կարող է հայտնվել էկրանի ներքևում (վերևից նայելով դրան), և դա նաև պահանջում էր «գրիլ» դնել բարձրախոսի վրա, որպեսզի ձայնը չլսվի: Վերջապես, ես երկու կոճակ ավելացրեցի ձախ կողմում ՝ կառավարման տարրեր ավելացնելու համար:

Քայլ 4: Սարքի կառուցում

Սարքի կառուցում
Սարքի կառուցում
Սարքի կառուցում
Սարքի կառուցում
Սարքի կառուցում
Սարքի կառուցում

Սկսեցի յուրաքանչյուր մասի 3D տպագրությամբ ՝ բաղկացած ստորին կեսից, վերին կեսից և 2 կոճակից: Հաջորդը ես մի վերնագիր կպցրեցի 4x6 սմ չափի և այն լարով կապեցի Նանոյի հետ: Սա ոչ միայն թույլ է տալիս OLED- ն հեշտությամբ հեռացնել, այլև այն բարձրացնում է Arduino Nano- ից: Ստուգեք սխեման էլեկտրագծերի մասին: Այնուհետև ես միացրեցի երկու կոճակները, ինչպես նաև միկրո USB- ի պարզ անջատիչ տախտակը `էներգիայի համար: Բանախոսը նույնպես կցված էր և դրեց այն իր ճիշտ դիրքում: My Fusion 360 դիզայնը թույլ է տալիս 3 մմ հաստոցների պտուտակներ պահել OLED- ը, բարձրախոսը և միացնել սարքի երկու կեսերը: Բայց, ես պետք է դրանք ճշգրիտ դարձնեի, ուստի ես իմ փորված մամլիչով 8 անցք բացեցի ՝ 2 բարձրախոսի համար, 2 էկրանի համար և 4 ներքևում: Ֆայլերի համար կարող եք այցելել Thingiverse հղումը:

Քայլ 5: Խաղի ծրագրավորում

Պարզ ինտերֆեյսի օգտագործումը կենսական նշանակություն ունեցավ ծրագիրը փոքր պահելու համար: Սկսեցի ավելացնելով մի քանի գրադարան ՝ Adafruit_GFX, Adafruit_SSD1351 և Arduino Timer գրադարանը: Հաջորդը ես սահմանեցի իմ կապումներն ու գույները, ինչպիսիք են OLED- ի կապումներն ու 16 բիթանոց գույնի սահմանումները: Իմ ծածկագրում կան նաև խաղի եղանակը փոխելու 4 եղանակ, ինչպիսիք են թիակի չափերը փոխելը և գնդակի արագ շարժումը: Այնուհետև գոյություն ունի մի հատված, որտեղ յուրաքանչյուր փոփոխական սահմանվում է, ներառյալ հաշիվը և տարբեր կոորդինատները: Ամեն անգամ, երբ սարքը սնուցվում է գնդակի պատկերով և էկրանին հայտնվում է ինչ -որ տեքստ, ինչպես նաև փոքրիկ թեմայի երգ, որը ավելի վաղ սահմանված է ծածկագրում: Երբ խաղը սկսվում է, ստեղծվում է երկու ժամաչափ, մեկը `թարմացնող թիակը, իսկ մյուսը` գնդակը: Ամեն անգամ, երբ գնդակի դիրքը թարմացվում է, նրա կոորդինատները ստուգվում են `համոզվելու համար, որ այն չի անցնում էկրանի սահմանից կամ դիպչում է թիակին: Ամեն անգամ, երբ այն ցատկում է, կամ նրա x կամ y առանցքը շրջվում է, և հնչում է փոքր տոն: Դիտեք տեսանյութը այս գրառման սկզբում `տեսնելու, թե ինչպես է խաղը խաղում:

Քայլ 6: Պոնգ խաղալ:

Պոնգ խաղալ
Պոնգ խաղալ
Պոնգ խաղալ
Պոնգ խաղալ
Պոնգ խաղալ
Պոնգ խաղալ
Պոնգ խաղալ
Պոնգ խաղալ

Խաղի անվանումն է հնարավորինս նվազագույն միավոր ստանալը: Timeամկետ չկա, ուստի այն շատ հաճելի է և նույնիսկ տրանս հաղորդող: Անհրաժեշտ է միայն երկու կոճակներից մեկը սեղմել ՝ թիակը վեր կամ վար տեղափոխելու համար: Հնարավոր է նաև ավելացնել Arduino's EEPROM- ի միջոցով ամենաբարձր գնահատականը պահելու եղանակը:

Խորհուրդ ենք տալիս: