Russian Railway Simulator (RRS): unang pagpagawas sa publiko

Miabot na ang adlaw nga akong gipaabot nga sa kataposan mapresentar na nako kini nga kalambuan. Ang proyekto gisugdan eksaktong usa ka tuig ang milabay, sa Septyembre 1, 2018, labing menos RRS repository sa Gtihub ang una nga pasalig adunay eksakto nga petsa.

Pasaherong tren sa Rostov Main station (ma-click)

Russian Railway Simulator (RRS): unang pagpagawas sa publiko

Unsa ang RRS? Kini usa ka bukas nga cross-platform simulator sa 1520 mm gauge rolling stock. Ang magbabasa natural nga mangutana sa pangutana: "Pasayloa ko, para sa unsa kini nga proyekto, kung adunay igo nga gidaghanon sa mga simulator sa tren, komersyal ug bukas?" Alang sa tubag niini nga pangutana, gisugyot nako ang pagtan-aw sa ilawom sa iring

Kasaysayan sa proyekto

Kaniadto, sa 2001, kini gimantala Microsoft Train Simulator (MSTS), nga nagpatungha sa usa ka dako nga komunidad sa railway simmers sa atong nasud. Sulod sa daghang mga tuig nga kini nga proyekto naglungtad (hangtud nga gibiyaan kini sa Microsoft, nagpadayon sa labi ka makapaikag nga mga butang alang niini, sama sa pagkabangkarota sa Nokia, ug uban pa), ang proyekto nakakuha usa ka daghang mga pagdugang nga gihimo alang niini: mga ruta, rolling stock, mga senaryo.

Pinasukad sa MSTS, daghang uban pang mga proyekto ang pagkahuman nabuhat, sama sa OpenRails, RTrainSim (RTS) ug uban pang mga pagdugang ug mga gigikanan. Nagpakita usab ang mga komersyal nga proyekto, sama sa sikat Trainz. Ug maayo ra ang tanan, apan daghang mga fans sa transportasyon sa riles ang wala matagbaw sa kini nga mga produkto tungod sa labi ka katuyoan nga mga hinungdan - wala nila gipakita ang mga detalye sa domestic rolling stock nga gipadagan ug naugmad sa post-Soviet space. Kini labi ka mahait kung tan-awon kung giunsa gipatuman ang mga preno sa tren - wala’y usa sa mga nalista nga proyekto nga adunay o adunay normal nga pagpatuman sa mga awtomatik nga preno sa sistema sa Matrosov.

Sa dili kaayo layo nga tuig sa 2008, lain nga proyekto ang nagpakita - ZDSimulator, gimugna ni Vyacheslav Usov. Talagsaon ang proyekto tungod kay gikonsiderar ug gitul-id ang nahisgutan nga mga kakulangan, samtang sa sinugdan nagpunting sa stock sa pag-roll sa gauge sa Russia. Apan adunay usa ka dako nga "apan" - ang proyekto gipanag-iya ug sirado, sa arkitektura nga dili pagtugot sa pagpaila sa kaugalingon nga rolling stock.

Ako mismo nakaabut sa hilisgutan sa riles kaniadtong 2007, sa dihang nagsugod ako sa pagtrabaho JSC VELNII, isip research fellow, ug human sa pagdepensa sa iyang Ph.D. thesis niadtong 2008, isip senior research fellow. Niadtong panahona nasinati nako ang pinakabag-o nga mga kalampusan sa natad sa mga dula sa simulation sa tren niadtong panahona. Ug dili ko ganahan sa akong nakita, ug ang proyekto sa ZDSimulator wala maglungtad niadtong panahona. Sa ulahi, nahingangha sa dynamics sa rolling stock, miadto ko sa Rostov State University of Transport (RGUPS) nga adunay hilisgutan sa usa ka disertasyon sa doktor sa dinamika sa braking sa usa ka tren sa kargamento. Karon nanguna ko sa pagpauswag sa mga komplikado sa pagbansay sa transportasyon sa riles para sa among unibersidad ug nagtudlo ug mga espesyal nga disiplina sa Departamento sa Traction Rolling Stock.

Sa kalambigitan sa tanan sa ibabaw, ang ideya mitungha sa paghimo sa usa ka simulator nga magtugot sa developer sa usa ka add-on alang niini nga makakuha og bug-os nga kontrol sa pisikal nga mga proseso nga nahitabo sa rolling stock. Susama sa Orbiter space simulator, nga kaniadto nakahimo ako og dugang sa porma sa usa ka pamilya sa mga sakyanan sa paglansad base sa R-7. Usa ka tuig ang milabay akong gikuha kini nga trabaho ug gitugyan ang akong kaugalingon niini. Ang Disyembre 26, 2018 nakakita sa kahayag dinhi kini nga teknolohiya nga demo.

Ang akong trabaho namatikdan sa mga mahiligon, ug ilado sa mga sirkulo sa railway simmers, ang tiglalang sa visual content alang sa ZDsimulator Roman Biryukov (Romych Russian Railways) mitanyag kanako og tabang ug kooperasyon sa dugang kalamboan sa proyekto. Sa ulahi laing developer miapil kanamo - Alexander Mishchenko (Ulovskii2017), tiglalang sa ruta alang sa ZDsimulator. Ang among kolaborasyon nagdala kanamo sa among una nga pagpagawas. Gipakita sa video ang pipila ka kinatibuk-ang pagtan-aw kung giunsa ang pagtan-aw sa dula alang sa una nga pagpagawas niini

Mga bahin sa RRS Simulator

Una sa tanan, kini usa ka bukas nga arkitektura sa software. Wala pay labot ang kamatuoran nga bukas ang simulator code, adunay API ug SDK nga gitumong sa mga developers sa mga third-party nga mga add-on niini. Ang babag sa pagsulod medyo taas - gikinahanglan ang batakang kahanas sa pagpalambo sa C++. Ang simulator gisulat niini, gamit ang GCC compiler ug ang MinGW nga variant niini alang sa Windows operating system. Dugang pa, kini mao ang advisable alang sa developer nga pamilyar sa Qt gambalay, tungod kay daghan sa mga konsepto niini nagpailalum sa arkitektura sa duwa.

Bisan pa, sa angay nga kakugi ug tinguha, kini nga proyekto nagbukas sa daghang mga oportunidad alang sa add-on nga developer. Ang rolling stock gipatuman sa porma sa mga module base sa dinamikong mga librarya. Ang nag-unang elemento sa istruktura sa simulator usa ka yunit sa rolling stock, o mobile unit (MU) - usa ka awto (dili self-propelled o isip bahin sa daghang unit nga tren) o usa ka seksyon sa usa ka lokomotibo. Ang API nagpaposible nga itakda ang torque nga gipadapat sa PE wheel sets, agig tubag sa pagdawat sa angular speed sa mga wheel set, ingon man sa mga external nga parameter, sama sa boltahe ug matang sa kasamtangan sa contact network. Ang simulator wala'y nahibal-an nga bisan unsa ug dili gusto nga mahibal-an, nga nagbilin sa pisika sa internal nga ekipo ngadto sa tanlag sa nag-develop sa usa ka partikular nga lokomotibo o sakyanan.

Dili lisud ang pagtag-an nga ang ingon nga medyo ubos nga lebel nga pamaagi nagpaposible sa pagpatuman sa pinakagamay nga mga nuances sa locomotive circuit. Dugang pa, ang simulator kit naglakip sa usa ka set sa standard equipment nga gi-install sa domestic rolling stock: driver's train crane conv. No. 395, kahimtang sa air distributor. No. 242, kahimtang sa balbula sa auxiliary brake. 254 ug uban pang mga elemento sa kagamitan sa preno. Ang nag-develop sa add-on kinahanglan lamang nga makonektar kini nga mga elemento sa pneumatic circuit sa usa ka piho nga lokomotibo o awto. Dugang pa, adunay usa ka API alang sa paghimo sa imong kaugalingon nga mga yunit sa hardware.

Sa arkitektura, ang RRS gitukod sa interaksyon sa duha ka nag-unang proseso

  • simulator β€” pisikal nga tren dynamics engine TrainEngine 2. Nagpatuman sa pisika sa tren kalihukan, nga nagakuha sa ngadto sa asoy sa daghang mga external nga mga butang, nga nagakuha sa ngadto sa asoy sa interaksyon sa mga nagalihok nga mga yunit pinaagi sa mga lalang sa pagdugtong, proseso data gikan sa gawas modules nga pagpatuman sa physics sa operasyon sa rolling stock ekipo
  • magsud-ong - usa ka graphical nga subsystem nga naghulagway sa paglihok sa tren, nga gitukod base sa usa ka graphics engine OpenSceneGraph

Kini nga mga subsystem nakig-interact sa usag usa pinaagi sa shared memory, gipatuman base sa QSharedMemory nga klase sa Qt framework. Ang unang mga demo migamit ug socket-based IPC, ug adunay mga plano sa pagbalik niini nga teknolohiya sa umaabot, nga gikonsiderar ang paghashas sa pipila ka mga bahin sa simulator ug mga panginahanglan uban sa usa ka mata sa umaabot. Ang pagbalhin ngadto sa gipaambit nga panumduman sa usa ka sukod usa ka pinugos nga sukod nga nakalapas sa kapuslanan niini.

Dili nako ihulagway ang mga nuances - daghan sa mga pagbag-o sa pag-uswag sa kini nga proyekto gilatid na sa akong mga publikasyon sa kapanguhaan, labi na, ako adunay medyo halapad. usa ka serye sa mga tutorial sa OpenSceneGraph engine, nga mitubo gikan sa praktis sa pagtrabaho niini nga proyekto.

Dili tanan sa proyekto ingon ka hapsay sa gusto namon. Sa partikular, ang mga graphic subsystem dili kaayo perpekto sa mga termino sa kalidad sa pag-render, ug ang pasundayag sa sim nagbilin labi nga gitinguha. Kini nga pagpagawas adunay usa ka katuyoan - ang pagpaila sa komunidad sa mga mahiligon sa transportasyon sa riles sa proyekto, gilaraw ang mga kapabilidad niini ug sa katapusan maghimo usa ka bukas, cross-platform nga railway simulator nga adunay advanced API alang sa mga add-on nga developer.

Mga panghitabo

Ang mga palaaboton nagdepende kanimo, among minahal nga umaabot nga mga tiggamit ug mga developer. Ang proyekto bukas ug anaa opisyal nga websitediin mahimo nimo i-download ang simulator, gikan sa dokumentasyon, ang komposisyon niini padayon nga mapuno. Anaa ang forum proyekto, VK nga grupoug channel sa YouTube, diin makuha nimo ang labing detalyado nga tambag ug tabang.

Бпасибо за вниманиС!

Source: www.habr.com

Idugang sa usa ka comment