Բովանդակություն:
- Քայլ 1: Մենք պահանջում ենք հիմնական սարքավորում
- Քայլ 2: Սարքաշարի միացում
- Քայլ 3. Python ծածկագրումը Raspberry Pi- ի համար
- Քայլ 4. Օրենսգրքի աշխատունակությունը
- Քայլ 5: Applicրագրեր և առանձնահատկություններ
- Քայլ 6: Եզրակացություն
Video: Շարժման վերահսկում Raspberry Pi- ով և LIS3DHTR- ով, 3 առանցքի արագացուցիչ, Python- ի միջոցով. 6 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Գեղեցկությունը շրջապատում է մեզ, բայց սովորաբար դա իմանալու համար հարկավոր է զբոսնել այգում: - Ռումի
Որպես կրթված խումբ, ինչպիսին մենք թվում է, մենք ներդնում ենք մեր էներգիայի ճնշող մեծամասնությունը ՝ աշխատելով մեր համակարգիչներից և բջջային հեռախոսներից առաջ: Հետևաբար, մենք հաճախ թույլ ենք տալիս մեր բարեկեցությանը երկրորդական լաունջ վերցնել ՝ երբեք իսկապես չգտնելով մարզասրահ կամ ֆիթնեսի դասարան գնալու իդեալական հնարավորություն և, որպես կանոն, արագ սնունդ ընտրելով շատ ավելի շահավետ ընտրությունների փոխարեն: Ոգեշնչող նորությունն այն է, թե ձեզ անհրաժեշտ է միայն ինչ-որ օգնություն գրառումների պահպանման գործում, թե՞ ձեր առաջընթացը վերահսկելու համար:
Տեխնոլոգիան արագ զարգանում է: Հետևաբար, մենք քամին ենք բռնում ինչ -որ նորարարության, որը կփոխի աշխարհը և դրանում սովորելու ձևը: Երբ դուք զբաղվում եք համակարգիչներով, կոդավորմամբ և ռոբոտներով կամ պարզապես սիրում եք շոշափել, այնտեղ տեխնիկական օրհնություն կա: Raspberry Pi- ն, միկրո, մեկ տախտակ ունեցող Linux համակարգիչը, նվիրված է նորարարական տեխնոլոգիայով սովորելու ձևի բարելավմանը, ինչպես նաև ամբողջ աշխարհում կրթության ուսուցման բարելավման բանալին: Այսպիսով, որո՞նք են այն հնարավոր արդյունքները, որոնք կարող ենք անել, եթե մոտակայքում ունենանք Raspberry Pi և 3 առանցքի արագացուցիչ: Ի՞նչ կասեք, որ մենք գտնենք սա: Այս առաջադրանքում մենք ստուգելու ենք արագացումը 3 ուղղահայաց առանցքների վրա ՝ X, Y և Z, օգտագործելով Raspberry Pi և LIS3DHTR ՝ 3 առանցքի արագացուցիչ: Այսպիսով, մենք պետք է այս ճամփորդության ընթացքում տեսնենք, որ ստեղծվի համակարգ, որը կստուգի եռաչափ արագացումը դեպի վեր կամ G- ուժը:
Քայլ 1: Մենք պահանջում ենք հիմնական սարքավորում
Խնդիրները մեզ համար ավելի քիչ էին, քանի որ մենք ունենք հսկայական քանակությամբ իրեր, որոնցից աշխատելու տեղ կա: Ամեն դեպքում, մենք գիտենք, թե որքան դժվար է ուրիշների համար անարատ ժամանակում աջ հատվածը կուտակել օգտակար վայրից, և դա պաշտպանվում է ՝ չնչին ուշադրություն դարձնելով յուրաքանչյուր կոպեկին: Այսպիսով, մենք կօգնենք ձեզ: Հետևեք ուղեկցողին ՝ մասերի ամբողջական ցուցակ ստանալու համար:
1. Ազնվամորի Պի
Նախնական քայլը Raspberry Pi տախտակի ձեռքբերումն էր: Raspberry Pi- ն Linux- ի վրա հիմնված մեկ տախտակ ունեցող համակարգիչ է: Այս փոքրիկ ԱՀ -ն մի մեծ հարված ունի հաշվողական հզորության մեջ, որն օգտագործվում է որպես գաջեթների գործունեության մի մաս և այնպիսի պարզ գործողություններ, ինչպիսիք են աղյուսակները, բառերի պատրաստումը, վեբ սկանավորումն ու էլ. Փոստը և խաղերը:
2. I2C Shield ազնվամորու Pi- ի համար
Raspberry Pi- ի առաջնային մտահոգությունը I²C նավահանգիստն է: Դրա համար TOUTPI2 I²C միակցիչը հնարավորություն է տալիս Rasp Pi- ն օգտագործել ²ԱՆԿԱԱ IC սարքերի հետ: Այն հասանելի է DCUBE Store- ում
3. 3 առանցքի արագացուցիչ, LIS3DHTR
LIS3DH- ը ծայրահեղ ցածր էներգիայի բարձր արդյունավետությամբ երեք առանցքի գծային արագացուցիչ է, որը պատկանում է «նանո» ընտանիքին ՝ թվային I2C/SPI սերիական ինտերֆեյսի ստանդարտ ելքով: Այս սենսորը ձեռք ենք բերել DCUBE Store- ից
4. Միացման մալուխ
Մենք ձեռք ենք բերել I2C Connecting մալուխը DCUBE Store- ից
5. Միկրո USB մալուխ
Ամենափոքր տարակուսած, բայց ամենաուժեղն այնքանով, որքանով ուժի կարիք ունի, Raspberry Pi- ն է: Գործարքի ամենադյուրին ճանապարհը Micro USB մալուխի օգտագործումն է:
6. Վեբ հասանելիությունը անհրաժեշտություն է
INTERNET- ի երեխաները ԵՐԲԵՔ չեն քնում:
Ստացեք ձեր Raspberry Pi- ն կապված Ethernet (LAN) մալուխի հետ և միացրեք այն ձեր ցանցային երթուղիչին: Ընտրովի, որոնեք WiFi միակցիչ և օգտագործեք USB պորտերից մեկը ՝ հեռավոր համակարգին հասնելու համար: Դա խստապահանջ որոշում է ՝ պարզ, փոքր և տգեղ:
7. HDMI մալուխ/հեռավոր մուտք
Raspberry Pi- ն ունի HDMI պորտ, որը կարող եք հատուկ միացնել էկրանին կամ հեռուստացույցին HDMI մալուխով: Ընտրովի, դուք կարող եք օգտագործել SSH- ը ՝ ձեր Raspberry Pi- ի հետ կապվելու Linux համակարգչից կամ տերմինալից Macintosh- ից: Նմանապես, անվճար և բաց կոդով տերմինալի էմուլատոր PuTTY- ն հնչում է որպես արժանապատիվ այլընտրանք:
Քայլ 2: Սարքաշարի միացում
Կատարեք սխեման ըստ սխեմատիկ հայտնվածի: Կազմեք դիագրամ և ճշգրիտ վերցրեք ուրվագծից հետո: Երևակայությունն ավելի կարևոր է, քան Գիտելիքը:
Raspberry Pi- ի և I2C Shield- ի միացում
Ամեն ինչից վեր վերցրեք Raspberry Pi- ն և դրա վրա նշեք I2C Shield- ը: Սեղմեք Shield- ը Pi- ի GPIO կապում, և մենք կավարտենք այս առաջընթացով, ինչպես կարկանդակի պես պարզ (տես լուսանկարը):
Սենսորային և ազնվամորու Pi- ի միացում
Վերցրեք տվիչը և դրա հետ միացրեք I2C մալուխը: Այս մալուխի համապատասխան շահագործման համար խնդրում ենք հիշել I2C ելքը ՄԻՇՏ կապված I2C մուտքի հետ: Նույնը պետք է արվի Raspberry Pi- ի դեպքում, երբ դրա վրա տեղադրված է I2C վահանը GPIO կապում:
Մենք հաստատում ենք I2C մալուխի օգտագործումը, քանի որ այն ժխտում է քորոցների, ամրացման և անհարմարության հետազոտման անհրաժեշտությունը նույնիսկ ամենափոքր պտուտակով: Այս հիմնարար կցորդի և խաղալու մալուխի միջոցով դուք կարող եք արդյունավետ կերպով ներկայացնել, փոխանակել գործիքը կամ ավելի շատ գործիքներ ավելացնել ծրագրին: Սա հեշտացնում է աշխատանքային քաշը մինչև զգալի մակարդակ:
Նշում. Շագանակագույն մետաղալարը պետք է հուսալիորեն հետևի Ground (GND) կապին մեկ սարքի ելքի և մեկ այլ սարքի մուտքի միջև:
Վեբ ցանցը բանալին է
Մեր ջանքերը հաղթական դարձնելու համար մենք պահանջում ենք ինտերնետային ասոցիացիա մեր Raspberry Pi- ի համար: Դրա համար դուք ունեք ընտրություն, ինչպիսին է Ethernet (LAN) մալուխի միացումը տան ցանցին: Ավելին, որպես այլընտրանք, անկախ ամեն ինչից, հարմար դասընթացը WiFi USB միակցիչի օգտագործումն է: Որպես կանոն, դրա համար վարորդից պահանջում եք, որպեսզի այն աշխատի: Այսպիսով, հակված եղեք նկարագրության մեջ Linux- ով:
Էներգամատակարարում
Միացրեք Micro USB մալուխը Raspberry Pi- ի սնուցման վարդակին: Unchալեք և պատրաստ ենք:
Միացում էկրանին
Մենք կարող ենք ունենալ HDMI մալուխ ՝ կապված այլ էկրանի հետ: Որոշ դեպքերում, դուք պետք է հասնեք Raspberry Pi- ին ՝ առանց այն էկրանին միացնելու, կամ գուցե անհրաժեշտ լինի ինչ -որ այլ տեղ դիտել դրա տվյալները: Ceիշտ է, կան նորարարական և ֆինանսապես խելամիտ մոտեցումներ `որպես այդպիսին վարվելու: Նրանցից մեկն օգտագործում է -SSH (հեռավոր հրամանատարական տողի մուտք): Դուք նաև կարող եք դրա համար օգտագործել PUTTY ծրագրակազմը: Սրանք առաջադեմ օգտվողների համար են: Այսպիսով, մանրամասները այստեղ ներառված չեն:
Քայլ 3. Python ծածկագրումը Raspberry Pi- ի համար
Raspberry Pi- ի և LIS3DHTR ցուցիչի Python ծածկագիրը հասանելի է մեր GithubRepository- ում:
Նախքան ծածկագրին անցնելը, համոզվեք, որ կարդում եք Readme արխիվում տրված կանոնները և ըստ դրա կարգավորեք ձեր Raspberry Pi- ն: Ուղղակի մի ակնթարթ կդադարեցվի բոլոր բաները հաշվի առնելը:
Արագացուցիչը էլեկտրամեխանիկական սարք է, որը չափելու է արագացման ուժերը: Այս ուժերը կարող են լինել ստատիկ ՝ նման ձեր ոտքերի ձգող ծանրության մշտական ուժին, կամ կարող են փոփոխական լինել ՝ առաջացած արագացուցիչի շարժման կամ թրթռման միջոցով:
Ուղեկցողը պիթոնի ծածկագիրն է, և դուք կարող եք կլոնավորել և հարմարեցնել ծածկագիրը ցանկացած ձևով, որին ցանկանում եք:
# Տարածված է ազատ կամքի լիցենզիայի միջոցով: # LIS3DHTR # Այս կոդը նախատեսված է աշխատելու LIS3DHTR_I2CS I2C մինի մոդուլի հետ, որը հասանելի է dcubestore.com # https://dcubestore.com/product/lis3dhtr-3-axis-accelerometer-digital-output-motion-sensor-i%C2 %B2c- մինի մոդուլ/
ներմուծել smbus
ներմուծման ժամանակը
# Ձեռք բերեք I2C ավտոբուս
ավտոբուս = smbus. SMBus (1)
# LIS3DHTR հասցե, 0x18 (24)
# Ընտրել կառավարման ռեգիստր 1, 0x20 (32) # 0x27 (39) Միացման ռեժիմ, Տվյալների արագության ընտրություն = 10 Հց # X, Y, Z-Axis միացված ավտոբուս: գրել_բայթ_ տվյալներ (0x18, 0x20, 0x27) # LIS3DHTR հասցե, 0x18 (24) # Ընտրել հսկիչ ռեգիստր 4, 0x23 (35) # 0x00 (00) Շարունակական թարմացում, լայնածավալ ընտրություն = +/- 2G ավտոբուս: գրեք_բայթ_տվյալներ (0x18, 0x23, 0x00)
ժամանակ. քուն (0.5)
# LIS3DHTR հասցե, 0x18 (24)
# Կարդացեք տվյալները 0x28 (40), 2 բայթ # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x18, 0x28) data1 = bus.read_byte_data (0x18, 0x29)
# Փոխակերպեք տվյալները
xAccl = տվյալներ 1 * 256 + տվյալներ 0 եթե xAccl> 32767: xAccl -= 65536
# LIS3DHTR հասցե, 0x18 (24)
# Կարդացեք տվյալները 0x2A- ից (42), 2 բայթ # Y-Axis LSB, Y-Axis MSB data0 = bus.read_byte_data (0x18, 0x2A) data1 = bus.read_byte_data (0x18, 0x2B)
# Փոխակերպեք տվյալները
yAccl = data1 * 256 + data0 եթե yAccl> 32767: yAccl -= 65536
# LIS3DHTR հասցե, 0x18 (24)
# Կարդացեք տվյալները 0x2C- ից (44), 2 բայթ # Z-Axis LSB, Z-Axis MSB data0 = bus.read_byte_data (0x18, 0x2C) data1 = bus.read_byte_data (0x18, 0x2D)
# Փոխակերպեք տվյալները
zAccl = data1 * 256 + data0 եթե zAccl> 32767: zAccl -= 65536
# Ելքի տվյալները էկրանին
տպել "Արագացում X- առանցքում. %d" %xAccl տպագիր "Արագացում Y- առանցքում. %d" %yAccl տպագրություն "Արագացում Z- առանցքում. %d" %zAccl
Քայլ 4. Օրենսգրքի աշխատունակությունը
Ներբեռնեք (կամ git pull) ծածկագիրը Github- ից և բացեք այն Raspberry Pi- ում:
Գործարկեք տերմինալում կոդը կազմելու և վերբեռնելու հրամանները և տեսեք արդյունքը էկրանին: Մի քանի րոպեից հետո այն կցուցադրի պարամետրերից յուրաքանչյուրը: Որպեսզի երաշխավորեք, որ ամեն ինչ աշխատում է առանց ջանքերի, կարող եք այս համարձակությունը վերցնել ավելի ուշագրավ ձեռնարկի:
Քայլ 5: Applicրագրեր և առանձնահատկություններ
Արտադրված է STMicroelectronics- ի կողմից, LIS3DHTR- ն ունի դինամիկ կերպով օգտագործողի կողմից ընտրված sc 2 գ/± 4 գ/± 8 գ/g 16 գ լիարժեք կշեռքներ, և այն ունակ է չափել արագացումները ելքային տվյալների արագությամբ 1 Հց -ից մինչև 5 կՀց: LIS3DHTR- ը հարմար է Շարժման ակտիվացված գործառույթների և Ազատ անկման հայտնաբերման համար: Այն քանակականացնում է Ձգողականության ստատիկ արագացումը թեքության հայտնաբերման ծրագրերում, և ի լրումն `Դինամիկ արագացման, որը մոտ է շարժման կամ ցնցման պատճառով: Այլ ծրագրեր ներառում են Սեղմեք/Կրկնակի կտտոցով ճանաչում, Խելացի էներգախնայողություն ձեռքի սարքերի համար, քայլաչափ, ցուցադրման կողմնորոշում, խաղային և վիրտուալ իրականության ներածման սարքեր, Ազդեցության ճանաչում և մուտքագրում և թրթռումների մոնիտորինգ և փոխհատուցում:
Քայլ 6: Եզրակացություն
Վստահեք այս ձեռնարկմանը `խթանելով հետագա փորձարկումները: Այս I2C սենսորը ֆենոմենալ հարմարվողական է, համեստ և մատչելի: Քանի որ դա ահավոր աստիճանի մշտական շրջանակ է, կան հետաքրքիր եղանակներ, որոնցով դուք կարող եք ընդլայնել այս առաջադրանքը և նույնիսկ կատարելագործել այն:
Օրինակ, կարող եք սկսել Pedometer- ի գաղափարով ՝ օգտագործելով LIS3DHTR և Raspberry Pi: Վերոնշյալ առաջադրանքի դեպքում մենք օգտագործել ենք հիմնարար հաշվարկներ: Արագացումը կարող է լինել համապատասխան պարամետր ՝ քայլելու որոշումը վերլուծելու համար: Դուք կարող եք ստուգել շարժման երեք բաղադրիչները անհատի համար, որոնք առաջ են (գլորում, X), կողքից (սկիպիդար, Y) և ուղղահայաց (շեղման առանցք, Z): Բոլոր 3 առանցքների բնորոշ օրինակը գրանցված է: Առնվազն 1 առանցք կունենա համեմատաբար մեծ պարբերական արագացման արժեքներ: Այսպիսով, գագաթնակետի ուղղությունը և ալգորիթմը էական են: Հաշվի առնելով այս ալգորիթմի քայլերի պարամետրը (թվային զտիչ, գագաթնակետի հայտնաբերում, ժամանակի պատուհան և այլն), կարող եք ճանաչել և հաշվել քայլերը, ինչպես նաև չափել հեռավորությունը, արագությունը և այրված կալորիաները: Այսպիսով, դուք կարող եք օգտագործել այս սենսորը տարբեր եղանակներով, որոնք կարող եք հաշվի առնել: Մենք վստահում ենք, որ ձեզ բոլորին դուր է գալիս: Մենք կփորձենք ավելի արագ, քան ուշ քայլել այս քայլաչափի աշխատանքային պատկերը ՝ կազմաձևը, ծածկագիրը, հատվածը, որը հաշվում է քայլելն ու վազելն ու կալորիաներն անջատելու միջոցները:
Ձեր հանգստության համար մենք ունենք հետաքրքիր տեսանյութ YouTube- ում, որը կարող է օգնել ձեր հետազոտությանը: Վստահեք, որ այս ձեռնարկությունը մոտիվացնում է հետագա հետազոտություններին: Շարունակեք մտորել! Հիշեք, որ պետք է փնտրեք, քանի որ համառորեն սպասվում է:
Խորհուրդ ենք տալիս:
Խմբաքանակի ֆայլ. Շարժման վերահսկում `3 քայլ
Փաթեթային ֆայլ. Շարժման վերահսկում. Երբ ես փնտրեցի, թե ինչպես ստեղծել շարժման վերահսկողություն CMD- ում, ճշգրիտ արդյունքներ չգտա, ուստի որոշեցի կատարել իմ սեփական վերահսկողությունը, որն աշխատում է շարժման WASD և շրջադարձի 1234 ստեղներով:
3 առանցքի արագացուցիչ, ADXL345 Raspberry Pi- ով Python- ի միջոցով. 6 քայլ
3-Axis Accelerometer, ADXL345 With Raspberry Pi օգտագործելով Python. Մտածեք մի գործիքի մասին, որը կարող է ստուգել այն կետը, որի վրա ձեր Offroader- ը թեքված է դեպի ձգձգված: Արդյո՞ք դա հաճելի չէր լինի այն դեպքում, երբ ինչ -որ մեկը հարմարվում է, երբ հնարավոր է շուռ տալ: Ակնհայտ է, որ այո: Ճիշտ կլիներ
Դարպասների վերահսկում Google Օգնականի միջոցով ESP8266 NodeMCU- ի միջոցով ՝ 6 քայլ
ESP8266 NodeMCU- ի միջոցով Gate Control- ը Google Assistent- ի միջոցով. Սա իմ առաջին նախագիծն է հրահանգների վերաբերյալ, այնպես որ խնդրում եմ մեկնաբանել ստորև, եթե հնարավոր են բարելավումներ: Գաղափարն այն է, որ google- ի օգնականը ազդանշան ուղարկի դարպասի կառավարման տախտակին: Այսպիսով, հրաման ուղարկելով, կլինի փոխանցում, որը կփակի
3 առանցքի արագացուցիչ LIS2HH12 մոդուլ. 10 քայլ (նկարներով)
3 Axis Accelerometer LIS2HH12 մոդուլ. Այս Instructable- ը համարվում է սկսնակ մակարդակ `arduino ծրագրային ապահովման և զոդման որոշակի փորձով: LIS2HH12 մոդուլը պատրաստված է Tiny9- ի կողմից: Tiny9- ը նոր ընկերություն է, որը զբաղվում է ինքնասպասարկողների, ընկերությունների կամ գյուտարարների համար սենսորային մոդուլների վաճառքով: Այնտեղ
Շարժման վերահսկվող վարդակից - շարժման զգայուն լույսից `6 քայլ
Շարժման վերահսկվող վարդակից - Շարժման զգայուն լույսից. Պատկերացրեք, որ դուք հնարամիտ եք, ով գնում է բլոկի ամենասարսափելի տունը: Բոլոր գայլերի, ուրվականների և գերեզմանների կողքով անցնելուց հետո դուք վերջապես հասնում եք վերջին ճանապարհին: Դուք կարող եք տեսնել կոնֆետը ձեր առջևի ամանի մեջ: Բայց հետո հանկարծ մի ղո