3-jų Ašių Akselerometras

Iš seniau buvau gavęs iš Freescale kelis akselerometrus MMA7455L. Taigi sugalvojau išbandyti.. 🙂 Tik šiek tiek baisokai atrodė, kaip reikės prilituoti tokią mažą mikruškę..  Jos korpusas: LGA-14, o matmenys: 3mm x 5mm x 1mm 🙂

Package

Pasibraižiau PCB perėjimą iš to LGA į DIP korpusą, kad galėčiau išmėginti ant breadboard’o 🙂 Su lituokliu kažin ar būtų pavykę prilituoti nes išorėje koju kaip ir nesimato 🙂 tai pasinaudojau lygintuvu. Taip kaip išlituodavau čipus taip pamėginau ir įlituoti.. Ir visai neblogai gavosi. O dariau šitaip: pirmiausiai aptepiau čipuko dugną su litavimo pasta. Tada su lituokiu užnešiau šiek tiek lydmetalio ant padukų, kad gautusi kaip rutuliukai:)

Pads

Tada aišku takeliai turi būti padengti lydmetaliu ir užtepta šiek tiek litavimo pastos.. Tada tiesiog dėjau ant lygintuvo plokštę, o ant plokštės padėjau čipą.. Kai įkaito tiek, kad lydmetalis suskystėjo, tą čipą tiesiog patį užtraukė i savo vietą 🙂 Na ir tada beliko sulituoti pin’us ir bandyti ant breadboard’o.

breadboard

nusibrėžiau rodykles kur kokia krytis, kad nereikėtu žvilgčioti į datasheet’ą. Na ir pradėjau rašyti programėlę jam, kad nors pamatyti ar išvis pavyko prilituoti 🙂 Taigi pasirašęs trumpiausią kodo gabaliuką (konrolės registrų keitimui) ir LCD debuginimui, kad matyti ar išvis kas nors vyksta. Ir netyčia, nors ir buvau įsidęjęs 3.3v stabilizatorių pajungiau 5v maitinimą 🙂 bet sensoriukui nieko nenutiko, nors datasheet’e parašyta, kad įtampa yra 2.4v – 3.6v. Ir nuskaitė man tą kontrolės registrą tokį, kokį įrašiau 🙂 Na tada jau defininau daugiau reikiamų registrų (x,y,z ašių reikšmių registrai ir kalibracijos registrai). Pirmu bandymu reikšmės nelabai atitiko to, ką rašė datasheet’as, kad turi būti ant Z ašies 64 reikšmė. Taigi teko i kalibracijos registrus įrašyti atitinkamas postumio reikšmes. Kai jau viskas atitiko pradėjau daryti ir “g” skaičiavimą. O jis atrodo taip:

if(!(X & 0x80)) //patikirname ar nėra neigiamas skaičius
{
X=X & 0x7F; // maskiname 7 bitus
X=X*100/63; // kad gauti sveiką skaičių
}

na opaskui tik atvaizdavimas LCD, tik vat su neigiamu g skaičiavimu taip ir dabar dar nesu tikras ar gerai darau.. nors reikšmę gaunu gerą. O darau šitaip:

X=X & 0x7F; // naudosim 7 bitus
X=127-X; // kad gauti atvirkčius neigiamus skaičius
X=(X*100/63); // kad gauti sveiką skaičių

Lentelė iš datasheet’o:

Table

Tai va, o žinant g galima daug ką įdomaus paskaičiuoti:) g yra laisvo kritimo pagreitis ir mūsų žemėje stovint jis yra 9.8m/s²  ir tai skaitosi 1g.

Stovint mėnulyje 0.16 g
Stovint žemėje 1 g
Bugatti Veyron įsibėgėjimas nuo 0 iki 100 km/h per 2.4s 1.18 g
Erdvėlaivis Shuttle, kylant 3 g
F1 bolidas stipriai stabdydamas -5 g
Reaktyvinis lėktuvas 9 – 12 g

Prie didelių g žmogui darosi sunku kvėpuoti ir netgi pasikeičia veidas nes jo masė išauga kelis kartus ir oda nori išlaikyti savo ramybės buseną kaip ir visi daiktai 🙂

Taigi šiek tiek pasidarius tą G-Force meterį, nusinešiau visą breadboard’a į mašiną, kad pažiūrėti kokia ta akseleracija, kiek tų g mano mašina išrauna 😀  tai nelabai jau plėšantis daugiausiai buvau užfiksavęs 0.32 g, aišku čia pirma antra pavara :). Žinant g galima paskaičiuoti F (jėgą) F = m*g , taip pat galima gauti greitį V = g * t, o turint F ir V galima suskaičiuoti galią N = F * V.  Tai mano mašinos jėga buvo F = m*g kiek pamenu masė popieriuose buvo parašyta 1320kg o g = 0.32*9.8 = 3.13m/s² tai

F = 1320 * 3.13 = 4131N

V = 3.13 * 1s  = 3.12m/s => 11km/h

N = 4131 * 3.12 = 12900W =>12.9kW

12900/745 = 17HP (arklių)

Matomai turėtų galingiau traukti 😀 nes šeip mašina 66kW 🙂

o čia kaip atrodo duomenys:

lcd

z = 1g nes čipo dugnas stovi žiūrėdamas žemyn. Čia dar nesu padaręs jokių skaičiavimų, kurie turėtu būti atliekami procesoriuje. Beto naudoju Atmega8 tai man vargiai ten sutilptu visi paskaičiavimai nes dar taip optimaliai kodo rašyti nemoku. 🙂

Tags: , , ,

4 Responses to “3-jų Ašių Akselerometras”

  1. Heksogenas says:

    O savo masę pamiršot pridėti prie auto masės.. 😀

  2. admin says:

    aha 🙂 na čia tik primetimas.. o šiaip koki 100kg reikėtų pridėti 😀

  3. as says:

    o gal noretum pasidalint programos kodu? 🙂

  4. VJ says:

    Sveiki,
    Dariau vieną projektą su akselerometru. VIdeo:
    http://www.youtube.com/watch?v=JM7N1M8oMmY&feature=plcp

Leave a Reply

You can add images to your comment by clicking here.

Spam Protection by WP-SpamFree