Arriti finalisht dita që kam pritur, ditën kur më në fund mund të paraqes këtë zhvillim. Projekti u nis pikërisht një vit më parë, më 1 Shtator 2018, të paktën në komiti i parë ka pikërisht këtë datë.
Treni i pasagjerëve në stacionin Rostov Glavni (klikohet)
ĂfarĂ« Ă«shtĂ« RRS? Ky Ă«shtĂ« njĂ« simulator i hapur multidimensional pĂ«r materie lĂ«vizĂ«se me shina 1520 mm. Lexuesi, natyrisht, do tĂ« bĂ«jĂ« pyetjen: "PĂ«rse Ă«shtĂ« ky projekt i nevojshĂ«m, nĂ«se ka shumĂ« simulatorĂ« gjithashtu pĂ«r tema hekurudhore, si tĂ« tregtive ashtu edhe tĂ« hapur?" PĂ«r pĂ«rgjigjen e kĂ«saj pyetjeje, propozoj tĂ« shikojmĂ« poshtĂ«
Historia e projektit
Dikur, shumë kohë më parë, në vitin 2001, u publikua , që lind për ne një komunitet të madh simulesh hekurudhor. Gjatë disa viteve që ky projekt ekzistoi (deri sa Microsoft e braktisi atë, duke u marrë me gjëra më interesante për të, siç ishte falimentimi i Nokias, etj.), projekti u mbush me një mori shtesash të krijuara për të: itinerarësh, materie lëvizëse, skenarësh.
NĂ« bazĂ« tĂ« MSTS, mĂ« pas, u krijuan disa projekte tĂ« tjera, siç janĂ« , dhe shtesa e deriva tĂ« tjera. Filluan gjithashtu projekte tregtare, siç Ă«shtĂ« i famshmi . Dhe do tĂ« kishte qenĂ« mirĂ«, por shumĂ« adhurues tĂ« transportit hekurudhor nuk janĂ« tĂ« kĂ«naqur me kĂ«to produkte pĂ«r arsye krejt objektive â ato nuk pasqyrojnĂ« specifikat e mjeteve tĂ« transportit tĂ« brendshĂ«m, tĂ« cilat pĂ«rdoren dhe zhvillohen nĂ« hapĂ«sirĂ«n post-sovjetike. Kjo Ă«shtĂ« veçanĂ«risht evidente kur shikohet se si zbatohen frenat e trenit â asnjĂ« nga projektet e pĂ«rmendura nuk ka dhe nuk do tĂ« ketĂ« njĂ« zbatim tĂ« duhur tĂ« frenave automatikĂ« tĂ« sistemit Matrosov.
NĂ« vitin 2008, i cili nuk Ă«shtĂ« shumĂ« i afĂ«rt, u shfaq njĂ« projekt tjetĂ«r â , i zhvilluar nga Vyacheslav Usov. Ky projekt Ă«shtĂ« i shkĂ«lqyer sepse merr parasysh dhe korrigjon defectet e pĂ«rmendura mĂ« lart, duke u orientuar fillimisht nĂ« mjetet e transportit tĂ« gjurmĂ«s ruse. Por ka njĂ« «por» tĂ« madhe â projekti Ă«shtĂ« pronar dhe i mbyllur, duke mos lejuar integrimin e mjeteve tĂ« transportit tĂ« tija.
UnĂ« hyra nĂ« temĂ«n e hekurudhave nĂ« vitin 2007, kur fillova tĂ« punoja nĂ« , nĂ« pozitat e kĂ«rkuesit shkencor, dhe pas mbrojtjes sĂ« disertacionit tim pĂ«r kandidat nĂ« vitin 2008 â kĂ«rkuesit tĂ« lartĂ« shkencor. AtĂ«herĂ« takova arritjet e fundit nĂ« fushĂ«n e lojĂ«rave-simulues tĂ« hekurudhave. Mua nuk mĂ« pĂ«lqeu ajo qĂ« pashĂ«, dhe projekti ZDSimulator nĂ« atĂ« kohĂ« nuk ekzistonte akoma. MĂ« pas, i pĂ«rfshirĂ« nĂ« dinamikĂ«n e mjeteve tĂ« transportit, kam shkuar nĂ« Universitetin ShtetĂ«ror tĂ« Hekurudhave tĂ« Rostovit () me temĂ«n e disertacionit doktoral mbi dinamikĂ«n e frenimit tĂ« trenit tĂ« mallrave. Sot, unĂ« drejtoj zhvillimin e kompleksĂ«ve tĂ« simulatorĂ«ve pĂ«r transportin hekurudhor pĂ«r universitetin tonĂ« dhe jap disiplinat profesionale nĂ« katedrĂ«n "Mjetet e TĂ«rheqjes".
PasojĂ« e tĂ« gjitha mĂ«sipĂ«rmeve lindi ideja e krijimit tĂ« njĂ« simulatori, i cili do tâi jepte zhvilluesit tĂ« shtesave kontrollin e plotĂ« mbi proceset fizike qĂ« ndodhin nĂ« njĂ« sistem tĂ« lĂ«vizshĂ«m. E ngjashme me simulatorin hapĂ«sinor Orbiter, pĂ«r tĂ« cilin dikur kam krijuar njĂ« shtesĂ« nĂ« formĂ«n e njĂ« familjeje raketash transportuese tĂ« bazuara nĂ« R-7. NjĂ« vit mĂ« parĂ«, u angazhova nĂ« kĂ«tĂ« punĂ« dhe iu pĂ«rkushtova asaj me gjithĂ« shpirt. MĂ« 26 dhjetor 2018 doli nĂ« dritĂ« .
Puna ime u vĂ«rejt nga entuziastĂ«t, dhe njĂ« figurĂ« e njohur nĂ« rrethin e simulerĂ«ve tĂ« hekurudhave, krijuesi i pĂ«rmbajtjes vizuale pĂ«r ZDsimulator mĂ« ofroi ndihmĂ« dhe bashkĂ«punim nĂ« zhvillimin e mĂ«tejshĂ«m tĂ« projektit. MĂ« vonĂ«, u bashkua me ne njĂ« zhvillues tjetĂ«r â ) krijuesi i rrugĂ«ve pĂ«r ZDsimulator. BashkĂ«punimi ynĂ« na çoi nĂ« publikimin e parĂ«. NĂ« video Ă«shtĂ« njĂ« pĂ«rmbledhje e mĂ«nyrĂ«s se si duket loja nĂ« publikimin e saj tĂ« parĂ«.

Veçoritë e simulatorit RRS
SĂ« pari, kjo Ă«shtĂ« njĂ« arkitekturĂ« e hapur softuerike. Pa pĂ«rmendur se kodi i simulatorit Ă«shtĂ« i hapur, ekziston njĂ« API dhe SDK tĂ« orientuara pĂ«r zhvilluesit e shtesave tĂ« palĂ«ve tĂ« treta. Pragu i hyrjes Ă«shtĂ« mjaft i lartĂ« â kĂ«rkohen aftĂ«si bazike zhvillimi nĂ« gjuhĂ«n C++. Simulatori Ă«shtĂ« shkruar pikĂ«risht nĂ« tĂ«, duke pĂ«rdorur kompilatorin GCC dhe variantin e tij MinGW pĂ«r sistemin operativ Windows. PĂ«r mĂ« tepĂ«r, njohja e zhvilluesit me kornizĂ«n Qt Ă«shtĂ« e dĂ«shirueshme, pasi shumĂ« koncepte prej saj janĂ« nĂ« themel tĂ« arkitekturĂ«s sĂ« lojĂ«s.
MegjithatĂ«, me pĂ«rpjekje dhe dĂ«shirĂ« tĂ« duhur, ky projekt ofron mundĂ«si tĂ« mĂ«dha pĂ«r zhvilluesit e shtesave. NjĂ«sitĂ« e lĂ«vizshme implementohen si module mbi bazĂ«n e bibliotekave dinamike. Elementi kryesor strukturor nĂ« simulator Ă«shtĂ« njĂ« njĂ«si e lĂ«vizshme, ose njĂ«si lĂ«vizĂ«se (PE) â vagon (jo-motorik ose nĂ« pĂ«rbĂ«rje tĂ« trenit motorik) ose seksion lokomotive. API ofron mundĂ«sinĂ« e caktimit tĂ« momentit tĂ« rrotullimit tĂ« aplikuar nĂ« çiftet e rrotave tĂ« PE, duke marrĂ« nĂ« pĂ«rgjigje shpejtĂ«sinĂ« kĂ«ndore tĂ« çiftit tĂ« rrotave, si dhe parametra tĂ« jashtĂ«m, si tensioni dhe lloji i rrymĂ«s nĂ« rrjetin kontaktues. Simuluesi nuk di asgjĂ« tjetĂ«r dhe nuk dĂ«shiron tĂ« dijĂ«, duke lĂ«nĂ« fizikĂ«n e funksionimit tĂ« pajisjeve tĂ« brendshme nĂ« kujdesin e zhvilluesit tĂ« caktuar tĂ« lokomotivĂ«s ose vagonit.
Nuk është e vështirë të kuptohet se një qasje relativisht e ulët e nivelit ofron mundësinë për të realizuar nuancat më të vogla të skemës së lokomotivës. Për më tepër, grupi i simuluesit përfshin një set standard i pajisjeve që instalohet në përbërjet vendase: krani i trenit për shoferin nr. 395, dispeçeri i ajrit nr. 242, krani i frenit ndihmës nr. 254 dhe elementë të tjerë të pajisjeve të frenimit. Zhvilluesi i shtesës duhet thjesht të lidhë këta elementë në një skemë pneumatike të lokomotivës ose vagonit të caktuar. Për më tepër, ekziston një API për krijimin e bllokave të saj të pajisjeve.
Arkitektura RRS është ndërtuar mbi ndërveprimin e dy proceseve kryesore
- simulator â njĂ« motor fizik dinamik i trenave TrainEngine 2. Realizon fizikĂ«n e lĂ«vizjes sĂ« trenit duke marrĂ« parasysh faktorĂ« tĂ« shumtĂ« tĂ« jashtĂ«m, konsideron ndĂ«rveprimin e njĂ«jĂ«sve tĂ« lĂ«vizshĂ«m pĂ«rmes pajisjeve tĂ« lidhjes, merret me pĂ«rpunimin e tĂ« dhĂ«nave qĂ« vijnĂ« nga module tĂ« jashtme qĂ« realizojnĂ« fizikĂ«n e punĂ«s sĂ« pajisjeve tĂ« lĂ«vizshme
- viewer â njĂ« nĂ«n sistem grafik qĂ« realizon vizualizimin e lĂ«vizjes sĂ« trenit, e ndĂ«rtuar mbi bazĂ«n e motorit grafik
Këto nën sisteme ndërveprojnë me njëra-tjetrën përmes memories së përbashkët, e realizuar mbi bazën e klasës QSharedMemory të framework-ut Qt. Demo-t e para përdorën IPC mbi bazën e socket-eve, dhe në të ardhmen planifikohet rikthimi në këtë teknologji duke marrë parasysh përmirësimet e disa pjesëve të simulatorit dhe nevojat me shikim në të ardhmen. Kalimi në memorien e përbashkët ishte, në një farë mase, një masë e detyruar që tani ka kaluar.
Nuk do tĂ« pĂ«rshkruaj nuancat â shumĂ« nga zhvillimet e kĂ«tij projekti janĂ« tashmĂ« pĂ«rshkruar nĂ« publikimet e mia nĂ« burimin, nĂ« veçanti kam njĂ« cikĂ«l mjaft tĂ« gjerĂ« , e cila ka dalĂ« pikĂ«risht nga praktika e punĂ«s nĂ« kĂ«tĂ« projekt.
NĂ« projekt nuk Ă«shtĂ« gjithçka aq e lehtĂ« sa do tĂ« dĂ«shironim. NĂ« veçanti, sistemi grafik Ă«shtĂ« shumĂ« larg pĂ«rfeksionit nĂ« aspektin e cilĂ«sisĂ« sĂ« renderimit, si dhe performanca e simuluar lĂ« pĂ«r tĂ« dĂ«shiruar. Ky version ka njĂ« qĂ«llim â tĂ« njohĂ« komunitetin e dashamirĂ«sve tĂ« transportit hekurudhor me projektin, tĂ« pĂ«rshkruajĂ« mundĂ«sitĂ« e tij dhe pĂ«rfundimisht tĂ« krijojĂ« njĂ« simulator hekurudhor me burim tĂ« hapur dhe shumĂ«platformĂ« me njĂ« API tĂ« avancuar pĂ«r zhvilluesit e shtesave.
Perspektivat
Perspektivat varen nga ju, përdoruesit dhe zhvilluesit tanë të dashur të ardhshëm. Projekti është i hapur, ekziston , ku mund të shkarkoni simulatorin, me , i cili do të plotësohet vazhdimisht. Ekziston i projektit, , dhe , ku mund të merrni konsultimin dhe ndihmën më të detajuar.
Faleminderit për vëmendjen!
Burimi: habr.com
