Orodha ya maudhui:

Udhibiti wa Mwendo na Raspberry Pi na LIS3DHTR, 3-Axis Accelerometer, Kutumia Python: 6 Hatua
Udhibiti wa Mwendo na Raspberry Pi na LIS3DHTR, 3-Axis Accelerometer, Kutumia Python: 6 Hatua

Video: Udhibiti wa Mwendo na Raspberry Pi na LIS3DHTR, 3-Axis Accelerometer, Kutumia Python: 6 Hatua

Video: Udhibiti wa Mwendo na Raspberry Pi na LIS3DHTR, 3-Axis Accelerometer, Kutumia Python: 6 Hatua
Video: Octopus Max EZ v1.0 - EZ2130 2024, Novemba
Anonim
Image
Image
Vifaa vya Msingi Tunayohitaji
Vifaa vya Msingi Tunayohitaji

Uzuri unatuzunguka, lakini kawaida, tunahitaji kutembea kwenye bustani kuujua. - Rumi

Kama kundi lenye elimu ambalo tunaonekana kuwa, tunawekeza nguvu zetu nyingi kufanya kazi kabla ya PC na simu zetu za rununu. Kwa hivyo, mara nyingi tunaruhusu ustawi wetu kuchukua chumba cha kupumzika, bila kupata fursa nzuri ya kwenda kwenye ukumbi wa mazoezi au darasa la mazoezi ya mwili na kama sheria kuokota chakula cha haraka juu ya chaguzi zenye faida zaidi. Habari inayoinua ni kwamba unahitaji kila kitu ni msaada wa utunzaji wa rekodi au kufuatilia maendeleo yako, unaweza kutumia uvumbuzi wa leo kutengeneza vifaa kadhaa kujisaidia.

Teknolojia inaendelea haraka. Kwa kawaida, tunapata upepo wa uvumbuzi mpya ambao utabadilisha ulimwengu na njia tunayojifunza ndani yake. Unapokuwa kwenye PC, kuweka alama, na roboti au unapenda tu kufikiria, kuna baraka ya teknolojia huko nje. Raspberry Pi, kompyuta ndogo ndogo ya bodi ya Linux, imejitolea kuboresha njia unayojifunza na teknolojia ya ubunifu lakini pia ufunguo wa kuboresha ujifunzaji wa elimu ulimwenguni kote. Kwa hivyo ni matokeo gani ambayo tunaweza kufanya ikiwa tuna Raspberry Pi na Accelerometer ya axis 3 karibu? Vipi kuhusu tunapata hii! Katika kazi hii, tutaangalia uharakishaji kwenye shoka 3 za perpendicular, X, Y na Z kutumia Raspberry Pi na LIS3DHTR, 3-axis accelerometer. Kwa hivyo tunapaswa kuona kwenye safari hii kuunda mfumo wa kuangalia uongezaji wa 3-dimensional up au G-Force.

Hatua ya 1: Vifaa vya Msingi Tunayohitaji

Vifaa vya Msingi Tunayohitaji
Vifaa vya Msingi Tunayohitaji
Vifaa vya Msingi Tunayohitaji
Vifaa vya Msingi Tunayohitaji

Masuala yalikuwa chini kwetu kwani tuna idadi kubwa ya vitu vilivyolala kufanya kazi kutoka. Kwa hali yoyote, tunajua jinsi ilivyo ngumu kwa wengine kukusanya sehemu sahihi katika wakati safi kutoka mahali pazuri na ambayo inalindwa kutilia maanani kila senti. Kwa hivyo tunakusaidia. Fuata ufuatao kupata orodha kamili ya sehemu.

1. Raspberry Pi

Hatua ya kwanza ilikuwa kupata bodi ya Raspberry Pi. Raspberry Pi ni bodi moja ya Linux inayotegemea Linux. PC hii ndogo inaunganisha nguvu ya kompyuta, inayotumiwa kama sehemu ya shughuli za vifaa, na shughuli za moja kwa moja kama lahajedwali, kuandaa neno, skanning ya wavuti na barua pepe, na michezo.

2. I2C Shield kwa Raspberry Pi

Wasiwasi wa msingi Raspberry Pi hayupo kweli ni bandari ya I²C. Kwa hivyo, kontakt TOUTPI2 I²C inakupa hisia ya kutumia Rasp Pi na vifaa vyovyote vya I²C. Inapatikana kwenye Duka la DCUBE

3. Accelerometer ya mhimili 3, LIS3DHTR

LIS3DH ni nguvu ya chini ya nguvu ya juu ya utendaji wa axes tatu ya kasi ya kasi ya mali ya "nano", na I2C / SPI serial interface standard pato. Tulipata sensa hii kutoka Duka la DCUBE

4. Kuunganisha Cable

Tulipata kebo ya Kuunganisha ya I2C kutoka Duka laDCUBE

5. kebo ndogo ya USB

Kidogo kilichoshangaza, lakini kikali zaidi kwa kiwango cha hitaji la nguvu ni Raspberry Pi! Njia rahisi ya kushughulikia ni kwa kutumia kebo ya Micro USB.

6. Upataji wa Mtandao ni Hitaji

Watoto wa MTANDAO KAMWE wasilale

Pata Raspberry yako inayohusishwa na kebo ya Ethernet (LAN) na uiunganishe na router yako ya mtandao. Chagua, tafuta kontakt WiFi na tumia moja ya bandari za USB kufika kwenye mfumo wa mbali. Ni uamuzi mzuri, rahisi, kidogo na mbaya!

7. Cable ya HDMI / Ufikiaji wa mbali

Raspberry Pi ina bandari ya HDMI ambayo unaweza kuunganisha haswa kwenye skrini au Runinga na kebo ya HDMI. Chagua, unaweza kutumia SSH kushirikiana na Raspberry Pi yako kutoka kwa PC ya Linux au Macintosh kutoka kwa terminal. Vivyo hivyo, PuTTY, emulator ya terminal ya bure na chanzo wazi inaonekana kama njia mbadala nzuri.

Hatua ya 2: Kuunganisha vifaa

Kuunganisha vifaa
Kuunganisha vifaa
Kuunganisha vifaa
Kuunganisha vifaa
Kuunganisha vifaa
Kuunganisha vifaa

Fanya mzunguko kulingana na skimu iliyoonekana. Chora mchoro na chukua baada ya muhtasari haswa. Mawazo ni muhimu zaidi kuliko Maarifa.

Uunganisho wa Raspberry Pi na I2C Shield

Zaidi ya yote, chukua Raspberry Pi na uone I2C Shield juu yake. Bonyeza Shield vizuri juu ya pini za GPIO za Pi na tumekamilika na maendeleo haya rahisi kama pai (angalia picha).

Uunganisho wa Sensor na Raspberry Pi

Chukua sensorer na Unganisha Cable ya I2C nayo. Kwa utendakazi unaofaa wa Kebo hii, tafadhali kumbuka Pato la I2C Daima hushirikiana na Ingizo la I2C. Vivyo hivyo lazima ichukuliwe kwa Raspberry Pi na ngao ya I2C iliyowekwa juu yake pini za GPIO.

Tunakubali utumiaji wa kebo ya I2C kwani inapuuza ulazima wa kuchunguza pini, kufunga, na usumbufu ulioletwa na hata kiboreshaji kidogo. Ukiwa na kiambatisho hiki cha msingi na uchezaji wa kebo, unaweza kuwasilisha, badilisha vidude, au uongeze vidude zaidi kwenye programu kwa ufanisi. Hii inawezesha uzito wa kazi hadi kiwango kikubwa.

Kumbuka: Waya wa hudhurungi inapaswa kufuata kwa uaminifu unganisho la Ground (GND) kati ya pato la kifaa kimoja na uingizaji wa kifaa kingine

Mtandao ni muhimu

Ili kufanikisha juhudi zetu, tunahitaji ushirika wa Mtandao kwa Raspberry Pi yetu. Kwa hili, una chaguo kama kuingiliana kwa kebo ya Ethernet (LAN) na mtandao wa nyumbani. Kwa kuongezea, kama njia mbadala, iwe hivyo, kozi ya kukaa ni kutumia kontakt ya USB USB. Kama sheria kwa hili, unahitaji dereva kuifanya ifanye kazi. Kwa hivyo elekea ile iliyo na Linux katika maelezo.

Ugavi wa Umeme

Chomeka kebo ndogo ya USB ndani ya jack ya nguvu ya Raspberry Pi. Piga ngumi na tuko tayari.

Uunganisho kwenye Skrini

Tunaweza kuwa na kebo ya HDMI inayohusishwa na skrini nyingine. Katika hali nyingine, lazima ufike kwenye Raspberry Pi bila kuiingiza kwenye skrini au unaweza kuhitaji kuona data kutoka kwayo kutoka mahali pengine. Inaonekana, kuna njia mpya za ubunifu na kifedha za kufanya hivyo. Mmoja wao anatumia -SSH (kuingia kwa mstari wa amri ya mbali). Unaweza pia kutumia programu ya PUTTY kwa hiyo. Hizi ni za watumiaji wa hali ya juu. Kwa hivyo maelezo hayajajumuishwa hapa.

Hatua ya 3: Coding ya Python ya Raspberry Pi

Coding ya Python kwa Raspberry Pi
Coding ya Python kwa Raspberry Pi

Nambari ya Python ya Raspberry Pi na LIS3DHTR Sensor inapatikana katika GithubRepository yetu.

Kabla ya kuendelea na nambari, hakikisha unasoma sheria zilizopewa kwenye kumbukumbu ya Readme na Sanidi Raspberry Pi yako kulingana nayo. Itapumzika tu kwa muda mfupi kufanya vitu vyote vinavyozingatiwa.

Accelerometer ni kifaa cha elektroniki ambacho kitapima nguvu za kuongeza kasi. Nguvu hizi zinaweza kuwa tuli, sawa na nguvu ya mara kwa mara ya mvuto kuvuta miguuni mwako, au zinaweza kubadilika - kuletwa na kusonga au kutetemesha kasi ya kasi.

Yafuatayo ni nambari ya chatu na unaweza kushikilia na kurekebisha nambari kwa njia yoyote unayoelekea.

# Imesambazwa na leseni ya hiari. # Itumie kwa njia yoyote unayotaka, faida au bure, mradi inalingana na leseni za kazi zake zinazohusiana. # LIS3DHTR # Nambari hii imeundwa kufanya kazi na LIS3DHTR_I2CS I2C Mini Module inayopatikana kutoka dcubestore.com # https://dcubestore.com/product/lis3dhtr-3-axis-accelerometer-digital-output-motion-sensor-i%C2 % B2c-mini-moduli /

kuagiza smbus

muda wa kuagiza

# Pata basi ya I2C

basi = smbus. SMBus (1)

Anwani ya # LIS3DHTR, 0x18 (24)

# Chagua daftari la kudhibiti1, 0x20 (32) # 0x27 (39) Njia ya Nguvu, chaguo la kiwango cha data = 10 Hz # X, Y, Z-Axis basi iliyowezeshwa.write_byte_data (0x18, 0x20, 0x27) # Anwani ya LIS3DHTR, 0x18 (24] # Chagua rejista ya kudhibiti

saa. kulala (0.5)

Anwani ya # LIS3DHTR, 0x18 (24)

# Soma data nyuma kutoka 0x28 (40), 2 ka # X-Axis LSB, X-Axis data ya MSB0 = bus.read_byte_data (0x18, 0x28) data1 = bus.read_byte_data (0x18, 0x29)

# Badilisha data

xAccl = data1 * 256 + data0 ikiwa xAccl> 32767: xAccl - = 65536

Anwani ya # LIS3DHTR, 0x18 (24)

# Soma data nyuma kutoka 0x2A (42), 2 ka # Y-Axis LSB, Y-Axis data ya data ya B00 = bus.read_byte_data (0x18, 0x2A) data1 = bus.read_byte_data (0x18, 0x2B)

# Badilisha data

yAccl = data1 * 256 + data0 ikiwa yAccl> 32767: yAccl - = 65536

Anwani ya # LIS3DHTR, 0x18 (24)

# Soma data nyuma kutoka 0x2C (44), 2 baiti # Z-Axis LSB, Z-Axis data ya MSB0 = bus.read_byte_data (0x18, 0x2C) data1 = bus.read_byte_data (0x18, 0x2D)

# Badilisha data

zAccl = data1 * 256 + data0 ikiwa zAccl> 32767: zAccl - = 65536

# Pato data kwa screen

chapisha "Kuongeza kasi katika X-Axis:% d"% xAccl chapisha "Kuongeza kasi katika Y-Axis:% d"% yAccl chapa "Kuongeza kasi katika Z-Axis:% d"% zAccl

Hatua ya 4: Kufanya kazi kwa Kanuni

Ufanisi wa Kanuni
Ufanisi wa Kanuni

Pakua (au git pull) nambari kutoka Github na uifungue kwenye Raspberry Pi.

Endesha amri za kukusanya na kupakia nambari kwenye terminal na uone mavuno kwenye Screen. Kuchukua baada ya dakika kadhaa, itaonyesha kila moja ya vigezo. Kama matokeo ya kuhakikisha kuwa kila kitu hufanya kazi bila shida, unaweza kuchukua jukumu hili kwa jukumu muhimu zaidi.

Hatua ya 5: Maombi na Vipengele

Iliyotengenezwa na STMicroelectronics, LIS3DHTR ina mizani kamili inayoweza kuchagua ya ± 2g / ± 4g / ± 8g / ± 16g na inauwezo wa kupima kasi na viwango vya data kutoka 1Hz hadi 5kHz. LIS3DHTR inafaa kwa kazi zilizoamilishwa za Mwendo na Ugunduzi wa Bure-Fall. Inafahamisha Kuongeza kasi kwa Mvuto katika Maombi ya Kugundua Tilt, na kwa kuongeza kasi ya Nguvu inayokuja kwa sababu ya Mwendo au Mshtuko. Maombi mengine ni pamoja na kupendwa kwa Utambuzi wa Bonyeza / Bonyeza mara Mbili, Kuokoa Nguvu za Akili kwa Vifaa vya Mkononi, Pedometer, Mwelekeo wa Uonyesho, Michezo ya Kubahatisha na Vifaa vya Kuingiza Ukweli, Utambuzi wa Athari na Uwekaji miti na Ufuatiliaji wa Utetemeshaji na Fidia.

Hatua ya 6: Hitimisho

Amini ahadi hii inahimiza majaribio zaidi. Sensorer hii ya I2C inaweza kubadilika, kawaida na inapatikana. Kwa kuwa ni kwa mfumo wa kudumu wa kiwango cha kutisha, kuna njia za kupendeza unaweza kupanua kazi hii na kuiboresha hata.

Kwa mfano, Unaweza kuanza na wazo la Pedometer kutumia LIS3DHTR na Raspberry Pi. Katika kazi iliyo hapo juu, tumetumia hesabu za kimsingi. Kuongeza kasi kunaweza kuwa kigezo kinachofaa kuchambua tawala la kutembea. Unaweza kuangalia vitu vitatu vya mwendo kwa mtu binafsi aliye mbele (roll, X), upande (lami, Y) na wima (mhimili wa yaw, Z). Mfano wa kawaida wa shoka zote 3 umerekodiwa. Angalau mhimili 1 utakuwa na maadili makubwa ya kuongeza kasi ya mara kwa mara. Kwa hivyo mwelekeo wa kilele na algorithm ni muhimu. Kuzingatia hatua za parameter (Kichujio cha Dijiti, Kugundua kilele, Dirisha la Wakati, n.k.) ya algorithm hii, unaweza kutambua na kuhesabu hatua, na pia kupima umbali, kasi, na-kwa kiwango-kalori zilizochomwa. Kwa hivyo unaweza kutumia kihisi hiki kwa njia anuwai ambazo unaweza kuzingatia. Tunawaamini nyote kama hayo! Tutajaribu kufanya toleo la kazi la pedometer hii mapema kuliko baadaye, usanidi, nambari, sehemu ya kutumia njia za kutenganisha kutembea na kukimbia na Kalori kuchomwa moto.

Kwa faraja yako, tuna video ya kuvutia kwenye YouTube ambayo inaweza kusaidia uchunguzi wako. Amini mradi huu unahamasisha utafutaji zaidi. Endelea kutafakari! Kumbuka kutazama kama zaidi inazidi kuongezeka.

Ilipendekeza: