Orodha ya maudhui:

3-Axis Accelerometer, ADXL345 Na Raspberry Pi Kutumia Python: 6 Hatua
3-Axis Accelerometer, ADXL345 Na Raspberry Pi Kutumia Python: 6 Hatua

Video: 3-Axis Accelerometer, ADXL345 Na Raspberry Pi Kutumia Python: 6 Hatua

Video: 3-Axis Accelerometer, ADXL345 Na Raspberry Pi Kutumia Python: 6 Hatua
Video: How to use MPU-9250 Gyroscope, Accelerometer, Magnetometer for Arduino 2024, Novemba
Anonim
3-Axis Accelerometer, ADXL345 Na Raspberry Pi Kutumia Chatu
3-Axis Accelerometer, ADXL345 Na Raspberry Pi Kutumia Chatu

Kufikiria juu ya kifaa ambacho kinaweza kuangalia mahali ambapo Offroader yako imeelekezwa kuelekea kukawia. Je! Haingekuwa ya kupendeza ikiwa kuna mtu atarekebishwa wakati kuna uwezekano wa kuruka? Ni wazi ndiyo. Itakuwa muhimu sana kwa watu ambao wanapenda kwenda milimani na safari za biashara.

Bila shaka, kipindi kizuri cha tathmini ya hali ya juu, IOT iko juu yetu. Kama Gadgets na wapenzi wa Programu, tunaamini, Raspberry Pi, PC ndogo ya Linux imetibu uwezo wa ubunifu wa watu kwa jumla, ikiwa na mlipuko katika mbinu za ubunifu. Kwa hivyo ni nini matokeo yanayowezekana ambayo tunaweza kufanya ikiwa tutakuwa na Raspberry Pi na 3-axis Accelerometer karibu? Tunapaswa kugundua! Katika kazi hii, tutagundua kuongeza kasi kwa shoka 3, X, Y na Z kutumia Raspberry Pi na ADXL345, accelerometer ya 3-axis. Kwa hivyo tunapaswa kuzingatia juu ya safari hii ili kutengeneza mfumo wa kupima kasi ya 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
Vifaa vya Msingi Tunayohitaji
Vifaa vya Msingi Tunayohitaji

Maswala yalikuwa chini kwetu kwani tuna tani ya vitu ambavyo viko karibu kufanya kazi kutoka. Walakini, tunajua jinsi ilivyo shida kwa wengine kukusanya sehemu inayofaa kwa wakati mzuri kutoka mahali pazuri na hiyo ni haki bila kujali kila senti. Kwa hivyo tunakusaidia katika mikoa yote. Soma yafuatayo ili kupata orodha kamili ya sehemu.

1. Raspberry Pi

Hatua ya awali ilikuwa kupata bodi ya Raspberry Pi. Kompyuta hii ndogo, yenye nguvu ndogo hutoa msingi wa bei rahisi na rahisi kwa biashara za elektroniki, Mtandao wa Vitu (IoT), Miji Smart, Elimu ya Shule.

2. I2C Shield kwa Raspberry Pi

Jambo kuu ambalo Raspberry Pi inakosa kweli ni bandari ya I²C. Kwa hivyo, kontakt TOUTPI2 I²C inakupa hisia ya kutumia Rasp Pi na vifaa vya MULTIPLE I²C. Inapatikana kwenye Duka la DCUBE

3. Accelerometer ya mhimili 3, ADXL345

Iliyotengenezwa na Vifaa vya Analog, ADXL345, ni nguvu ya chini ya 3-axis accelerometer na kipimo cha juu cha azimio la 13-bit hadi ± 16g. Tulipata sensa hii kutoka Duka la DCUBE

4. Kuunganisha Cable

Tulikuwa na kebo ya kuunganisha I2C inayopatikana kwenye Duka la DCUBE

5. kebo ndogo ya USB

Iliyofadhaika kidogo, lakini yenye ukali zaidi kulingana na umuhimu wa nguvu ni Raspberry Pi! Njia isiyo na nguvu zaidi ya kuongeza nguvu ya Raspberry Pi ni kwa njia ya kebo ndogo ya USB.

6. Upataji wa Mtandao ni Hitaji

Ufikiaji wa wavuti unaweza kuwezeshwa kupitia kebo ya Ethernet (LAN) inayohusishwa na mtandao wa karibu na wavuti. Kwa upande mwingine, unaweza kushirikiana na mtandao wa wireless kwa kutumia dongle isiyo na waya ya USB, ambayo itahitaji usanidi.

7. Cable ya HDMI / Ufikiaji wa mbali

Ukiwa na kebo ya HDMI kwenye bodi, unaweza kuiunganisha kwenye TV ya dijiti au kwa Monitor. Haja ya kuokoa pesa! Raspberry Pi inaweza kupatikana kwa mbali kutumia mikakati tofauti kama-SSH na Upataji kwenye Wavuti. Unaweza kutumia programu ya chanzo ya PuTTYopen.

Hatua ya 2: Kuunganisha vifaa

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

Fanya mzunguko kulingana na skimu iliyoonekana. Chora muhtasari na uchukue usanidi kwa makusudi.

Uunganisho wa Raspberry Pi na I2C Shield

Zaidi ya yote, chukua Raspberry Pi na uone I2C Shield juu yake. Bonyeza Shield kwa anasa juu ya pini za GPIO za Pi na tumemaliza 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.

Tunaagiza matumizi ya kebo ya I2C kwani inakataa mahitaji ya kutumia pini, kutengenezea, na malaise inayosababishwa na hata kosa dogo zaidi. Ukiwa na kiziba hiki cha msingi na ucheze kebo, unaweza kuanzisha, kubadilisha vifaa, au kuongeza vifaa zaidi kwenye programu kwa urahisi. Hii inafanya mambo kuwa magumu.

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 ubia wetu, tunahitaji muunganisho wa wavuti kwa Raspberry Pi yetu. Kwa hili, una njia mbadala kama kuingiza kebo ya Ethernet (LAN) na mfumo wa nyumbani. Kwa kuongeza, kama chaguo, hata hivyo, njia inayofaa ni kutumia kiunganishi cha WiFi. Baadhi ya wakati wa hii, unahitaji dereva kuifanya ifanye kazi. Kwa hivyo konda kuelekea ile iliyo na Linux kwenye picha.

Ugavi wa Umeme

Chomeka kebo ndogo ya USB ndani ya jack ya nguvu ya Raspberry Pi. Washa taa na tuko vizuri kwenda.

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.

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 Sensor ya ADXL345 inapatikana katika Hifadhi yetu ya Github.

Kabla ya kwenda mbele kwa nambari, hakikisha unasoma miongozo iliyotolewa kwenye hati ya Readme na Sanidi Raspberry Pi yako kama ilivyo. Itasimama tu kwa dakika moja kufanya vile.

Accelerometer ni kifaa kinachopima kuongeza kasi inayofaa; kuongeza kasi sahihi sio sawa na kuongeza kasi ya kuratibu (kiwango cha mabadiliko ya kasi). Mifano ya axis moja na anuwai ya kasi inaweza kupatikana kutambua ukubwa na mwelekeo wa kuongeza kasi sahihi, kama wingi wa vector, na inaweza kutumika kwa mwelekeo wa hisia, kuratibu kuongeza kasi, kutetemeka, mshtuko, na kuanguka katikati ya kupingana.

Nambari iko wazi mbele yako na iko katika muundo wa moja kwa moja zaidi ambao unaweza kuifikiria na haupaswi kuwa na maswala yoyote.

# Imesambazwa na leseni ya hiari. # Itumie kwa njia yoyote unayotaka, faida au bure, mradi inalingana na leseni za kazi zake zinazohusiana. # ADXL345 # Nambari hii imeundwa kufanya kazi na ADXL345_I2CS I2C Mini Module inayopatikana kutoka dcubestore.com # https://dcubestore.com/product/adxl345-3-axis-accelerometer-13-bit-i%C2%B2c-mini moduli /

kuagiza smbus

muda wa kuagiza

# Pata basi ya I2C

basi = smbus. SMBus (1)

Anwani ya # ADXL345, 0x53 (83)

# Chagua rejista ya kiwango cha kipimo cha data, 0x2C (44) # 0x0A (10) Njia ya kawaida, kiwango cha data ya Pato = 100 Hz bus. 45) # 0x08 (08) Kulala kiotomatiki kulemaza basi.andika_byte_data (0x53, 0x2D, 0x08) # ADXL345 anwani, 0x53 (83) # Chagua rejista ya fomati ya data, 0x31 (49) # 0x08 (08) Jaribio la kibinafsi limezimwa, waya-4 kiolesura # Azimio kamili, Range = +/- 2g basi. andika_byte_data (0x53, 0x31, 0x08)

saa. kulala (0.5)

Anwani ya # ADXL345, 0x53 (83)

# Soma data nyuma kutoka 0x32 (50), 2 ka # X-Axis LSB, X-Axis data ya MSB0 = bus.read_byte_data (0x53, 0x32) data1 = bus.read_byte_data (0x53, 0x33)

# Badilisha data iwe 10-bits

xAccl = ((data1 & 0x03) * 256) + data0 ikiwa xAccl> 511: xAccl - = 1024

Anwani ya # ADXL345, 0x53 (83)

# Soma data nyuma kutoka 0x34 (52), 2 ka # Y-Axis LSB, Y-Axis data ya MSB0 = bus.read_byte_data (0x53, 0x34) data1 = bus.read_byte_data (0x53, 0x35)

# Badilisha data iwe 10-bits

yAccl = ((data1 & 0x03) * 256) + data0 ikiwa yAccl> 511: yAccl - = 1024

Anwani ya # ADXL345, 0x53 (83)

# Soma data nyuma kutoka 0x36 (54), 2 ka # Z-Axis LSB, Z-Axis data ya MSB0 = bus.read_byte_data (0x53, 0x36) data1 = bus.read_byte_data (0x53, 0x37)

# Badilisha data iwe 10-bits

zAccl = ((data1 & 0x03) * 256) + data0 ikiwa zAccl> 511: zAccl - = 1024

# 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: Utendaji wa Kanuni

Utendaji wa Kanuni
Utendaji 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 matokeo kwenye Monitor. Kufuatia dakika chache, itaonyesha kila moja ya vigezo. Baada ya kuhakikisha kuwa kila kitu kinafanya kazi kwa urahisi, unaweza kuchukua mradi huu kwa kazi kubwa.

Hatua ya 5: Maombi na Vipengele

ADXL345 ni nguvu ndogo, nyembamba, nguvu ya mwisho, 3-axis accelerometer na azimio la juu (13-bit) kipimo hadi ± 16 g. ADXL345 inafaa kwa Maombi ya Simu ya Mkononi. Inafahamisha Kuongeza kasi kwa Mvuto katika Maombi ya Kuchunguza Tilt na kwa kuongeza kasi ya Nguvu inayokuja kwa sababu ya Mwendo au Mshtuko. Maombi mengine ni pamoja na kupendwa kwa vifaa vya mkono, vifaa vya matibabu, vifaa vya Michezo ya Kubahatisha na Kuonyesha, Uundaji wa Viwanda, Vifaa vya Usafiri wa Kibinafsi, na Ulinzi wa Hard Disk Drive (HDD).

Hatua ya 6: Hitimisho

Natumahi kuwa kazi hii inahimiza majaribio zaidi. Sensorer hii ya I2C ni rahisi kubadilika, bei rahisi na inapatikana. Kwa kuwa ni mfumo wa kudumu kwa kiwango kikubwa, kuna njia za kupendeza unazoweza kupanua kazi hii na kuiboresha hata.

Kwa mfano, unaweza kuanza na wazo la Inclinometer ukitumia ADXL345 na Raspberry Pi. Katika mradi hapo juu, tumetumia mahesabu ya kimsingi. Unaweza kuboresha nambari ya G-maadili, pembe za mteremko (au kuinama), mwinuko au unyogovu wa kitu kwa kuzingatia mvuto. Basi unaweza kuangalia chaguzi za mapema kama pembe za kuzungusha kwa roll (mbele-to-back axis, X), lami (axis ya upande kwa upande, Y) na yaw (axis wima, Z). Accelerometer hii inaonyesha 3-D G-Forces. Kwa hivyo unaweza kutumia kihisi hiki kwa njia anuwai ambazo unaweza kuzingatia.

Kwa faraja yako, tuna zoezi la kupendeza la kufundisha video kwenye YouTube ambayo inaweza kusaidia uchunguzi wako. Amini mradi huu unahamasisha utafutaji zaidi. Endelea kutafakari! Weka akilini kutafuta kama zaidi inazidi kuongezeka.

Ilipendekeza: