Turinys:
- 1 žingsnis: pagrindinė įranga, kurios mums reikia
- 2 žingsnis: Aparatūros prijungimas
- 3 žingsnis: „Python“kodavimas „Raspberry Pi“
- 4 žingsnis: kodekso veikimas
- 5 žingsnis: programos ir funkcijos
- 6 žingsnis: Išvada
Video: Judėjimo valdymas naudojant „Raspberry Pi“ir LIS3DHTR, 3 ašių akselerometras, naudojant „Python“: 6 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:45
Grožis supa mus, tačiau paprastai turime vaikščioti sode, kad tai žinotume. - Rumi
Kaip išsilavinusi grupė, kuri mums atrodo, mes investuojame didžiąją savo energijos dalį dirbdami prieš kompiuterius ir mobiliuosius telefonus. Todėl mes dažnai leidžiame savo gerovei naudotis antraeiliu poilsio kambariu ir niekada nerandame idealios progos nueiti į sporto salę ar kūno rengybos užsiėmimus ir paprastai renkamės greito maisto, o ne daug naudingesnių pasirinkimų. Įkvepianti naujiena yra tai, ar viskas, ko jums reikia, yra tam tikra pagalba tvarkant įrašus ar stebėti jūsų pažangą, galite pasinaudoti šiandienos naujovėmis, kad sukurtumėte tam tikrą programėlę ir padėtumėte sau.
Technologijos sparčiai vystosi. Nuosekliai gaudome naujovių naujoves, kurios pakeis pasaulį ir tai, kaip mes jame mokomės. Kai domitės kompiuteriais, kodavimu ir robotais ar tiesiog mėgstate knibždėti, tai yra technologijų palaima. „Raspberry Pi“, mikro, vienos plokštės „Linux“kompiuteris, skirtas tobulinti mokymosi būdą naudojant novatoriškas technologijas, bet taip pat yra raktas į švietimo mokymąsi visame pasaulyje. Taigi, kokius galimus rezultatus galime padaryti, jei šalia turime „Raspberry Pi“ir 3 ašių akselerometrą? O kaip mes tai rasime! Atlikdami šią užduotį, mes patikrinsime pagreitį 3 statmenose ašyse, X, Y ir Z, naudodami Raspberry Pi ir 3 ašių akselerometrą LIS3DHTR. Taigi šioje kelionėje turėtume pamatyti, kaip sukurti sistemą, leidžiančią patikrinti trimatį pagreitį arba „G-Force“.
1 žingsnis: pagrindinė įranga, kurios mums reikia
Problemų mums buvo mažiau, nes turime daug daiktų, iš kurių galime dirbti. Bet kokiu atveju, mes žinome, kaip kitiems varginantis per nepriekaištingą laiką iš naudingos vietos sukaupti reikiamą dalį ir tai ginama, mažai dėmesio skiriant kiekvienam centui. Taigi mes jums padėtume. Sekite pridedamą, kad gautumėte išsamų dalių sąrašą.
1. Avietė Pi
Pirmasis žingsnis buvo gauti Raspberry Pi plokštę. „Raspberry Pi“yra vienos plokštės „Linux“kompiuteris. Šis mažas kompiuteris pasižymi dideliu skaičiavimo galingumu, naudojamas kaip programėlių veikla ir paprastos operacijos, pvz., Skaičiuoklės, žodžių rengimas, žiniatinklio nuskaitymas ir el. Paštas bei žaidimai.
2. „I2C Shield“, skirtas „Raspberry Pi“
Pagrindinis „Raspberry Pi“trūkumas yra I²C prievadas. Taigi TOUTPI2 I²C jungtis suteikia prasmę naudoti „Rasp Pi“su bet kokiu „I²C“įrenginiu. Tai galima rasti „DCUBE“parduotuvėje
3. 3 ašių akselerometras, LIS3DHTR
„LIS3DH“yra itin mažos galios, didelio našumo trijų ašių linijinis akselerometras, priklausantis „nano“šeimai, su skaitmenine I2C/SPI nuosekliosios sąsajos išvestimi. Šį jutiklį įsigijome iš „DCUBE Store“
4. Prijungimo kabelis
„I2C“jungiamąjį kabelį įsigijome iš „DCUBE Store“
5. Mikro USB kabelis
Mažiausias suglumęs, tačiau griežčiausias energijos poreikiui yra „Raspberry Pi“! Lengviausias būdas tai padaryti yra naudojant „Micro USB“kabelį.
6. Prieiga prie interneto yra poreikis
INTERNETO vaikai niekada nemiega
Gaukite „Raspberry Pi“su Ethernet (LAN) kabeliu ir prijunkite jį prie tinklo maršrutizatoriaus. Pasirenkamas, ieškokite „WiFi“jungties ir pasinaudokite vienu iš USB prievadų, kad patektumėte į nuotolinę sistemą. Tai puikus sprendimas, paprastas, mažas ir kvailas!
7. HDMI kabelis/nuotolinė prieiga
„Raspberry Pi“turi HDMI prievadą, kurį galite specialiai prijungti prie ekrano ar televizoriaus HDMI kabeliu. Pasirinktinai galite naudoti SSH, kad susietumėte su „Raspberry Pi“iš „Linux“kompiuterio arba „Macintosh“iš terminalo. Panašiai „PuTTY“, nemokamas ir atviro kodo terminalo emuliatorius, skamba kaip tinkama alternatyva.
2 žingsnis: Aparatūros prijungimas
Padarykite grandinę pagal pateiktą schemą. Sudarykite diagramą ir tiksliai nubrėžkite kontūrą. Vaizduotė yra svarbesnė už žinias.
„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 šį žingsnį taip paprasta, 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 pritariame „I2C“kabelio naudojimui, nes tai nereikalauja būtinybės ištirti kištukus, tvirtinimą ir diskomfortą, kurį sukelia net mažiausias įsukimas. Naudodami šį pagrindinį priedą ir leidimo laidą, galite efektyviai pristatyti, pakeisti programėles arba pridėti daugiau programėlių. Tai palengvina darbo svorį iki reikšmingo lygio.
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ų pastangos būtų laimėtos, „Raspberry Pi“reikia interneto asociacijos. Norėdami tai padaryti, galite pasirinkti, kaip prijungti Ethernet (LAN) kabelį prie namų tinklo. Be to, kaip alternatyva, patogus būdas yra naudoti „WiFi“USB jungtį. Paprastai jums reikia vairuotojo, kad jis veiktų. Taigi aprašyme palikite tą, kuriame yra „Linux“.
Maitinimo šaltinis
Prijunkite „Micro USB“kabelį prie „Raspberry Pi“maitinimo lizdo. Atsipalaiduokite ir mes pasiruošę.
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 -SSH (nuotolinis komandų eilutės prisijungimas) naudojimas. Tam taip pat galite naudoti PUTTY programinę įrangą. Jie skirti pažengusiems vartotojams. Taigi detalės čia neįtrauktos.
3 žingsnis: „Python“kodavimas „Raspberry Pi“
„Raspberry Pi“ir „LIS3DHTR“jutiklio „Python“kodą galite rasti mūsų „GithubRepository“.
Prieš pereidami prie kodo, būtinai perskaitykite „Readme“archyve pateiktas taisykles ir pagal tai nustatykite „Raspberry Pi“. Tiesiog akimirkai atilsite, kad atliktumėte visus dalykus.
Akselerometras yra elektromechaninis įtaisas, kuris matuoja pagreičio jėgas. Šios galios gali būti statiškos, panašios į nuolatinę traukos jėgą, traukiančią prie jūsų kojų, arba jos gali būti pakeistos - juda judant ar vibruojant akselerometru.
Pridedamas „Python“kodas, kurį galite klonuoti ir koreguoti bet kokiu būdu.
# Platinama su laisvos valios licencija. # LIS3DHTR # Šis kodas sukurtas dirbti su „LIS3DHTR_I2CS I2C Mini“moduliu, kurį galima įsigyti dcubestore.com # https://dcubestore.com/product/lis3dhtr-3-axis-accelerometer-digital-output-motion-sensor-i%C2 %B2c-mini modulis/
importuoti smbus
importo laikas
# Gaukite I2C autobusą
autobusas = smbus. SMBus (1)
# LIS3DHTR adresas, 0x18 (24)
# Pasirinkite valdymo registrą1, 0x20 (32) # 0x27 (39) Įjungimo režimas, duomenų perdavimo greičio pasirinkimas = 10 Hz # X, Y, Z ašis įjungta magistralė. Write_byte_data (0x18, 0x20, 0x27) # LIS3DHTR adresas, 0x18 (24)) # Pasirinkite valdymo registrą4, 0x23 (35) # 0x00 (00) Nuolatinis atnaujinimas, visas pasirinkimas = +/- 2G magistralė.write_byte_data (0x18, 0x23, 0x00)
laikas. miegas (0,5)
# LIS3DHTR adresas, 0x18 (24)
# Skaityti duomenis iš 0x28 (40), 2 baitai # X ašies LSB, X ašies MSB duomenys0 = magistralės.
# Konvertuokite duomenis
xAccl = duomenys1 * 256 + duomenys0, jei xAccl> 32767: xAccl -= 65536
# LIS3DHTR adresas, 0x18 (24)
# Skaityti duomenis iš 0x2A (42), 2 baitų # Y ašies LSB, Y ašies MSB duomenys0 = magistralės. Skaitymo_baitų_datai (0x18, 0x2A)
# Konvertuokite duomenis
yAccl = duomenys1 * 256 + duomenys0, jei yAccl> 32767: yAccl -= 65536
# LIS3DHTR adresas, 0x18 (24)
# Skaityti duomenis iš 0x2C (44), 2 baitai # Z ašies LSB, Z ašies MSB duomenys0 = magistralės.
# Konvertuokite duomenis
zAccl = duomenys1 * 256 + duomenys0, jei zAccl> 32767: zAccl -= 65536
# 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 veikimas
Atsisiųskite (arba „git pull“) kodą iš „Github“ir atidarykite jį „Raspberry Pi“.
Vykdykite komandas kompiliuoti ir įkelti kodą terminale ir ekrane pamatysite derlių. Po poros minučių jis parodys kiekvieną parametrą. Kadangi garantuojate, kad viskas veikia be vargo, galite drąsiai imtis didesnio dėmesio.
5 žingsnis: programos ir funkcijos
„STMicroelectronics“pagamintas „LIS3DHTR“turi dinamiškai vartotojo pasirenkamas visas ± 2 g/± 4 g/± 8 g/± 16 g skalę ir gali matuoti pagreitį, kai išvesties duomenų dažnis yra nuo 1 Hz iki 5 kHz. LIS3DHTR tinka judesio aktyvuojamoms funkcijoms ir laisvo kritimo aptikimui. 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 paspaudimų/dvigubo paspaudimo atpažinimą, išmanųjį rankinių prietaisų energijos taupymą, žingsniamatį, ekrano orientaciją, žaidimų ir virtualios realybės įvesties įrenginius, smūgio atpažinimą ir registravimą bei vibracijos stebėjimą ir kompensavimą.
6 žingsnis: Išvada
Pasitikėjimas šia įmone skatina tolesnius eksperimentus. Šis I2C jutiklis yra fenomenaliai pritaikomas, kuklus ir prieinamas. Kadangi tai yra nepaprastai nenuolatinė sistema, yra įdomių būdų, kaip išplėsti šią užduotį ir ją patobulinti.
Pavyzdžiui, galite pradėti nuo žingsniamatio idėjos, naudodami LIS3DHTR ir „Raspberry Pi“. Atlikdami aukščiau pateiktą užduotį, mes panaudojome pagrindinius skaičiavimus. Pagreitis gali būti tinkamas parametras einant vaikščiojimui analizuoti. Galite patikrinti tris asmens judesio komponentus, kurie yra į priekį (ritinys, X), šonas (žingsnis, Y) ir vertikalus (posūkio ašis, Z). Įrašomas tipiškas visų 3 ašių modelis. Bent 1 ašis turės santykinai dideles periodinio pagreičio reikšmes. Taigi piko kryptis ir algoritmas yra būtini. Atsižvelgdami į šio algoritmo žingsnių parametrą (skaitmeninis filtras, pikų aptikimas, laiko langas ir kt.), Galite atpažinti ir suskaičiuoti žingsnius, taip pat išmatuoti atstumą, greitį ir-kiek sudegintas kalorijas. Taigi šį jutiklį galite naudoti įvairiais būdais. Mes tikime, kad jums visiems tai patinka! Mes stengsimės anksčiau, nei vėliau, padaryti veikiančią šio žingsniamatio konfigūraciją, kodą, dalį, apskaičiuojančią priemones vaikščiojimui ir bėgimui atskirti, ir sudegintas kalorijas.
Jūsų paguodai turime „YouTube“įdomų vaizdo įrašą, kuris gali padėti jūsų egzaminui. Patikėkite, kad ši veikla skatina tolesnius tyrimus. Tęskite svarstymus! Nepamirškite ieškoti, nes atkakliai atsiranda daugiau.
Rekomenduojamas:
Paketinis failas: judėjimo valdymas: 3 žingsniai
Paketinis failas: judėjimo valdymas: Kai aš ieškojau, kaip sukurti judesio valdiklius CMD, neradau tikslių rezultatų, todėl nusprendžiau sukurti savo valdiklius, kurie veiktų su WASD klavišais judėjimui ir 1234 klavišais pasukimui
3 ašių akselerometras, ADXL345 su „Raspberry Pi“naudojant „Python“: 6 žingsniai
3 ašių pagreičio matuoklis, ADXL345 su „Raspberry Pi“naudojant „Python“: pagalvokite apie programėlę, galinčią patikrinti, kur jūsų „Offroader“yra pakreiptas link. Argi nebūtų malonu, jei kas nors prisitaikytų, kai yra galimybė apsiversti? Akivaizdu, kad taip. Būtų tikra
Ryškumo valdymas PWM pagrįstas LED valdymas naudojant mygtukus, „Raspberry Pi“ir „Scratch“: 8 žingsniai (su nuotraukomis)
Ryškumo valdymas PWM pagrįstas LED valdymas naudojant mygtukus, „Raspberry Pi“ir „Scratch“: bandžiau rasti būdą, kaip paaiškinti, kaip PWM veikė mano mokiniams, todėl iškėliau sau užduotį pabandyti valdyti šviesos diodo ryškumą naudojant du mygtukus - vienas mygtukas padidina šviesos diodo ryškumą, o kitas - jį pritemdo. Programa
2 laidų 2 ašių elektros variklio valdymas: 6 žingsniai
2 laidų 2 ašių elektros variklio valdymas: šiame projekte siūlomas dviejų variklio ašių pavaros metodas, naudojant kiekvieno kanalo impulsų skaičių ir fiksavimo " įjungimo-išjungimo " perjungimas naudojant 4017 skaitiklius. Šis metodas tinka bet kuriai impulsų įvesties funkcijai (mygtukas, sukamasis jungiklis ar
3 ašių akselerometras LIS2HH12 modulis: 10 žingsnių (su nuotraukomis)
3 ašių akselerometras LIS2HH12 modulis: Šis „Instructable“laikomas pradedančiu lygiu, turintis tam tikros patirties naudojant „arduino“programinę įrangą ir litavimą. LIS2HH12 modulį sukūrė „Tiny9“. „Tiny9“yra nauja įmonė, prekiaujanti jutiklių moduliais „pasidaryk pats“, įmonėms ar išradėjams. Ten