Բովանդակություն:
- Քայլ 1. Ինչպես պատրաստել պատյան GrimmsBox- ի համար
- Քայլ 2. Ինչպես հավաքել կոճակները GrimmsBox- ի համար
- Քայլ 3: tingրագրակազմի տեղադրում
- Քայլ 4: YAML- ի ներածություն
- Քայլ 5: Օգտագործման հրահանգներ
Video: GrimmsBox: Կառուցեք ձեր սեփական պատմող սարքը. 5 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Այս հրահանգը ցույց կտա ձեզ, թե ինչպես կարող եք կառուցել ձեր սեփական պատմվածքների արկղը: Ազատորեն ընտրեք ձեր սեփական արկածախնդրությունը:
Այսպես կոչված «GrimmsBox» - ը Գերմանիայի Hochschule der Medien Շտուտգարտի ուսանողների ծրագիր էր: Պատմության առաջին մասը տպելու համար մենք օգտագործում ենք սովորական ստացական տպիչ: Մասի վերջում որոշում պետք է կայացվի: Կոճակների միջոցով կարող եք ընտրել, թե ինչպես կշարունակվի պատմությունը: Մենք օգտագործում ենք Raspberry Pi- ը `ծրագրակազմը գործարկելու համար:
Տուփերից երկուսը շատ շուտով կօգտագործվեն: Մանհայմի հանրային գրադարանը երեխաների հետ սեմինարներ է կազմակերպում: Երեխաները կարող են ստեղծել իրենց պատմությունները, և նրանք կարող են զգալ իրենց պատմությունները GrimmsBox- ի օգնությամբ: Նմանատիպ սեմինարների հիմնական նպատակը ընթերցանության և գրելու ունակությունների խթանումն է: Հեքիաթասաց տուփերը նույնպես կտեղափոխվեն միջոցառումների, որպեսզի 3 -ից 6 -րդ դասարանների երեխաները ծանոթացնեն ընթերցանության հուզիչ փորձին:
Քայլ 1. Ինչպես պատրաստել պատյան GrimmsBox- ի համար
Պահանջվող նյութեր.
- 1x 6 մմ նրբատախտակի ափսե (1200x600x6 մմ)
- 1x 4 մմ նրբատախտակի ափսե (1200x600x4 մմ)
- փայտի սոսինձ
- պահանջվող սարքեր `լազերային դանակ, համակարգիչ
GrimmsBox- ի կողմից օգտագործվող ֆայլերը հասանելի են անվճար ներբեռնման միջոցով: Ֆայլերը GrimmsBox- ի առանձին բաղադրիչների svg և dxf ֆայլեր են: Սա մի կողմից այն ենթակառուցվածքն է, որտեղ իր տեղը գտնում է Raspberry Pi- ն, այնուհետև ճկվող ծխնով գիրքը և ինքնուրույն նախագծված գրքերի տակդիրը:
6 մմ նրբատախտակի ափսեը օգտագործվում է ենթակառուցվածքի և գրքի տակդիրի համար: Գիրքը կտրված էր 4 մմ նրբատախտակի ափսեից: Ավելի հաստ ափսեը չափազանց հաստ կլիներ գիրքը պատրաստելու համար: Կռումային ծխնին աշխատում է միայն 3-4 մմ նրբատախտակի վահանակներով: Հակառակ դեպքում, այն կկոտրվեր:
Dxf ֆայլերը ճիշտ ընտրություն են նրանց համար, ովքեր այլևս ոչինչ չեն ցանկանում փոխել: Սրանք պատրաստ են օգտագործել լազերային դանակի վրա:
Բայց նրանց համար, ովքեր դեռ ցանկանում են տուփին տալ իրենց հպումը, կարող են օգտագործել վանդակում գտնվող SVG ֆայլերը: Սրանք կարող են փոխվել ըստ ցանկության: Դա անելու համար ֆայլը պետք է բացվի ծրագրում (օրինակ ՝ Inkscape): Այս ծրագրերի միջոցով կարող եք խմբագրել առանձին բաղադրիչները: Եթե ինչ-որ բան փոխեցիք (օրինակ ՝ կոճակների համար անցքերի չափը կամ պտտվողը), դուք պետք է SVG ֆայլը պահեք որպես dxf ֆայլ:
Dxf ֆայլը պետք է բացվի լազերային դանակի մոտ: Հենց որ ֆայլը ցուցադրվի ԱՀ -ում, այն պետք է ընտրվի, թե որ տողերը պետք է կտրվեն և որոնք պետք է փորագրվեն: Տուփի կողքի տառը փորագրված էր Գրիմի տուփի վրա, իսկ գրքի տառը ՝ թույլ կտրված: Կախված նրանից, թե ինչն է ձեզ ավելի դուր գալիս, կարող եք օգտագործել մեկը կամ մյուսը: Արտաքին գծերը, իհարկե, բոլորը պետք է կտրվեն: Այնուամենայնիվ, լազերային դանակի օգտագործումը կարող է կախված լինել լազերային կտրիչի մոդելից և կարող է տարբեր լինել:
Քայլ 2. Ինչպես հավաքել կոճակները GrimmsBox- ի համար
Պահանջվող նյութեր.
- Սովորաբար բացված ակնթարթային 6 կոճակ, օրինակ. կոճակներ արկադային խաղերի համար
- 8 ցատկող մետաղալար `առնվազն մեկ իգական վերջավորությամբ, մերը մոտ 40 սմ երկարություն ունեին
- ինչ -որ հյուս
- ձեր նախագծի համար օգտագործվող տուփը, մեր դեպքում `լազերային կտրված վերին ծածկը և երկու կողային ծածկոցները, որոնք ներառում են լրացուցիչ կոճակներ
- զոդ եւ զոդող երկաթ
- բազմամետր
- մետաղալար կտրող
- մետաղալար մերկացնող
- ավելի թեթև կամ տաք օդի ատրճանակ
- Մեր ծածկագրում մենք օգտագործում էինք ներքին ռեզիստորներ, ուստի մեզ մնում է միայն երկու բան անել. Առաջինը, յուրաքանչյուր կոճակին միացրեք մի jumper մետաղալար, որը կհանգեցնի համապատասխան GPIO կապին և երկրորդը, միացրեք կոճակները միմյանց, որոնք այնուհետև կառաջնորդվեն գետնին մեկ այլ կին jumper մետաղալարով: Մենք միասին միացրեցինք անջատման կոճակը և ծրագրի վերագործարկման կոճակը և դրանց համար օգտագործեցինք մեկ հիմնային քորոց: Չորս կոճակները, որոնք կօգտագործվեն ձեր սեփական արկածային շարժիչի կողմից, նույնպես միացված էին միմյանց և կիսում էին մեկ հիմնային քորոց:
- Եթե ձեր կոճակները երկուից ավելի կապում են, օգտագործեք մուլտիմետր ՝ պարզելու համար, թե որոնք են հարմար GPIO- ի քորոցն ու գետնին միացնելու համար: Ձայնի գործառույթով դուք պետք է ձայն լսեք միայն այն դեպքում, եթե դիպչեք երկու կապում, և կոճակը ներկայումս սեղմվում է: Դուք կարող եք կատարել շարունակականության թեստ, ուղեցույց, թե ինչպես դա անել, հասանելի է ifixit կայքում ՝
- Վերցրեք մեկ կոճակ և տեղադրեք այն տուփի մասի մեջ: Վերցրեք ցատկող մետաղալարերից մեկը և կտրեք մի ծայրը, որը ձեզ պետք է թողնի մեկ կանացի ծայրով ցատկող մետաղալարով: Օգտագործեք մետաղալարերը ՝ մեկուսացման մոտ 5 միլիմետր կտրելու համար: Մի փոքր պտտեք չամրացված լարերը, որպեսզի ոչ մի մետաղալար դուրս չգա: Լարերի համար գեղեցիկ ծածկույթ պատրաստելու համար մի փոքր թիթեղ օգտագործեք: Եթե դուք սկսնակ եք զոդման, կա մի հիանալի, կարճ կոմիքս, որը ձեզ սովորեցնում է զոդել: Այն կոչվում է «oldոդումը հեշտ է», և PDF- ը հասանելի է բազմաթիվ լեզուներով ՝ https://mightyohm.com/blog/2011/04/soldering-is-e… Չափել և կտրել ջերմության նվազման խողովակը, որը դուք կօգտագործեք մեկուսացնելու համար: մաս, որտեղ կոճակը և ցատկող մետաղալարերը միասին կկպչվեն: Քաշեք ջերմության նվազման խողովակը ցատկող մետաղալարով: Կպչող մետաղալարը կպցրեք կոճակի կապումներից մեկին:
- Կրկնեք վերջին քայլը բոլոր կոճակների համար: Միշտ համոզվեք, որ եռակցման խողովակը եռակցումից առաջ քաշեք ցատկող մետաղալարով, քանի որ այն կարող է չտեղավորվել միակցիչի վրա:
- Այժմ դուք կկապեք անջատման կոճակը և վերագործարկման կոճակը: Մենք օգտագործում էինք էմալացված պղնձե մետաղալարեր, բայց քանի որ այն մի փոքր անհեթեթ էր, ես կառաջարկեի օգտագործել սովորական հյուս: Կտրեք մի քանի սանտիմետր հյուս: Ինչպես նախկինում, ապամոնտաժեք այն մետաղալարով, բայց այս անգամ երկու ծայրերում: Այնուհետև մի ծայրը կպցրեք կամ անջատման կամ վերագործարկման կոճակի քորոցին: Կրկին կտրեք մի փոքր ջերմության նվազման խողովակը և քաշեք այն հյուսի վրայով:
- Հաջորդը, դուք միացրեք հյուսը մյուս կոճակի անվճար քորոցին: Բայց դուք նաև այստեղ կմիացնեք մեկ այլ ցատկող մետաղալար, որը կհանգեցնի գետնին: Պատրաստեք ցատկող մետաղալարերը, ինչպես արեցիք մյուսների հետ, ներառյալ ջերմության նվազման խողովակը: Այժմ թեքեք հյուսը, որպեսզի կարողանաք այն ամրացնել այն ազատ քորոցին, որը գալիս է դեպի ազատ ծայրը նայող կոճակից: Այնուհետև ցատկող մետաղալարը նույնպես կպցրեք քորոցին: Մի կողմից եկող հյուսը և մյուս կողմից ցատկող մետաղալարերը կպցնելը երաշխավորում է, որ դուք կարող եք ջերմության նվազման խողովակը քաշել եռակցված մասի վրայով:
- Միացրեք խաղային շարժիչի համար օգտագործվող չորս կոճակները ՝ կառուցելով փոքր կամուրջներ: Միշտ համոզվեք, որ եռակցման համար խողովակը ձգեք հյուսի վրայով: (Եվ նաև համոզվեք, որ ձեր կոճակները միմյանց ճիշտ միացնելուց առաջ գտնվում են ճիշտ դիրքում): Վերջին կոճակը միացնելիս նորից պետք է, ինչպես մյուս երկու կոճակների դեպքում, հյուսը միացրեք ներքևից և միացրեք նաև jumper մետաղալարը:
-
Օգտագործելով մուլտիմետրի ձայնային գործառույթը, կարող եք ստուգել, արդյոք ամեն ինչ լավ է միացված: Ի վերջո, դուք պետք է ստուգեք, թե արդյոք բոլոր ջերմամեկուսիչ խողովակները ճիշտ տեղում են: Ապա դուք կարող եք օգտագործել ավելի թեթև կամ տաք օդի ատրճանակ ՝ այն իրականում փոքրացնելու համար: Այժմ դուք ավարտել եք կոճակները հավաքելը:
Քայլ 3: tingրագրակազմի տեղադրում
Ձեզ հարկավոր կլինի.
- Raspbian- ով տեղադրված Raspberry Pi (դուք պետք է կարողանաք օգտագործել նաև այլ բաշխումներ, բայց պետք է որոշ հրամաններ հարմարեցնել)-մենք օգտագործեցինք մի փաթեթ, որը բաղկացած էր Raspberry Pi 3 Model B+-ից ՝ նախապես տեղադրված SD քարտով, սնուցման աղբյուր և դեպքում, այլ մոդելներ նույնպես պետք է աշխատեն
- ստացողի տպիչ - հիշեք, որ դուք պետք է տպիչը միացնեք Raspberry Pi- ին, այնպես որ USB- ով միանալը կարող է լինել ամենահեշտը
- ձեր կոճակները
-
Միացրեք ձեր Raspberry Pi- ը էկրանին, մկնիկին և ստեղնաշարին: Դուք նաև պետք է այն միացնեք տպիչին և, ի վերջո, կոճակներին: Կոճակները պետք է միացված լինեն հատուկ GPIO կապումներին: Եթե ցանկանում եք օգտագործել տարբեր քորոցներ, քան մենք էինք, կարող եք դա փոխել ծածկագրում: Առայժմ այս ցուցակը ձեզ կասի, թե որ կոճակին որ պինին է պետք միացնել: Ես կօգտագործեմ BCM համարակալում, որը նույնպես օգտագործվում է ծածկագրում: Https://www.raspberrypi.org/documentation/usage/g… կայքում կա մի գծապատկեր, որը ցույց է տալիս, թե որ քորոցն ինչ թիվ ունի:
• անջատման կոճակ - 17 • վերագործարկման կոճակ - 27 • առաջին կոճակը, որն օգտագործվում է պատմության/արկածախնդրության ընտրանքների համար - 5 • երկրորդ կոճակ - 6 • երրորդ կոճակ - 13 • չորրորդ կոճակ - 19 • երկու ցատկող լարերը, որոնք միացված են բոլոր կապերին կոճակները պետք է իջնեն գետնին ՝ սև կետերով նշված գծապատկերում
Սկսեք Raspberry Pi- ն `միացնելով սնուցման աղբյուրը: Միացրեք Raspberry Pi- ն ինտերնետին `օգտագործելով LAN մալուխ կամ անլար ցանց:
- Ազնվամորի պի վրա անհրաժեշտ ծրագրակազմը տեղադրելիս առաջին բանը պետք է թարմացնել արդեն տեղադրված ծրագրակազմը: Մենք դա կանենք տերմինալի միջոցով: Եթե դուք առաջին անգամ եք օգտագործում տերմինալ, ապա Raspberry Pi- ի փաստաթղթերը (https://www.raspberrypi.org/documentation/usage/terminal/) օգնում են ձեզ տեղաշարժվել և ճանաչել շրջակա միջավայրը: Բացեք տերմինալը և մուտքագրեք sudo apt update և սեղմեք enter: Սա կթարմացնի առկա փաթեթների և տարբերակների ցանկը: Դրանից հետո մուտքագրեք sudo apt upgrade: Սա իրականում կտեղադրի արդեն տեղադրված փաթեթների նոր տարբերակները:
- Տպիչի վարորդի տեղադրումը հաջորդ քայլն է: Linux- ում տպիչի կառավարումը կարող է իրականացվել CUPS- ի միջոցով: Հնարավոր է, որ նախ անհրաժեշտ լինի տեղադրել այն ձեր Raspberry Pi- ի վրա: Տերմինալում մուտքագրեք sudo apt install բաժակներ: Հաջորդ քայլը տպիչի վարորդների ձեռքբերումն է: Միգուցե ձեր բախտը բերել է, և այն ներառված է պաշտոնական պահոցներում: Տերմինալում այն գտնելու համար օգտագործեք համապատասխան որոնում [տպիչի անունը կամ արտադրողի անունը]: Տպիչների մեծ մասը, հավանաբար, չեն ներառվի պահեստներում, այնպես որ դուք պետք է այն ձեռք բերեք այլուր: Հնարավոր է, որ տպիչին կցված լինի CD: Արտադրողի կայքում ամենավերջին վարորդները պետք է հասանելի լինեն ներբեռնման համար: Որոշ արտադրողներ տարբեր կայքեր ունեն աշխարհի տարբեր շրջանների համար և, ցավոք, ոչ բոլորն են պարունակում նույն տեղեկատվությունը: Եթե ունեք Star տպիչ, starasia.com- ը, կարծես, ամենավերջին ներբեռնվող վարորդներով կայքն է: Խնդրում ենք ստուգել, որ դուք բեռնում եք տպիչներ Linux- ի համար: Մենք օգտագործել ենք CUPS- ի վարորդները, այլ ոչ թե JavaPOS- ի վարորդները:
- Հաջորդը, դուք պետք է տեղադրեք վարորդները: Խնդրում ենք հետևել արտադրողի հրահանգներին: Linux- ի համար կարող է լինել ծրագրային ձեռնարկ, որը կարող է օգտակար լինել: Խնդրում ենք հետևել Debian- ի կամ Ubuntu- ի հրահանգներին. Կան շատ տարբեր Linux բաշխումներ, և ոչ բոլորն են նույնը, ուստի նախ ստուգեք, եթե ունեք ճիշտ հրահանգներ ձեռքի տակ: Մեր ձեռնարկում հրահանգները սկսվեցին առանց նշելու, որ դրանք Red Hat- ի վրա հիմնված համակարգերի համար են, և միայն հաջորդ էջում մենք իմացանք, որ Debian- ի վրա հիմնված համակարգերի ցուցումները տարբեր են: Softwareրագրային ձեռնարկը պետք է նաև նշի, թե որ փաթեթներն են պետք տեղադրել, օրինակ ՝ մենք պետք է տեղադրեինք «libcups2-dev»: Հավանաբար, ձեզ հարկավոր կլինի որոշ հրամաններ կատարել: Մեր սխալը կրկնելուց ձեզ փրկելու համար. Եթե անհրաժեշտ է վարորդներին կազմել սկզբնաղբյուրից make - make install- ը պետք է sudoed լինի: Սխալի հաղորդագրությունից մենք չկարողացանք պարզել, թե ինչն է սխալ:
- Եթե տեղադրված չեք ձեր տեղադրման ձեռնարկում, անհրաժեշտ է տպիչը տեղադրել CUPS- ում: Դա անելու համար դիտարկիչում անցեք localhost: 631: Կտտացրեք «Կառավարում», այնուհետև «Ավելացնել տպիչ» ՝ տպիչը կարգավորելու համար: Կա նաև օգնության բաժին: Դուք պետք է նույնականացնեք որպես օգտվող, մանրամասների համար տե՛ս https://help.ubuntu.com/lts/serverguide/cups.html… («Վեբ ինտերֆեյս» բաժինը): Ընտրեք համապատասխան ppd և թղթի չափը: Դուք նաև պետք է այն դարձնեք կանխադրված տպիչ, քանի որ ծրագրակազմը տպելու է կանխադրված տպիչին: Դա անելու համար գնացեք տպիչի էջ և «Կառավարում» ընտրացանկից ընտրեք «Սահմանել որպես սերվերի կանխադրված»: «Սպասարկում» ընտրացանկից կարող եք ընտրել «Տպել փորձնական էջ» ՝ առաջին ստուգման համար, արդյոք ամեն ինչ ճիշտ է դրված:
- Մեկ այլ փաթեթ, որը ձեզ հարկավոր կլինի, python3-yaml է, քանի որ պատմությունները պահվում են yaml ֆայլերում, և փաթեթը անհրաժեշտ է, որպեսզի պիթոնի ծածկագիրը կարողանա դրանք մեկնաբանել: Տեղադրելու համար օգտագործեք sudo apt install python3-yaml:
- Այժմ մենք վերջապես կսկսենք ծրագրաշարի տեղադրմամբ, որն իրականում տպում է պատմությունները և լսում է մուտքագրումը կոճակներին միացված GPIO կապում: Բացեք տերմինալ և նավարկեք դեպի գլխավոր գրացուցակ, եթե արդեն դրանում չեք (դա կարող է կատարվել `մուտքագրելով cd (փոփոխման գրացուցակի համար)): Քանի որ մեր կոդը գտնվում է GitHub- ում, կարող եք այն պատճենել ձեր Raspberry Pi- ում ՝ օգտագործելով git clone https://github.com/fio-na/GrimmsKiste-1.git Սա կստեղծի մեր շտեմարանի ձեր տեղական Raspberry Pi- ի պահոցը: Եթե սխալ հաղորդագրություն եք ստանում, քանի որ git- ը տեղադրված չէ, կարող եք տեղադրել այն ՝ մուտքագրելով sudo apt install git:
- Կոդը պարունակում է որոշ տարրեր, որոնք կարող են անհրաժեշտ լինել փոփոխելու համար: Նախևառաջ, պատմությունները պահվում են yaml ֆայլերում, որոնք նույնպես գտնվում են git պահոցում: Եթե ձեր թղթապանակի ուղին «/home/pi/GrimmsKiste-1» չէ, դուք պետք է փոխեք այս ուղիները `պատմություններից օգտվելու համար: Երկրորդ, մենք տպում ենք ենթամշակման միջոցով և հանձնում տերմինալային հրամաններ: Սա ներառում է որոշ տարբերակներ, որոնք օգտագործվում են մեր տպիչի վարորդի կողմից, ինչը թույլ է տալիս որոշել, թե արդյոք տպվելուց հետո թուղթը կկտրվի, թե ոչ: Սրանք հավանաբար չեն աշխատի ձեզ համար (եթե դուք նաև չեք օգտագործում Star TSP տպիչ): Դուք նաև կնկատեք, որ մի շարք տողեր, որոնք ներառում են միայն մեկ կետ, տպագրվելու են: Մեզ դա պետք էր, քանի որ հակառակ դեպքում պատմության որոշ հատվածներ ընթեռնելի չէին, քանի որ թուղթը դեռ խրված էր տպիչի մեջ: Եվ վերջապես ֆունկցիա format_text- ում մենք օգտագործում ենք textwrap ՝ 28 նիշից ոչ ավելի տեքստային կտորներ ստանալու համար, քանի որ այդքանն են տեղավորվում մեկ տողի մեջ մեր 80 մմ թղթի վրա: Խնդրում ենք այս տարրերը հարմարեցնել ձեր կարգավորմանը:
- Որոշ ֆայլեր պետք է կատարելի լինեն: Դա անելու համար նավարկեք թղթապանակը ՝ հենց ներբեռնած ծածկագրով: Սա պետք է լինի cd ~/GrimmsKiste-1, եթե հետևեցիք դրան: Linux- ում ֆայլերի թույլտվությունները մշակվում են chmod- ի կողմից: chmod a+x Engin.py և chmod a+x shutdown-pi-and-restart-program.py այդ երկու ֆայլերը դարձնում է գործարկելի բոլոր օգտագործողների համար:
- Այժմ մենք կարող ենք ստուգել, արդյոք շարժիչը կարող է աշխատել և ճիշտ աշխատել, և արդյոք տպիչը և կոճակները ճիշտ տեղադրված են: Մուտքագրեք./Engin.py դա անելու համար:
- Եթե ամեն ինչ լավ է աշխատում, հաջորդ քայլը երկու համակարգային ծառայություններ ստեղծելն է: Լրացուցիչ տեղեկությունների համար, archlinux- ի վիքի էջը (https://wiki.archlinux.org/index.php/Systemd) կարող է օգնել կամ systemd.service- ի գլխավոր էջը (https://www.freedesktop.org/software/systemd/ man/systemd.service.html): Առաջին համակարգային ծառայությունը կստուգի յուրաքանչյուր երկու վայրկյանը մեկ, եթե Engin.py- ն ներկայումս աշխատում է, և եթե դա այդպես չէ, այն կսկսի: Հետևաբար, այն նաև սկսում է ծրագիրը, երբ Raspberry Pi- ն կոշիկ է տալիս: Բացեք ֆայլը համակարգային պանակում ՝ sudo nano /etc/systemd/system/grimmskiste-restart.service մուտքագրեք հետևյալը.
-
[Միավոր]
Նկարագրություն = վերսկսում է Grimms Kiste- ն երկու վայրկյանը մեկ, եթե այն ձախողվի առայություն] ExecStart =/home/pi/GrimmsKiste-1/Engin.py Վերագործարկեք = միշտ RestartSec = 2 [Տեղադրեք] WantedBy = multi-user.target
- Դուք պետք է խմբագրեք ExecStart- ի ուղին, եթե ձեր Engin.py- ն այլուր է, օրինակ. եթե ձեր օգտանունը տարբեր է: Ֆայլը nano- ում պահելու համար հարկավոր է սեղմել ctrl + x, այնուհետև մուտքագրել y (այո) և սեղմել enter:
- Մյուս ծառայությունը կսկսի shutdown-pi-and-restart-program.py սցենարը, որը լսում է անջատման և վերագործարկման կոճակը: Վերագործարկման կոճակը ֆայլից կարդում է Engin.py- ի գործընթացի ID- ն և սպանում այն, իսկ մյուս համակարգված ծառայության պատճառով Engin.py- ն երկու վայրկյանից հետո վերագործարկվում է: Անջատման կոճակը պարզապես հրաման է ուղարկում Raspberry Pi- ին, որն այժմ պետք է անջատվի: Բացեք մեկ այլ ֆայլ ՝ օգտագործելով sudo nano /etc/systemd/system/grimmskiste.service և մուտքագրեք հետևյալը.
-
[Միավոր]
Նկարագրություն = Վերահսկում է երկու ապարատային կոճակ ՝ ազնվամորու pi- ն փակելու կամ գործարկվող ծրագիրը Grimms Kiste [Service] ExecStart =/home/pi/GrimmsKiste-1/shutdown-pi-and-restart-program.py [Install] WantedBy = multi-user.target
- Կրկին, ձեզ հարկավոր կլինի խմբագրել ճանապարհը ExecStart- ում, եթե այն տարբեր է ձեր Pi- ում: Եվ կրկին, դուք կարող եք ֆայլը պահել nano- ում ՝ օգտագործելով ctrl + x, այնուհետև մուտքագրելով y և սեղմելով enter:
- Այժմ դուք ունեք համակարգային ծառայությունների միավոր ֆայլեր, բայց դրանք դեռ չեն օգտագործվում: Ամեն անգամ, երբ փոխում եք միավոր ֆայլերը, մուտքագրեք sudo systemctl daemon-reload, այնպես որ դա արեք հիմա: Հետո միացրեք երկու ծառայությունները ՝ օգտագործելով sudo systemctl start grimmskiste.service և sudo systemctl start grimmskiste-restart.service Սա առայժմ կսկսի ծառայությունները: Օգտագործեք sudo systemctl կարգավիճակը grimmskiste.service և sudo systemctl status grimmskiste-restart.service ՝ ստուգելու համար, արդյոք դրանք գործարկվա՞ծ են: Ելքում պետք է լինի մի տող, որը ներառում է «ակտիվ (վազում)», հավանաբար երրորդ տողում, եթե դա այդպես չէ, ինչ -որ բան սխալ է: Journalctl- ը գուցե կարողանա օգնել վրիպազերծման ավելի շատ տեղեկատվության հետ:
- Systemctl start- ի օգտագործումը առայժմ միայն սկսում է ծառայությունները, բայց եթե ցանկանում եք, որ դրանք սկսվեն ամեն անգամ, երբ Raspberry Pi կոշիկները, դուք պետք է դրանք միացնեք: Դա արվում է sudo systemctl միացնել grimmskiste.service և sudo systemctl միացնել grimmskiste-restart.service:
- Այժմ դուք պետք է փորձարկեք բոլոր կոճակները, եթե ամեն ինչ ճիշտ է աշխատում: Փորձարկեք նաև անջատման կոճակը և ստուգեք ՝ արդյո՞ք ամեն ինչ դեռ նորմալ է աշխատում վերագործարկումից հետո: Եթե այո, ապա ձեզ հարկավոր չեն էկրան, ստեղնաշար և այլն, և ձեր ծրագիրը պետք է գործի ամեն անգամ, երբ Raspberry Pi- ն միացնում եք վարդակից:
Քայլ 4: YAML- ի ներածություն
Կարևոր. Մանուշակագույնով դաշտերը չպետք է վերանվանվեն: Անհատական ցուցակների անունները բացառություն են: Յուրաքանչյուր պատմություն ստանում է իր YAML ֆայլը ՝ բոլոր ընտրությամբ: Կառուցվածքը նույնն է, ինչ ֆայլի համար start.yaml
Colon. Եթե ցանկանում եք տեքստում օգտագործել երկու կետեր, ապա պետք է կազմեք> հետո հաղորդագրություն: Այնուհետև տեքստը իջեցվում է մեկ տողով և երկու դատարկ տողերով ներխուժվում:
Ներդիրներ. Մի օգտագործեք ներդիրներ և խնդրում ենք համոզվել, որ հաղորդագրության վերջում ներդիրներ չկան, ինչը կհանգեցնի նրան, որ վերլուծիչը չի կարողանա կարդալ ֆայլը:
_default_question: Այստեղ մուտքագրված հարցն ընդունվում է, եթե պատմության մեջ «հարց» ունեցող դաշտ չի մուտքագրվել:
_prompt. Այս դաշտը տպագրվում է, երբ ընթերցողը պետք է կատարի գրառում:
Երկու դաշտերը կարող են գոյություն ունենալ միայն մեկ անգամ start.yaml ֆայլում և չեն կարող օգտագործվել այլ ֆայլերում:
start: start սկզբնական էջի առաջին ցուցակի անունն է: Անունները չպետք է կրկնօրինակվեն բոլոր մյուս ցուցակներում: Կաղապարում այս դաշտը կոչվում է «Պատմության անուն» և պետք է փոխվի յուրաքանչյուր պատմության համար:
Հաղորդագրություն. Այս դաշտը պարունակում է պատմությունը և պետք է լինի մեկ տողով: Հարց. Օգտագործվում է այն դեպքում, երբ պետք է օգտագործվի այլ հարց, քան _ կանխադրված է: Եթե դաշտը չի օգտագործվում, այն պետք է ջնջվի: (ըստ ցանկության)
Գործողություններ. «Գործողությունների» ցուցակը պարունակում է ընտրության ընտրանքներ: Այստեղ կարող է մուտքագրվել առավելագույնը 4 տարբերակ: Պիտակ. Պիտակը տպված է որպես ընտրության տարբերակ:
Հաջորդը. Սա այն ընտրության հաջորդ տարբերակի անունն է, որը պետք է կոչվի:
վերջ. Միայն հաղորդագրությամբ ցուցակը նշում է պատմության ավարտը: Դաշտերի գործողությունները, պիտակը և հաջորդը պետք է ջնջվեն
Ավելացնել ավելի շատ պատմություններ
Ինչպես բացատրվեց վերևում, յուրաքանչյուր նոր պատմություն ստանում է իր.yaml ֆայլը: Դա անելու համար բացեք «Grimms Box» թղթապանակը և պատճենեք template.yaml ֆայլը: Այն կարող եք գտնել նաև մեր GitHub ռեպոյում (https://github.com/fio-na/GrimmsKiste-1): Վերանվանել ֆայլը պատմվածքի վերնագիրը և բացեք այն: Նոր ֆայլում դուք ավելացնում եք արտադրողին և ամսաթվին և վերնագրին փոխում «Պատմության անունը» դաշտը (տե՛ս նկ. 4. Այստեղ պատմվածքի անունն է HP1). Այնուհետև լրացրեք հաղորդագրությունը, հարցը, պիտակը և հաջորդը: Դա անելուց հետո պատճենեք տվյալների կառուցվածքը (ինչպես ցույց է տրված նկ. 4 -ում) և տեղադրեք վերջին հաջորդի ներքևում: Վերնագիրն այժմ կփոխվի մեկ հաջորդում ՝ «հաջորդ» -ում, որն օգտագործվում է առաջին մասում (ինչպես ցույց է տրված նկ 4 -ում: Այնուհետև հաղորդագրությունը, հարցը, պիտակը և հաջորդը նորից լրացվում են: Դա արեք բոլոր ընտրությունների/գործողությունների համար, մինչև ամբողջ պատմությունը ֆայլում լինի: Ամենավերջում, վերջին ցուցակը պետք է պարունակի միայն հաղորդագրություն: Վերջնական ցուցակի մյուս բոլոր դաշտերը պետք է ջնջվեն: Դրանից հետո ֆայլը պետք է պահվի:
Հակիրճ ընթացակարգ.
- Բացեք Grimms Box թղթապանակը
- Պատճենեք Vorlage.yaml- ը և անվանափոխեք այն պատմվածքի վերնագրի:
- Բացեք այս նոր ֆայլը:
- Պատճենել տվյալների կառուցվածքը (նկ. 4)
- Փոխեք անունը Պատմությունից դեպի Ընտրության անուն
- Հաղորդագրության դաշտում մուտքագրեք պատմության տեքստը,
- Տեղադրեք համապատասխան պիտակը:
- Հաջորդում մուտքագրեք հաջորդ ընտրության տարբերակի անունը:
- Կրկնեք 4 -ից 9 -րդ քայլերը, մինչև պատմությունն ավարտվի:
- Ամենավերջում. Վերջին ցուցակը պարունակում է միայն հաղորդագրություն:
- Պահպանել ֆայլը:
Ավելացրեք ձեր նոր պատմությունը սկզբնական էջին
start.yaml- ը Գրիմի տուփի մեկնարկային էջն է: Այնուամենայնիվ, այս ֆայլը նախ պետք է կարողանա մուտք գործել նոր պատմություններ: Հետևաբար, նոր պատմությունները պետք է առաջին հերթին ավելացվեն այս ֆայլում:
Յուրաքանչյուր գործողության համար կարող եք ստեղծել միայն 4 պիտակ, այնուհետև, քանի որ Գրիմի տուփը ընտրելու համար ունի ընդամենը 4 կոճակ: Հետևաբար, եթե, ինչպես օրինակ start.yaml ֆայլում, 4 պիտակ և հաջորդ դաշտերն արդեն նշանակված են, 4 -րդ պիտակը պետք է անվանվի «Ավելի շատ պատմություններ» կամ «Ավելին» և երկրորդ տվյալների կառուցվածքը (այստեղ ՝ S2; հաղորդագրությամբ, հարցով, գործողությունները, պիտակը, հաջորդը) պետք է կցվեն և վերանվանվեն: Այնուհետև ավելացնում եք նոր պատմությունը պիտակով և հաջորդով և այն անվանում համապատասխանաբար: Ի վերջո, այն պետք է փրկվի:
Հակիրճ ընթացակարգ
Start.yaml- ում:
- Բացեք start.yaml- ը
- Լրացրեք համապատասխան դաշտերը:
- Դաշտերի գործողությունները, պիտակը և հաջորդը պետք է պատճենվեն և տեղադրվեն:
- Պահել:
Պահպանեք «Engin.py» հիմնական ֆայլը
Ի վերջո, պատմությունը պետք է ավելացվի «Engin.py» հիմնական ֆայլին: Դրա համար միայն նոր YAML ֆայլի ֆայլի ուղին պետք է մուտքագրվի ֆայլերի ցանկ: Ուղին փակված է չակերտների մեջ և մյուսներից առանձնացված ստորակետ
Հակիրճ ընթացակարգ.
- Բացեք Engine.py- ն:
- Պատճենեք YAML ֆայլի ֆայլի ուղին
- Պատճենել ֆայլերի ցուցակի ուղին
- Առանձնացրեք ուղիները ստորակետներով:
Քայլ 5: Օգտագործման հրահանգներ
Grimm's Box- ը գործարկելու համար միացրեք տպիչը Raspberry Pi- ին (մալուխների համար փոքր անցք կա), միացրեք տպիչը և Raspberry Pi- ն վարդակից և միացրեք տպիչը: The Raspberry Pi- ն սկսում է ինքնուրույն, երբ միացված է: Սպասեք, որ այն բեռնվի: Ենթադրվում է, որ ծրագրակազմը կսկսի ինքնուրույն:
Կա Raspberry Pi- ի անջատման կոճակ և պատմության ծրագրաշարը վերագործարկելու կոճակ, եթե ինչ -որ մեկը պարզապես հեռանա ՝ առանց պատմությունն ավարտելու: Երկուսն էլ պետք է մղվեն առնվազն 3 վայրկյան: Սա ապահովելու համար, որ դրանք պատահաբար չեն մղվում, բայց դուք կարող եք փոխել ժամանակը shutdown-pi-and-restart-program.py ֆայլում: Խնդրում ենք օգտագործել անջատման կոճակը, պարզապես անջատելը լավ չէ Raspberry Pi- ի համար: Ընթացիկ կարգավորմամբ դուք չեք կարող տեսնել, թե արդյոք Raspberry Pi- ը միացված է կամ անջատված, այնպես որ դուք պետք է ստուգեք, արդյոք այն դեռ արձագանքում է այլ կոճակներին, եթե ցանկանում եք վստահ լինել:
Restրագրի վերագործարկումը որոշ ժամանակ է պահանջում, քանի որ անհրաժեշտ է սեղմել կոճակը առնվազն 3 վայրկյան, և գործընթացը հետին պլանում միայն ստուգում է յուրաքանչյուր 2 վայրկյանը մեկ, եթե ծրագիրը աշխատում է, ուստի մինչև նորից տպելը ամբողջ գործընթացը կարող է տևել 6 վայրկյան: Պարզապես մի քիչ ժամանակ տվեք: Եթե խնդիր առաջանա, կարող է օգտագործվել նաև վերագործարկման կոճակը: Գուցե վերագործարկումը կարող է շտկել այն: Եթե դա այդպես չէ, Raspberry Pi- ն էկրանին և այլն միացնելը և ծրագիրը տերմինալից գործարկելը կարող է սխալ հաղորդագրություններ առաջացնել, որոնք կարող եք որոնել ինտերնետում: Պատմությունների համար օգտագործվող կոճակները պետք է սեղմել առնվազն 0.1 վայրկյան, բայց շատ հազվադեպ է պատահում, որ ինչ -որ մեկը դրանք ավելի քիչ է դրդում:
Եթե պատմությունն ավարտվի, թերթը կտրված է, և ծրագիրը նորից ինքնաբերաբար սկսվում է: Սակայն ընթերցողին վերջ տալու համար ժամանակ տրամադրելու համար այն սպասում է 3,5 վայրկյան գումարած 2 վայրկյան, որը անհրաժեշտ է `նկատելու համար, որ ծրագիրը չի աշխատում և չի վերագործարկվում: 3.5 վայրկյանը կարող է խմբագրվել Engin.py ֆայլում:
Վերջին սեղմումից 1.7 վայրկյանից պակաս սեղմված կոճակները չեն ընդունվի: Մենք դա կիրառեցինք, քանի որ Raspberry Pi- ն շատ ավելի արագ է, քան տպիչը, և երկու կոճակ սեղմելը կհանգեցնի գործողության ընտրության, մինչև ընթերցողը տեսնի ընտրանքները:
Խորհուրդ ենք տալիս:
Կառուցեք ձեր սեփական փոփոխական լաբորատորիայի նստարանի էներգիայի մատակարարումը. 4 քայլ (նկարներով)
Կառուցեք ձեր սեփական փոփոխական լաբորատորիայի նստարանային էլեկտրամատակարարում. Այս նախագծում ես ձեզ ցույց կտամ, թե ինչպես եմ ես միացրել LTC3780- ը, որը 130 Վտ հզորությամբ Step Up/Step Down հզոր փոխարկիչ է, 12V 5A սնուցման աղբյուրի հետ `կարգավորելի լաբորատորիայի էլեկտրասնուցման աղբյուր (0.8 V-29.4V || 0.3A-6A): Համեմատաբար կատարումը բավականին լավ է
Կառուցեք ձեր սեփական BiQuad 4G ալեհավաքը արագության թեստով. 7 քայլ (նկարներով)
Կառուցեք ձեր սեփական BiQuad 4G ալեհավաքը արագության թեստով. Այս հրահանգով ես պատրաստվում եմ ցույց տալ ձեզ, թե ինչպես եմ պատրաստել BiQuad 4G ալեհավաք: Իմ տանը ազդանշանների ընդունումը վատ է `իմ տան շրջակայքի սարերի պատճառով: Ազդանշանային աշտարակը գտնվում է տնից 4,5 կմ հեռավորության վրա: Կոլոմբո շրջանում իմ ծառայություններ մատուցողը տալիս է 20 Մբիթ / վ արագություն: բայց մ
Կառուցեք ձեր սեփական դյուրակիր COB LED սեղանի լամպը: 16 քայլ (նկարներով)
Կառուցեք ձեր սեփական դյուրակիր COB LED գրասեղանի լամպը: Բարի գալուստ: Այս Instructables- ում ես կսովորեցնեմ ձեզ, թե ինչպես դարձնել հոյակապ տեսք, շատ հզոր և ամենակարևորը `շարժական սեղանի լամպ: Հրաժարում. Այս նախագիծը չի հովանավորվում որևէ ապրանքանիշի կողմից: Առանձնահատկություններ. • Modernամանակակից և էլեգանտ դիզայն • Դյուրակիր
Ինչպես կատարել ձեր սեփական գիշերային տեսողության սարքը: 5 քայլ (նկարներով)
Ինչպես պատրաստել ձեր սեփական գիշերային տեսողության սարքը: Այս նախագծում ես ձեզ ցույց կտամ, թե ինչպես ստեղծել գիշերային տեսողության սարք: Այն հիմնականում բաղկացած է անվտանգության տեսախցիկից, փոքր էկրանից և անհատական PCB- ից, որն ունի IR LED և LED վարորդ: Սարքը USB Type-C PD սնուցման բանկով միացնելուց հետո կարող եք
CityCoaster - Կառուցեք ձեր սեփական հավելյալ իրականության ափսե ձեր բիզնեսի համար (TfCD). 6 քայլ (նկարներով)
CityCoaster - Կառուցեք ձեր սեփական հավելյալ իրականության ափսե ձեր բիզնեսի համար (TfCD). Քաղաք ձեր գավաթի տակ: CityCoaster- ը նախագիծ է, որը մտածում է Հաագայի Ռոտերդամի օդանավակայանի արտադրանքի մասին, որը կարող է արտահայտել քաղաքի ինքնությունը ՝ զվարճացնելով լաունջի հաճախորդներին հավելյալ իրականությամբ: Նման միջավայրում