INHOUDSOPGAWE:

Volg versnellingsvariasies met framboos Pi en MMA7455 met behulp van Python: 6 stappe
Volg versnellingsvariasies met framboos Pi en MMA7455 met behulp van Python: 6 stappe

Video: Volg versnellingsvariasies met framboos Pi en MMA7455 met behulp van Python: 6 stappe

Video: Volg versnellingsvariasies met framboos Pi en MMA7455 met behulp van Python: 6 stappe
Video: Raspberry Pi en XBMC Special 2024, November
Anonim
Image
Image

Ek het nie gestruikel nie, ek het swaartekrag getoets. Dit werk nog steeds …

'N Voorstelling van 'n versnelde ruimtetuig verklaar dat 'n horlosie op die hoogste punt van die pendeltuig vinniger as een by die basis sou kies as gevolg van die uitbreiding van gravitasietyd. Sommiges was van mening dat die versnelling aan boord van die pendeldiens dieselfde sou wees vir beide horlosies, so hulle behoort teen dieselfde tempo te merk. Dink daaroor na.

Gedagtes, motivering en selfs riglyne kan van oral af kom, maar as u op innovasie fokus, kry dit die bydrae van die individue wat op die punt konsentreer. Raspberry Pi, die mini, enkelbord Linux -rekenaar, bied unieke ondernemings en hoofadvies oor die reël, programmering en elektroniese ondernemings. As gevolg van die feit dat ons Raspberry Pi en tutoriaalmakers vir toestelle is, kry ons die kans om te programmeer en te knibbel en wonderlike dinge te maak met rekenaarwetenskap en elektronika. Ons het laat die vreugde gehad om met 'n versnellingsmeter 'n skoot te neem, en die gedagtes agter wat u met hierdie apparaat kan doen, is regtig cool. In hierdie taak sal ons MMA7455, 'n 3-as digitale versnellingsmeter sensor, opneem om die versnelling in 3 dimensies, X, Y en Z te meet, met die Raspberry Pi met behulp van Python. Kom ons kyk of dit vrugte afwerp.

Stap 1: hardeware wat ons benodig

Hardeware wat ons benodig
Hardeware wat ons benodig
Hardeware wat ons benodig
Hardeware wat ons benodig

Ons weet hoe lastig dit kan wees om te probeer en op te neem sonder om te weet watter dele om te kry, waar om te reël en hoeveel alles vooraf sal kos. Ons het dus al die werk vir u gedoen. As u eers die dele in die vierkant het, behoort dit vinnig te wees om hierdie taak uit te voer. Neem 'n paar minute om 'n volledige onderdele -lys te kry.

1. Framboos Pi

Die eerste stap was om 'n Raspberry Pi -bord te kry. Die Raspberry Pi is 'n alleenstaande Linux -gebaseerde rekenaar. Hierdie klein rekenaar gee 'n groot indruk in die registrasie van krag, wat gebruik word as 'n stuk elektroniese oefeninge, en rekenaarbedrywighede soos sigblaaie, woordverwerking, webblaai en e -pos en speletjies. U kan dit by enige elektronika- of stokperdjiewinkel koop.

2. I2C -skild vir Framboos Pi

Die primêre bekommernis dat die Raspberry Pi werklik afwesig is, is 'n I2C -poort. Die TOUTPI2 I2C -aansluiting gee u die rede om Raspberry Pi te gebruik met enige van die I2C -toestelle. Dit is beskikbaar in DCUBE Store

3. 3-as versnellingsmeter, MMA7455

Die MMA7455 3-as digitale versnellingsmeter, vervaardig deur Freescale Semiconductor, Inc., is 'n laer krag, 'n kleiner skaal bewerkte sensor wat geskik is om versnelling langs die X-, Y- en Z-as te meet. Ons het hierdie sensor by DCUBE Store gekry

4. Aansluitkabel

Ons het die I2C -aansluitkabel by DCUBE Store aangeskaf

5. Mikro -USB -kabel

Die minste verstrengelde, maar strengste met betrekking tot die noodsaaklikheid van krag, is die Raspberry Pi! Die mees voorgeskrewe en minste veeleisende benadering tot die bestuur van die strategie is deur die gebruik van die Micro USB -kabel. 'N Meer gevorderde en gespesialiseerde pad is om krag te gee spesifiek deur middel van GPIO- of USB -poorte.

6. Netwerkondersteuning

Verbind u Raspberry Pi met 'n Ethernet -kabel (LAN) en koppel dit aan u tuisnetwerk. Aan die ander kant, soek na 'n WiFi -aansluiting en gebruik een van die USB -poorte om na die afgeleë netwerk te kom. Dit is 'n skerp besluit, fundamenteel, min en eenvoudig!

7. HDMI -kabel/afstandtoegang

Die Raspberry Pi het 'n HDMI -poort wat u veral met 'n HDMI -kabel op 'n skerm of TV kan koppel. Verkieslik, u kan SSH gebruik om met u Raspberry Pi op te stel vanaf 'n Linux -rekenaar of Mac vanaf die terminale. PuTTY, 'n gratis en open-source terminale emulator, klink ook na 'n slim gedagte.

Stap 2: Koppel die hardeware aan

Koppel die hardeware
Koppel die hardeware
Koppel die hardeware
Koppel die hardeware
Koppel die hardeware
Koppel die hardeware

Maak die stroombaan soos aangedui deur die skematiese voorstelling. In die skema sien u die verbindings van verskillende elektroniese komponente, verbindingsdrade, kragkabels en I2C -sensor.

Raspberry Pi en I2C Shield Connection

Eerstens, neem die Raspberry Pi en sien die I2C -skild daarop. Druk die Shield mooi oor die GPIO -penne van Pi, en ons is klaar met hierdie vordering so maklik soos tert (sien die snap).

Framboos Pi en sensorverbinding

Neem die sensor en koppel die I2C -kabel daarmee. Lees die I2C -uitvoer altyd met die I2C -ingang vir die geskikte werking van hierdie kabel. Dieselfde moet geneem word vir die Raspberry Pi met die I2C -skild gemonteer oor die GPIO -penne.

Ons beveel die gebruik van die I2C -kabel aan, aangesien dit die vereiste vir ontleding van pinouts, beveiliging en moeite wat deur selfs die nederigste gemors ontken word, ontken. Met hierdie aansienlike assosiasie en speelkabel, kan u voorwerpe voorstel, uitruil of meer toestelle byvoeg by 'n geskikte toepassing. Dit ondersteun die werkgewig tot 'n enorme vlak.

Let wel: die bruin draad moet betroubaar na die verbinding (GND) tussen die uitset van een toestel en die invoer van 'n ander toestel neem

Internettoegang is die sleutel

Om ons strewe te wen, benodig ons 'n internetverbinding vir ons Raspberry Pi. Hiervoor het u alternatiewe, soos die koppeling van 'n Ethernet (LAN) wat by die tuisnetwerk aansluit. As alternatief is dit ook 'n bevredigende manier om 'n WiFi -USB -aansluiting te gebruik. Oor die algemeen verteenwoordig u 'n bestuurder om dit te laat werk. Neig dus na die een met Linux in die afbakening.

Kragtoevoer

Koppel die mikro -USB -kabel in die kragaansluiting van die Raspberry Pi. Maak vas en ons is gereed.

Koppel aan skerm

Ons kan die HDMI -kabel aan 'n ander monitor/TV koppel. Soms moet u by 'n Raspberry Pi kom sonder om dit op 'n skerm te koppel, of u moet inligting daaroor van elders sien. Daar is moontlik kreatiewe en fiskaal slim maniere om alles in ag te neem. Een van hulle gebruik - SSH (afstandsbedienings op die opdraglyn). U kan ook die PuTTY -sagteware daarvoor gebruik.

Stap 3: Python -kodering vir Framboos Pi

Python -kodering vir Framboos Pi
Python -kodering vir Framboos Pi

U kan die Python -kode vir die Raspberry Pi- en MMA7455 -sensor in ons GithubRepository sien.

Voordat u verder gaan met die kode, moet u verseker dat u die standaarde in die Readme -kroniek lees en u Raspberry Pi opstel soos aangedui. Dit sal net 'n minuut verlig word in die lig van die huidige omstandighede.

'N Versnellingsmeter is 'n elektromeganiese apparaat wat versnellingskragte kan meet. Hierdie kragte kan staties wees, soortgelyk aan die konstante swaartekrag wat aan u voete trek, of dit kan veranderbaar wees - veroorsaak deur die versnelling van die versnellingsmeter.

Die python -kode is die enigste, en u kan die kode kloon en verander op enige manier waarheen u neig.

# Versprei met 'n vrywillige lisensie.# Gebruik dit op enige manier wat u wil, wins of gratis, mits dit in die lisensies van die gepaardgaande werke pas. # MMA7455L # Hierdie kode is ontwerp om te werk met die MMA7455L_I2CS I2C Mini Module beskikbaar by dcubestore.com # https://dcubestore.com/product/mma7455l-3-axis-low-g-digital-output-accelerometer-i%C2 %B2c-mini-module/

invoer smbus

invoer tyd

# Kry I2C -bus

bus = smbus. SMBus (1)

# MMA7455L -adres, 0x1D (16)

# Kies modusregister, 0x16 (22) # 0x01 (01) Meetmodus, +/- 8g bus.write_byte_data (0x1D, 0x16, 0x01)

tyd. slaap (0,5)

# MMA7455L -adres, 0x1D (16)

# Lees data terug van 0x00 (00), 6 grepe # X-Axis LSB, X-Axis MSB, Y-Axis LSB, Y-Axis MSB, Z-Axis LSB, Z-Axis MSB data = bus.read_i2c_block_data (0x1D, 0x00, 6)

# Skakel die data om na 10-bisse

xAccl = (data [1] & 0x03) * 256 + data [0] as xAccl> 511: xAccl -= 1024 yAccl = (data [3] & 0x03) * 256 + data [2] as yAccl> 511: yAccl - = 1024 zAccl = (data [5] & 0x03) * 256 + data [4] as zAccl> 511: zAccl -= 1024

# Uitset data na die skerm

print "Versnelling in X-as: %d" %xAccl druk "Versnelling in Y-as: %d" %yAccl druk "Versnelling in Z-as: %d" %zAccl

Stap 4: Die praktiese van die kode

Die praktiese van die kode
Die praktiese van die kode

Laai die kode van Github af (of trek dit af) en maak dit oop in die Raspberry Pi.

Voer die opdragte uit om die kode in die terminale op te stel en op te laai en sien die opbrengs op die skerm. Na 'n paar minute sal elkeen van die parameters vertoon word. As gevolg van die feit dat alles maklik werk, kan u elke dag hierdie wandeling gebruik of 'n klein deel maak van 'n baie meer prominente taak. Wat ook al u behoeftes, u het nou nog 'n bykomstigheid in u byeenkoms.

Stap 5: Toepassings en funksies

Die MMA7455, vervaardig deur Freescale Semiconductor, kan 'n lae-krag hoëprestasie-3-assige digitale versnellingsmeter met lae krag gebruik word vir verandering van sensordata, produksie-oriëntasie en gebaaropsporing. Dit is perfek vir toepassings soos selfoon/PMP/PDA: oriëntasie-opsporing (portret/liggend), beeldstabiliteit, teksrol, bewegingsbel, tik om te demp, skootrekenaar: diefstal, speletjies: bewegingsopsporing, outomatiese ontwaking/ Slaap vir lae kragverbruik en digitale stil kamera: beeldstabiliteit.

Stap 6: Gevolgtrekking

As u oorweeg het om die heelal van die Raspberry Pi- en I2C -sensors te verken, kan u uself skok deur gebruik te maak van die basiese beginsels van hardeware, kodering, rangskikking, gesaghebbend, ens. As u probeer om meer kreatief te wees in u min onderneming, dit maak nooit skade aan eksterne bronne nie. Met hierdie metode kan daar 'n paar boodskappe wees wat eenvoudig kan wees, terwyl sommige u kan toets. U kan in elk geval 'n manier maak en dit sonder probleme deur u te verander en 'n formasie te maak.

U kan byvoorbeeld begin met die gedagte aan 'n gravimeterprototipe om die plaaslike gravitasieveld van die aarde te meet met MMA7455 en Framboos Pi met behulp van Python. In die bogenoemde onderneming het ons fundamentele berekeninge gebruik. Die basiese beginsel van ontwerp is om baie klein breukveranderings binne die aarde se swaartekrag van 1 g te meet. U kan hierdie sensor dus op verskillende maniere gebruik. Die algoritme is om die veranderingsnelheid van die vertikale swaartekragvektor in al drie loodregte rigtings te meet, wat aanleiding gee tot 'n gravitasiegradiënt tensor. Dit kan afgelei word deur die waarde van swaartekrag te onderskei op twee punte geskei deur 'n klein vertikale afstand, l, en deur hierdie afstand te deel. Ons sal poog om hierdie prototipe vroeër as later 'n werkende weergawe te maak van die konfigurasie, die kode en modelleringswerke vir struktuurgedraagde geraas en vibrasie -analise. Ons glo dat almal daarvan hou!

Vir u vertroosting het ons 'n betowerende video op YouTube wat u ondersoek kan help. Vertrou hierdie poging lei tot verdere ondersoek. As die geleentheid nie klop nie, bou 'n deur.

Aanbeveel: