Merev testek mechanikája. Szécsi László



Hasonló dokumentumok
Ütközések. Szécsi László

KÖRMOZGÁS, REZGŐMOZGÁS, FORGÓMOZGÁS

MateFIZIKA: Pörgés, forgás, csavarodás (Vektorok és axiálvektorok a fizikában)

MODELLEZÉS - SZIMULÁCIÓ

Osztályozó, javító vizsga 9. évfolyam gimnázium. Írásbeli vizsgarész ELSŐ RÉSZ

Plakátok, részecskerendszerek. Szécsi László

Mesh from file, OrthoCamera, PerspectiveCamera. Szécsi László 3D Grafikus Rendszerek 3. labor

Mérnöki alapok 2. előadás

A mechanikai alaptörvények ismerete

Irányításelmélet és technika I.

Kinematika szeptember Vonatkoztatási rendszerek, koordinátarendszerek

Robotika. Kinematika. Magyar Attila

DINAMIKA ALAPJAI. Tömeg és az erő

rnök k informatikusoknak 1. FBNxE-1 Klasszikus mechanika

IMPULZUS MOMENTUM. Impulzusnyomaték, perdület, jele: N

A Hamilton-Jacobi-egyenlet

Infobionika ROBOTIKA. XI. Előadás. Robot manipulátorok III. Differenciális kinematika. Készült a HEFOP P /1.0 projekt keretében

ÁLTALÁNOS JÁRMŰGÉPTAN

Mérnöki alapok 2. előadás

Merev testek kinematikája

Szeretném felhívni figyelmüket a feltett korábbi vizsgapéldák és az azokhoz tartozó megoldások felhasználásával kapcsolatban néhány dologra.

Kirchhoff 2. törvénye (huroktörvény) szerint az áramkörben levő elektromotoros erők. E i = U j (3.1)

Molekuláris dinamika I. 10. előadás

Játékfejlesztés. Szirmay-Kalos László

Klár Gergely

Minden irányú kerekes robotok meghajtásának matematikai alapjai

0. Teszt megoldás, matek, statika / kinematika

Mechanika, dinamika. p = m = F t vagy. m t

Az alábbi fogalmak és törvények jelentését/értelmezését/matematikai alakját (megfelelő mélységben) ismerni kell: Newtoni mechanika

Gnädig Péter: Golyók, labdák, korongok és pörgettyűk csalafinta mozgása április 16. Pörgettyűk különböző méretekben az atomoktól a csillagokig

Hajder Levente 2017/2018. II. félév

A mechanika alapjai. A pontszerű testek dinamikája

Tervminták a valósidejű gyakorlatban

Tárgymutató. dinamika, 5 dinamikai rendszer, 4 végtelen sok állapotú, dinamikai törvény, 5 dinamikai törvények, 12 divergencia,

Denavit-Hartenberg konvenció alkalmazása térbeli 3DoF nyílt kinematikai láncú hengerkoordinátás és gömbi koordinátás robotra

DINAMIKA A minimum teszt kérdései a gépészmérnöki szak hallgatói részére (2004/2005 tavaszi félév)

2014/2015. tavaszi félév

Mozgásmodellezés. Lukovszki Csaba. Navigációs és helyalapú szolgáltatások és alkalmazások (VITMMA07)

Csuklós mechanizmus tervezése és analízise

1. Feladatok merev testek fizikájának tárgyköréből

Tartalom. Mi az, amit változtatunk? Hajder Levente 2018/2019. I. félév

Gyakorló feladatok Feladatok, merev test dinamikája

Lendület. Lendület (impulzus): A test tömegének és sebességének szorzata. vektormennyiség: iránya a sebesség vektor iránya.

Periódikus mozgás, körmozgás, bolygók mozgása, Newton törvények

Gépészeti rendszertechnika (NGB_KV002_1)

Képlet levezetése :F=m a = m Δv/Δt = ΔI/Δt

Számítógépvezérelt irányítás és szabályozás elmélete (Bevezetés a rendszer- és irányításelméletbe, Computer Controlled Systems) 7.

Newton törvények, lendület, sűrűség

A bolygók mozgására vonatkozó Kepler-törvények igazolása

Elméleti kérdések 11. osztály érettségire el ı készít ı csoport

DR. DEMÉNY ANDRÁS-I)R. EROSTYÁK JÁNOS- DR. SZABÓ GÁBOR-DR. TRÓCSÁNYI ZOLTÁN FIZIKA I. Klasszikus mechanika NEMZETI TANKÖNYVKIADÓ, BUDAPEST

Az elméleti mechanika alapjai

Mérnöki alapok 1. előadás

Mechanika. I. előadás február 25. Mechanika I. előadás február / 31

Bevezetés az elméleti zikába

Oktatási Hivatal FIZIKA I. KATEGÓRIA. A 2016/2017. tanévi Országos Középiskolai Tanulmányi Verseny döntő forduló FELADATOK

A LÉGKÖRBEN HATÓ ERŐK, EGYENSÚLYI MOZGÁSOK A LÉGKÖRBEN

Mechanika. Kinematika

Irányítástechnika GÁSPÁR PÉTER. Prof. BOKOR JÓZSEF útmutatásai alapján

1. Transzformációk mátrixa

DIONYSIS KONSTANTINOU ANDREAS MEIER ZBIGNIEW TRZMIEL MARADJON A LEVEGŐBEN

Tömegpontok mozgása egyenes mentén, hajítások

SCM motor. Típus

A mechanika alapjai. A pontszerű testek kinematikája. Horváth András SZE, Fizika és Kémia Tsz szeptember 29.

Robotok inverz geometriája

Kényszerfeltételek február 10. F = ma

Négycsuklós mechanizmus modelljének. Adams. elkészítése, kinematikai vizsgálata,

Dinamika. p = mυ = F t vagy. = t

Mechanikai rezgések Ismétlő kérdések és feladatok Kérdések

A LÉGKÖRBEN HATÓ ERŐK, EGYENSÚLYI MOZGÁSOK A LÉGKÖRBEN

Mátrixok 2017 Mátrixok

Geometriai modellezés. Szécsi László

TestLine - Fizika 8. évfolyam elektromosság alapok Minta feladatsor

Fizika alapok vegyészeknek Mechanika II.: periodikus mozgások november 10.

Számítási feladatok a Számítógépi geometria órához

9. évfolyam. Osztályozóvizsga tananyaga FIZIKA

MLSZ EDZŐKÉPZŐ KÖZPONT - TOVÁBBKÉPZÉSI NAPOK

Newton törvények, erők

Mérnöki alapok 10. előadás

A II. kategória Fizika OKTV mérési feladatainak megoldása

Számítógépes geometria

GÉPEK DINAMIKÁJA 9.gyak.hét 1. és 2. Feladat

Differenciálegyenletek numerikus integrálása április 9.

Kinematika: A mechanikának az a része, amely a testek mozgását vizsgálja a kiváltó okok (erők) tanulmányozása nélkül.

ML4195E/8195E. 16Nm-es rugóvisszatérítésű zsalumozgatók On / Off - szabályozásokhoz JELLEMZŐK MŰSZAKI ADATOK ÁLTALÁNOS

Méréstechnika. Rezgésmérés. Készítette: Ángyán Béla. Iszak Gábor. Seidl Áron. Veszprém. [Ide írhatja a szöveget] oldal 1

A LÉGKÖRBEN HATÓ ERŐK, EGYENSÚLYI MOZGÁSOK A LÉGKÖRBEN

Feladatsor A differenciálgeometria alapja c. kurzus gyakorlatához

A nagyobb tömegű Peti 1,5 m-re ült a forgástengelytől. Összesen: 9p

3D koordináta-rendszerek

DINAMIKAI VIZSGÁLAT ÁLLAPOTTÉRBEN Dr. Aradi Petra, Dr. Niedermayer Péter: Rendszertechnika segédlet 1

Oktatási Hivatal FIZIKA. II. kategória. A 2017/2018. tanévi Országos Középiskolai Tanulmányi Verseny 1. forduló. Javítási-értékelési útmutató

Mechanika - Versenyfeladatok

Fizika 1 Mechanika órai feladatok megoldása 7. hét

Számítógépvezérelt irányítás és szabályozás elmélete (Bevezetés a rendszer- és irányításelméletbe, Computer Controlled Systems) 9.

1. gyakorlat. Egyenletes és egyenletesen változó mozgás. 1. példa



SCM motor. Típus

1 2. Az anyagi pont kinematikája

Átírás:

Merev testek mechanikája Szécsi László

Animáció időfüggés a virtuális világmodellünkben bármely érték lehet időben változó legjellemzőbb: a modell transzformáció időfüggése mozgó tárgyak módszerek az időfüggés megadására képlet, görbe, pálya, motion capture... fizikai szimuláció

Valósidejű fizikai animáció for(;;) { dt = t(most) t(jelen érvényes világállapot) fizikai kölcsönhatások számítása fizikai folyamatok szimulálása dt időtávon } rajzolás

Egy merev test fizikai jellemzői pozíció x sebesség v tömeg m lendület L 3D vektor [m] 3D vektor [m/s] skalár [kg] 3D vektor [kg m/s = Ns]

Egy merev test fizikai jellemzői orientáció forgatás [fordulat] q szögsebesség 3D vektor [fordulat / s] ω tehetetlenségi nyomaték skalár [kg m 2 ] I (mass moment of inertia, angular mass) perdület 3D vektor [Nms] P

Newton a = F / m v = a dt x = v dt L = v m L = F dt

Euler integrálás a következő állapotot úgy határozzuk meg, hogy a deriváltakat dt ideig állandónak tekintjük f(t + dt) = f(t) + f (t) dt nem pontos, nem hatékony, de egyszerű

Euler integrálás sebességgel F erő adott a gyorsulás: a = F / m v(t + dt) = v(t) + a dt x(t + dt) = x(t) + v(t + dt) dt

Euler integrálás lendülettel F erő adott L(t + dt) = L(t) + F dt sebesség a lendületből: v(t + dt) = L(t + dt) / m x(t+dt) = x(t) + v(t + dt) dt Miért jobb? mozdíthatatlan test: 1/m = 0 forgatásánál is így lesz

A test tárolt jellemzői eddig x pozíció 1/m inverz tömeg L lendület ebből a tömeg, sebesség bármikor számolható

Analógiák forgásra F erő τ forgatónyomaték 3D vektor, Nm a gyorsulás β szöggyorsulás 3D vektor, 1/s 2 v sebesség ω szögsebesség 3D vektor, 1/s, ω = fordulat / sec, ω tengely körül L lendület P perdület 3D vektor, Nms = kg m 2 / s 2

Angular mass adott forgatónyomaték milyen szögsebesség-változást indukál vektor vektor 3x3 mátrixxal megadható vannak kitüntetett tengelyek (principal axes) ezek körüli forgatásra vett 3 tehetetlenségi nyomaték (diagonálmátrix) τ 3 tengelyre + 3 th. nyomaték

Angular mass de ha a test el van forgatva máris teljes mátrix I világkoordinátában kell a szimulációhoz vagy: perdületet modellkoordinátába visszük, szorzunk, szögsebességet visszavisszük világba függ az elforgatástól

Newton forgásra β = τ I -1 ω = β dt q = ω dt P = ω I P = τ dt

Euler integrálás forgásra τ forgatónyomaték: τ = (p - x) F P(t + dt) = P(t) + τ dt szögsebesség a perdületből: ω(t + dt) = P(t + dt) R T I -1 R perdület modellben erőkar = támadáspont - tömegközéppont modellezési trafó elforgatás része = q ω modellben ω világban q(t+dt) = q(t) + ω(t + dt) dt???

Elforgatás tárolása R mátrix nem rossz, de sok forgatási mátrix szorzata lassan nem forgatás lesz helyette: kvaternió x, y, z, w (3 képzetes, 1 valós) x, y, z = a forgatás tengelye * sin(ϕ/2) w = cos(ϕ/2) két kvaternió szorzata a forgatások egymásutánja

Engine Node subnodes World control() animate() render() NodeGroup sceneroot Entity control() animate() render() rigidmodeldirectory RigidBody x, L, q, P rigidmodel RigidModelDirectory RigidModel 1/m, I -1

XML <rigidmodel name="ship" invmass="0.001" invangularmassx="0.001 invangularmassy="0.001 invangularmassz="0.001 /> <group> <rigidbody p0="0" p1="0" p2="40 shadedmesh="ship" rigidmodel="ship"/> </group> entity helyett

RigidBody osztály class RigidBody : virtual public Entity { protected: RigidModel* rigidmodel; D3DXVECTOR3 position; D3DXQUATERNION orientation; D3DXVECTOR3 momentum; D3DXVECTOR3 angularmomentum; x q L lendület P perdület...

RigidBody::animate void RigidBody::animate(double dt) { momentum += force * dt; D3DXVECTOR3 velocity = momentum * rigidmodel->invmass; position += velocity * dt; angularmomentum += torque * dt; D3DXMATRIX worldspaceinvmassmatrix = transposedrotationmatrix * rigidmodel->invangularmass * rotationmatrix; // angularvelocity = angularmomentum * worldspaceinvmassmatrix; orientation *= angulardifferencequaternion;

Vezérlés feladata forgatónyomaték és erő kiszámítása class RigidBody : virtual public Entity { protected: RigidModel* rigidmodel; D3DXVECTOR3 position; D3DXQUATERNION orientation; D3DXVECTOR3 momentum; D3DXVECTOR3 angularmomentum; D3DXVECTOR3 force; D3DXVECTOR3 torque;

RigidBody::control void RigidBody::control(double dt, Node* others) { force = D3DXVECTOR3(0.0, 0.0, 0.0); torque = D3DXVECTOR3(0.0, 0.0, 0.0);... // pl. gravitáció force += D3DXVECTOR3(0.0, -10.0, 0.0); // pl. forgató rakétapár torque += D3DXVECTOR3(10.0, 0.0, 0.0); } others->interact(this);

RigidBody::interact void RigidBody::interact(Entity* target) { if(target == this) return; target->affect(this /*affector*/); }