Satura rādītājs:

Kustību vadība ar Raspberry Pi un LIS3DHTR, 3 asu akselerometrs, izmantojot Python: 6 soļi
Kustību vadība ar Raspberry Pi un LIS3DHTR, 3 asu akselerometrs, izmantojot Python: 6 soļi

Video: Kustību vadība ar Raspberry Pi un LIS3DHTR, 3 asu akselerometrs, izmantojot Python: 6 soļi

Video: Kustību vadība ar Raspberry Pi un LIS3DHTR, 3 asu akselerometrs, izmantojot Python: 6 soļi
Video: Умный выключатель в круглый подрозетник с радио повторителем, легкая и быстрая установка 2024, Jūlijs
Anonim
Image
Image
Nepieciešamā pamata aparatūra
Nepieciešamā pamata aparatūra

Skaistums mūs ieskauj, bet parasti mums ir jāstaigā dārzā, lai to zinātu. - Rumi

Kā izglītota grupa, kas, šķiet, esam, mēs ieguldām lielāko daļu savas enerģijas, strādājot pie personālajiem datoriem un mobilajiem tālruņiem. Tāpēc mēs bieži ļaujam savai labsajūtai izmantot papildu atpūtas telpu, nekad neatrodot ideālu iespēju apmeklēt trenažieru zāli vai fitnesa nodarbības un parasti izvēloties ātro ēdienu, nevis daudz izdevīgāku izvēli. Uzmundrinošas ziņas ir tas, vai viss, kas jums nepieciešams, ir palīdzība lietvedībā vai jūsu progresa uzraudzība, jūs varat izmantot mūsdienu jauninājumus, lai izgatavotu kādu sīkrīku, lai palīdzētu sev.

Tehnoloģijas strauji attīstās. Konsekventi mēs uztveram kādu jaunu jauninājumu, kas mainīs pasauli un veidu, kā mēs tajā mācāmies. Kad jūs domājat par datoriem, kodēšanu un robotiem vai vienkārši patīk mētāties, tur ir tehnoloģiju svētība. Raspberry Pi, mikro, vienas plates Linux dators, ir paredzēts, lai uzlabotu mācīšanās veidu, izmantojot novatoriskas tehnoloģijas, bet arī galvenais, lai uzlabotu izglītības apguvi visā pasaulē. Tātad, kādi ir iespējamie rezultāti, ko mēs varam darīt, ja tuvumā ir Raspberry Pi un 3 asu akselerometrs? Kā būtu, ja mēs to atrastu! Šajā uzdevumā mēs pārbaudīsim paātrinājumu uz 3 perpendikulārām asīm, X, Y un Z, izmantojot Raspberry Pi un 3 asu akselerometru LIS3DHTR. Tāpēc mums šajā braucienā vajadzētu redzēt, kā izveidot sistēmu, lai pārbaudītu trīsdimensiju paātrinājumu vai G-Force.

1. darbība. Nepieciešamā pamata aparatūra

Nepieciešamā pamata aparatūra
Nepieciešamā pamata aparatūra
Nepieciešamā pamata aparatūra
Nepieciešamā pamata aparatūra

Problēmas mums bija mazākas, jo mums ir milzīgs daudzums lietu, no kurām strādāt. Jebkurā gadījumā mēs zinām, kā citiem ir apgrūtinoši savākt pareizo daļu nevainojamā laikā no noderīgās vietas, un tā tiek aizstāvēta, neņemot vērā katru santīmu. Tāpēc mēs jums palīdzēsim. Izpildiet pievienoto, lai iegūtu pilnu detaļu sarakstu.

1. Aveņu Pi

Sākotnējais solis bija iegūt Raspberry Pi dēli. Raspberry Pi ir uz Linux balstīts vienas plates PC. Šis mazais dators nodrošina jaudīgu skaitļošanas jaudu, ko izmanto kā daļu no sīkrīku aktivitātēm un vienkāršām darbībām, piemēram, izklājlapām, vārdu sagatavošanas, tīmekļa skenēšanas un e -pasta, kā arī spēlēm.

2. I2C vairogs Raspberry Pi

Galvenās bažas par Raspberry Pi patiesībā nav, ir I²C ports. Tāpēc TOUTPI2 I²C savienotājs dod jums iespēju izmantot Rasp Pi ar jebkuru I²C ierīci. Tas ir pieejams veikalā DCUBE

3. 3 asu akselerometrs, LIS3DHTR

LIS3DH ir īpaši mazjaudīgs augstas veiktspējas trīs asu lineārais akselerometrs, kas pieder “nano” saimei, ar digitālo I2C/SPI sērijas interfeisa standarta izvadi. Mēs ieguvām šo sensoru no DCUBE veikala

4. Savienojošais kabelis

Mēs iegādājāmies I2C savienojošo kabeli no veikala DCUBE

5. Mikro USB kabelis

Mazākais apmulsušais, tomēr visstingrākais, cik nepieciešams elektroenerģija, ir Raspberry Pi! Vienkāršākais veids, kā tikt galā, ir izmantot Micro USB kabeli.

6. Piekļuve tīmeklim ir nepieciešama

Interneta bērni NEKAD neguļ

Saņemiet savu Raspberry Pi ar Ethernet (LAN) kabeli un pievienojiet to tīkla maršrutētājam. Izvēlieties, meklējiet WiFi savienotāju un izmantojiet vienu no USB portiem, lai piekļūtu attālajai sistēmai. Tas ir dedzīgs lēmums, vienkāršs, mazs un slikts!

7. HDMI kabelis/attālā piekļuve

Raspberry Pi ir HDMI ports, kuru varat īpaši savienot ar ekrānu vai televizoru, izmantojot HDMI kabeli. Pēc izvēles jūs varat izmantot SSH, lai saistītu ar savu Raspberry Pi no Linux datora vai Macintosh no termināļa. Tāpat PuTTY, bezmaksas un atvērtā koda termināļa emulators, izklausās kā pienācīga alternatīva.

2. darbība. Aparatūras pievienošana

Aparatūras savienošana
Aparatūras savienošana
Aparatūras savienošana
Aparatūras savienošana
Aparatūras savienošana
Aparatūras savienošana

Izveidojiet ķēdi saskaņā ar parādīto shēmu. Izveidojiet diagrammu un precīzi ņemiet pēc kontūras. Iztēle ir svarīgāka par zināšanām.

Raspberry Pi un I2C Shield savienojums

Galvenais, paņemiet Raspberry Pi un pamaniet uz tā I2C vairogu. Uzmanīgi nospiediet vairogu virs Pi GPIO tapām, un mēs esam pabeiguši šo vienkāršo progresu kā pīrāgs (skat. Momentuzņēmumu).

Sensora un Raspberry Pi savienojums

Paņemiet sensoru un pievienojiet tam I2C kabeli. Lai pareizi izmantotu šo kabeli, lūdzu, atcerieties, ka I2C izeja VIENMĒR ir saistīta ar I2C ievadi. Tas pats jāņem vērā pēc Raspberry Pi ar I2C vairogu, kas uzstādīts virs tā, GPIO tapām.

Mēs atbalstām I2C kabeļa izmantošanu, jo tas novērš nepieciešamību pārbaudīt pinouts, stiprinājumus un diskomfortu, ko rada pat vismazākā skrūve. Izmantojot šo pamata stiprinājuma un atskaņošanas kabeli, jūs varat efektīvi prezentēt, nomainīt sīkrīkus vai pievienot papildu sīkrīkus lietojumprogrammai. Tas atvieglo darba svaru līdz ievērojamam līmenim.

Piezīme. Brūnajam vadam vajadzētu droši sekot zemējuma (GND) savienojumam starp vienas ierīces izeju un citas ierīces ieeju

Tīmekļa tīkls ir galvenais

Lai mūsu centieni būtu uzvarējuši, mūsu Raspberry Pi ir nepieciešama interneta asociācija. Šim nolūkam varat izvēlēties, piemēram, savienot Ethernet (LAN) kabeli ar mājas tīklu. Turklāt kā alternatīva, lai arī kā būtu, piemērots veids ir izmantot WiFi USB savienotāju. Parasti, lai tas darbotos, jums ir nepieciešams vadītājs. Tāpēc aprakstā sliecieties uz to, kurā ir Linux.

Enerģijas padeve

Pievienojiet Micro USB kabeli Raspberry Pi barošanas ligzdai. Punch up, un mēs esam gatavi.

Savienojums ar ekrānu

HDMI kabelis var būt saistīts ar citu ekrānu. Dažos gadījumos jums ir jādodas uz Raspberry Pi, nepiesaistot to ekrānam, vai arī jums, iespējams, vajadzēs apskatīt dažus datus no tā no citas vietas. Iespējams, ir novatoriskas un finansiāli gudras pieejas, kā rīkoties kā tādai. Viens no tiem ir -SSH (attālās komandrindas pieteikšanās) izmantošana. Šim nolūkam varat izmantot arī PUTTY programmatūru. Tie ir paredzēti pieredzējušiem lietotājiem. Tātad detaļas šeit nav iekļautas.

3. darbība: Raspberry Pi kodēšana Python

Python kodēšana Raspberry Pi
Python kodēšana Raspberry Pi

Raspberry Pi un LIS3DHTR sensora Python kods ir pieejams mūsu GithubRepository.

Pirms turpināt kodu, noteikti izlasiet Readme arhīvā sniegtos noteikumus un iestatiet Raspberry Pi saskaņā ar to. Tas tikai uz brīdi atelps, lai izdarītu visas apsvērtās lietas.

Akselerometrs ir elektromehānisks sīkrīks, kas novērtēs paātrinājuma spēkus. Šīs spējas var būt statiskas, līdzīgas pastāvīgam smaguma spēkam, kas velk pie jūsu kājām, vai arī tās var mainīt - tās var iegūt, pārvietojot vai vibrējot akselerometru.

Pievienotais ir pitona kods, un jūs varat klonēt un pielāgot kodu jebkurā veidā, uz kuru jūs sliecaties.

# Izplatīts ar brīvās gribas licenci.# Izmantojiet to, kā vēlaties, gūstiet peļņu vai bez maksas, ja tas iekļaujas saistīto darbu licencēs. # LIS3DHTR # Šis kods ir paredzēts darbam ar LIS3DHTR_I2CS I2C mini moduli, kas pieejams vietnē dcubestore.com # https://dcubestore.com/product/lis3dhtr-3-axis-accelerometer-digital-output-motion-sensor-i%C2 %B2c mini modulis/

importēt smbus

importa laiks

# Iegūstiet I2C autobusu

autobuss = smbus. SMBus (1)

# LIS3DHTR adrese, 0x18 (24)

# Atlasiet vadības reģistru1, 0x20 (32) # 0x27 (39) Ieslēgšanas režīms, datu pārraides ātruma izvēle = 10 Hz # X, Y, Z-ass iespējota kopne. Write_byte_data (0x18, 0x20, 0x27) # LIS3DHTR adrese, 0x18 (24)) # Atlasiet kontroles reģistru

miega laiks (0,5)

# LIS3DHTR adrese, 0x18 (24)

# Lasīt datus no 0x28 (40), 2 baiti # X-ass LSB, X-ass MSB data0 = bus.read_byte_data (0x18, 0x28) data1 = bus.read_byte_data (0x18, 0x29)

# Konvertējiet datus

xAccl = dati1 * 256 + dati0, ja xAccl> 32767: xAccl -= 65536

# LIS3DHTR adrese, 0x18 (24)

# Lasīt datus no 0x2A (42), 2 baiti # Y-ass LSB, Y-ass MSB data0 = bus.read_byte_data (0x18, 0x2A) data1 = bus.read_byte_data (0x18, 0x2B)

# Konvertējiet datus

yAccl = dati1 * 256 + dati0, ja yAccl> 32767: yAccl -= 65536

# LIS3DHTR adrese, 0x18 (24)

# Lasīt datus no 0x2C (44), 2 baiti # Z-ass LSB, Z-ass MSB data0 = bus.read_byte_data (0x18, 0x2C) data1 = bus.read_byte_data (0x18, 0x2D)

# Konvertējiet datus

zAccl = dati1 * 256 + dati0, ja zAccl> 32767: zAccl -= 65536

# Izvadiet datus ekrānā

drukāt "Paātrinājums X-asī: %d" %xAccl druka "Paātrinājums Y-asī: %d" %yAccl drukāšana "Paātrinājums Z-asī: %d" %zAccl

4. solis: kodeksa darbspēja

Kodeksa darbspēja
Kodeksa darbspēja

Lejupielādējiet (vai git pull) kodu no Github un atveriet to Raspberry Pi.

Izpildiet komandas, lai terminālī apkopotu un augšupielādētu kodu, un ekrānā redziet ienesīgumu. Pēc pāris minūtēm tas parādīs katru no parametriem. Tā kā tiek garantēts, ka viss darbojas bez piepūles, varat šo uzdrīkstēšanos uzņemties ievērojamāku darbu.

5. darbība: lietojumprogrammas un līdzekļi

Izgatavots STMicroelectronics, LIS3DHTR ir dinamiski lietotāja atlasītas pilnas skalas ± 2g/± 4g/± 8g/± 16g, un tas spēj mērīt paātrinājumus ar izejas datu pārraides ātrumu no 1Hz līdz 5kHz. LIS3DHTR ir piemērots kustību aktivizētām funkcijām un brīvā kritiena noteikšanai. Tas kvantitatīvi nosaka statisko gravitācijas paātrinājumu slīpuma noteikšanas lietojumprogrammās, kā arī dinamisko paātrinājumu, kas gaidāms kustības vai trieciena dēļ. Citas lietojumprogrammas ietver, piemēram, klikšķu/dubultklikšķu atpazīšanu, viedo rokas ierīču enerģijas taupīšanu, pedometru, displeja orientāciju, spēļu un virtuālās realitātes ievades ierīces, triecienu atpazīšanu, reģistrēšanu un vibrāciju uzraudzību un kompensāciju.

6. darbība. Secinājums

Uzticēšanās šim uzņēmumam mudina turpināt eksperimentus. Šis I2C sensors ir fenomenāli pielāgojams, pieticīgs un pieejams. Tā kā tas ir satriecoši nepastāvīgs ietvars, ir interesanti veidi, kā šo uzdevumu paplašināt un pat uzlabot.

Piemēram, varat sākt ar soļu skaitītāja ideju, izmantojot LIS3DHTR un Raspberry Pi. Iepriekš minētajā uzdevumā mēs esam izmantojuši fundamentālus aprēķinus. Paātrinājums var būt svarīgs parametrs, lai analizētu iešanu. Jūs varat pārbaudīt indivīda trīs kustības komponentus, kas ir uz priekšu (pagrieziens, X), sāns (solis, Y) un vertikāls (pagriešanās ass, Z). Tiek ierakstīts tipisks visu 3 asu modelis. Vismaz 1 asij būs relatīvi lielas periodiskās paātrinājuma vērtības. Tātad maksimālais virziens un algoritms ir būtiski. Ņemot vērā šī algoritma soļu parametru (digitālais filtrs, maksimuma noteikšana, laika logs utt.), Jūs varat atpazīt un saskaitīt soļus, kā arī izmērīt attālumu, ātrumu un-zināmā mērā-sadedzinātās kalorijas. Tātad jūs varētu izmantot šo sensoru dažādos veidos, kurus varat apsvērt. Mēs ticam, ka jums visiem tas patīk! Mēs centīsimies ātrāk, nevis vēlāk izveidot šo soļu skaitītāja funkcionālo versiju, konfigurāciju, kodu, daļu, kas aprēķina līdzekļus, lai nodalītu staigāšanu un skriešanu, un sadedzinātās kalorijas.

Jūsu mierinājumam mums ir intriģējošs videoklips pakalpojumā YouTube, kas var palīdzēt jūsu pārbaudē. Uzticieties šim uzņēmumam motivē tālāku izpēti. Turpiniet domāt! Atcerieties, ka jārūpējas, jo neatlaidīgi nāk vairāk.

Ieteicams: