Tartalomjegyzék:

Mozgásvezérlés Raspberry Pi és LIS3DHTR, 3 tengelyes gyorsulásmérővel, Python használatával: 6 lépés
Mozgásvezérlés Raspberry Pi és LIS3DHTR, 3 tengelyes gyorsulásmérővel, Python használatával: 6 lépés

Videó: Mozgásvezérlés Raspberry Pi és LIS3DHTR, 3 tengelyes gyorsulásmérővel, Python használatával: 6 lépés

Videó: Mozgásvezérlés Raspberry Pi és LIS3DHTR, 3 tengelyes gyorsulásmérővel, Python használatával: 6 lépés
Videó: Учебное пособие по Raspberry Pi: самый простой способ использования акселерометра MPU6050 2024, November
Anonim
Image
Image
Alap hardver, amire szükségünk van
Alap hardver, amire szükségünk van

A szépség körülvesz minket, de általában egy kertben kell sétálnunk, hogy megismerjük. - Rumi

Mint képzett csoport, aminek látszunk, energiánk túlnyomó részét a PC -k és mobiltelefonok előtti munkába fektetjük. Ezért gyakran hagyjuk, hogy jólétünk a másodlagos társalgóba kerüljön, soha nem találva igazán ideális lehetőséget az edzőterembe vagy a fitneszórára, és általában gyors ételeket választunk a sokkal előnyösebb lehetőségek helyett. A felemelő hír az, hogy mindössze egy kis segítségre van szüksége a nyilvántartás vezetésében, vagy az előrehaladás nyomon követéséhez, akkor a mai újításokat felhasználva készíthet valamilyen kütyüt, hogy segítsen Önnek.

A technológia gyorsan fejlődik. Következetesen elkapjuk a szélét valami új innovációnak, amely megváltoztatja a világot és a benne tanuló módszereket. Ha PC -vel, kódolással és robotokkal foglalkozol, vagy csak szeretsz bütykölni, akkor ott van a technikai áldás. A Raspberry Pi, a mikro, egylapos Linux számítógép elkötelezett a tanulási mód javítása mellett az innovatív technológiával, de az oktatás világszerte történő fejlesztésének kulcsa is. Tehát mik azok a lehetséges eredmények, amelyeket akkor tehetünk, ha van egy Raspberry Pi és egy 3 tengelyes gyorsulásmérő a közelben? Mi lenne, ha ezt megtalálnánk! Ebben a feladatban Raspberry Pi és LIS3DHTR, 3 tengelyes gyorsulásmérő segítségével 3 merőleges tengelyen, X, Y és Z, ellenőrizzük a gyorsulást. Látnunk kell tehát ezen az úton, hogy létrehozzunk egy rendszert a háromdimenziós gyorsulás felfelé vagy a G-Force ellenőrzésére.

Lépés: Alap hardver, amire szükségünk van

Alap hardver, amire szükségünk van
Alap hardver, amire szükségünk van
Alap hardver, amire szükségünk van
Alap hardver, amire szükségünk van

A problémák kevésbé voltak számunkra, mivel hatalmas mennyiségű dologgal kell dolgoznunk. Mindenesetre tudjuk, hogy mások számára mennyire bosszantó, hogy makulátlan idő alatt összegyűjtsék a megfelelő részt a segítőkész helyről, és ezt megvédik, minden fillérre nem figyelve. Tehát segítenénk Önnek. Kövesse a mellékelt részt, hogy teljes alkatrészlistát kapjon.

1. Málna Pi

Az első lépés egy Raspberry Pi tábla beszerzése volt. A Raspberry Pi egy egylapos Linux alapú PC. Ez a kis számítógép nagy teljesítményt nyújt a számítási teljesítményben, amelyet a kütyütevékenységek részeként használnak, és olyan egyszerű műveleteket végeznek, mint a táblázatok, a szöveg előkészítése, a webes szkennelés és az e -mail, valamint a játékok.

2. I2C Shield a Raspberry Pi számára

A Raspberry Pi elsődleges hiánya az I²C port. Ezért a TOUTPI2 I²C csatlakozó lehetővé teszi a Rasp Pi használatát bármely I²C eszközzel. Elérhető a DCUBE Store -ban

3. 3 tengelyes gyorsulásmérő, LIS3DHTR

A LIS3DH egy rendkívül kis teljesítményű, nagy teljesítményű, három tengelyes lineáris gyorsulásmérő, amely a „nano” családhoz tartozik, digitális I2C/SPI soros interfész szabványos kimenettel. Ezt az érzékelőt a DCUBE Store -tól szereztük be

4. Csatlakozó kábel

Az I2C csatlakozó kábelt a DCUBE Store -ból szereztük be

5. Micro USB kábel

A legkisebb megzavarodott, de a legszigorúbb az energiaigény tekintetében a Raspberry Pi! A legegyszerűbb módja a Micro USB kábel használata.

6. Szükség van a webes hozzáférésre

INTERNET gyerekek SOHA nem alszanak

Szerezze be a Raspberry Pi -t Ethernet (LAN) kábellel, és csatlakoztassa a hálózati útválasztóhoz. Választható, keressen egy WiFi -csatlakozót, és használja az egyik USB -portot a távoli rendszer eléréséhez. Éles döntés, egyszerű, kicsi és silány!

7. HDMI kábel/távoli hozzáférés

A Raspberry Pi rendelkezik egy HDMI -porttal, amelyet kifejezetten a képernyőhöz vagy a TV -hez csatlakoztathat HDMI -kábellel. Választható, az SSH segítségével a Raspberry Pi -hez társíthat egy Linux PC -ről vagy Macintoshról a terminálról. Hasonlóképpen, a PuTTY, egy ingyenes és nyílt forráskódú terminál-emulátor tisztességes alternatívának tűnik.

2. lépés: A hardver csatlakoztatása

A hardver csatlakoztatása
A hardver csatlakoztatása
A hardver csatlakoztatása
A hardver csatlakoztatása
A hardver csatlakoztatása
A hardver csatlakoztatása

Készítse el az áramkört a megjelenő vázlat szerint. Készítsen diagramot, és pontosan vázolja a vázlat után. A képzelet fontosabb, mint a tudás.

A Raspberry Pi és az I2C Shield csatlakoztatása

Mindenekelőtt vegye be a Raspberry Pi -t, és nézze meg rajta az I2C pajzsot. Finoman nyomja meg a pajzsot a Pi GPIO csapjai fölött, és készen vagyunk ezzel a progresszióval, ami olyan egyszerű, mint a pite (lásd a pillanatot).

Az érzékelő és a Raspberry Pi csatlakoztatása

Vegye ki az érzékelőt és csatlakoztassa hozzá az I2C kábelt. A kábel megfelelő működéséhez kérjük, idézze fel az I2C kimenetet, amelyet MINDIG az I2C bemenethez társít. Ugyanezt kell követni a Raspberry Pi esetében is, amelyre az I2C pajzs van felszerelve, a GPIO csapokat.

Támogatjuk az I2C kábel használatát, mivel ez nem teszi szükségessé a pinoutok, rögzítések és kényelmetlenségek vizsgálatát, amelyet még a legkisebb csavar is okoz. Ezzel az alapvető rögzítő- és lejátszókábellel hatékonyan mutathat be, cserélhet ki modulokat vagy adhat hozzá további modulokat egy alkalmazáshoz. Ez jelentősen megnöveli a munkasúlyt.

Megjegyzés: A barna vezetéknek megbízhatóan követnie kell a föld (GND) kapcsolatot az egyik eszköz kimenete és egy másik eszköz bemenete között

A webhálózat kulcsfontosságú

Ahhoz, hogy törekvésünk győzelemhez jusson, internetes társításra van szükségünk a Raspberry Pi számára. Ehhez választhat például egy Ethernet (LAN) kábel csatlakozását az otthoni hálózathoz. Ezenkívül alternatívaként, bármennyire is, a befogadó tanfolyam a WiFi USB -csatlakozó használata. Ehhez rendszerint egy illesztőprogram szükséges. Tehát hajoljon a leírásban szereplő Linux rendszerhez.

Tápegység

Csatlakoztassa a Micro USB kábelt a Raspberry Pi tápcsatlakozójához. Dobd fel és készen állunk.

Csatlakozás a képernyőhöz

Kapcsolhatjuk a HDMI -kábelt egy másik képernyőhöz. Bizonyos esetekben el kell jutnia a Raspberry Pi -hez anélkül, hogy a képernyőhöz kapcsolódna, vagy előfordulhat, hogy meg kell néznie néhány adatot máshonnan. Elképzelhető, hogy léteznek innovatív és pénzügyileg hozzáértő megközelítések. Az egyik az -SSH (távoli parancssori bejelentkezés) használata. Ehhez szintén használhatja a PUTTY szoftvert. Ezek a haladó felhasználóknak szólnak. Tehát a részletek itt nem szerepelnek.

3. lépés: Python kódolás a Raspberry Pi számára

Python kódolás a Raspberry Pi számára
Python kódolás a Raspberry Pi számára

A Raspberry Pi és a LIS3DHTR érzékelő Python -kódja elérhető a GithubRepository -ban.

Mielőtt továbblépne a kódhoz, feltétlenül olvassa el a Readme archívumban megadott szabályokat, és állítsa be a Raspberry Pi -t ennek megfelelően. Egy pillanatra csak pihenni fog, ha mindent megfontol.

A gyorsulásmérő egy elektromechanikus eszköz, amely a gyorsulási erőket méri. Ezek az erők statikusak lehetnek, hasonlóak a lábadhoz húzó állandó gravitációs erőhöz, vagy megváltoztathatók - a gyorsulásmérő mozgatásával vagy rezgésével.

A kísérő a python kód, és bármikor klónozhatja és módosíthatja a kódot.

# Szabad akaratú licenccel terjesztik.# Bármilyen módon használhatja, haszonnal vagy ingyen, feltéve, hogy illeszkedik a kapcsolódó művek licenceihez. # LIS3DHTR # Ezt a kódot a dcubestore.com webhelyen elérhető LIS3DHTR_I2CS I2C mini modullal való együttműködésre tervezték. # Http://dcubestore.com/product/lis3dhtr-3-axis-accelerometer-digital-output-motion-sensor-i%C2 %B2c-mini-modul/

import smbus

importálási idő

# Szerezzen I2C buszt

busz = smbus. SMBus (1)

# LIS3DHTR cím, 0x18 (24)

# Vezérlőregiszter kiválasztása1, 0x20 (32) # 0x27 (39) Bekapcsolt üzemmód, Adatsebesség-kiválasztás = 10 Hz # X, Y, Z-tengely engedélyezett busz.write_byte_data (0x18, 0x20, 0x27) # LIS3DHTR cím, 0x18 (24)) # Vezérlőregiszter kiválasztása4, 0x23 (35) # 0x00 (00) Folyamatos frissítés, teljes körű kiválasztás = +/- 2G bus.write_byte_data (0x18, 0x23, 0x00)

time.sleep (0,5)

# LIS3DHTR cím, 0x18 (24)

# Adatok visszaolvasása 0x28-ból (40), 2 bájtból

# Konvertálja az adatokat

xAccl = adatok1 * 256 + adatok0, ha xAccl> 32767: xAccl -= 65536

# LIS3DHTR cím, 0x18 (24)

# Adatok visszaolvasása 0x2A-ból (42), 2 bájtból # Y-tengely LSB, Y-tengely MSB data0 = bus.read_byte_data (0x18, 0x2A) data1 = bus.read_byte_data (0x18, 0x2B)

# Konvertálja az adatokat

yAccl = adatok1 * 256 + adatok0, ha yAccl> 32767: yAccl -= 65536

# LIS3DHTR cím, 0x18 (24)

# Adatok visszaolvasása 0x2C-ből (44), 2 bájtból # Z-tengely LSB, Z-tengely MSB data0 = bus.read_byte_data (0x18, 0x2C) data1 = bus.read_byte_data (0x18, 0x2D)

# Konvertálja az adatokat

zAccl = adatok1 * 256 + adatok0, ha zAccl> 32767: zAccl -= 65536

# Adatok megjelenítése a képernyőn

print "Gyorsulás az X tengelyen: %d" %xAccl nyomtatás "Gyorsulás az Y tengelyen: %d" %yAccl nyomtatás "Gyorsulás a Z tengelyen: %d" %zAccl

4. lépés: A kód működőképessége

A kódex működőképessége
A kódex működőképessége

Töltse le (vagy git pull) a kódot a Github -ból, és nyissa meg a Raspberry Pi -ben.

Futtassa a parancsokat a kód fordításához és feltöltéséhez a terminálon, és nézze meg a hozamot a képernyőn. Néhány perc múlva bemutatja az egyes paramétereket. Mivel garantálja, hogy minden könnyedén működik, ezt a merészséget egy figyelemreméltóbb vállalkozásba is viheti.

5. lépés: Alkalmazások és szolgáltatások

Az STMicroelectronics által gyártott LIS3DHTR dinamikusan ± 2g/± 4g/± 8g/± 16g felhasználó által választható teljes skálával rendelkezik, és képes 1 Hz és 5 kHz kimeneti adatátviteli sebességű gyorsulások mérésére. A LIS3DHTR alkalmas mozgással aktivált funkciókhoz és szabadon esés érzékeléshez. Ez számszerűsíti a gravitáció statikus gyorsulását a dőlésérzékelő alkalmazásokban, és emellett a dinamikus gyorsulást a mozgás vagy ütés miatt. Más alkalmazások közé tartozik a kattintás/dupla kattintás felismerés, az intelligens energiatakarékosság kézi eszközökhöz, a lépésszámláló, a kijelző tájolása, a játék- és virtuális valóság -bemeneti eszközök, az ütésfelismerés és a naplózás, valamint a rezgésfigyelés és kompenzáció.

6. lépés: Következtetés

Bízzon ebben a vállalkozásban további kísérletezésre. Ez az I2C érzékelő fenomenálisan alkalmazkodó, szerény és elérhető. Mivel ez egy félelmetes mértékű ideiglenes keret, érdekes módon lehet ezt a feladatot kibővíteni és még tovább javítani.

Például elindulhat egy lépésszámláló ötletével a LIS3DHTR és a Raspberry Pi használatával. A fenti feladatban alapvető számításokat használtunk. A gyorsulás lehet a megfelelő paraméter a gyaloglás döntésének elemzéséhez. Ellenőrizheti az egyén három mozgáskomponensét, amelyek előre (roll, X), oldalsó (pitch, Y) és függőleges (billentési tengely, Z). Mindhárom tengelyre jellemző mintát rögzítünk. Legalább 1 tengely viszonylag nagy periodikus gyorsulási értékekkel rendelkezik. Tehát elengedhetetlen a csúcsirány és az algoritmus. Figyelembe véve az algoritmus lépéseit (digitális szűrő, csúcsérzékelés, időablak, stb.), Felismerheti és megszámolhatja a lépéseket, valamint mérheti a távolságot, a sebességet és bizonyos mértékig az elégetett kalóriákat. Tehát ezt az érzékelőt különféle módon használhatja. Bízunk benne, hogy mindenkinek tetszik! Megpróbáljuk előbb -utóbb elkészíteni ezt a lépésszámlálót, a konfigurációt, a kódot, azt a részt, amely kiszámítja a járás és a futás elválasztásának eszközeit és az elégetett kalóriákat.

Megnyugtatásaként egy érdekes videónk van a YouTube -on, amely segíthet a vizsgán. Bízzon abban, hogy ez a vállalkozás további felfedezésre ösztönöz. Gondolkozz tovább! Ne felejtse el vigyázni, mert kitartóan érkezik.

Ajánlott: