Következő lapNext Page Arrow

Fizlab (MyPhysicsLab.hu)

Inga és kocsi mozgása

This page is part of the website prepared by Sándor Nagy with kind permission from Erik Neumann as a translation to Hungarian of his original site MyPhysicsLab—Physics Simulation with Java.

Ezen az ábrán egy négyzettel ábrázolt kocsit látunk, mely vízszintes pályán mozog. A kocsiról inga függ. Ráadásul a kocsi amúgy sem mozog szabadon, mert egy rugó köti a jobb oldalon lévő falhoz.
A kocsi és az inga súrlódása külön állítható. Változtatható paraméterek továbbá a gravitáció, a tömegek, az inga hossza, valamint a rugó merevsége. Az egérrel változtatni lehet a kocsi és az inga kiindulási helyzetét is. A Statikus állapot gomb itt is stabil nyugalmi állapotba visz, amikor is az inga függőlegesen áll, és a rugó hossza megegyezik a nyugalmi hosszal.
Ha nem jön elő a szimuláció, akkor érdemes elolvasni a Java engedélyezéséről szóló instrukciókat. A kapcsolatos fizikát és matekot lásd lentebb.




Az ilyen rendszerek mozgásegyenleteit kétféle módon határozhatjuk meg: a közvetlen Newton-féle úton vagy a közvetett Lagrange-féle módszerrel. Alább mindkettőt látni fogjuk.

Kinematika


diagram of cart & pendulum variables and i, j unit vectors
Akár a direkt, akár az indirekt módszert tekintjük is, legelőször a kinematikát kell rendbe tenni. Egy eszköz kinematikája az egyes részek térbeli viszonyával foglalkozik, tekintet nélkül a fellépő erőkre. A kinematikában csupán olyan összefüggéseket keresünk a helyzet, sebesség és gyorsulás meghatározására, melyek az eszköz „pillanatfelvételét” leíró változóktól függnek. A változók a következők: Szükségünk lesz az i, j, k egységvektorokra. A vektorokat félkövér betűk jelölik felülvonással.
A kocs kinematikája: helyzet = x i
sebesség = x' i
gyorsulás = x'' i
Az inga kinematikája összetettebb. A helyzetet viszonylag egyszerű trigonometriázással kapjuk. A sebesség és a gyorsulás a helyzet első és második deriváltja az idő szerint. helyzet = x i + R sin θ iR cos θ j sebesség = x' i + R θ' cos θ i + R θ' sin θ j gyorsulás = x'' i + R θ'' cos θ iR θ' 2 sin θ i + R θ'' sin θ j + R θ' 2 cos θ j

Erők

A kocsit és az ingasúlyt ponttömegnek vesszük. Először is, vektorábrát készítünk a kocsiról és az ingasúlyról, hogy lássuk a rájuk ható erőket. Definiáljuk a következő paramétereket és erőket:
cart forces Kocsierők


pendulum forces
Ingaerők
A vektorábrára pillantva elég könnyen felírhatjuk a kocsira ható erők egy részét. (Az inga súrlódási erejére a következő szakaszban térünk vissza, mert az kissé trükkösebb dolog.)
Az ingasúlyra ható erők:

Az ingasúrlódás forgatónyomatéka

torque force of pendulum friction
a súrlódás forgatónyomatéka
Az inga súrlódásából adódó forgatónyomaték vektora merőleges az inga és a kocsi közös mozgássíkjára (azaz a képernyőre). Ezt a síkra merőleges irányt a k egységvektor jellemzi. A forgatónyomaték nagysága b θ', ahol θ' a szögsebesség. A forgatónyomatékot megfeleltethetjük egy olyan erőnek, mely az ingarúd végére hat (lásd a rajzot). Newton harmadik törvényéből (hatás-ellenhatás) következik, hogy a rúd másik végére ugyanekkora erő hat, de az iránya ellentétes.

Az R rúdra ható F erő forgatónyomatékát az R × F = (Rx, Ry, 0) × (Fx, Fy, 0) = (Rx FyRy Fx) k vektoriális szorzat adja meg. A 3-dimenziós vektort most (x, y, z) jelöli, ami a következőt jelenti: x i + y j + z k.   Az F erőt merőlegesnek vettük a rúdra, így F = f (−Ry, Rx, 0) ⁄ R ahol f az F erő ismeretlen nagysága, R pedig az R hossza, vagyis R = √(Rx2 + Ry2). Az F is irányát úgy választottuk meg, hogy a pozitív forgatónyomaték a θ szög növekedését okozza. Ezért a vektoriális szorzat R × F = (Rx FyRy Fx) k = f (Rx2 + Ry2) ⁄ R k = f R k Ebből megkapjuk az erő f nagyságát: b θ' k = R × F = f R k f = bR θ'
Ez az eredmény könnyen értelmezhető: ha egy adott forgatónyomatékot akarunk kapni, akkor egy rövidebb rúd esetében nagyobb erő kell, hosszabb rúd esetében pedig kisebb. Maga az erővektor: F = f (−Ry, Rx, 0) ⁄ R = bR θ' (cos θ i + sin θ j) Vegyük észre, hogy R = R(sin θ, −cos θ, 0), ami részben igazolja is a fenti egyenletet. Ez az F erő hat az ingatömegre, míg az ellentettje a kocsira.

A mozgásegyenletek meghatározásának direkt módszere

A fenti erőket összegezve megkapjuk a kocsira ható eredő erőt F = N jM g jT cos θ j + T sin θ ik x id x' i + bR θ' (cos θ i + sin θ j) Newton törvényéből F = M a, de a kocsi gyorsulását már korábban meghatároztuk, vagyis
   N jM g jT cos θ j + T sin θ ik x i + bR θ' (cos θ i + sin θ j) = M x'' i (1)
Az ingára ható erők összegzéséből F = T cos θ jT sin θ im g jbR θ' (cos θ i + sin θ j) Newton törvényéből F = m a, de az inga gyorsulását korábban már szintén meghatároztuk, vagyis
   T cos θ jT sin θ im g jbR θ' (cos θ i + sin θ j) = m(x'' i + R θ'' cos θ iR θ' 2 sin θ i + R θ'' sin θ j + R θ' 2 cos θ j) (2)

Most már külön egyenletekként írhatjuk fel az (1) és (2) egyenlet komponenseit. Így 4 szimultán egyenlethez jutunk:.
   T sin θk xd x' + bR θ' cos θ = M x'' (3)
NM gT cos θ + bR θ' sin θ = 0
  T sin θbR θ' cos θ = m(x'' + R θ'' cos θR θ' 2 sin θ) (4)
   T cos θm gbR θ' sin θ = m(R θ'' sin θ + R θ' 2 cos θ) (5)
(A négy egyenlet közül a másodikat elhanyagoljuk. Ez arra volna jó, hogy a kocsira ható ismeretlen N normálerőt meghatározzuk.) Egy kis algebrázással eltüntethetjük a hűzóerő ismeretlen T nagyságát. A (3) és (4) egyenlet összeadásával némi átrendezés segítségével ezt kapjuk:
(M + m)x'' = m R θ' 2 sin θm R θ'' cos θk xd x' (6)
Szorozzuk meg az (5) egyenletet sin θ-val T sin θ cos θm g sin θbR θ' sin2 θ = m R θ'' sin2 θ + m R θ' 2sin θ cos θ Használjuk fel a (4) egyenletet T sin θ helyettesítésére. bR θ' cos2 θm x'' cos θm R θ'' cos2θ + m R θ' 2sin θ cos θm g sin θbR θ' sin2 θ = m R θ'' sin2θ + m R θ' 2sin θ cos θ A cos2θ + sin2θ = 1 trigonometriai azonosság segítségével ezt kapjuk
bR θ' + m x'' cos θ + m R θ'' + m g sin θ = 0 (7)

A (6) és (7) kifejezés a keresett mozgásegyenlet. Két egyenletünk van az x,θ változóra és deriváltjaikra. További átalakításokra van szükség, hogy a két egyenletet olyan alakra hozzuk, melyre a Runge–Kutta-módszer alkalmazható (lásd alább).

A mozgásegyenletek meghatározásának indirekt (energia-) módszere

Az indirekt módszer a rendszer energiájából indul ki. (Aki tud angolul, annak James H. Williams Jr. Fundamentals of Applied Dynamics c. könyvét ajánlom.  Az itt tárgyalt probléma "Mass and Plane Pendulum Dynamic System" címen található az 1996-os kiadás 234. oldalán.) Első lépésként a rendszer Lagrange-függvényét kell felírni, mely a kinetikus és a potenciális energia különbségét jelenti. L = TV A kinetikus energiához szükségünk lesz a kocsi és az inga sebességére, amit korábban már kiszámoltunk (lásd fentebb a kinematkai részt). A kinetikus energia képlete 12m v2. Ne feledjük, hogy egy vektor négyzete a következő skalárszorzatot jelenti: v2 = v · v. A kinetikus energia tehát T = 12 M (x' i)2 + 12 m (x' i + R θ' cos θ i + R θ' sin θ j)2 A skaláris szorzás szabályait alkalmazva ezt kapjuk T = 12 M x' 2 + 12 m ((x' + R θ' cos θ)2 + (R θ' sin θ)2)
A rendszerben két helyen tározódik potenciális energia: a rugóban és az inga gravitációs potenciáljában. Vrugó = 12 k x2 Vgravitáció = m g magasság = m g(RR cos θ) Így tehát a rendszer Lagrange-függvénye L = M2 x' 2 + m2 (x' + R θ' cos θ)2 + m2 (R θ' sin θ)2k2 x2m g R(1 − cos θ)

Általánosított erők: a súrlódás

Hogy a súrlódási erőt kezelni tudjuk, számítsuk ki egy nem-konzervatív munka nagyságát, mely a változóértékek parányi elmozdulásával kapcsolatos. Hangsúlyozzuk, hogy most csak a súrlódáshoz hasonló nem-konzervatív erőkkel foglalkozunk – a gravitációval és a rugóval kapcsolatos konzervatív erőket a Lagrange-függvény veszi figyelembe a potenciális energián keresztül.

Az x változó parányi Δx megváltozása a súrlódás esetében ΔW = −d x' Δx nem-konzervatív munkával jár együtt. Definiáljuk a következő „általánosított erőt” Wx = −d x' Ugyanígy, a θ változó parányi Δθ megváltozása a súrlódás esetében ΔW = −b θ' Δθ nem-konzervatív munkával jár együtt. Definiáljuk tehát a következő „általánosított erőt” is: WQ = −b θ'

Mozgásegyenletek a Lagrange-függvényből

Most pedig le fogjuk vezetni a mozgásegyenleteket a Lagrange-egyenletből. Az x változó Lagrange-egyenlete
   Wx = \frac{d}{dt} \left( \frac{\partial L}{\partial x'} \right) - \frac{\partial L}{\partial x} (8)
Ne feledjük, hogy parciális deriválás során az x' és az x különböző változónak tekintendő. Íme a parciális deriváltak:
L  = M x' + m(x' + R θ' cos θ)
x'
L  = − k x
x
Vegyük \frac{\partial L}{\partial x'} idő szerinti deriváltját, és vonjuk ki belőle a \frac{\partial L}{\partial x} parciálist. Ezzel a (8) egyenlet a d x' = M x'' + m x'' + m R θ'' cos θm R θ' 2 sin θ + k x alakot ölti, mely átrendezésel a direkt módszerrel kapott (6) egyenletté alakítható: (M + m)x'' = m R θ' 2 sin θm R θ'' cos θk xd x'
A θ változó Lagrange-egyenlete
   WQ = \frac{d}{dt} \left( \frac{\partial L}{\partial \theta'} \right) - \frac{\partial L}{\partial \theta} (9)
A parciális deriváltak:
L  = m(x' + R θ' cos θ)R cos θ + m θ' R2 sin2θ
θ'
L  = −m(x' + R θ' cos θ)R θ' sin θ + m R2 θ' 2sin θ cos θm g R sin θ
θ
(Vegyük észre, hogy minden tagból kiemelhető az m R szorzat.) Vegyük \frac{\partial L}{\partial \theta'} idő szerinti deriváltját, és vonjuk ki belőle a \frac{\partial L}{\partial \theta} parciálist. Ezzel a (9) egyenlet ab θ' = m R [(x'' + R θ'' cos θR θ' 2 sin θ)cos θθ' sin θ(x' + R θ' cos θ) + θ'' R sin2θ + 2 θ' 2R sin θ cos θ + (x' + R θ' cos θ)θ' sin θR θ' 2sin θ cos θ + g sin θ] alakba megy át. Ezután egyszerűsítések sora következik, majd a sin2θ + cos2θ = 1 azonosság segítségével a direkt módszerrel kapott (7) egyenlet áll elő: bR θ' + m x'' cos θ + m R θ'' + m g sin θ = 0
Melyik módszer tetszik jobban: a direkt vagy az indirekt? Nekem úgy tűnik, hogy a profik inkább az indirekt módszert kedvelik. Ehhez több matek kell, de a számítások egyszerűbbek. Elég összevetni az iménti számítást a súrlódási forgatónyomaték direkt módszeren alapuló korábbi számításával. Másfelől viszont a direkt módszerre mindenképpen szükség van, ha ki akarjuk számítani a rendszerben ható erőket, mint pl. a rúd húzóereje és a kocsira ható normálerő.

Numerikus megoldás

A szimuláció működtetéséhez szükség van a mozgásegyenletek numerikus megoldására. Ehhez a Runge–Kutta-módszert fogjuk használni, melyet közönséges differenciálegyenlet-rendszerekhez találtak ki.

A Runge–Kutta-módszer alkalmazásához a (6) és (7) egyenletet a következő alakra kell hozni: x'' = f(x, x', θ, θ') θ'' = g(x, x', θ, θ') ahol f, g meghatározandó függvények. Ezért a második deriváltakat az első deriváltak segítségével kell kifejezni. Ha visszamegyünk a (6) és (7) egyenlethez, láthatjuk, hogy egy kis rendezgetésre van szükség, ha csak a második derivaltakat akarjuk látni a bal oldalon. A θ'' és az x'' kifejezése után (amit akár magunk erejéből, akár a Mathematica programra támaszkodva megtehetünk) a következőt kapjuk:
x'' =   m R θ' 2 sin θ + m g sin θ cos θk xd x' + bR θ' cos θ
M + m sin2θ
θ'' =   m R θ' 2 sin θ cos θ − (m+M)g sin θ + k x cos θ + d x' cos θ − (1 + Mm)bR θ'
R (M + m sin2θ)

Újabb változók bevezetésével elsőrendű egyenleteket kapunk (azaz négy egyenletet négy deriválttal). x' = v θ' = ω
v' =   m R ω2 sin θ + m g sin θ cos θk xd v + bR ω cos θ
M + m sin2θ
ω' =   m R ω2 sin θ cos θ − (m+M)g sin θ + k x cos θ + d v cos θ − (1 + Mm)bR ω
R (M + m sin2θ)
Pontosan erre az alakra van szükség, hogy a Runge–Kutta-módszert a numerikus megoldás szolgálatába állíthassuk

Látogatószám 2013.02.27. óta:

web statistics