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

Փայտե LED խաղային ցուցադրում Powered by Raspberry Pi Zero: 11 քայլ (նկարներով)
Փայտե LED խաղային ցուցադրում Powered by Raspberry Pi Zero: 11 քայլ (նկարներով)

Video: Փայտե LED խաղային ցուցադրում Powered by Raspberry Pi Zero: 11 քայլ (նկարներով)

Video: Փայտե LED խաղային ցուցադրում Powered by Raspberry Pi Zero: 11 քայլ (նկարներով)
Video: SCP-261 Пан-мерное Торговый и эксперимент Войти 261 объявление Де + полный + 2024, Նոյեմբեր
Anonim
Փայտե LED խաղային ցուցադրում ՝ Raspberry Pi Zero- ի օգնությամբ
Փայտե LED խաղային ցուցադրում ՝ Raspberry Pi Zero- ի օգնությամբ
Փայտե LED խաղային ցուցադրում Powered by Raspberry Pi Zero
Փայտե LED խաղային ցուցադրում Powered by Raspberry Pi Zero
Փայտե LED խաղային ցուցադրում Powered by Raspberry Pi Zero
Փայտե LED խաղային ցուցադրում Powered by Raspberry Pi Zero

Այս նախագիծը իրականացնում է 20x10 պիքսել WS2812 հիմքով LED էկրան ՝ 78x35 սմ չափսերով, որը կարելի է հեշտությամբ տեղադրել հյուրասենյակում ՝ ռետրո խաղեր խաղալու համար: Այս մատրիցայի առաջին տարբերակը կառուցվել է 2016 թվականին և վերակառուցվել շատ այլ մարդկանց կողմից: Այս փորձառությունն օգտագործվել է բոլոր բարելավումներն ամփոփելու համար ՝ մատրիցայի նոր տարբերակ կառուցելու համար և այժմ բերելու այն instructible.com- ին: Հիմնական նոր գործառույթներն են ՝ փոխարենը Raspberry Pi Zero- ի և Pi A- ի և Arduino- ի թարմացումը և նախորդ խոշոր հսկիչի փոխարինումը Bluetooth gamepad- ով: Նաև ծրագրակազմը բարելավվել է, ներառյալ սիմուլյատորը, որը թույլ է տալիս համակարգչում մշակել ծածկագիրը, նույնիսկ եթե դուք չունեք մուտք դեպի մատրիցային սարքավորում:

Այս LED մատրիցի հատուկ առանձնահատկությունը փայտի հատուկ երեսպատումն է, որն օգտագործվում է լուսադիոդային ծածկույթը ծածկելու և դրանք թաքցնելու համար, երբ LED- ները անջատված են: Սա բարձրացնում է ոչ տեխնոլոգիական մարդկանց ընդունման գործոնը;-) Իհարկե, եթե այս հատուկ երեսպատումը հասանելի չէ ձեր երկրում, ապա LED- ները թաքցնելու համար կարող եք նաև օգտագործել այլ ցրված նյութեր, ինչպիսիք են ակրիլը: Նախատեսվում է նաև ապագայում տրամադրել որոշ առանցքային մասեր `նախագծի վերակառուցումն ավելի դյուրին դարձնելու համար:

Պարագաներ:

  • Raspberry Pi Zero W (որոշ հարմարվողականությամբ, մյուս բոլոր մոդելները նույնպես կաշխատեն)
  • 200 LED/ներ (WS2812B LED շերտեր 30 LED/մ)
  • 4x SPI LED մատրիցային էկրան ՝ MAX7219- ով
  • Մալուխներ
  • Bluetooth խաղային տախտակ (օրինակ ՝ սա Pimoroni- ից)
  • Էլեկտրաէներգիայի մատակարարում 5V առնվազն 5A- ով
  • MDF փայտ լազերային կտրման համար
  • Փայտե երեսպատում կամ դիֆուզիոն ակրիլային ափսե
  • Կոնդենսատոր, դիմադրություն
  • Որոշ պտուտակներ

Քայլ 1: Լազերային կտրում

Լազերային կտրում
Լազերային կտրում
Լազերային կտրում
Լազերային կտրում
Լազերային կտրում
Լազերային կտրում

Մատրիցի հիմքի կառուցվածքը պատրաստված է MDF փայտից ՝ 3 մմ հաստությամբ և կտրված լազերային դանակով: Եթե դուք լազերային դանակ չունեք, կարող եք օգտագործել առցանց ծառայություն, ինչպիսին է ponoko.com- ը կամ formulor.de- ն կամ կապվել ձեր միջավայրի հաջորդ fablab/makerspace- ի հետ: Հնարավոր է նաև օգտագործել ստվարաթուղթ կամ այլ ավելի թեթև նյութեր, սակայն կցված ֆայլերը նախատեսված են 3 մմ հաստության համար, ուստի ավելի բարակ կամ հաստ նյութերին անհրաժեշտ է ֆայլերի վերափոխում: Դիզայնը կատարվել է Fusion 360 -ում: Մասերի մեծ մասը կպչում են միմյանց սահելով միայն տեղում, միայն արտաքին մասերի նման որոշ մասեր պետք է սոսնձված լինեն փայտի սոսինձով: Սոսինձ կիրառելուց առաջ համոզվեք, որ ձեր մատրիցան լիովին աշխատում է: Նաև փայտե երեսպատումը պետք է սոսնձել, բայց սա ամենավերջին քայլն է այն բանից հետո, երբ ամեն ինչ աշխատում է:

Հետին հարթության աջ (ստորին) կողմում կա կտրված հատված `էլեկտրոնային բաղադրիչները մատրիցին ամրացնելու համար և դեռ հասանելի է այս բաղադրիչներին, երբ երեսպատումը սոսնձված է:

Քայլ 2: Տեղադրեք LED- ները

Տեղադրեք LED- ները
Տեղադրեք LED- ները
Տեղադրեք LED- ները
Տեղադրեք LED- ները
Տեղադրեք LED- ները
Տեղադրեք LED- ները

LED շերտերն ստանդարտ 30 LED/m WS2812 շերտեր են, որոնք հասանելի են Amazon- ում, eBay- ում կամ ամբողջ աշխարհի այլ առցանց խանութներում: Սովորաբար սա նաև ամենաէժան հասցեագրվող LED շերտն է: Եթե ցանկանում եք օգտագործել այլ LED- ներ, ապա պետք է ապահովեք 30 LED/մ հեռավորությունը `մատրիցային օրինաչափությանը համապատասխանելու համար: Լազերային կտրված հատվածներն ունեն փոքր կտրված հատվածներ, որոնք տեղավորվում են LED- ի 10 սմ լայնության վրա: Այս LED շերտերն իրենց մեջքին ունեն երկկողմանի ժապավեն, այնպես որ կարող եք դրանք ուղղակիորեն սոսնձել MDF- ին ՝ ճշգրիտ դիրքավորումից հետո: Նախքան ժապավենն օգտագործելը (DIN-DOUT ուղղություն), ստուգեք յուրաքանչյուր շերտի ճիշտ կողմնորոշումը:

Հաղորդալարերի ձևը զիգ-զագ է, ուստի վերջում մատրիցի մեջ կա միայն մեկ մուտքագրում, և մալուխի երկարությունները հնարավորինս կարճ են: Էլեկտրաէներգիան ճիշտ բաշխելու և մատրիցի վերևում մալուխը նվազեցնելու համար յուրաքանչյուր LED շերտ կապվում է մատրիցի ներքևի մասում 5V և GND- ի հետ: 5V և GND գծերը բաշխելու համար կարող եք օգտագործել կամ առանձին լարեր, կամ PCB- ների նախատիպեր:

Քայլ 3: Հավաքում

Ժողով
Ժողով
Ժողով
Ժողով
Ժողով
Ժողով

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

Քայլ 4: Sոդում

Oldոդման
Oldոդման
Oldոդման
Oldոդման

Տարբեր գծերի միասին հոսանքի լարերը միացնելու տարբեր եղանակներ կան: Կամ դուք կարող եք օգտագործել միայնակ մետաղալարեր կամ պղնձից մի տեսակ ընդհանուր երկաթուղի ՝ տարբեր լարերը միացնելու համար: Այս դեպքում էլեկտրահաղորդման գծերը դեպի շերտեր ուղղորդելու համար օգտագործվել են PCB- ի նախատիպի կտորներ: WS2812B շերտերն արդեն ունեն առանձին հոսանքի մալուխներ, որոնք կարող եք օգտագործել էլեկտրահաղորդիչը միացնելու առաջին գծի մուտքին (նկարի ձախ կողմը):

Քայլ 5: Տեղադրեք SPI էկրան

Տեղադրեք SPI էկրան
Տեղադրեք SPI էկրան

Խաղի արդյունքները և տեքստը ցուցադրելու համար օգտագործվում է LED մատրիցային էկրան, որը հիմնված է LED վարորդի MAX7219 վրա: Այն SPI- ի (Սերիական ծայրամասային ինտերֆեյս) միջոցով միացված է Raspberry Pi- ին: Չորս 8x8 էկրան միավորվում է 32x8 պիքսելանոց կետային մատրիցով ցուցադրման հետ: Դուք կարող եք գնել այս 8x8 պիքսելանոց էկրանները, օրինակ. eBay- ում կան նաև 32x8 պիքսելանոց էկրաններ: Բացի այդ, դուք ունեք տարբեր գույնի տարբերակներ; այս դեպքում օգտագործվել են կարմիր ցուցադրիչներ: Քանի որ SPI- ն աշխատում է որպես հերթափոխի գրանցամատյան, ցուցադրումները իրար միացված են սերիալում ՝ առաջին մատրիցից դուրս մնացած տվյալները միացնելով երկրորդին և այլն ՝ սկսած էկրանի աջ կողմից:

Այս ցուցադրումը միայն դրսից է ընթերցվում, եթե այն տեղադրված է երեսպատման շերտի անմիջապես հետևում: Եթե ոչ, ապա տեսանելի է միայն կարմիր պղտորումը: Այսպիսով, դուք պետք է այն տեղադրեք հետին պլանի կտրված հատվածի վերևում ՝ 30 մմ հեռավորությամբ հետին պլանի մակերեսի և մատրիցի մակերևույթի միջև: Փայտե կտորների և պտուտակների մնացորդներ եմ օգտագործել ՝ հետին պլանի և PCB- ների միջև բացակայող 19 մմ -ը հարմարեցնելու համար, բայց կարող եք նաև ցանկացած արտաքին տիպի անջատիչներ:

Էկրանի միացումը ցուցադրվում է 7 -րդ քայլում:

Քայլ 6: Տեղադրեք Pi- ը

Տեղադրեք Pi- ն
Տեղադրեք Pi- ն
Տեղադրեք Pi- ն
Տեղադրեք Pi- ն
Տեղադրեք Pi- ն
Տեղադրեք Pi- ն

Այս տեղադրման մեջ օգտագործվում է Raspberry Pi Zero: Կարող եք նաև օգտագործել Raspberry Pi- ի ցանկացած այլ մոդել, բայց ավելի նորերը `ինտեգրված WiFi- ով և Bluetooth- ով, թույլ են տալիս հեշտությամբ միանալ անլար խաղային տախտակներին և պարզեցնել ծրագրավորումը: Դուք կարող եք ապահովել Pi- ն ՝ օգտագործելով առնվազն երկու պտուտակ և փոքր անջատիչներ ՝ այն հետին պլանին պտուտակելու համար:

Raspberry Pi Zero W- ի համար օգտագործվում են հետևյալ կապում.

  • PIN 2: 5V
  • PIN 6: GND
  • GPIO18 -> LED շերտեր
  • GPIO11: SPI CLK -> MAX7219 մատրիցա CLK
  • GPIO10: SPI MOSI -> MAX7219 մատրիցա DIN
  • GPIO8: SPI CS -> MAX7219 մատրիցա CS

Որոշ մարդիկ զեկուցեցին LED- ների համար GPIO18- ի օգտագործման հետ կապված խնդիրների մասին: Խնդրում ենք օգտագործել GPIO21 այս դեպքում: Եթե այո, ապա դուք պետք է 21 -րդ տողում փոխեք կոդը pixel_pin = board. D21:

WS2812B ժապավենը այստեղ օգտագործվում է իր բնութագրից դուրս: Սովորաբար այն պահանջում է 5V տրամաբանական մակարդակ DIN- ի վրա, բայց Pi- ն ապահովում է միայն 3, 3V: Նույնիսկ եթե դա աշխատում է շատ դեպքերում, դուք պետք է փորձեք դա ձեր շերտով: Եթե այն չի աշխատում, կարող եք ավելացնել մակարդակի փոխարկիչ, ինչպիսին է 74HCT245- ը կամ որևէ այլ 3V3- ից 5V փոխարկիչ Pi- ի և ժապավենի միջև:

Քայլ 7: Էլեկտրամոնտաժ և էլեկտրամատակարարում

Էլեկտրամոնտաժ և էլեկտրամատակարարում
Էլեկտրամոնտաժ և էլեկտրամատակարարում
Էլեկտրամոնտաժ և էլեկտրամատակարարում
Էլեկտրամոնտաժ և էլեկտրամատակարարում
Էլեկտրամոնտաժ և էլեկտրամատակարարում
Էլեկտրամոնտաժ և էլեկտրամատակարարում

Հաղորդալարումը կատարվում է էլեկտրագծերի սխեմայի համաձայն: Էլեկտրաէներգիայի մատակարարումը 5V DC սնուցման աղբյուր է:

Մատրիցի հեշտ միացման/անջատման համար անջատիչ է ավելացվում հոսանքի խրոցակի և մատրիցային սխեմաների միջև: Այնուամենայնիվ, քանի որ Raspberry Pi- ն չի սիրում կոշտ անջատում, ծրագրակազմում կա անջատման տարբերակ ՝ ապահով կերպով անջատելու Pi- ն Gamepad- ի միջոցով ՝ նախքան մատրիցը փոխելը:

LED շերտի DIN քորոցը Resistor- ի միջոցով միացված է Pi- ին, ինչպես նաև մեծ կոնդենսատոր (4700uF) ավելացվում է էներգիայի մատակարարումը բուֆերացնելու համար: Լրացուցիչ մանրամասների համար խնդրում ենք ծանոթանալ Adafruit Überguide- ին Neopixels- ի համար:

LED- ները սպառում են առավելագույն հոսանքը 60 մԱ մեկ LED- ի համար, ուստի հնարավոր է առավելագույն հոսանք 200x60mA = 12A !!! Կրճատելով պայծառությունը և չօգտագործելով բոլոր LED- ները լրիվ սպիտակ գույնով, սա ավելի շատ տեսական արժեք է, բայց դա կախված է այն կոդից, որի առավելագույն հոսանքը հասնում է: Այսպիսով, բավականաչափ մեծ էներգիայի աղբյուր ընտրելը շատ կարևոր է: Theրագրերի մեծ մասի համար 5V/5A (25W) սնուցման աղբյուրը պետք է բավարար լինի:

Pi- ի և Matrix- ի էկրանով հետին պլանը ամրացնելու համար կարելի է օգտագործել փայտի մի քանի փոքր կտորներ ՝ դրանք եզրերում սղոցելու համար, ինչպես նաև պտուտակներ օգտագործել ՝ հետնաթիռը տեղում պահելու համար:

Քայլ 8: Տեղադրեք Pi- ն

Կարգավորել Pi- ն
Կարգավորել Pi- ն

1. Ներբեռնեք Raspbian lite- ի վերջին պատկերը raspberrypi.org- ից

2. Պատճենեք այն և SD քարտ, 8 ԳԲ -ն բավական է: Դուք կարող եք օգտագործել, օրինակ. ինչ -որ բան անել դա:

3. Նախքան Pi- ն SD քարտով բեռնելը, պատրաստեք WIFI և ssh հասանելիություն

4. Տեղադրեք SD քարտը ցանկացած համակարգչի մեջ, բեռնման թղթապանակը պետք է հասանելի լինի

5. Պատճենեք հետևյալ տողերը wpa_supplicant.conf ֆայլում (ստեղծեք, եթե այն չկա) և փոխեք պարամետրերը ՝ կախված ձեր Wifi- ից և տարածաշրջանից

ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev

երկիր = ԱՄՆ update_config = 1 ցանց = {ssid = "Home Wifi" psk = "mypassword" key_mgmt = WPA-PSK}

6. Ներբեռնեք ssh կոչվող դատարկ ֆայլ (առանց որևէ ընդլայնման) `ssh հասանելիությունը միացնելու համար

7. Այժմ տեղադրեք SD քարտը Raspberry Pi- ում և տեղադրեք այն: Ստուգեք ձեր wifi երթուղիչը ՝ Pi- ի IP հասցեն ստանալու համար

8. սկսեք SSH կապ Pi- ի հետ ՝ օգտագործելով տերմինալ (Linux, Mac) կամ օրինակ. Putեփամածիկ և Windows: Տեղադրեք Pi- ի IP- ն 192.168.x.y- ի փոխարեն

ssh [email protected]

9. Թարմացրեք Pi- ն (որոշ ժամանակ է պահանջվում)

sudo apt-get թարմացում

sudo apt-get բարելավում

10. Տեղադրեք pip և setup գործիք

sudo apt-get տեղադրել python3-pip

sudo pip3 install -թարմացնել setuptools- ը

11. Տեղադրեք Neopixel վարորդը, ws281x lib, pygame և libsdl

sudo pip3 տեղադրել rpi_ws281x adafruit-circuitpython-neopixel

sudo pip3 տեղադրել pygame sudo apt-get install libsdl1.2-dev sudo pip3 տեղադրել-բարելավել luma.led_matrix

12. Միացնել SPI- ն ՝ զանգահարելով raps-config, անցնել 5 Interfacing Options / P4 SPI / Enable

sudo raspi-config

13. Ավելացրեք Bluetooth Gamepad

sudo bluetoothctl

[bluetooth]# գործակալ [bluetooth]# զույգ [bluetooth]# սկան [bluetooth]# զույգ aa: bb: cc: dd: ee: ff [bluetooth]# trust aa: bb: cc: dd: ee: ff [bluetooth]# միացնել aa: bb: cc: dd: ee: ff [bluetooth]# դուրս գալ

որտեղ aa: bb: cc: dd: ee: ff ձեր bluetooth խաղատախտակի MAC զգեստն է: Այս հասցեն պետք է ցուցադրվի «սկան միացնելու» հրամանը կանչելուց հետո: Համոզվեք, որ ձեր Bluetooth կարգավորիչը պատրաստ է զուգակցման: Խնդրում ենք ստուգել վերահսկիչի ձեռնարկը, թե ինչպես դա անել:

14. Այժմ կարող եք կապվել ձեզ Pi- ի միջոցով, լռելյայն գաղտնաբառը ազնվամորին է (Windows- ի օգտվողները կարող են օգտագործել Putty).

ssh [email protected]

Քայլ 9. Python Code, Test and Simulator

Python Code, Test and Simulator
Python Code, Test and Simulator
Python Code, Test and Simulator
Python Code, Test and Simulator
Python Code, Test and Simulator
Python Code, Test and Simulator

Կոդը հասանելի է Github- ում: games_pi_only.py և անհրաժեշտ են բոլոր bmp ֆայլերը:

git clone href = https://github.com/makeTVee/ledmatrix/tree/master/python/pi_only

Կոդն ունի տարբերակ ՝ Pi- ից դուրս սիմուլյացիոն ռեժիմում գործարկելու համար ՝ օգտագործելով pygame ՝ մատրիցը նմանակելու համար: Սա շատ օգտակար է նոր հնարավորություններ մշակելու համար ՝ առանց մատրիցային սարքավորումներին անմիջական մուտք ունենալու: Նաև կարգաբերումը շատ ավելի հեշտ է: Սիմուլյացիայի ռեժիմը ակտիվացնելու համար դուք պետք է սահմանեք PI հաստատուն (տող 15).

PI = Սխալ

Այս սիմուլյացիոն ռեժիմում այլևս ստեղնաշարը օգտագործվում է Bluetooth խաղացանկի փոխարեն: 1, 2, 3, 4 կոճակները քարտեզագրված են խաղատախտակի A, B, X, Y- ին, ուղղությունների սլաքների բանալիներ, մեկնարկի համար «s» և ընտրվածի համար ՝ «x»: Դուք կարող եք օգտագործել ստանդարտ խմբագիր `գումարած վահանակը կամ որոշ ինտեգրված IDE- ներ, ինչպիսիք են Micosoft Visual Studio Code- ը կամ Jetbrain PyCharm- ը` ձեր համակարգչի վրա զարգացում կատարելու համար:

Եթե դուք օգտագործում եք մատրիցան և Raspberry Pi- ն, ապա պետք է սահմանեք.

PI = շմարիտ

Կոդը Raspberry Pi- ին պատճենելու համար կարող եք օգտագործել scp հրամանը (Windows WinSCP): Բացեք վահանակի պատուհանը, անցեք Github ֆայլերը պարունակող թղթապանակին և զանգահարեք

scp games_pi_only [email protected]:/տուն/պի

scp *.bmp [email protected]:/տուն/պի

ապա միացեք Pi- ին ssh- ի միջոցով (Windows- ի օգտվողները կարող են օգտագործել Putty).

ssh [email protected]

հաջող մուտք գործելուց հետո կարող եք սկսել Python կոդը ՝ զանգահարելով.

sudo python3 games_pi_only.py

Եթե ծածկագիրը ճիշտ է աշխատում, կարող եք միացնել ավտոմատ մեկնարկը ՝ զանգահարելով.

sudo nano /etc/rc.local

և 0 -ից դուրս գալուց առաջ ավելացրեք հետևյալ տողը.

/usr/bin/nice -n -20 python3 /home/pi/games_pi_only.py &

Պահել (Ctrl+O) և Ելք (Ctrl+X)

Քայլ 10. Վերջնական փորձարկում և երեսպատում

Վերջնական փորձարկում և երեսպատում
Վերջնական փորձարկում և երեսպատում
Վերջնական փորձարկում և երեսպատում
Վերջնական փորձարկում և երեսպատում
Վերջնական փորձարկում և երեսպատում
Վերջնական փորձարկում և երեսպատում

Մինչև երեսպատումը սոսնձում է առջևի մասում, մատրիցը պետք է փորձարկվի `ապահովելու համար, որ բոլոր LED- ները աշխատում են: Շատ ավելի հեշտ է ինչ -որ բան ամրագրել, նախքան երեսպատումը սոսնձված է:

Օգտագործված փայտե երեսպատումը հատուկ թխկի երեսպատման թուղթ է, որը կոչվում է Microwood, որը միակողմանի ծածկված է թուղթով և ունի 0,1 մմ հաստություն: Թղթի կողմը կարելի է ուղղակիորեն սոսնձել mdf- ի վրա `օգտագործելով ստանդարտ թղթի սոսինձ` առանց ջրի:

Քայլ 11: Արդյունքը

Արդյունքը
Արդյունքը
Արդյունքը
Արդյունքը

Haveվարճացեք և վայելեք խաղը:

Raspberry Pi մրցույթ 2020
Raspberry Pi մրցույթ 2020
Raspberry Pi մրցույթ 2020
Raspberry Pi մրցույթ 2020

Մեծ մրցանակ Raspberry Pi մրցույթում 2020 թ

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