Rozšířené chování spřáhla

Josef Vogeltanz

Pomocník strojvedoucího
Zkoumal jsem nově zavedenou funkci pro spřáhla - Advanced Coupler. Tahle funkce při rozjezdu předvede natažení nebo stlačení (při sunutí) táhlového ústrojí.
Funkce je zavedena pro verzi OR MG (zdá se, že MG pomalu směřuje k standardu). Parametry jsem si upravil na podmínky evropské normy UIC 520 pro táhlo a vypružení (táhlo max. 1000kN, šroubovka 850kN, zdvih cca. 50mm). Upravil jsem takto lokomotivu 770 a vagon Eas naložený 52t. Celé to mám sestavené do 30ti vozového vlaku. Kameru jsem si u zkoušek umístil na střed vlaku a zblízka sledoval chování spojených vozů.
Při zkouškách jsem zjistit následující: Vlak při rozjezdu spřáhla "natáhne" o definovanou délku. Rozjezdová rychlost po natažení spřáhel soupravy poklesne a potom se začne znovu navyšovat. Bohužel spřáhla již zůstanou v natažené poloze (vč. brzdění, jízdy v klesání a zastavení). Při sunutí se chová stejně, jen místo natažení dojde k stlačení. Velikost natažení/stlačení u jednotlivých vozů umí zobrazovat HUD. Ukáže např. že celý vlak o 30 vozech se během rozjíždění natáhne o cca. 3m

Jsem však z téhle funkce trochu na rozpacích. Když pominu, že neumí reagovat na podélné síly při brzdění, na spádu nebo při zastavení, jsou tu ještě nárazníky.
Ty mají pevný tvar a polohu vymezenou modelem vozu. Předpisy říkají, že při svěšení vozů se mají talíře nárazníků dotýkat. Vozy mám zpravidla parametrem Size nastavené tak, že jsou v consistu spojené nárazník na nárazník. Při výše uvedeném nastavení vznikne mezi nárazníky mezera cca. 50 mm (při sunutí prolnutí nárazníků rovněž o cca. 50 mm). Vizuálně to nevypadá dobře, chování je v pořádku. Autoři této myšlenky nejspíš počítali pouze s vozy vybavenými automatickým spřáhlem bez nárazníků. A protože jsou nárazníky pevné, neanimované, lepší to sotva kdy bude. Na rozdíl od automatického spřáhla jsou totiž nárazníky prolnuté nebo s mezerami jako pěst na oko. U evropských modelů se šroubovkou jsou totiž tím jediným v kontaktu s dalším vozem. Šroubovky se obvykle modelují v zavěšeném stavu.

Pro lepší představu ještě připojuji video:
 

Icik

Pomocník strojvedoucího
Zkus Josefe zapojit vagóny, které brzdí nehomogeně s různými parametry brzdící síly a možná i rychlosti reakce brzdy, jestli bude výsledek stejný.
 

Josef Vogeltanz

Pomocník strojvedoucího
Domnívám se, vzhledem ke skutečnosti kdy nárazník je součástí fixního modelu, že je to marná snaha. Už teď, při standardním nastavení spřáhel, v oblouku se na jedné straně dělá mezera a na druhé talíře do sebe prolínají. S tím se prostě nic nenadělá a jako evropští (UIC) šroubovkáři a nárazníkáři si musíme vystačit jen s pružností. Např. u táhla s hákem se udává odolnost proti roztržení 1000 Nm. OR ale soupravu netrhá (nevykolejí atp.).
Jak jsem uvedl: Automatická spřáhla to poberou fyzicky a nekazí to ani vizuálně. Vzájemný pohyb v rozumných mezích tam lze tolerovat. Nám se šroubovkami a nárazníky by z toho zbyla jen ta fyzika, vizuálně je to propadák.
Nemusíme být z toho ale nijak smutní. Většina tráví jízdu v kabině nebo přepíná venkovní kameru. Co mezitím vyvádějí talíře nárazníků je vidět jen v detailním pohledu mezi vozy a tam nikdo nekouká.
 

Josef Vogeltanz

Pomocník strojvedoucího
Tady je ještě použité nastavení (pro jednoduchost aplikování používám jako include soubor):
Kód:
Comment ( "Open Rails vylepsena sprahla" )  
Coupling (
Type ( Chain )
Spring (
ORTSTensionStiffness ( 8.5e5N 5.6e7N )
ORTSTensionR0 ( 0cm 0cm )
ORTSTensionSlack ( 2.5cm 3.5cm )

ORTSCompressionStiffness ( 8.5e5N 5.6e7N )
ORTSCompressionR0 ( 0cm 0cm )
ORTSCompressionSlack ( 2.5cm 3.5cm )

ORTSBreak ( 1.0e6N 1.0e6N )
)
CouplingHasRigidConnection ( 0 )
Velocity ( 0.01m/s )
)

Stiffness (tuhost) má jednu hodnotu odvozenou z mezní pevnosti závěsnice šroubovky. Ta je dle UIC 850 kN. Druhá hodnota je násobek za celý vlak. Odpovídá to cca. 66 spřáhlům u 33 vozů s hmotností 75t. Vlaky těžší než 2500 t se asi běžně nevypravují.
R0 (rádius průniku) používám 0 cm u první hodnoty. Nezjistil jsem žádný efekt, pokud bych tam nějaké centimetry použil a druhou hodnotu OR ani neumí používat (tak jako soubory .sd).
Slack (délka stlačení/natažení) použil jsem délku chodu pružiny 60 mm (podle popisu chování spřáhla) - 25 mm počáteční + 35 mm konečná (60 mm celková).
Break (přetržení) z mezní pevnosti 1000 kN táhlového háku.
Ostatní parametry jsou původní.
 

Josef Vogeltanz

Pomocník strojvedoucího
Nj. mezery v tahu. Ale vozy takto zůstanou v tahu od rozjezdu, přes brzdění až po zastavení. Což tak nějak realitě neodpovídá.

Potom je tu ještě možnost akceptovat u této vychytávky chování fyzické. To je v pořádku a je reálnější než stav před tím. A na vizuální stránku rezignovat. Prolínání statických nárazníků průjezdem vozů v zatáčkách a v sunutí prostě zabránit nejde. Musely by být animované a chovat se podobně jako např. animovaný podvozek modelu při styku s kolejnicí.
 
U klasického zápisu spřáhel je naopak ta výhoda, že spřáhla se natahují a stlačují přesně dle směru působení sil v soupravě, takže souprava se téměř realisticky "vlní". Musí být ale zapsáno "CouplingHasRigidConnection ( 0 )", aby se vozy mohly navzájem pohybovat, což je nezbytné pro spouštění zvuků hlavně u nákladních vozů, kde jsou vepsána dvě skřípnutí a "bouchnutí" spřáhla, vztažená na dvě úrovně rychlosti (pouze při jejím vzrůstu). Pokud se zapne korekce délky spřáhla (hodnota "1" v uvedeném řádku), pak se vozy nemohou navzájem pohybovat a při rozjezdu tak "bouchnou" všechny ve stejném okamžiku.

Vypadá to, že zápis AdvancedCoupler je určen především pro automatická spřáhla, u šroubovky je situace daleko složitější, jsou zde totiž dva nezávislé prvky - vůle šroubovky a potom pružiny a tlumiče v náraznících. Obojí je třeba programovat odděleně (ba už v MSTS to tak mělo být, což dokazují bloky "Buffers()" ve starých ENG/WAG, bohužel vývojáři v Kuju nedotáhli kód nárazníků do konce) a zároveň vytvořit animace a kolizní modely nárazníků. Jedině pak to může fungovat správně jak fyzikálně, tak i opticky. Což by opět znamenalo překopat modely vozidel a doplnit je o animované prvky - a kdo se bude s tímto babrat u tak rozsáhlého trainsetu, jaký pro msts/orts k dispozici jest, kor když kopice autorů už ani není aktivní? Což též opět ukazuje složitost a provázanost kódu ORTS, kdy prakticky vždy, když se zanese do kódu nějaký nový prvek, ukáže se následně, že by bylo třeba předělat i několik dalších oblastí kódu, aby vše fungovalo, jak má.
 

Icik

Pomocník strojvedoucího
Pokud si stáhnete demo aktivitu na téma Advaced coupler tak zjistíte, že je to napasováno na americká spřáhla (podobná automatickým) bez nárazníků. Hm, musíme počkat na tu naší verzi.1.jpg
 

Josef Vogeltanz

Pomocník strojvedoucího
CouplingHasRigidConnection je pro definici rozpojitelného ( 0 ) a nerozpojitelného ( 1 ) spojení vozů. Já ( 1 ) používám pro spojení parní lokomotivy a tendru, 2-vozových jednotek (jsou-li samostatně modelovány), nerozpojitelné díly motorových a elektrických jednotek, zvláště mají-li přechod měchem atp.
A je to taky jediný parametr "navíc" kterému OR rozumí. Jinak umí pracovat pouze s parametry pružnosti aut. spřáhla (spring (stiffness, break a r0). Víc neumí.

Celou dobu navíc dávám jako Typ ( Bar ). Nyní jsem se ale dočetl, že OR nerozlišuje typ spojení. Je mu jedno, zda je tam uvedeno Automatic (samočinné centrální), Chain (stará dobrá šroubovka), Bar (tyč nebo prostě "pevné") a nebo vůbec nic. Neumí tento parametr použít, ale v engu jej jako parametr toleruje. Podle této poslední debaty je na "odpis" i parametr InertiaTensor.

Pokud jde o nárazníky, s těmi se nepočítalo v MSTS a v dohledné době nepočítá ani v OR. Dohledal jsem návrh nějakého britského diskutujícího z r. 2015, ale zůstal bez odezvy.
 

Josef Vogeltanz

Pomocník strojvedoucího
Zkoumal jsem dále rozšířené chování spřáhel. Pořád se nemohu zbavit podezření, že tam není něco doděláno. Parametry používám převzaté, byť s vlastními hodnotami. Nakonec jsem sestavil dvě identické soupravy (771 + 12x Eas se dřevem), přičemž jedné soupravě jsem nastavil rozšířená spřáhla a druhé jsem ponechal standardní. Tedy standardní parametry, ale se stejnými hodnotami jako u rozšířených. Standardní spřáhla tedy nemají parametr stlačení/natažení - ORTSTension (Compression) Slack. Soupravy jsem potom postupně vyzkoušel jak pod OR MG, tak pod standardním OR.
Rozšířená spřáhla pod MG se umí pouze efektně natáhnout (vizuálně i v HUD a simulátor umí počítat s celkovým natažením. To se projevuje poklesem rychlosti při rozjezdu. A to je tak vše. Ve výběhu nebo brzdění zůstávají spřáhla natažená.
Jiná je situace u standardních spřáhel. Tam není taková efektní mezera (pouze nastavené prolnutí cca. 1,5 cm) ani efekt zpomalení při natažení soupravy. Zato ale se spřáhly i nárazníky (bez stlačení) cvičí simulátor normálně. V tahu jsou od sebe, ve výběhu jdou pozvolna k sobě (setrvačností) a při lokomotivní brzdě se hned skládají na sebe. Reakce je vázaná na okamžitý výkon, takže zabrzdím-li při výkonu, neděje se nic. Shodím-li výkon a brzdím, nárazníky se okamžitě sčuchnou. A při rozjedu jdou opět od sebe.

Standardní OR se chová podobně, ale neumí zacházet s celkovým natažením vlaku (nesčítá). Umí jen prolnutí a u rozšířených spřáhel kupodivu částečně ukazuje i natažení/stlačení, nikoliv však nastavené hodnoty jako v MG.

Pokud jde o nárazníky jako takové, vizuální efekt je pouze v jejich oddálení a přiblížení na doraz. Jsou modelově pevné, neanimované, stlačení tedy nikdy nepředvedou. Přesto myslím, že i tento částečný vizuální efekt ujde.
(Viz. videa dole)

Tady je tabulka s přehledem zkoušek:
Zkoušky.jpg

tady video s (ne)fungujícími rozšířenými spřáhly:

a tady video s obstojně fungujícími standardními spřáhly a novými hodnotami:


Možná by stačilo zvětšit o něco parametr prolnutí r0 a efekt by byl ještě lepší.
Kód standardních spřáhel vypadá takto:
Kód:
Comment ( "Sprahla" )
Coupling (
Type ( Chain )
Spring ( Stiffness (  4e5N 2.64e7N ) Break ( 8.5e5N 8.5e5N ) r0 ( 0cm 1.5cm ) )
CouplingHasRigidConnection ( 0 )
Velocity ( 0.01m/s ) )

Coupling (
Type ( Chain )
Spring ( Stiffness (  4e5N 2.64e7N ) Break ( 8.5e5N 8.5e5N ) r0 ( 0cm 1.5cm ) )
CouplingHasRigidConnection ( 0 )
Velocity ( 0.01m/s ) )
 

Josef Vogeltanz

Pomocník strojvedoucího
Chová se to úplně stejně jako s tím, kterého ten soubor nahradil. Oba měly na bajt stejnou velikost. Nevím, kde dělám chybu. Ale spřáhla nastavena na Advanced Couplers se umí pouze natáhnout, ne už stlačit při výběhu nebo brzdění při sjetém výkonu. Kompromisem tedy může být nastavení spřáhel standardně, ale s výše uvedenými hodnotami. Popřípadě ještě větší hodnotou prolnutí r0. V tom případě se dělá mezi nárazníky mezera v tahu nebo se srazí ve výběhu či brzdění (bez výkonu) tak, jako v druhém videu. Vzhledem k tomu, že podle předpisů ČD se svěšují vozy na doraz, nebude vlak nikdy nijak výrazně natahován a funkce se může oželet. A protože se svěšené vozy mohou vzájemně pohybovat popsaným způsobem, nemusí nás částečná funkce Advanced Couplers nijak trápit.
No, ale dokud tomu nepřijdu na kloub, stejně nedám pokoj. Dal jsem dotaz na autora této funkce do fora na Elvas Tower.
 

Icik

Pomocník strojvedoucího
Nemůže to být stejné. Zkontroluj, že nahrazuješ původní staženým souborem. Vyruš "pokročilá spřáhla" a otestuj standardní MSTS spřáhla. Mně se to krásně natahuje a stlačuje.

Moje nastavení je r0 ( 30cm 60cm ).

 

Acatus

Provozní technik
Icik: ještě by to chtělo poladit size toho vozu či mašiny, a't se ti neprolínají nárazníky do sebe. A i tu vůli máš dle mého názoru zbytečně velkou. Chválím verzi standard couplers s parametry r0 ( 0cm 1.5cm ) ) a CouplingHasRigidConnection ( 0 ) pana Josefa.
Pozn.: nejsem u compu, takže posuzuji jen video.
Já osobně mám u aktuálně dokončené aktivity maňase nastaveny vozy na r0 ( 0cm 3cm ) ) CouplingHasRigidConnection ( 0 ), a to k plné spokojenosti. Ale každého věc, jak to posoudí. Vždy jsem však při tom musel ladit vozidlům i parametr Size. Jediné, co jsem ale ještě nevychytal, je najíždění na vozy. To se mi občas (ne v každém případě) nárazníky prolnou do sebe o pár cm, byť potom v jízdě, brzdě nebo při sunutí se tak již neděje.
 

Icik

Pomocník strojvedoucího
@Acatus - to je jen ukázka toho, že je to pevně nastaveno v kódu OR. Jestli tam mám mezery nebo ne, to je absolutně vedlejší.
I "deformační síly" jsou nastaveny v kódu napevno. Netuším, proč to tak nechali a dělat stále upravenou verzi, kterou si mimochodem osobně vedu, není také nejlepší řešení pro zveřejňování.
 

Josef Vogeltanz

Pomocník strojvedoucího
To jsme si neporozuměli. No ... já si na standardní spřáhla vůbec nestěžuji. Ba naopak. A o těch je druhé video. Tam souprava normálně reaguje na tah, výběh i brzdu. HUD správně ukazuje ve sloupci Spřáhlo - pull (v tahu) a push (ve výběhu a brzdě). Navíc se nárazníky neprolínají (max. se srazí), k prolnutí dochází jen v průjezdu obloukem. Proto je video je označeno "standard couplers".
Já si stěžuji na zpola fungující novou funkci spřáhel - advanced couplers, kdy se spřáhla jen natáhnou (pull) a dál už nic. Tedy ve výběhu a v brzdě nestlačují (push). O tom je první video označené jako "advanced couplers".
 

Icik

Pomocník strojvedoucího
To jsme si neporozuměli. No ... já si na standardní spřáhla vůbec nestěžuji. Ba naopak. A o těch je druhé video. Tam souprava normálně reaguje na tah, výběh i brzdu. HUD správně ukazuje ve sloupci Spřáhlo - pull (v tahu) a push (ve výběhu a brzdě). Navíc se nárazníky neprolínají (max. se srazí), k prolnutí dochází jen v průjezdu obloukem. Proto je video je označeno "standard couplers".
Já si stěžuji na zpola fungující novou funkci spřáhel - advanced couplers, kdy se spřáhla jen natáhnou (pull) a dál už nic. Tedy ve výběhu a v brzdě nestlačují (push). O tom je první video označené jako "advanced couplers".

No já jsem to myslel tak, že se dá v OR kódu změnit velikost natažení a stlačení pro standardní MSTS spřáhla. Je to pevně definované a žádný zápis v eng/wag to nezmění. Ale touto cestou jít nechci. Dáme prostor "pokročilejším" spřáhlům a autor tohoto kódu nechť si opraví svoji práci.
 

Josef Vogeltanz

Pomocník strojvedoucího
A o tom to je. Advanced Couplers, tedy rozšířená spřáhla zavádí natahování a stlačování spřáhel viz. výše parametry ORTSTensionSlack a
ORTSCompressionSlack. Parametr R0 nabývá jiného významu jako ORTSTensionR0 a ORTSCompressionR0. Tuhost zůstává stejná, jen se nyní jmenuje
ORTSTensionStiffness a ORTSCompressionStiffness. Potíž je ta, že z nějakých důvodů funguje jen "tension", tj. natažení a já se snažím zjistit proč.

A aby to nebylo tak jednoduché, nakonec se ještě potvrzuje, že OpenRails neumí pracovat ani s parametrem InertiaTensor. Obejde se bez něj.
 

Icik

Pomocník strojvedoucího
Vždyť ti to tam autor také napsal. Je to ve fázi vývoje a například stlačení funguje jen za specifických podmínek.
Dej mu čas. On to určitě dotáhne do konce.
 
Nahoře