Turinys:

3 ašių akselerometras, ADXL345 su „Raspberry Pi“naudojant „Python“: 6 žingsniai
3 ašių akselerometras, ADXL345 su „Raspberry Pi“naudojant „Python“: 6 žingsniai

Video: 3 ašių akselerometras, ADXL345 su „Raspberry Pi“naudojant „Python“: 6 žingsniai

Video: 3 ašių akselerometras, ADXL345 su „Raspberry Pi“naudojant „Python“: 6 žingsniai
Video: Как использовать акселерометр и гироскоп MPU-6050 с кодом Arduino 2024, Lapkritis
Anonim
3 ašių akselerometras, ADXL345 su „Raspberry Pi“naudojant „Python“
3 ašių akselerometras, ADXL345 su „Raspberry Pi“naudojant „Python“

Galvodami apie programėlę, kuri gali patikrinti tašką, kuriame jūsų „Offroader“yra pakreiptas link. Argi nebūtų malonu, jei kas nors prisitaikytų, kai yra galimybė apsiversti? Akivaizdu, kad taip. Tai būtų tikrai naudinga žmonėms, mėgstantiems leistis į kalnus ir verslo keliones.

Be jokios abejonės, tikras puikus pažangių skaičiavimų laikotarpis - internetas. Mes, kaip programėlių ir programavimo mėgėjai, manome, kad „Raspberry Pi“, „micro Linux“kompiuteris apskritai įvertino žmonių kūrybinius sugebėjimus ir neša naujoviškas metodikas. Taigi, kokius galimus rezultatus galime padaryti, jei šalia turime „Raspberry Pi“ir 3 ašių akselerometrą? Turėtume atrasti! Atlikdami šią užduotį, pajusime pagreitį 3 ašyse, X, Y ir Z, naudodami Raspberry Pi ir 3 ašių akselerometrą ADXL345. Taigi turėtume stebėti šią ekskursiją, kad sukurtume sistemą, skirtą trijų matmenų pagreičiui arba G jėgai matuoti.

1 žingsnis: pagrindinė įranga, kurios mums reikia

Pagrindinė įranga, kurios mums reikia
Pagrindinė įranga, kurios mums reikia
Pagrindinė įranga, kurios mums reikia
Pagrindinė įranga, kurios mums reikia
Pagrindinė įranga, kurios mums reikia
Pagrindinė įranga, kurios mums reikia

Problemų mums buvo mažiau, nes turime daugybę daiktų, iš kurių galime dirbti. Nepaisant to, mes žinome, kaip kitiems sunku per trumpą laiką surinkti reikiamą dalį iš tinkamos vietos ir tai yra pateisinama nepriklausomai nuo kiekvieno cento. Taigi mes jums padėsime visuose regionuose. Perskaitykite toliau pateiktą informaciją, kad gautumėte išsamų dalių sąrašą.

1. Avietė Pi

Pirmasis žingsnis buvo įsigyti Raspberry Pi plokštę. Šis mažas, mažos galios kompiuteris yra pigi ir paprastai paprasta bazė elektronikos įmonėms, daiktų internetui (IoT), išmaniesiems miestams, mokykliniam ugdymui.

2. „I2C Shield“, skirtas „Raspberry Pi“

Pagrindinis dalykas, kurio „Raspberry Pi“tikrai trūksta, yra I²C prievadas. Taigi TOUTPI2 I²C jungtis suteikia prasmę naudoti „Rasp Pi“su MULTIPLE I²C įrenginiais. Jis pasiekiamas DCUBE parduotuvėje

3. 3 ašių akselerometras, ADXL345

„Analog Devices“pagamintas ADXL345 yra mažos galios 3 ašių akselerometras su didelės skiriamosios gebos 13 bitų matavimu iki ± 16 g. Šį jutiklį įsigijome iš „DCUBE Store“

4. Prijungimo kabelis

„I2C“jungiamąjį kabelį turėjome prieinami DCUBE parduotuvėje

5. Mikro USB kabelis

Mažiausias sumišimas, tačiau pats griežčiausias, kai reikia energijos, yra „Raspberry Pi“! Lengviausias būdas įjungti „Raspberry Pi“yra naudojant „Micro USB“kabelį.

6. Prieiga prie interneto yra poreikis

Prieiga prie interneto gali būti suteikta naudojant eterneto (LAN) kabelį, susietą su vietiniu tinklu ir žiniatinkliu. Kita vertus, galite susieti su belaidžiu tinklu naudodami USB belaidį raktą, kurį reikės konfigūruoti.

7. HDMI kabelis/nuotolinė prieiga

Turėdami HDMI kabelį, galite jį prijungti prie skaitmeninės televizijos arba monitoriaus. Reikia taupyti pinigus! „Raspberry Pi“galima nuotoliniu būdu pasinaudoti išskirtinėmis strategijomis, tokiomis kaip SSH ir prieiga per internetą. Galite naudoti „PuTTYopen“šaltinio programinę įrangą.

2 žingsnis: Aparatūros prijungimas

Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas
Aparatūros prijungimas

Padarykite grandinę pagal pateiktą schemą. Nubraižykite kontūrą ir sąmoningai imkitės po konfigūracijos.

„Raspberry Pi“ir „I2C Shield“jungtis

Visų pirma, paimkite „Raspberry Pi“ir pastebėkite ant jo „I2C Shield“. Švelniai paspauskite skydą virš Pi GPIO kaiščių ir baigsime šį paprastą žingsnį kaip pyragas (žr. Momentą).

Jutiklio ir „Raspberry Pi“prijungimas

Paimkite jutiklį ir su juo sujunkite I2C kabelį. Kad šis kabelis veiktų tinkamai, prisiminkite, kad I2C išvestis VISADA siejama su I2C įvestimi. Tą patį reikia padaryti ir su „Raspberry Pi“su ant jo pritvirtintu „I2C“ekranu - GPIO kaiščiais.

Mes nurodome naudoti „I2C“kabelį, nes jis paneigia reikalavimą, kad būtų ištirti kaiščiai, litavimas ir negalavimas, kurį sukelia net mažiausios klaidos. Naudodami šį paprastą „plug and play“kabelį, galite lengvai įdiegti, pakeisti įrenginius arba pridėti daugiau įrenginių prie programos. Dėl to viskas tampa nesudėtinga.

Pastaba: ruda viela turi patikimai sekti įžeminimo (GND) jungtį tarp vieno įrenginio išvesties ir kito įrenginio įvesties

Žiniatinklio tinklas yra raktas

Kad mūsų įmonė laimėtų, mums reikia „Raspberry Pi“interneto ryšio. Norėdami tai padaryti, turite alternatyvų, pavyzdžiui, prijungti Ethernet (LAN) kabelį prie namų sistemos. Be to, naudingas būdas yra naudoti „WiFi“jungtį. Tam, kad tai veiktų, kartais reikia vairuotojo. Taigi atsiremkite į tą, kuriame vaizduojama „Linux“.

Maitinimo šaltinis

Prijunkite „Micro USB“kabelį prie „Raspberry Pi“maitinimo lizdo. Įžiebkite šviesą ir mums gera eiti.

Ryšys su ekranu

HDMI kabelį galime susieti su kitu ekranu. Kai kuriais atvejais turite patekti į „Raspberry Pi“neprisijungę prie ekrano, arba gali tekti peržiūrėti kai kuriuos jo duomenis iš kitur. Tikėtina, kad yra novatoriškų ir finansiškai išmintingų metodų, kaip tai padaryti. Vienas iš jų yra naudojimas - SSH (nuotolinis komandinės eilutės prisijungimas). Tam taip pat galite naudoti „PuTTY“programinę įrangą.

3 žingsnis: „Python“kodavimas „Raspberry Pi“

„Python“kodavimas „Raspberry Pi“
„Python“kodavimas „Raspberry Pi“

Raspberry Pi ir ADXL345 jutiklių „Python“kodą galite rasti mūsų „Github“saugykloje.

Prieš pereidami prie kodo, būtinai perskaitykite „Readme“dokumente pateiktas gaires ir nustatykite „Raspberry Pi“pagal jį. Tai tiesiog sustabdys minutę, kad tai padarytumėte.

Akselerometras yra prietaisas, kuris matuoja tinkamą pagreitį; tinkamas pagreitis nėra tas pats, kas koordinačių pagreitis (greičio kitimo greitis). Akselerometro vienos ir kelių ašių modeliai yra prieinami norint nustatyti tinkamo pagreičio dydį ir kryptį, kaip vektorinį kiekį, ir gali būti naudojami orientacijai, pagreičio koordinavimui, vibracijai, šokui ir kritimui atsparioje terpėje.

Kodas yra paprastas prieš jus ir yra paprasčiausios struktūros, kokią galite įsivaizduoti, ir jums neturėtų kilti problemų.

# Platinama su laisvos valios licencija. # ADXL345 # Šis kodas sukurtas dirbti su ADXL345_I2CS I2C mini moduliu, kurį galima rasti dcubestore.com # https://dcubestore.com/product/adxl345-3-axis-accelerometer-13-bit-i%C2%B2c-mini -modulis/

importuoti smbus

importo laikas

# Gaukite I2C autobusą

autobusas = smbus. SMBus (1)

# ADXL345 adresas, 0x53 (83)

# Pasirinkite dažnių juostos pločio registrą, 0x2C (44) # 0x0A (10) Įprastas režimas, Išvesties duomenų perdavimo sparta = 100 Hz mag.write_byte_data (0x53, 0x2C, 0x0A) # ADXL345 adresas, 0x53 (83) # Pasirinkite galios valdymo registrą, 0x2D (45) # 0x08 (08) Automatinis miego režimas išjungia magistralę.write_byte_data (0x53, 0x2D, 0x08) # ADXL345 adresas, 0x53 (83) # Pasirinkite duomenų formato registrą, 0x31 (49) # 0x08 (08) Savęs testavimas išjungtas, 4 laidų sąsaja # Visa skiriamoji geba, diapazonas = +/- 2g magistralės.write_byte_data (0x53, 0x31, 0x08)

laikas. miegas (0,5)

# ADXL345 adresas, 0x53 (83)

# Skaityti duomenis iš 0x32 (50), 2 baitai # X ašies LSB, X ašies MSB duomenys0 = magistralės.

# Konvertuokite duomenis į 10 bitų

xAccl = (((data1 & 0x03) * 256) + duomenys0, jei xAccl> 511: xAccl -= 1024

# ADXL345 adresas, 0x53 (83)

# Skaityti duomenis iš 0x34 (52), 2 baitai # Y ašies LSB, Y ašies MSB duomenys0 = magistralės. Skaitymo baitų duomenys (0x53, 0x34)

# Konvertuokite duomenis į 10 bitų

yAccl = ((duomenys1 ir 0x03) * 256) + duomenys0, jei yAccl> 511: yAccl -= 1024

# ADXL345 adresas, 0x53 (83)

# Skaityti duomenis iš 0x36 (54), 2 baitai # Z ašies LSB, Z ašies MSB duomenys0 = magistralės.

# Konvertuokite duomenis į 10 bitų

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

# Išveskite duomenis į ekraną

spausdinti "pagreitis X ašyje: %d" %xAccl print "pagreitis Y ašyje: %d" %yAccl print "pagreitis Z ašyje: %d" %zAccl

4 žingsnis: Kodekso praktiškumas

Kodekso praktiškumas
Kodekso praktiškumas

Atsisiųskite (arba „git pull“) kodą iš „Github“ir atidarykite jį „Raspberry Pi“.

Vykdykite komandas kompiliuoti ir įkelti kodą terminale ir pamatysite monitoriaus išvestį. Po kelių akimirkų jis parodys visus parametrus. Užtikrinę, kad viskas veikia lengvai, galite imtis šios veiklos, kad atliktumėte didesnę užduotį.

5 žingsnis: programos ir funkcijos

„ADXL345“yra mažas, plonas, itin mažos galios 3 ašių akselerometras su didelės skiriamosios gebos (13 bitų) matavimu iki ± 16 g. ADXL345 tinka mobiliųjų telefonų programoms. Jis kiekybiškai įvertina statinį gravitacijos pagreitį pasvirimo aptikimo programose, be to, artėja dinaminis pagreitis dėl judesio ar smūgio. Kitos programos apima ragelius, medicinos prietaisus, žaidimų ir rodymo prietaisus, pramoninius prietaisus, asmeninius navigacijos įrenginius ir standžiojo disko (HDD) apsaugą.

6 žingsnis: Išvada

Tikiuosi, kad ši užduotis paskatins tolesnius eksperimentus. Šis I2C jutiklis yra nepaprastai lankstus, pigus ir prieinamas. Kadangi tai didžiąja dalimi nepastovi sistema, yra įdomių būdų, kaip išplėsti šią užduotį ir netgi ją patobulinti.

Pavyzdžiui, galite pradėti nuo inclinometro idėjos, naudodami ADXL345 ir Raspberry Pi. Aukščiau pateiktame projekte mes panaudojome pagrindinius skaičiavimus. Galite improvizuoti G reikšmių, nuolydžio (ar pakreipimo) kampų, objekto pakilimo ar nusileidimo pagal gravitaciją kodą. Tada galite patikrinti išankstines parinktis, pvz., Sukimosi kampus, skirtus ritiniui (ašis iš priekio į galą, X), žingsnį (ašis iš vienos pusės į kitą, Y) ir posūkį (vertikali ašis, Z). Šis akselerometras rodo 3-D G jėgas. Taigi šį jutiklį galite naudoti įvairiais būdais.

Jūsų patogumui „YouTube“pateikiame įdomų vaizdo mokomąjį pratimą, kuris gali padėti atlikti tyrimą. Patikėkite, kad ši veikla skatina tolesnius tyrimus. Toliau apmąstyk! Turėkite omenyje, kad ieškosite, nes nuolat atsiranda daugiau.

Rekomenduojamas: