Ettekanne teemal "Liikumise modelleerimine Logomira keskkonnas." Autode vaba liikumise simuleerimine kaherealistel teedel Arvutijooniste modelleerimine ja kombineerimine liiklusega

Oletame, et sõidad jalgrattaga ja järsku lükkab keegi sind küljelt. Kiireks tasakaalu taastamiseks ja kukkumise vältimiseks keerate jalgratta juhtrauda tõuke suunas. Jalgratturid teevad seda refleksiivselt, kuid on hämmastav, et jalgratas suudab seda toimingut iseseisvalt sooritada. Kaasaegsed jalgrattad suudavad iseseisvalt tasakaalu säilitada ka ilma juhita liikudes. Vaatame, kuidas saab seda efekti programmis COMSOL Multiphysics modelleerida.

Mida me teame isetasakaalustuvatest jalgratastest?

Kaasaegne jalgratas ei erine väga palju turvaline jalgratas- üks esimesi kujundusi, mis ilmusid 19. sajandi 80ndatel. Rohkem kui sada aastat hiljem püüavad teadlased ikka veel välja selgitada, millised mõjud panevad jalgratta ise tasakaalustama. Teisisõnu, kuidas püsib kontrolli alt väljas jalgratas püstises asendis tasakaalus? Paljud avaldatud tööd on pühendatud jalgratta liikumise kirjeldamisele analüütiliste võrrandite abil. Üks esimesi olulisi väljaandeid sellel teemal oli Francis Whipple'i artikkel, milles ta tuletas jalgratturi poolt käsi kasutamata juhitava jalgratta dünaamika üldisi mittelineaarseid võrrandeid.

Üldiselt on aktsepteeritud, et jalgratta stabiilsuse tagavad kaks tegurit - esiratta güroskoopiline pretsessioon ja stabiliseeriv efekt pöörlemistelje pikisuunaline kalle rattad. Hiljuti avaldas Delfti ja Cornelli (vt) teadlaste meeskond põhjaliku ülevaate Whipple'i jalgrattamudeli lineariseeritud liikumisvõrranditest. Nad kasutasid oma tulemusi isetasakaalustava jalgratta demonstreerimiseks. Nende uuringud näitavad, et sellele nähtusele pole lihtsat seletust. Mitmed tegurid, sealhulgas güroskoopilised ja stabiliseerivad efektid, jalgratta geomeetria, kiirus ja massijaotus, võimaldavad mittejuhitaval jalgrattal püsti püsida.

Sellest tööst inspireerituna koostasime mitme kehaga süsteemi dünaamilise mudeli, et demonstreerida käed-vabad jalgratturi juhitava jalgratta isetasakaaluvat liikumist.

Jalgratta asend erinevatel aegadel.

Mitme kerega jalgratta mudel

Et tagada rataste puhas veeremine ja piirata rataste libisemist kolmes suunas, vajame kolme piirtingimust.


Ratta mudel, mis näitab suundi, milles liikumine on piiratud.

Kehtivad järgmised piirangud: Edasilibisemine puudub:

(\frac(d\bold(u))(dt).\bold(e)_(2)=r\frac(d\bold(\theta)_s)(dt))

Külgmine libisemine puudub:

\frac(d\bold(u))(dt).\bold(e)_(3)=r\frac(d\bold(\theta)_(l))(dt)

Maapinnaga kokkupuutepinnaga risti libisemine puudub:

\frac(d\bold(u))(dt).\bold(e)_(4)=0

kus \paks(e)_(2) , \paks(e)_(3) ja \paks(e)_(4) on hetkesuund (kaldtelg), põikisuund (pöördetelg) ja kontaktpind (\paks(e)_(4)=\paks(e)_(2) \times\bold(e)_(3)), vastavalt;

\frac(d\bold(u))(dt) — translatsioonikiirus; r on ratta raadius; \frac(d\bold(\theta)_(s))(dt) — pöörlemise nurkkiirus; \frac(d\bold(\theta)_(l))(dt) on kaldnurkkiirus.

Kuna neid piirtingimusi ei ole võimalik kiirusele rakendada, on need ajas diskretiseeritud ja kehtestatud järgmiselt:

(\paks(u)-\paks(u)_(p)).\bold(e)_(2)=r(\bold(\theta)_(s)-\bold(\theta)_(sp ))

(\bold(u)-\bold(u)_(p)).\bold(e)_(3)=r(\bold(\theta)_(l)-\bold(\theta)_(lp ))

(\paks(u)-\paks(u)_(p)).\paks(e)_(4)=0

kus \bold(u)_(p) , \bold(\theta)_(sp) ja \bold(\theta)_(lp) on vastavalt nihkevektor, pöörde- ja kaldenurk eelmisel ajal.

Diskreetsetes piirtingimustes, mis tagavad libisemise puudumise, kasutatakse ratta asendi arvutamise tulemust eelmises ajaetapis. Keha jäik asend, pöörlemine ja telgede hetkeasendid eelmisel ajaetapil salvestatakse globaalsete võrrandite ja sõlme abil Eelmine lahendus mittestatsionaarses lahendajas.

Isetasakaalustava jalgratta liikumise simulatsioon

Analüüsiks valisime 18° pöördenurgaga jalgratta. Jalgratta algkiirus on 4,6 m/s. 1 sekund peale liikumise algust mõjub jalgrattale väga lühikeseks ajaks jõud 500 N. Jõu mõjul kaldub jalgratas etteantud suunas sirgelt trajektoorilt kõrvale.

Esimese sekundi jooksul liigub jalgratas ühtlase kiirusega edasi piki algselt määratud suunda. Külgjõud põhjustab seejärel läbipainde. Arvesta, et jalgrattur ei hoia käsi lenkstangil ega suuda ratta tasakaalu kontrollida. Mis järgmisena juhtub? Märkame, et niipea, kui ratas hakkab kalduma, pöördub lenks kukkumise suunas. Juhtraua asendi korrigeerimine kukkumise korral taastab jalgratta tasakaalu.

Jalgratas jätkab edasiliikumist ja liikudes hakkab see vastupidises suunas kalduma. See kalle on suurusjärgus väiksem ja rooliliigutus järgib kallutamist väikese viivitusega. See vasak-pare võnkumine jätkub ja lõpuks kaob. Jalgratas liigub edasi rangelt vertikaalses asendis ja suurendab veidi kiirust. Rooli vibratsioon, pöördenurgad ja nurkkiirus vähenevad ja kaovad järk-järgult.

Jalgratta liikumine tasasel pinnal sirgjoonelt kõrvalekaldumisel. Nool näitab ratta kallet.

Jalgratta kalde- ja pöördenurkade (vasakul) ning suhtelise nurkkiiruse (paremal) arvutamise tulemused.

Stabiilsusanalüüsi läbiviimine

Nii saime teada, et jalgratas suudab ise tasakaalustada. Uuring näitas, et on võimatu välja tuua ühtegi parameetrit, mis määrab jalgratta stabiilsuse. Ratta disain, kaalujaotus ja sõidukiirus on kõik tegurid, mis mõjutavad stabiilsust. Selle nähtuse paremaks mõistmiseks viisime läbi täiendavad analüüsid, et uurida kahe parameetri – algkiiruse ja roolitelje kalde – mõju. Algkonfiguratsioonina kasutasime ülalkirjeldatud jalgrattamudelit juhtraua kaldenurgaga 18° ja algkiirusega 4,6 m/s ning teostasime nende kahe teguri mõju parameetrilise analüüsi.

Erinevad algkiirused

Jalgratas ei saa paigal seistes jääda rangelt püstisesse asendisse. Selle parameetri mõju hindamiseks muutsime liikumiskiirust vahemikus 2,6 m/s kuni 6,6 m/s sammuga 1 m/s. Vahemikus 2,6–3,6 m/s kaldub ratas liiga palju ja on ebastabiilne. Kiirusel 5,6 m/s kipub kaldekiirus nulli, kuid kaldenurk ise omandab nullist erineva väärtuse. Kuigi see konfiguratsioon on stabiilne, liigub ratas ringis kergelt kaldu. 6,6 m/s juures kalle ja roolinurk aja jooksul suurenevad, muutes liikumise ebastabiilseks.

Ebastabiilne Säästev Ebastabiilne
2,6 m/s 3,6 m/s 4,6 m/s 5,6 m/s 6,6 m/s

Stabiilne korpus vastab kiirusele 5,6 m/s (vasakul), ebastabiilne korpus aga 6,6 m/s (paremal).

Roolinurk

Roolisõlm on jalgratta isetasakaalustamiseks väga oluline. Kui ratast ei saa juhtida (näiteks kui juhtraud on kinni jäänud), siis ratas ei suuda kallet kompenseerida, mistõttu see lõpuks kukub. Sellega seoses mõjutab kahvli liikumist reguleeriva roolitelje pöörlemine ka jalgratta isetasakaalustamist.

Et analüüsida roolitelje pöörlemise mõju jalgratta stabiilsusele, muutsime pöördenurki 15 ° kuni 21 ° 1 ° sammuga. 15° nurga all suurenevad kalde- ja roolinurk aja jooksul, muutes selle konfiguratsiooni ebastabiilseks. Ratas on stabiilne 16° kuni 19° ja ebastabiilne suurema nurga all. Kui pöördeväärtus on suurem kui 19°, kõigub samm ja pöördenurk ning need võnkumised aja jooksul suurenevad, mis viib stabiilsuse kaotuseni.

Selles postituses näitasime, kuidas simuleerida mittejuhitava, isetasakaalustava jalgratta liikumist, kasutades programmi COMSOL Multiphysics Multibody Dynamics moodulit. Näitasime, kuidas rakendada võrrandite kaudu jäiga ratta libisemispiiranguid ja seejärel kombineerisime need piirangud mitmekerelise jalgratta mudeliga. Seejärel analüüsisime algkiiruse ja telje pöörlemise mõju jalgratta stabiilsusele. Pärast nende parameetrite hindamist nägime, et jalgratas võib jääda stabiilseks ühes konfiguratsioonis ja kaotada selle teises.

Jalgratta isetasakaalustumine on mitme teguri tagajärg. Analüüsi kaudu ja kooskõlas varasemate uuringutega näitasime, et jalgratta stabiilsus on seotud selle võimega "juhtida" lahja suunas.

Selle õpetusega on kaasas 3D-stseen.

Lühike sissejuhatus

Tegelikult mainiti juba eelmistes tundides Cinema 4D füüsika teatud aspekte: näiteks selle saidi kõige esimeses tunnis kukutasime palli tasasele pinnale, hiljem peeti Cinema 4D füüsikalist mudelit. üks lõpmatu liikumise generaatori simuleerimise viise . Kuid siiani olid need füüsika ainult osalised, äärmiselt pealiskaudsed ja kõige primitiivsemad aspektid.

Selles õppetükis liigume edasi kõige huvitavama juurde: Cinema 4D füüsika süvendatud uurimine konkreetse näite põhjal - proovime luua ja konfigureerida (vähemalt kõige primitiivsemas versioonis) täisfunktsionaalset. auto liikumise füüsiline mudel ebatasasel maastikul, simuleerides üldiselt samu põhimõtteid, mille järgi auto reaalses maailmas liigub.

Sõidukite liikumise füüsilise mudeli kasutamise vajadus peitub sõnades "üle ebatasasel maastikul". Enamasti ei ole autoliikluse modelleerimisel vaja kasutada füüsilist mudelit: autod liiguvad ühtlaselt mööda trajektoori (täpselt sellist liiklusvoogu õppisime looma ühest automudelist, mäletate?), visuaalselt suheldes praktiliselt mitte mingil juhul keskkonnaga ning seda on lihtne ja lihtne kujutada lihtsate vahenditega, ilma füüsikat kasutamata. Kuid niipea, kui me räägime keerulisest maastikust, millel auto sõidab, või auto enda erakordsest käitumisest (triivimine, libisemine või kokkupõrked) - see on koht, kus füüsika pööre saabub, kui teie ja mina ei taha asetage käsitsi tohutul hulgal võtmeid ja redigeerige kolmemõõtmelise mudeli käitumiskõveraid viimase käitumise iga sekundi kohta (ja seda ilma lõpliku renderduse visuaalset usutavust tagamata).

Eesmärgid

Esiteks määratleme oma eesmärgid ja eesmärgid. Selles õppetükis on meie eesmärk kujutada auto enam-vähem usutavat käitumist ebatasasel pinnal sõitmisel. Täpsemalt: auto peaks põrgatama ja veerema põrgatamisega põrgatades, samuti riputama rattad aukude kohale. Ja loomulikult peaks ta närvilisusest ülesaamisel hoogu maha võtma ja tasastel aladel kiirendama.

Kui see poleks auto kiirendamine ja aeglustamine sõltuvalt maastikust, siis võib-olla lihtsustaksime oma ülesannet, "peatades" auto etteantud trajektoori mööda liikuvale nähtamatule "juhile" - sel juhul oleks auto nagu lastekelk, mille kiirus ei sõltu jooksjate all olevate lumehangede kõrgusest ja poega kelgul lohiseva isa sammu kiirusest. Meie puhul ei sobi see probleemi lahendus teile ja mulle, see tähendab, et me peame varustama automudeli kõige töötavama mootoriga. Maksimaalse efekti saavutamiseks muudame oma autost tagaveolise linnamaasturi.

Alustame?

Alustame auto välimuse (nimelt välimuse, mitte füüsilise mudeli – see pole sama asi!) modelleerimisest. Meie auto hakkab koosnema vaid viiest kolmemõõtmelisest elemendist: kerest ja neljast rattast. Loodan, et saate aru, et iga ratas peaks olema mudeli eraldi element. Lisaks on soovitatav teha kõik rattad tahkeks (monoliitseks), st koosnema ühest elemendist, mitte elementide komplektist, vastasel juhul tekib hiljem palju raskusi - peate kokku kinnitama. kõik ratta elemendid, kasutades füüsilisi modifikaatoreid, mis minu arvates oleks täiesti tarbetu ajaraiskamine. Põhiprintsiip, mille alusel mudeli elemendid jagasime, on elementide hilisema visuaalse nihutamise võimalus maasturi liikumise ajal üksteise suhtes.

Pange tähele, et linnamaasturi kere põhjas on väljalõiked rataste jaoks - broneerin kohe, et nende puudumine meie tulevase füüsilise mudeli tööd ei segaks (hiljem näete ise), küll aga vaatamise ajal. Animatsioonil oleks võimalik näha rattaid, mis läbivad otse põhja, mis oleks muidugi jäme visuaalne viga.

Liigume nüüd kõige olulisema juurde: maasturi tegeliku füüsilise mudeli loomine. Võiks kohe eeldada, et on aeg rattad kere külge kinnitada. Mitte mingil juhul! Ei praegu ega hiljem. Ja sellepärast. Fakt on see, et kui kinnitaksite rattad otse kere külge, oleks teil jällegi palju raskusi: Cinema 4D füüsiline mudel tajuks rattaid kui keha sees(st nagu oleks selle sees kinni) ja püüaks iga hinna eest neid vabastada, mille tulemusena näeksite rataste enam-vähem usutava käitumise asemel peamiselt nende väikest, lakkamatut vibratsiooni ja minimaalne reaktsioon füüsilisele suhtlemisele teiste maasturit ümbritsevate objektidega. Muidugi saab selle probleemi täielikult lahendada stseeni ja mudelite dünaamika väärtuste peenhäälestuse ja aeganõudva reguleerimisega, näiteks intervallidega, mille saavutamisel algab kolmemõõtmeliste elementide interaktsioon, kuid me valib lihtsama tee.

Võtame ette lihtsama marsruudi – ja seekord loome mitte visuaalse, vaid füüsilise auto kere mudeli. Autori kavandatud kujul on see kõige tavalisem hulknurkne kuup. Sinu omas võib selleks olla ükskõik milline muu hulknurkne objekt – peaasi, et seda maasturi kere alt näha poleks ja et tegemist oleks hulknurkse mudeliga, mille servad on ratastest piisavalt kaugel. Tavapäraselt kutsume seda elementi kaalukeskuseks.

Miks see nii on, küsite? Miks ei võiks see olla NULL-objekt või splain?

Sest meie loodud kaalukeskus on definitsiooni ja nime tõttu mõeldud aktiivselt osalema maasturi füüsilises mudelis. Ei splainid ega NULL-objektid, millel on füüsikalised omadused, ei kasuta viimast, kuna neil puudub füüsiline pind.

Niisiis, maasturi kaalukeskus on loodud. Liigume edasi rataste kinnitamise juurde. Füüsilise mudeli puudumisel allutaksime nad objektihalduris lihtsalt kuubile (või isegi kehale) ja sellest piisaks. Meie puhul ei tohiks rattad kinnitada jäigalt, vaid võttes arvesse teatud füüsilist vabadust, st võimalust kaalukeskuse suhtes veidi nihkuda, kui füüsiline suhtlus toimub stseenis teiste objektidega (näiteks ebaühtlasega). teekatted).

Just seda tüüpi kinnituste jaoks pakub Cinema 4D "Connector" tüüpi objekte (inglise keelest "connect" - "to connect"). Minge ülemisse menüüsse, otsige üles üksus "Simulatsioon", valige rippmenüüst alamüksus "Dünaamika" ja klõpsake rippmenüüs "Connektor".

Näeme, et tööaknas on ilmunud uus objekt ja selle nimi on ilmunud objektihaldurisse. Alustame parempoolse esirattaga. Asetame pistiku kohta, kus asub ratta geomeetriline keskpunkt, mis kinnitatakse pistiku abil kere külge - samas kui ratta enda geomeetriline keskpunkt peaks asuma kohas, kus asub ratta rummu keskpunkt. asub roolis.

Nüüd peate konnektori konfigureerima. Valige objektihalduris selle nimi ja vaadake allpool avanevat omaduste akent.

Esimene parameeter, mille väärtust peaksime muutma, on ühenduse tüüp (parameeter “Tüüp”), see määrab, kuidas ratas keha suhtes liigub. Ilmselt on meie puhul kõige sobivam ühenduse tüüp "Rattavedrustus". Sõnade "Objekt A" vastas olevale väljale lohistage objektihaldurist kaalukeskuse nimi; alloleval pildil on see tähistatud kui "Base" - see on objekt millele Kinnitame ratta. Lohistage sõnade "Objekt B" vastas olevale väljale ratta nimi (pildil, mis on tähistatud kui "Wheel_FR", lühendist "Wheel Front Right") - see on selle vastu me kinnitame selle teile. Me ei puuduta parameetreid "Attachment A" ja "Attachment B" - need näitavad, kus asuvad objektide massikeskmed ja vaikeväärtused sobivad meile sel juhul üsna hästi.

Liigume edasi pistiku peenhäälestamise juurde.

Seade "Ignoreeri kokkupõrkeid" on mõeldud siis, kui soovite vältida ratta ja kaalukeskuse vahelist füüsilist suhtlust – näiteks kui konnektori seaded lubavad rattal kuni 45 kraadi kõrvale kalduda, kuid ratas toetub siiski objektile, puudutades. kinnitatud ja ei saa kalduda maksimaalse lubatud nurga alla, siis võib see säte aidata. Parameeter "Roolinurk" on ratta maksimaalne lubatud kõrvalekalle algsest asendist. Parameeter "Vedrustuse puhkeasend" määrab ratta vertikaalse nihke puhkeasendis (st nendel hetkedel, kui ratas ei suhtle millegagi). Meie puhul on väärtus -15 cm. - kui muudate selle -25-ks, siis tõstetakse maasturi kere rataste suhtes veelgi kõrgemale kui hetkel ja kliirens suureneb, kuid kl. samal ajal väheneb ka maasturi stabiilsus, kuna kaalukeskus on kõrgem - kas pole, see meenutab juba autode stabiilsuse tasakaalu reaalses maailmas? Vedrustuse pehmus sõltub parameetri "Vedrustuse jäikus" väärtusest. Mida madalam väärtus, seda pehmem on vedrustus. Parameeter „Vedrustuse heitmine” määrab vedrustuse „põrge”. Ja lõpuks saate soovi korral aktiveerida parameetrid "Alumine piir Y" ja "Ülemine piir Y" ning määrata neile kauguse väärtused, millest ratas ei saa kõrvale kalduda.

Pärast pistiku seadistamise lõpetamist kordame sama toimingut - alustades uue pistiku loomisest - teise esiratta jaoks, seekord vasakpoolse. Selle asemel, et liikuda ülemise menüü kaudu, nagu te ilmselt juba aru saite, võite lihtsalt leida parema esiratta pistiku, mille me varem lõime, ja vajutades ja hoides all klaviatuuril klahvi "Ctrl" kogu jõust, lohistage konnektori nimi tühjale kohale objektihalduris – pärast selle toimingu sooritamist saame teiega ja minule konnektori uue koopia, mis pärib ka kõik sätted oma algselt. Peaasi on meeles pidada uue konnektori omaduste väljal “Objekt B” parempoolse ratta nime muutmist vasaku nimeks.

Esirattad on viimistletud. Liigume edasi taha.

Ja otsekohe seisame silmitsi küsimusega, mis on esmapilgul veidi arusaamatu: mitu mootorit peaks meie maasturil olema? Kui imelik küsimus, ütlete – üks, muidugi.

Lubage mul selgitada, millega see küsimus on seotud. Päris automehhanismis edastatakse pöördemoment mõlemale veorattale üheaegselt üsna keerulise mehaaniliste ajamite süsteemi kaudu. Teil ja minul pole mõtet seda ajamisüsteemi modelleerida, kuna meil pole ülesannet visualiseerida maasturi sisemist struktuuri, mis tähendab, et mootori täieliku töötamise asemel saame endale lubada mis tahes lihtsustatud füüsilist jäljendamist. seda seni, kuni veorattad pöörlevad ja autot edasi lükkavad.

Seega on teil ja minul kaks alternatiivset lahendust: kui meil on hädasti vaja kujutada kahe veoratta eraldi veojõud, saame virtuaalsele kujundusele lisada kaks eraldi mootorit, millest igaüks keerutab oma ratast. Kui meil pole vaja eraldi veojõudu modelleerida, siis kõige tõhusam ja lihtsaim viis auto liikuma panemiseks on luua nn "rattapaar" - kaks tihedalt kokku tsementeeritud ratast, mida veab üks mootor.

Selles õppetükis valime teise, lihtsama meetodi - rattapaari loomine ja selle pööramine ühe mootoriga. Selle mööndusega, et põhimõtteliselt saate selle meetodi soovi korral keerulisemaks muuta - näiteks keerake mitte rattapaari, vaid telge koos selle külge kinnitatud veoratastega konnektorite abil, nii et viimased kõikuvad vabalt edasi-tagasi, nagu oleme juba esirataste rattad jaoks seadistanud Siiski ei tee me selles tunnis oma ülesannet asjatult keeruliseks, soovi korral katsetage omal käel selle tunni juurde lisatud stseeni põhjal, lingi sellele leiate tunni algusest.

Niisiis, on otsustatud - loome rattapaari: valige kaks tagumist ratast - saate tööaknas, võite minna objektihaldurisse, kus see on teile mugavam - seejärel teeme objektihalduris paremklõpsu mis tahes neist ja rippmenüüst otsime üksuse "Ühenda" + Kustuta" ("Ühenda ja kustuta"). Samas kontekstimenüüs üleval real on üksus "Ühenda" - elementide kombineerimisel loob see uue objekti, jättes liidetud mudelite originaalid puutumata; me ei vaja eraldi tagarataste originaale.

Näeme, et linnamaasturi tagarattad on muutunud üheks kolmemõõtmeliseks elemendiks – seda me vajasimegi.

Loome teise pistiku - seekord tagumise rattapaari jaoks ja arvestades selle monoliitsust, on neid ainult üks ja seejärel konfigureerime selle. Asetame selle loomulikult rattapaari keskele.

Nüüd loome mootori: ülemine menüü, jälle üksus "Simulatsioon", rippmenüü, alamelement "Dünaamika", rippmenüüs "Mootor".

Asetame loodud mootori samasse kohta, kus on rattapaari pistik - keskele tagarataste vahele (või teaduslikult öeldes tagumise rattapaari geomeetrilisse keskossa), seejärel valime objektihalduris selle nime, liigume sujuvalt meie pilk mootori omaduste aknale, mis avaneb allpool ja liigub edasi ehitusplatsile.

Sõna “Objekt A” kõrval olevale väljale lohista objektihaldurist tagumise rattapaari nimi (pildil on see märgitud kui “Tagarattad”). Sõna “Objekt B” kõrval olevale väljale me midagi ei lohista. Parameetri "Tüüp" jaoks valige väärtus "Nurk" - kõik on õige, sest maasturi liikumiseks peab meie loodud mootor veorattapaari pidevalt teatud nurga alla pöörama. Seadke parameeter "Mode" väärtusele "Reguleerige kiirust". Ja lõpuks näitame parameetrite "Angular Target Speed" ja "Pöördemoment" arvväärtusi.

Tõenäoliselt olete valmis animatsiooni käivitama ja tulemusi kontrollima. Kui jah, siis on see veidi vara: lõppude lõpuks oleme teie ja mina lõpetanud ainult ühe osa tööst - oleme seadnud objektidele füüsilise mõju, samas kui füüsilised objektid meil veel puuduvad. Ja rattad, te ütlete, ja kere ja kaalukuubik? Tõsi, hulknurkseid mudeleid on loodud, kuid füüsiliselt pole mõjujõudude jaoks ei rattaid, kere ega kaalukuubikut veel olemas – kuni ratastele, kerele ja kaalukuubikule pole määratud dünaamika silti. Sest just kolmemõõtmelise stseeni hulknurksele elemendile määratud dünaamika silt näitab, et see element osaleb koostoimes teiste dünaamiliste omadustega elementidega.

Alustame maasturi füüsiliste omaduste seadistamist. Ja samal ajal ehitame hierarhilise struktuuri elementidest, millest see koosneb. Kõigepealt loome rühma, kuhu kogutakse kõik auto elemendid (kui seda pole veel tehtud) - seda saab teha, ühendades paar esimest käepärast elementi, kasutades klahvikombinatsiooni Alt + G (Tuletan meelde, et erinevalt Cinema 4D järjestikuste eraldi klahvivajutuste üldtunnustatud meetodist vajutatakse seda kombinatsiooni üheaegselt!) või NULL-objekti loomisega.

Järgmiseks nimetame loodud rühma mõneks unikaalseks, jäljendamatuks ja unustamatuks sõnaks (näiteks autor nimetas seda “CAR”) ning topime sinna kõik maasturiga seotud elemendid: kere, rattad, pistikud, kaalukuubik ja mootor.

Nüüd määrame rühma elemendid ümbritseva füüsilise mudeliga füüsilises suhtluses osalejateks: valige rühma nimi, paremklõpsake seda rippmenüüs, viige hiirekursor üksuse "Dünaamilised sildid" kohale. ja valige viimase alammenüü rippmenüüst ainus üksus - "Dynamics Body".

Kui olete seda õppetundi seni tähelepanelikult lugenud, võite küsida: kuidas saab rühm "CAR", olles NULL-objekt, füüsilises mudelis füüsiliselt suhelda? See on õige, objekt NULL ise ei tööta. Kuid dünaamika omadused võivad sellelt pärida kõik sellele alluvad elemendid ja igale elemendile pole vaja eraldi dünaamika silti määrata. Peaasi on rühma dünaamika silt õigesti seadistada. Konfigureerige: valige silt ja valige allpool avanevas atribuutide aknas vahekaart "Dünaamika", kus aktiveerime parameetri "Lubatud" (sealhulgas interaktsioonifüüsika) ja valige parameetri "Dünaamiline" väärtus "Sees" ( näidates sellega grupi osalemist kõigis tavalistes füüsiliste reeglite jaoks, nagu gravitatsioon jne).

Seejärel minge samas atribuutide aknas vahekaardile "Kokkupõrge" ja määrake väärtused, mis sunnivad rühmaelemente dünaamikareegleid pärima: "Rakenda silt lastele" parameetrile "Pärimine" ("Pärimine"), "Kõik" on "Individual Elements", linnuke "Self Collisions" ja "Automatic (MoDynamics)" jaoks "Shape" ("Circuit"). Ülejäänud parameetrid seadistame teie maitse järgi.

Siin oleks paslik lõpuks meenutada maasturi kere kohta. Meie idee kohaselt peaks see suhtlema ka kolmemõõtmelist stseeni ümbritseva füüsilise mudeliga - näiteks viskama ninaga pappkastidest seina -, kuid samal ajal ei tohiks see suhelda oma rühma teiste elementidega. - kaalukuubiku ja ratastega. Selle tulemuse saavutamiseks allutame selle kaalukuubile ja määrame kerele individuaalse dünaamika sildi - täpselt nagu autoelementide rühma -, kuid keredünaamika sildis lülitame välja parameetri "Dünaamiline" (määrake väärtus "Väljas") vahekaardil "Dünaamika" (pange tähele, et parameeter "Lubatud" jääb aktiveerituks, vastasel juhul lõpetab keha stseeni füüsilises mudelis osalemise täielikult ja kõik takistused, mis maasturi teele jäävad, vabalt läbi keha!). Kehale määratud dünaamikasildi vahekaardil "Kokkupõrge" saate määrata parameetrite "Pärimine silt" ja "Individuaalsed elemendid" jaoks vastavalt "Puudub" ja "Väljas" - kehal ei ole alluvaid elemente, millele keha dünaamilised omadused tuleks üle kanda.

Jääb üle vaid lisada kolmemõõtmelisele stseenile eelpool korduvalt mainitud ümbritsev füüsiline mudel – mõningane ebaühtlane reljeef, mis viimases animatsioonis paljastaks auto füüsiliselt usutava reaktsiooni löökaukudega suhtlemisele. Tunni juurde lisatud stseenis on tegemist mingisuguse areeni jämeda muljega, mille südamik on täpiline küngastega.

Lõpuks

Selles õppetükis uurisime auto liikumise lihtsaima füüsilise mudeli loomist - ilma täiendavate pistikprogrammide ja mooduliteta, kasutades standardseid Cinema 4D tööriistu. Tunnis, nagu märkasite, ei räägita pöörete modelleerimisest, meie loodud mudel on võimeline liikuma ainult sirgjooneliselt – muidugi juhul, kui rataste all olev ebatasane maastik liikumistrajektoori ei muuda (mis juhtubki). allolevas videos). Muide, autor kohandas teadlikult kolmemõõtmelise stseeni füüsilise mudeli parameetreid nii, et maasturi liikumine oli justkui liialdatud, et selgelt näidata rataste ja auto kere koostoimet ebakorrapärasused. Lisaks sisaldab tunnile lisatud stseen muidki tunnis mainimata elemente, mis on mõeldud pildistamiseks ja valgustamiseks. Seejärel kaalutakse saidil võib-olla keerukamaid füüsilisi mudeleid.

Lõpptulemus on animatsiooni kujul.


VALGEVENE RIIKLIKU TEHNIKAÜLIKOOL

VABARIIGI INNOVATIIVSE TEHNOLOOGIA INSTITUUT

INFOTEHNOLOOGIA OSAKOND

Kursuse töö

Distsipliin "matemaatiline modelleerimine"

Teema: “Langevarjuri liikumise modelleerimine”


Sissejuhatus

1. Keha vabalangemine keskkonna vastupanuvõimet arvestades

2. Matemaatilise mudeli formuleerimine ja selle kirjeldus.

3. Simulinki paketti kasutava uurimisprogrammi kirjeldus

4. Probleemi lahendamine programmiliselt

Kasutatud allikate loetelu

Sissejuhatus

Probleemipüstituses :

Katapult viskab mannekeeni 5000 meetri kõrguselt. Langevari ei avane, mannekeen kukub maapinnale. Hinnake kukkumise kiirust vastu maad tabamise hetkel. Hinnake aega, mis kulub mannekeenil maksimaalse kiiruse saavutamiseks. Hinnake kõrgust, mille juures kiirus saavutas maksimumväärtuse. Koostage sobivad graafikud, viige läbi analüüs ja tehke järeldused.

Töö eesmärk :

Õpitakse koostama matemaatilist mudelit, lahendama diferentsiaalvõrrandeid tarkvara abil (kasutades tehnilist arvutuskeelt MatLAB 7.0, Simulink laienduspaketti) ja analüüsima matemaatilise mudeli kohta saadud andmeid.

1. Keha vabalangemine keskkonna vastupanuvõimet arvestades

Kehade tegelikel füüsilistel liikumistel gaasis või vedelas keskkonnas jätab hõõrdumine liikumise olemusele tohutu jälje. Kõik saavad aru, et suurelt kõrguselt alla kukkunud objekt (näiteks lennukist hüppav langevarjur) ei liigu üldse ühtlase kiirendusega, kuna kiiruse kasvades suureneb keskkonna tõmbejõud. Isegi seda suhteliselt lihtsat ülesannet ei saa "kooli" füüsika vahenditega lahendada: selliseid praktilist huvi pakkuvaid ülesandeid on palju. Enne asjakohaste mudelite käsitlemist tuletagem meelde, mida on teada vastupanujõu kohta.

Allpool käsitletavad seadused on oma olemuselt empiirilised ja neil ei ole nii ranget ja selget sõnastust kui Newtoni teisel seadusel. Meediumi takistusjõu kohta liikuvale kehale on teada, et üldiselt see suureneb kiiruse suurenedes (kuigi see väide pole absoluutne). Suhteliselt madalatel kiirustel on takistusjõu suurus võrdeline kiirusega ja on seos, kus selle määravad keskkonna omadused ja keha kuju. Näiteks palli puhul on see Stokesi valem, kus on keskkonna dünaamiline viskoossus, r on kuuli raadius. Niisiis, õhu puhul temperatuuril t = 20 °C ja rõhul 1 atm = 0,0182 H.s.m-2 vee puhul 1,002 H.s.m-2, glütseriini puhul 1480 H.s.m-2.

Hinnakem, millise kiirusega vertikaalselt langeva kuuli takistusjõud võrdub gravitatsioonijõuga (liikumine muutub ühtlaseks).

(1)

Olgu r= 0,1 m, = 0,8 kg/m (puit). Kukkumisel õhus m/s, vees 17 m/s, glütseriinis 0,012 m/s.

Tegelikult on kaks esimest tulemust täiesti valed. Fakt on see, et juba palju väiksematel kiirustel muutub takistusjõud võrdeliseks kiiruse ruuduga: . Muidugi säilib formaalselt ka kiiruses lineaarne takistusjõu osa, kuid kui , siis võib panuse tähelepanuta jätta (see on konkreetne näide järjestusteguritest). K2 väärtuse kohta on teada järgmist: see on võrdeline keha S ristlõike pindalaga, risti vooluga ja keskkonna tihedusega ning sõltub keha kujust. Tavaliselt esindavad k2 = 0,5 cS, kus c on takistustegur – mõõtmeteta. Mõned c väärtused (mitte väga suurte kiiruste puhul) on näidatud joonisel 1.

Piisavalt suure kiiruse saavutamisel, kui voolujoonelise keha taha tekkinud gaasi- või vedelikupöörised hakkavad intensiivselt kehast eemalduma, väheneb c väärtus mitu korda. Palli puhul on see ligikaudu 0,1. Üksikasjad leiate erialakirjandusest.

Pöördume tagasi ülaltoodud hinnangu juurde, mis põhineb takistusjõu ruutkeskmisel sõltuvusel kiirusest.

palli eest

(3)

Riis 1 . Tõmbeteguri väärtused mõnele kehale, mille ristlõige on joonisel näidatud kujuga

Võtame r = 0,1 m, =0,8,103 kg/m3 (puit). Siis õhus liikumiseks (= 1,29 kg/m3) saame 18 m/s, vees (= 1,103 kg/m3) 0,65 m/s, glütseriinis (= 1,26,103 kg/m3) 0,58 m/s.

Võrreldes ülaltoodud hinnangutega takistusjõu lineaarse osa kohta, näeme, et õhus ja vees liikumisel muudab selle ruutosa liikumise ühtlaseks ammu enne seda, kui lineaarne osa seda teha suutis, ja väga viskoosse glütseriini puhul on vastupidine väide. tõsi. Vaatleme vaba langemist, võttes arvesse keskkonna takistust. Matemaatiline liikumismudel - Newtoni teise seaduse võrrand, võttes arvesse kahte kehale mõjuvat jõudu: gravitatsiooni ja keskkonna takistusjõudu:

(4)

Liikumine on ühemõõtmeline; Projekteerides vektorvõrrandi vertikaalselt allapoole suunatud teljele, saame

(5)

Küsimus, mida arutame esimeses etapis, on järgmine: milline on kiiruse muutumise olemus ajas, kui on antud kõik võrrandis (7) sisalduvad parameetrid? Selle sõnastuse korral on mudel oma olemuselt puhtalt kirjeldav. Terve mõistuse järgi on selge, et kui on takistus, mis suureneb kiirusega, siis ühel hetkel võrdub takistusjõud raskusjõuga, misjärel kiirus enam ei suurene. Alates sellest hetkest saab tingimusest leida vastava püsikiiruse =0, lahendades mitte diferentsiaali, vaid ruutvõrrandi. Meil on

(6)

(teine ​​on negatiivne - juur jäetakse loomulikult kõrvale). Niisiis on liikumise iseloom kvalitatiivselt järgmine: kiirus kukkumisel suureneb vahemikust kuni . Kuidas ja millise seaduse järgi - seda saab teada ainult diferentsiaalvõrrandi (7) lahendamisel.

Kuid isegi nii lihtsas ülesandes jõudsime diferentsiaalvõrrandini, mis ei kuulu ühtegi standardtüüpi, mis on tuvastatud diferentsiaalvõrrandite õpikutes, mis ilmselgelt lubavad analüütilist lahendust. Ja kuigi see ei tõesta selle analüütilise lahenduse võimatust leidlike asenduste kaudu, pole need ilmsed. Oletame aga, et meil õnnestub leida selline lahendus, mis väljendub mitmete algebraliste ja transtsendentaalsete funktsioonide superpositsioonil – aga kuidas leiame liikumisaja muutumise seaduse? Ametlik vastus on lihtne:

(7)

kuid selle kvadratuuri realiseerimise võimalus on juba üsna väike. Fakt on see, et meile tuttav elementaarfunktsioonide klass on väga kitsas ja see on täiesti tavaline olukord, kus elementaarfunktsioonide superpositsiooni integraali ei saa põhimõtteliselt väljendada elementaarfunktsioonide kaudu. Matemaatikud on pikka aega laiendanud paljusid funktsioone, millega saab töötada peaaegu sama lihtsalt kui elementaarsete funktsioonidega (st leida väärtusi, erinevaid asümptootikume, joonistada graafikuid, eristada, integreerida). Kellel on Besseli, Legendre funktsioonid, integraalfunktsioonid ja veel kaks tosinat nn erifunktsiooni, on lihtsam leida diferentsiaalvõrrandite aparaadil põhinevaid modelleerimisprobleeme analüütilisi lahendusi. Kuid isegi valemi kujul tulemuse saamine ei eemalda probleemi esitada see kujul, mis on mõistmiseks ja sensoorseks tajumiseks maksimaalselt kättesaadav, sest vähesed inimesed saavad seda teha, kui valem, milles logaritmid, astmed, juured, siinused , ja eriti konjugeeritakse erifunktsioone, kujutage üksikasjalikult ette, et selles kirjeldatud protsess on just modelleerimise eesmärk.

Selle eesmärgi saavutamisel on arvuti asendamatu abiline. Olenemata sellest, milline on lahenduse saamise protseduur - analüütiline või numbriline -, mõelgem tulemuste esitamise mugavatele viisidele. Loomulikult on vajalikud arvude veerud, mida on kõige lihtsam arvutist hankida (kas analüütiliselt leitud valemi tabelina või diferentsiaalvõrrandit numbriliselt lahendades); peate lihtsalt otsustama, millise kuju ja suurusega need on tajumiseks mugavad. Veerus ei tohiks olla liiga palju numbreid, neid on raske tajuda, seetõttu on see samm, millega tabelit täidetakse, üldiselt palju suurem kui samm, millega diferentsiaalvõrrand lahendatakse numbrilise puhul. integratsioon, s.t. Kõiki arvuti leitud ja leitud väärtusi ei tohiks saadud tabelisse salvestada (tabel 2).

tabel 2

Liikumise ja langemiskiiruse sõltuvus ajast (0-15 s)

t(c) S(m) (Prl) t(c) S(m) (Prl)

Lisaks tabelile sõltuvusgraafikud ja ; Need näitavad selgelt, kuidas kiirus ja veeväljasurve ajas muutuvad, s.t. tuleb protsessi kvalitatiivne arusaamine.

Veel ühe selguse elemendi võib lisada korrapäraste ajavahemike järel langeva keha kujutis. On selge, et kiiruse stabiliseerumisel muutuvad piltide vahelised kaugused võrdseks. Võite kasutada ka värvimist - ülalkirjeldatud teadusliku graafika tehnikat.

Lõpuks saab sõltuvalt konkreetsetest asjaoludest programmeerida piiksud igal kindlal kaugusel, mille keha läbib – näiteks iga meetri või 100 meetri järel. Intervall tuleb valida nii, et algul oleks signaale harva ja siis kiiruse suurenedes kostub signaal üha sagedamini, kuni intervallid muutuvad võrdseks. Seega aitavad tajumisel kaasa multimeedia elemendid. Siin on kujutlusvõime suurepärane.

Toome konkreetse näite vabalt langeva keha probleemi lahendamisest. Kuulsa filmi “Taevane nälkjas” kangelane major Bulochkin, kes kukkus ilma langevarjuta 6000 m kõrguselt jõkke, mitte ainult ei jäänud ellu, vaid suutis isegi uuesti lennata. Proovime aru saada, kas see on tõesti võimalik või juhtub seda ainult filmides. Võttes arvesse ülaltoodud ülesande matemaatilise olemuse kohta öeldut, valime numbrilise modelleerimise tee. Niisiis, matemaatilist mudelit väljendab diferentsiaalvõrrandi süsteem.

(8)

Loomulikult ei ole see ainult arutlusel oleva füüsilise olukorra abstraktne väljendus, vaid ka ülimalt idealiseeritud, s.t. Enne matemaatilise mudeli koostamist viiakse läbi tegurite järjestamine. Arutleme selle üle, kas matemaatilise mudeli enda raames on võimalik teha täiendav pingerida, võttes arvesse konkreetset lahendatavat ülesannet, nimelt kas tõmbejõu lineaarne osa mõjutab langevarjuri lendu ja kas seda tuleks võtta modelleerimisel arvesse võtta.

Kuna probleemipüstitus peab olema konkreetne, siis lepime kokku, kuidas inimene kukub. Ta on kogenud piloot ja ilmselt varem langevarjuhüppeid teinud, seetõttu ei kuku ta kiirust alandada püüdes mitte “sõduri” kombel, vaid näoga allapoole, “lamades”, käed külgedele sirutatud. Võtame inimese keskmise pikkuse – 1,7 m ja valime iseloomulikuks kauguseks rindkere poolümbermõõdu – see on ligikaudu 0,4 m. Vastupanujõu lineaarse komponendi suurusjärgu hindamiseks kasutame Stokesi valem. Tõmbejõu ruutkomponendi hindamiseks peame määrama tõmbeteguri ja keha pindala väärtused. Valime ketta ja poolkera koefitsientide keskmiseks koefitsiendiks arvu c = 1,2 (kvalitatiivse hinnangu päeva valik on usutav). Hindame pindala: S = 1,7 ∙ 0,4 = 0,7(m2).

Liikumisega seotud füüsilistes probleemides on Newtoni teisel seadusel põhiroll. See ütleb, et kiirendus, millega keha liigub, on otseselt võrdeline sellele mõjuva jõuga (kui neid on mitu, siis resultant, st jõudude vektorsumma) ja pöördvõrdeline selle massiga:

Nii et vabalt langeva keha jaoks, mis on ainult oma massi mõjul, on Newtoni seadus järgmine:

Või diferentseeritud kujul:

Võttes selle avaldise integraali, saame kiiruse sõltuvuse ajast:

Kui alghetkel V0 = 0, siis .

.

Uurime, millise kiirusega tõmbejõu lineaar- ja ruutkomponent võrdseks saavad. Tähistame selle kiiruse Siis

On selge, et peaaegu algusest peale on major Bulochkini kukkumise kiirus palju suurem ja seetõttu võib takistusjõu lineaarse komponendi tähelepanuta jätta, jättes alles vaid ruutkomponendi.

Pärast kõigi parameetrite hindamist saame hakata probleemi numbriliselt lahendama. Sel juhul peaksite kasutama tavaliste diferentsiaalvõrrandisüsteemide integreerimiseks mõnda tuntud meetodit: Euleri meetodit, ühte Runge-Kutta rühma meetoditest või ühte paljudest kaudsetest meetoditest. Muidugi on neil erinev stabiilsus, efektiivsus jne. - neid puhtalt matemaatilisi probleeme siin ei käsitleta.

Arvutused tehakse seni, kuni see vette maandub. Umbes 15 sekundit pärast lennu algust muutub kiirus konstantseks ja püsib sellisena kuni maandumiseni. Pange tähele, et vaadeldavas olukorras muudab õhutakistus radikaalselt liikumise olemust. Kui me keelduksime seda arvesse võtmast, asendataks joonisel 2 näidatud kiirusgraafik selle puutujaga alguspunktis.

Riis. 2. Kukkumiskiiruse ja aja graafik

2. Matemaatilise mudeli formuleerimine ja selle kirjeldus

langevarjuhüppaja kukkumistakistuse matemaatiline mudel

Matemaatilise mudeli koostamisel peavad olema täidetud järgmised tingimused:

50 kg kaaluv mannekeen langeb õhus tihedusega 1,225 kg/m3;

Liikumist mõjutavad ainult lineaarse ja ruuttakistuse jõud;

Kere ristlõikepindala S=0,4 m2;

Siis vastupanujõudude toimel vabalt langeva keha jaoks on Newtoni seadus järgmine:

,

kus a on keha kiirendus, m/s2,

m – selle mass, kg,

g – vaba langemise kiirendus maapinnal, g = 9,8 m/s2,

v – keha kiirus, m/s,

k1 – lineaarne proportsionaalsuse koefitsient, võtame k1 = β = 6πμl (μ – keskkonna dünaamiline viskoossus, õhu puhul μ = 0,0182 N.s.m-2; l – efektiivne pikkus, võtame keskmise 1,7 m pikkuse ja vastava rinnakorviga inimese kohta ümbermõõt l = 0,4 m),

k2 – ruutproportsionaalsuse koefitsient. K2 = α = С2ρS. Sel juhul saab usaldusväärselt teada ainult õhutihedust ning mannekeeni S pindala ja selle takistustegur C2 on raske kindlaks määrata; võite kasutada saadud katseandmeid ja võtta K2 = α = 0,2.

Siis saame Newtoni seaduse diferentsiaalkujul:

Seejärel saame luua diferentsiaalvõrrandi süsteemi:


Gravitatsiooniväljas langeva keha matemaatilist mudelit, võttes arvesse õhutakistust, väljendatakse kahe esimest järku diferentsiaalvõrrandi süsteemiga.

3. Uurimisprogrammi kirjeldus paketti kasutades Simulink

Langevarjuri liikumise simuleerimiseks MATLAB süsteemis kasutame Simulink laienduspaketi elemente. Algkõrguse väärtuste määramiseks - H_n, lõppkõrgus - H_ k, numbrid - pi, μ - keskkonna dünaamiline viskoossus - my, ümbermõõt - R, mannekeeni mass m, takistustegur - c, õhutihedus - ro , keha ristlõike pindala - S , vabalangemise kiirendus - g, algkiirus - V_n, kasutame Simulink/Sources asuvat Constant elementi (joonis 3).

Joonis 3. Element Püsiv


Korrutustehte jaoks kasutame tooteplokki, mis asub Simulink/MathOperations/Product (joonis 4).

Joonistamine. 4

Et sisestada k1 – lineaarne proportsionaalsuskordaja ja k2 – ruutproportsionaalsuskordaja, kasutame elementi Gain, mis asub Simulink/MathOperations/Gain (Joonis 5.)

Joonistamine. 5

Integreerimiseks – element Integrator. Asub Simulinkis/Continuous/Integratoris. Joonistamine. 6.

Joonistamine. 6

Teabe kuvamiseks kasutame elemente Display ja Scope. Asub Simulinkis/Sinksis. (Joonis 7)


Joonistamine. 7

Matemaatiline mudel uurimiseks, kasutades ülaltoodud elemente, kirjeldades järjestikust võnkeahelat, on näidatud joonisel 8.

Joonistamine. 8

Uurimisprogramm

1. Kõrguse ja aja ning kiiruse ja aja graafiku uurimine, langevarjuri kaal on 50 kg.


Joonis 9

Graafikutelt on näha, et 50 kg kaaluva langevarjuri kukkumise arvutamisel on järgmised andmed: maksimaalne kiirus on 41,6 m/s ja aeg 18 s ning see tuleks saavutada pärast 800 m kukkumist, s.o. meie puhul umbes 4200 m kõrgusel.


Joonistamine. 10

2. Kõrguse ja aja ning kiiruse ja aja graafiku uurimine, langevarjuri mass on 100 kg.


Joonis 11


Joonis 12

Langevarjuri massiga 100 kg: maksimaalne kiirus on 58 m/s ja aeg 15 s ning see tuleks saavutada pärast 500 m kukkumist, s.o. meie puhul umbes 4500 m kõrgusel (joonis 11, joonis 12).

Saadud andmete põhjal järeldused, mis kehtivad mannekeenide kohta, mis erinevad ainult massi poolest, kuid samade mõõtmete, kuju, pinnatüübi ja muude eseme välimust määravate parameetritega.

Kerge mannekeen gravitatsiooniväljas vabal langemisel, võttes arvesse keskkonna takistust, saavutab madalama maksimumkiiruse, kuid lühema aja jooksul ja loomulikult samal algkõrgusel - trajektoori madalamal punktil kui raske mannekeen.

Mida raskem on mannekeen, seda kiiremini see maapinnale jõuab.

4. Probleemi lahendamine programmiliselt

Funktsioon langevarjuri liikumise simuleerimiseks

funktsioon dhdt=parashut(t,h)

globaalne k1 k2 g m

% esmajärjekorras kaugjuhtimissüsteem

dhdt(1,1)= -h(2);

% Langevarjuri liikumise simulatsioon

% Vasiltsov S.V.

globaalne h0 g m k1 k2 a

% k1-lineaarne proportsionaalsuse koefitsient, mis määratakse keskkonna omaduste ja keha kuju järgi. Stokesi valem.

k1 = 6 * 0,0182 * 0,4;

%k2-ruutproportsionaalsustegur, võrdeline keha ristlõike pindalaga

% seos vooluga, keskkonna tihedusega ja oleneb keha kujust.

k2=0,5*1,2*0,4*1,225

g = 9,81; raskuskiirendus %

m = 50; näivmassi %

h0=5000; % kõrgus

Ode45(@parashut,,)

r=leida(h(:,1)>=0);

a=g-(k1*-h(:,2)+k2*h(:,2).*h(:,2))/m % arvutab kiirenduse

% Joonistage kõrgus merepinnast ajas

subplot(3,1,1), plot(t,h(:,1),,"LineWidth",1,"Color","r"),ruudustik sisse;

xlabel("t, c"); ylabel("h(t), m");

title("Kõrgus versus aeg", "FontName", "Arial","Värv","r","FontWeight","paks");

legend ("m=50 kg")

% Kiiruse ja aja graafiku joonistamine

subplot(3,1,2), plot(t,h(:,2),"LineWidth",1,"Color","b"),ruudustik sisse;

üülmärgis("V(t), m/c");

Title ("Kiirus-aja graafik", "FontName", "Arial","Värv","b","FontWeight","paks");

legend ("m=50 kg")

% Graafika kiirendus versus aeg

subplot(3,1,3), plot(t,a,"-","LineWidth",1"Värv","g"),ruudustik sisse;

tekst(145, 0"t, c");

yllabel("a(t), m/c^2");

Title("Kiirenduse ja aja graafik", "FontName", "Arial","Värv","g","FontWeight","paks");

legend ("m=50 kg")


Ekraanivorm graafikute kuvamiseks.



1. Kogu füüsika. E.N. Izergina. – M.: Kirjastus “Olimp” LLC, 2001. – 496 lk.

2. Kasatkin I. L. Füüsikaõpetaja. Mehaanika. Molekulaarfüüsika. Termodünaamika / Toim. T. V. Shkil. – Rostov N/A: kirjastus “Phoenix”, 2000. – 896 lk.

3. CD “Tutorial MathLAB”. Multisoft LLC, Venemaa, 2005.

4. Kursusetöö juhendid: distsipliin Matemaatiline modelleerimine. Keha liikumine keskkonna vastupanuvõimet arvestades. – Minsk. REIT BNTU. IT osakond, 2007. – 4 lk.

5. Diferentsiaalvõrrandisüsteemide lahendamine Matlabis. Dubanov A.A. [Elektrooniline ressurss]. – Juurdepääsurežiim: http://rrc.dgu.ru/res/expponenta/educat/systemat/dubanov/index.asp.htm;

6. Entsüklopeedia d.d. Füüsika. T. 16. 1. osa. Koos. 394 – 396. Liikumistakistus ja hõõrdejõud. A. Gordejev. /Peatükk toim. V.A. Volodin. – M. Avanta+, 2000. – 448 lk.

7. MatlabFunctionReference [Elektrooniline ressurss]. - Juurdepääsurežiim: http://matlab.nsu.ru/Library/Books/Math/MATLAB/help/techdoc/ref/.

| Modelleerimine arvutustabelites

Tunnid 17-18
Modelleerimine arvutustabelites

Keha liikumise simuleerimine gravitatsiooni mõjul

Gravitatsiooni mõjul liikumise näited on hästi teada. See on keha kukkumine teatud kõrguselt ja teatud kiirusega üles paiskunud keha liikumine ning horisondi suhtes nurga all paisatud keha liikumine. Kui selliste probleemide puhul ei võeta arvesse õhutakistuse jõudu, kirjeldatakse kõiki loetletud liikumistüüpe tuntud valemitega. Kuid probleemid, mille puhul võetakse arvesse õhutakistust, pole vähem huvitavad.

PROBLEEM 3.24. Sihtmärgi tabamine

I etapp. Probleemi sõnastamine

ÜLESANNETE KIRJELDUS

Poisid mängivad sulgpalli. Tuulehoog võttis süstiku üles ja kandis selle puu okstele. Ees ootav raske ülesanne on süstik kätte saada. Probleemi saab lahendada mitmel viisil. Igal meetodil on oma plussid ja miinused.

Saate näiteks puu otsa ronida. Kuid see on väga ohtlik tegevus: mida kõrgemad on puuoksad, seda peenemad need on. Kukkumise tõenäosus on suur. Saate puu maha võtta. Kuid ilmselt pole keegi seda probleemi lahendamise viisi veel proovinud. Kui kõik valiksid selle probleemi lahendamise meetodi, poleks ühtegi puud ammu alles jäänud. Võite oodata, kuni süstik ise kukub, jäädes kinni järgmisest tuulepuhangust. Kõige sagedamini püütakse süstik kiviga maha lüüa. Ka meie valime selle käitumismudeli. Veelgi enam, me teame keha liikumise seadusi.

SIMULATSIOONI EESMÄRK

Uurige horisontaali suhtes nurga all paisatud keha liikumist. Valige viskekiiruse ja nurga algväärtused, nii et visatud keha tabab sihtmärki.

PROBLEEMI VORMISTAMINE

Märge. Löögi täpsuse määramiseks , peate arvestama keha suurusega.

Löögi täpsus ei tohiks olla rohkem kui pool keha väikseimast geomeetrilisest suurusest.

Näiteks kui sihtmärk on umbes 7 cm läbimõõduga süstik, siis = 3,5 cm.Kui väravaks on 40 cm läbimõõduga korvpallirõngas, siis = 20 cm Kui sihtmärk on 5 m kõrgune õhupall, siis = 2,5 m.

II etapp. Mudeli väljatöötamine

INFOMUDEL

Esitame tabeli kujul objektide omadused ja protsessi.

Keha liikumise parameetrid on toodud joonisel 3.4. Horisontaaltasandiga nurga all paisatud keha liikumist kirjeldatakse valemitega


ARVUTIMUDEL

Modelleerimiseks valime tabeliprotsessori keskkonna. Selles keskkonnas on tabeliteave ja matemaatilised mudelid ühendatud tabelisse, mis sisaldab kolme ala.

♦ lähteandmed;
♦ vahearvutused;
♦ tulemused.

1. Täitke lähteandmete ala vastavalt näidisele.

Veerud A, B, C, D, E, F täitke ülalt alla sarnaste valemitega.

2. Täitke vahearvutuste ja tulemuste ala.


EKSPERIMENTAALNE PLAAN

TESTIMINE

EKSPERIMENT 1

Uurige keha liikumist.

EKSPERIMENT 2

Uurige keha liikumise muutumist algkiiruse muutumisel.

EKSPERIMENT 3

Uurige keha liikumise muutust viskenurga muutumisel.

EKSPERIMENT 4

Algkiirust ja viskenurka muutes uuri keha liikumise olemust ja asendit sihtmärgi suhtes.

EKSPERIMENT 5

Algset algkiirust ja nurka muutes valige väärtused nii, et visatud keha tabab sihtmärki määratud täpsusega.

UURIMISE LÄBIVIIMINE

TESTIMINE

1. Täitke arvutustabelis nii mitu rida kui koordinaat juures ei muutu väiksemaks kui null.

2. Võrrelge testarvutuse tulemusi arvutusnäites toodud tulemustega. Allolevas tabelis on mitu rida etteantud lähteandmete põhjal tehtud arvutuste tulemustega.

3. Koostage veergude B ja C abil liikumisdiagramm. Näide on toodud joonisel 3.6. Diagrammi koostamiseks võtke nii palju arvutatud väärtusi, et kõver lõikub horisontaalteljega X .

4. Kuidas teha kindlaks, mitu arvutuspunkti tuleb diagrammi koostamiseks võtta?

Järeldus. Diagrammi koostamiseks peate võtma arvutatud väärtused, mille koordinaat y suurem kui 0 ja üks negatiivne väärtus.

EKSPERIMENT 1. Keha liikumise uurimine

1. Kirjeldage testjuhtumi diagrammi abil, kuidas keha liigub.

2. Selgitage, kuidas skeemilt määrata keha kõrgeima kõrguse punkt.

3. Selgitage, mida kujutab diagrammil kõvera ja horisontaalse x-telje lõikepunkt. Kuidas seda punkti arvutustabeli abil määrata?

4. Määrake diagrammilt, millisel kaugusel viskepunktist keha kukub maapinnale.

5. Määrake arvutustabelist:

maksimaalne tõstekõrgus;
sõiduaeg kõrgeimasse punkti;
kaugus viskepunktist maapinnale löögipunktini;
liikumise aeg enne kukkumist.

Kirjutage arvutustabeli vabale alale keha liikumise uuringu tulemused vastavalt kavandatud mustrile.

6. Sisestage algandmete teine ​​versioon, täitke nende jaoks katsetulemuste tabel.

KATS 2. Keha liikumise sõltuvus algkiirusest (viskenurk muutumatu)

1. Muutes algkiirust 5–20 m/s, jälgi, kuidas muutub maksimaalne tõstekõrgus (y koordinaat)

2. Jälgige, kuidas lennuulatus muutub (x koordinaat) algkiiruse suurenemisega.

3. Tehke arvutused teatud nurga all ja koondage uurimistulemused tabelisse (tabel 2), mis on koostatud tabeli vabale väljale.

4. Kirjutage tabelisse katse tulemuste põhjal tehtud järeldused: kuidas muutub kõrgus ja lennuulatus algkiiruse muutumisel (konstantse viskenurgaga)?


EKSPERIMENT 3. Keha liikumise sõltuvus viskenurgast (liikumise algkiirus on muutumatu)

1. Viia läbi arvutused mudeli abil, suurendades viskenurka 5°-lt 85°-le ja jättes algkiiruse muutmata (näiteks 15 m/s).

2. Jälgige tõstekõrguse muutust (y koordinaat) viskenurga suurenedes jääb algkiirus muutumatuks.

3. Jälgige lennuulatuse muutust (x koordinaat) kui viskenurk suureneb.

4. Tabelistage arvutuste tulemused tabeli vabale väljale (tabel 3).

5. Kirjutage tabelisse katse tulemuste põhjal tehtud järeldused: kuidas muutub lennu kõrgus ja ulatus viskenurga muutumisel (konstantse algkiirusega)?

EKSPERIMENT 4. Keha liikumise olemuse ja asendi uurimine sihtmärgi suhtes

Joonis 3.7 näitab keha liikumise kõvera asukoha valikuid sihtmärgi suhtes. Neid saab iseloomustada järgmiselt:

1. Liikumisel ei jõua keha sihtmärgi asukoha kõrgusele ja kukub maapinnale jõudmata X ts .

2. Liikudes ei jõua keha sihtmärgi asukoha kõrgusele, vaid kukub maapinnale edasi X c.

3. Keha tõuseb liikumisel kõrgemale Y c, kuid kukub käeulatuses maapinnale X c.

4. Keha tõuseb liikumisel kõrgemale Y c ja kukub edasi maapinnale X c.

Veergudes D, E ja F väärtused arvutatakse S x , S y , S, mis näitavad keha asendit sihtmärgi suhtes.

1. Uurige, mida märk tähendab S x ja S y erinevatel ajahetkedel.

Järeldus.

2. Uurige, kuidas see muutub S kui keha liigub.

Järeldus. Kogukaugus sihtmärgini esmalt väheneb ja seejärel suureneb.

3. Valige joonisel 3.7 toodud keha liikumise võimalustele vastavad lähteandmed (algkiirus ja viskenurk) tabeli vabale väljale (tabel 4).


EKSPERIMENT 5. Sihtmärgi tabamise algväärtuste valimine

Esiteks märgime, et algandmete sihtmärgi tabamiseks on lõpmatu arv võimalusi. Meie ülesanne on valida üks variant.

1. Veeru järgi F määrake väikseim väärtus S. Sel hetkel lendab keha sihtmärgile kõige lähemal.

2. Joonistage veerg G tabamuse analüüs. Eeldame, et keha on sihtmärki tabanud, kui kaugus sihtmärgini muutub etteantud täpsusest väiksemaks (lahter $D$10). Selleks lahtris G16 sisestage valem =IF(F16<$D$10; «попал»; «мимо») .

3. Muutke sisendandmeid, et saada eesmärgile parim lähendus.

4. Kirjutage uurimistulemused tabeli vabale väljale (tabel 5).

5. Valige teine ​​lähteandmete komplekt, milles keha tabab sihtmärki "üleulatuvus", st pärast tõusu kõrgeima punkti läbimist.

6. Muutke sihtmärgi koordinaate ja valige uue sihtmärgi asukoha algkiiruse ja viskenurga väärtused.

Esitage katsetes saadud tulemused ja järeldused aruande vormis tekstdokumendis. Andke oma aruandes vastused järgmistele küsimustele.

1. Kuidas liigub horisontaalsuunas nurga all visatud keha?
2. Kuidas määrata kõrgeimat tõusupunkti?
3. Kuidas määrata lennukaugust?
4. Kuidas muutub maksimaalne tõstekõrgus algkiiruse ja konstantse viskenurga suurenemisel?
5. Kuidas muutub lennuulatus algkiiruse suurenemise ja püsiva viskenurga korral?
6. Kuidas muutub maksimaalne tõstekõrgus viskenurga suurenemise ja püsiva algkiiruse korral?
7. Kuidas muutub lennuulatus viskenurga suurenemise ja püsiva algkiiruse korral?
8. Kuidas saame arvutada keha asendit sihtmärgi suhtes igal ajahetkel? Kuidas seda arvutustabelist määrata?
9. Kuidas muutub liikumise ajal kaugus kehast sihtmärgini ja kuidas seda arvutustabeli abil määrata?

PROBLEEM 3.25*. Langevarjurite liikumine

* Edasijõudnute väljakutse

I etapp. Probleemi sõnastamine

ÜLESANNETE KIRJELDUS

Kui langevarjur kukub maapinnale, kogeb ta gravitatsiooni ja õhutakistuse mõju. Eksperimentaalselt on kindlaks tehtud, et takistusjõud sõltub liikumiskiirusest: mida suurem on kiirus, seda suurem jõud. Õhus liikudes on see jõud võrdeline kiiruse ruuduga teatud takistusteguriga k, mis sõltub langevarju konstruktsioonist ja inimese kaalust R vastupanu = kV 2 .Mis peaks olema selle koefitsiendi väärtus, et langevarjur saaks kiirusel maapinnale maanduda mitte rohkem kui 8 m/s mis ei kujuta tervisele ohtu?

Määrake modelleerimise eesmärgid ja vormistage probleem.

II etapp. Mudeli väljatöötamine

INFOMUDEL

Looge ise teabemudel.

MATEMAATILINE MUDEL

Joonisel 3.8 on näidatud langevarjurile mõjuvad jõud. Newtoni teise seaduse järgi saab liikumist jõudude mõjul kirjutada kui võrdsust. Projekteerime selle võrdsuse liikumisteljele ja asendame selle väljendiga õhutakistusjõu ma = mg - kV 2 .

Võtame kiirenduse arvutamise valemi

Arvutame välja kiiruse ja vahemaa, mille langevarjur kindlate ajavahemike järel lendas △ mitte. Ajahetkede arvutamise valem on järgmine: t i+1 + t i + △t. 

Kus V i- kiirus intervalli alguses ( V o- alguskiirus). Kiirus intervalli lõpus (ja vastavalt ka järgmise alguses) arvutatakse ühtlaselt kiirendatud liikumise valemi abil

Vahemaa, mille langevarjur on lennanud, on võrdne järgmise ajavahemiku alguseks läbitud vahemaa summaga ( S i) ja selle intervalli jooksul läbitud vahemaa:


ARVUTIMUDEL

Modelleerimiseks valime tabelikeskkonna. Selles keskkonnas ühendatakse teave ja matemaatilised mudelid tabelisse, mis sisaldab kolme ala:

♦ lähteandmed;
♦ vahearvutused;
♦ tulemused.

1. Täitke lähteandmete ala.

2. Täitke arvutatud veerud A, B, C, D, milles arvutatakse langevarjuri liikumisparameetrid:

Aeg;
kiirus;
kaugus;
kiirendus.

3. Sisestage valemid arvutuslahtritesse. Näide arvutustabeli täitmisest:


III etapp. Arvuti eksperiment


EKSPERIMENTAALNE PLAAN

TESTIMINE

Tehke arvutimudeli testarvutus, kasutades tabelis toodud andmeid.

EKSPERIMENT 1

Uurige keha liikumist gravitatsiooni ja õhutakistuse mõjul.

EKSPERIMENT 2

Valige takistuse koefitsiendi väärtus k langevarjuri ohutuks maandumiseks.

EKSPERIMENT 3

Uurige kiiruse ja kiirenduse sõltuvust liikumise algkiirusest.

EKSPERIMENT 4

Uurige, kuidas muutub lennukaugus, kuni langemiskiirus stabiliseerub.

UURIMISE LÄBIVIIMINE

TESTIMINE

1. Võrrelge testarvutuse tulemusi arvutusnäites toodud tulemustega. Testi arvutamise näide:

2. Koostage skeem kiiruse, kiirenduse ja vahemaa muutumise kohta sõltuvalt ajast.

EKSPERIMENT 1. Keha liikumise uurimine, võttes arvesse õhutakistust

1. Määrake diagrammilt ja tabelist, kuidas langevarjuri kiirus ajas muutub. Mitu sekundit kulub languse kiiruse stabiliseerimiseks?

2. Määrake diagrammilt ja tabelist, kuidas langevarjuhüppaja kiirendus aja jooksul muutub.

3. Määrake diagrammilt ja tabelist, kui kaugele langevarjur lendab enne, kui kiirus stabiliseerub. Asetage tulemused oma arvutustabelis tühjale kohale.

4. Muutke ajasammu (0,1 s) ja määrake liikumise stabiliseerimise kiirus, lennukaugus stabiliseerumiseni. Uuringu tulemused on toodud tabelis.

EKSPERIMENT 2. Takistusteguri valik

Muutes koefitsiendi väärtust k (lahter SZ), valige liikumise stabiliseerimise kiirus, mis on treenitud inimesel maandumiseks ohutu (8 m/s).

EKSPERIMENT 3. Kiiruse ja vahemaa stabiliseerumise uurimine sõltuvalt algkiirusest

Lennukist välja hüpanud langevarjur lendab mõnda aega vabalanguses, saavutab piisavalt suure kiiruse ja avab alles siis langevarju.

1. Muutke algkiiruse väärtust (10 m/s).

2. Määrake arvutustabeli abil, kuidas muutub järgmine:

Esialgne kiirendus;
stabiliseerimiskiirus;
lennukaugus, kuni kiirus stabiliseerub.

3. Kirjutage katse tulemused tabeli vabale väljale. Tehke järeldus.

3. katse tulemused:

Märge. Pange tähele, kuidas esialgne kiirendus muutub. Pange tähele, et see ei saa olla suur, kuna kiirendus on suurem 3 g (30 m/s2) põhjustab väga suuri ülekoormusi.

IV etapp. Simulatsiooni tulemuste analüüs

Arvutikatse tulemuste põhjal vastake järgmistele küsimustele:

1. Kuidas muutub langevarjuhüppaja kiirus ajas?
2. Kuidas muutub langevarjuri kiirus takistuse koefitsiendi muutumisel?
3. Kui suur peaks olema õhutakistustegur, et langevarjur laskuks maapinnale kiirusega 8 m/s?
4. Kuidas muutub liikumiskiirus ja kuidas sõltub algkiirusest langevarjuri ühtlase liikumise püsikiirus?
5. Mitu sekundit pärast liikumise algust saab langevarjuri kiirust lugeda ühtlaseks?
6. Millisele kõrgusele maapinnast peaks langevarjur avama langevarju, et etteantud kiirusel maanduda.

ÜLESANDED ISESEISEV TÖÖKS

3.26. Korvpallur.

Kasutades konstrueeritud viltu visatud keha liikumise mudelit, arvuta välja, millise algkiirusega ja millise nurga all on vaja korvpalli visata, et rõngasse pääseda.

Arvutuste tegemisel võtke arvesse järgmisi tingimusi:

Palli algkiirus viskamisel võib varieeruda kuni 15 m/s;
rõnga koordinaadid juures = 3 m, X = 0,5 ÷ 7 m;
tabamuse täpsus on seotud rõnga läbimõõduga ja on võrdne = 20 cm;
pall peab tabama rõnga "varikatust", st pärast tõusu kõrgeima punkti läbimist.

Muutke nurga all paisatud keha liikumise matemaatilisi ja arvutimudeleid nii, et nende abil saaks arvutada teatud algkõrguselt visatud keha liikumist y 0

3.27. Uppuva mehe päästmine.

Millise kiirusega ja millise nurga all tuleks päästelaevalt uppujale ring visata? Arvutuste tegemisel võtke arvesse järgmisi tingimusi:


uppuja kaugus laevast;
tabamuse täpsus on = 0,5 m;
viskenurk võib olla negatiivne;
laeva parda kõrgus merepinnast.

3.28. Akrobaadid.

Paljud on sellist akrobaatilist tegu tsirkuses näinud. Üks akrobaat seisab hüppelaual ühel pool, teine ​​hüppab teiselt poolt. Millise algkiirusega ja millise nurga all peaks esimene akrobaat üles lendama, et maanduda täpselt kolmanda aktil osaleja õlgadele? Arvutuste tegemisel võtke arvesse järgmisi tingimusi:

Algkiirus võib varieeruda kuni 10 m/s;
kõrgus ja kolmanda akrobaadi eemaldamine;
tabamuse täpsus on = 0,1 m.