Turinys:
- 1 žingsnis: AKMENS ĮRANKIS
- 2 žingsnis: projekto įvadas
- 3 žingsnis: MPU-6050
- 4 žingsnis: STM32 mikrovaldiklis
- 5 žingsnis: MPU-6050 tvarkyklė
Video: Akmens LCD + pagreičio giroskopo jutiklis: 5 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:44
Šis dokumentas išmokys jus naudoti STM32 MCU +MPU6050 pagreičio matuoklio giroskopo jutiklį +STONE STVC070WT nuoseklaus prievado ekraną DEMO.
STVC070WT yra mūsų įmonės serijinis ekranas, jo kūrimas yra paprastas, paprastas naudoti, galite apsilankyti mūsų įmonės svetainėje, kad sužinotumėte apie visus skirtumus:
1 žingsnis: AKMENS ĮRANKIS
Verta paminėti, kad mūsų ekranas palaiko serijinio prievado ryšį. Kai kurie modeliai palaiko TTL/RS232/RS485, tačiau kai kurie palaiko tik RS232. Jei jūsų MCU nuoseklusis prievadas yra TTL logikos lygis, turite pridėti MAX3232 lygio konvertavimui. Jei norite sužinoti, kuris ekranas palaiko TTL, o kuris palaiko ir TTL, ir RS232, galite tai patikrinti mūsų svetainėje:
www.stoneitech.com/product/industrial-type
Matome, kad „pramoninio tipo“ir „išplėstinio tipo“ekranai paprastai palaiko tik RS232 arba RS485, o tik „civilinio tipo“ekranai gali palaikyti TTL/RS232/RS485. Jei pasirinksite „išplėstinio tipo“arba „pramoninio tipo“, bet jūsų SCM palaiko tik TTL, tada turite atlikti šią konversiją:
Kitą svarbią informaciją galite peržiūrėti arba atsisiųsti oficialioje svetainėje:
Trys STONE ekrano kūrimo žingsniai:
Sukurkite ekrano logiką ir mygtukų logiką naudodami STONE TOOL programinę įrangą ir atsisiųskite dizaino failą į ekrano modulį. MCU palaiko ryšį su STONE ekrano moduliu per nuoseklųjį prievadą.
Naudodamas 2 veiksme gautus duomenis, MCU atlieka kitus veiksmus.
2 žingsnis: projekto įvadas
Projekto įvadas
Šiandien aš jums parodysiu gravitacijos demonstraciją, giroskopą, Eulerio kampą, funkcijos yra šios:
- Trys teksto laukeliai rodo pagreičio reikšmes
- Trys teksto laukeliai rodo giroskopo vertes
- Trys teksto laukeliai rodo Eulerio kampo reikšmes
- Teksto laukelyje rodomas dabartinis atnaujinimo laikas
- Du mygtukai reguliuoja atnaujinimo laiką
Pirmiausia, norėdami sukurti dvi vartotojo sąsajas, turime naudoti „Photoshop“, o dizaino rezultatai yra tokie:
Pirmasis vaizdas yra pagrindinio ekrano vaizdas, o antrasis - mygtuko efektas. Tada atidarome „TOOL2019“ir sukuriame efektus TOOL:
Naudojami du pagrindiniai komponentai:
Skaitmeninis ekranas
Papildomas mygtukas
Po projektavimo modeliavimo operacijos efektą galima pamatyti modeliavimo sąsajoje:
3 žingsnis: MPU-6050
„Mpu-6050“yra pirmasis pasaulyje integruotas 6 ašių judesio apdorojimo lustas. Palyginti su daugiakomponenčiu sprendimu, jis pašalina skirtumo tarp kombinuoto giroskopo ir akceleratoriaus laiko ašies problemą ir sumažina daug vietos pakavimui. Prijungus prie trijų ašių magnetometro laiko, „mpu-6050“užtikrina pilną 9 ašių judesio sintezės išėjimą į I2C arba SPI prievadus (SPI galima tik „mpu-6000“).
Jutimo diapazonas
Kampinio greičio jutimo diapazonas mpu-6050 yra ± 250, ± 500, ± 1000 ir ± 2000 °/ SEC (DPS), kuris gali tiksliai sekti greitus ir lėtus veiksmus. Be to, vartotojai gali užprogramuoti ir valdyti greitintuvų aptikimo diapazoną ± 2 g, ± 4 g ± 8 g ir ± 16 g. Produkto duomenys gali būti perduodami per IIC iki 400kHz arba SPI iki 20MHz (SPI galima tik naudojant „mpu-6000“). „Mpu-6050“gali veikti esant skirtingoms įtampoms, VDD įtampa yra 2,5v ± 5%, 3,0v ± 5% arba 3.3v ± 5%, o loginės sąsajos VDDIO maitinimo šaltinis yra 1.8v ± 5% (VDD naudojamas tik MPU6000). „Mpu-6050“pakuotės dydis 4x4x0,9 mm (QFN) yra revoliucinis pramonėje. Kitos funkcijos apima įmontuotus temperatūros jutiklius ir osciliatorius, kurie darbo aplinkoje skiriasi tik ± 1%. Taikymas
Mobilieji jutimo žaidimai papildė realybę, EIS: elektroninis vaizdo stabilizavimas (OIS: Optical Image Stabilization), pėsčiųjų navigatoriaus vartotojo sąsaja su „nulinio prisilietimo“gestu. Išmanusis telefonas, planšetinis kompiuteris, rankinis žaidimų produktas, žaidimų konsolė, 3D nuotolinio valdymo pultas, nešiojamasis navigacijos įrenginys, UAV, automobilis su pusiausvyra.
Charakteristikos
Skaitmeninė 6 ar 9 ašių sukimosi matricos išvestis, ketvirčio, Eulerio kampo formos sintezės skaičiavimo duomenys. 3 ašių kampinio greičio jutiklis (giroskopas) su 131 LSB/ °/ SEC jautrumu ir visas tinklelio jutimo diapazonas ± 250, ± 500, ± 1000 ir ± 2000 °/ SEC. Jį galima valdyti programa, o programos valdymo diapazonas yra ± 2g, ± 4g, ± 8g ir ± 16g. Pašalinkite jautrumą tarp akceleratoriaus ir giroskopo ašies ir sumažinkite nustatymų ir jutiklio poslinkio įtaką. DMP (skaitmeninio judesio apdorojimo) variklis sumažina sudėtingų sintezės algoritmų apkrovą, jutiklių sinchronizavimą, laikysenos jutimą ir kt. Temperatūros jutiklis su skaitmenine išvestimi ir skaitmeniniu įėjimu Sinchronizavimo kaištis palaiko vaizdo elektroninę šešėlio fazės stabilizavimo technologiją ir programuojamą GPS valdymo pertraukos palaikymo gestų atpažinimą, purtymą, vaizdo priartinimą ir tolinimą, riedėjimą, greito nusileidimo pertraukimą, pertraukimą dideliu g, nulinį judesio jutiklį, jutiklinis jutimas, purtymo jutimas. VDD maitinimo įtampa yra 2,5v ± 5%, 3,0v ± 5%ir 3,3v ± 5%. VDDIO veikimo srovė yra 1,8v ± 5%: 5mA; Giroskopo budėjimo srovė: 5uA; Akceleratoriaus darbinė srovė: 350uA, akceleratoriaus energijos taupymo režimo srovė: 20uA@10Hz I2C greitu režimu iki 400 kHz, arba SPI nuosekliosios šeimininko sąsaja iki 20MHz įmontuoto dažnio generatoriaus tik esant visam temperatūrų diapazonui ± 1%. Mažiausia ir ploniausia pakuotė (4x4x0,9 mm QFN), pritaikyta nešiojamiems gaminiams, buvo išbandyta, kad atitiktų RoHS ir aplinkos standartus. Apie smeigtuką
SCL ir SDA jungiasi prie MCU IIC sąsajos, per kurią MCU valdo MPU6050. Taip pat yra IIC sąsaja, AXCL ir XDA, kuri gali būti naudojama prijungti išorinius verginius įrenginius, tokius kaip magnetiniai jutikliai, kad būtų suformuotas devynių ašių jutiklis. VLOGIC yra IO prievado įtampa, o žemiausias kaištis gali pasiekti 1.8v. Paprastai mes galime tiesiogiai naudoti VDD. AD0 yra adreso valdymo kaištis iš IIC sąsajos (prijungta prie MCU), kuri valdo žemiausią IIC adreso eilę. Jei prijungtas GND, MPU6050 IIC adresas yra 0X68 ir 0X69, jei prijungtas VDD. Pastaba: čia esančiame adrese nėra žemiausios duomenų perdavimo tvarkos (mažiausia tvarka naudojama skaitymui ir rašymui). Žemiau yra mano naudojamas „mpu-6050“modulis:
4 žingsnis: STM32 mikrovaldiklis
STM32F103RCT6 MCU turi galingų funkcijų. Čia yra pagrindiniai MCU parametrai:
Serija: STM32F10X
Branduolys: ARM - COTEX32
Greitis: 72 MHz
Ryšio sąsaja: CAN, I2C, IrDA, LIN, SPI, UART/USART, USB
Išorinė įranga: DMA, variklio valdymas PWM, PDR, POR, PVD, PWM, temperatūros jutiklis, WDT
Programos talpa: 256 KB
Programos atminties tipas: Blykstė
RAM talpa: 48 tūkst
Įtampa - maitinimo šaltinis (Vcc/Vdd): 2 V ~ 3,6 V
Osciliatorius: vidinis
Darbinė temperatūra: -40 ° C ~ 85 ° C
Pakuotė/korpusas: 64 lqfp
Šiame projekte naudosiu UART, GPIO, Watch Dog ir STM32F103RCT6 laikmatį. Toliau pateikiamas projekto kodo kūrimo įrašas. STM32 NAUDOJA „Keil MDK“programinės įrangos kūrimą, apie kurį turite būti susipažinęs, todėl šios programinės įrangos diegimo metodo nesiūsiu. STM32 galima imituoti internetu naudojant „j-link“arba „st-link“ir kitus modeliavimo įrankius. Šis paveikslėlis yra mano naudojama STM32 kūrimo plokštė:
STM32F103RCT6 turi kelis nuoseklius prievadus. Šiame projekte naudojau nuoseklaus prievado kanalą PA9/PA10, o nuoseklaus prievado perdavimo sparta buvo nustatyta 115200.
Jei reikia viso kodo, susisiekite su mumis:
www.stoneitech.com/contact Mes jums atsakysime per 12 valandų.
5 žingsnis: MPU-6050 tvarkyklė
Šis kodas naudoja IIC ryšio režimą MPU6050 duomenims skaityti, o IIC ryšys NAUDOJA programinės įrangos modeliavimą IIC. Yra daug susijusių kodų, todėl jų čia neįklijuosiu.
Jei reikia viso kodo, susisiekite su mumis: https://www.stoneitech.com/contact Mes jums atsakysime per 12 valandų.
Norėdami pamatyti operacijos efektą, žiūrėkite šią nuotrauką:
Norėdami sužinoti daugiau apie projektą, spustelėkite čia
Rekomenduojamas:
Pagreičio matavimas naudojant ADXL345 ir dalelių fotoną: 4 žingsniai
Pagreičio matavimas naudojant ADXL345 ir dalelių fotoną: ADXL345 yra mažas, plonas, itin mažos galios 3 ašių akselerometras, kurio didelės skiriamosios gebos (13 bitų) matavimas yra iki ± 16 g. Skaitmeniniai išvesties duomenys yra suformatuoti kaip 16 bitų du papildymai ir yra prieinami per I2 C skaitmeninę sąsają. Tai matuoja
Drabužių skalbimo/džiovinimo stebėjimas naudojant ESP8266 ir pagreičio jutiklis: 6 žingsniai
Drabužių skalbimo/džiovinimo stebėjimas naudojant ESP8266 ir pagreičio jutiklį: Drabužių skalbimo mašina/džiovyklė yra rūsyje, ir jūs, kaip taisyklė, įdedate į ją krūvą drabužių, o po to imate užsiimti kitais namų darbais. Jūs nepastebite drabužių, kurie buvo sudrėkinti ir sugeriantys jūsų mašinos rūsyje
Pagreičio matavimas naudojant H3LIS331DL ir „Arduino Nano“: 4 žingsniai
Pagreičio matavimas naudojant H3LIS331DL ir „Arduino Nano“: H3LIS331DL yra mažos galios didelio našumo 3 ašių linijinis akselerometras, priklausantis „nano“šeimai, su skaitmenine I²C nuoseklia sąsaja. „H3LIS331DL“naudotojas gali pasirinkti visas ± 100 g/± 200 g/± 400 g skalę ir gali išmatuoti pagreitį
„Arduino Nano“ir „Visuino“: pagreičio konvertavimas į kampą iš akselerometro ir giroskopo MPU6050 I2C jutiklis: 8 žingsniai (su nuotraukomis)
„Arduino Nano“ir „Visuino“: pagreičio konvertavimas į kampą iš akcelerometro ir giroskopo MPU6050 I2C jutiklis: prieš kurį laiką paskelbiau pamoką, kaip prijungti MPU9250 pagreičio matuoklį, giroskopą ir kompaso jutiklį prie „Arduino Nano“ir užprogramuoti jį su „Visuino“, kad būtų siunčiami paketiniai duomenys ir ekranas tai apimtis ir vizualiniai instrumentai. Akselerometras siunčia X, Y
„Arduino Nano“: pagreičio matuoklio giroskopo kompasas MPU9250 I2C jutiklis su Visuino: 11 žingsnių
„Arduino Nano“: pagreičio matuoklio giroskopo kompasas MPU9250 I2C jutiklis su Visuino: MPU9250 yra vienas pažangiausių šiuo metu prieinamų mažo dydžio akselerometro, giroskopo ir kompaso jutiklių. Jie turi daug išplėstinių funkcijų, įskaitant žemo dažnio filtrą, judesio aptikimą ir netgi programuojamą specializuotą procesorių