Symulator EU07 (i nie tylko) > Symulator

 Tarcie

(1/1)

Stele:
Tarcie toczne ponoć nie jest liczone poprawnie. Obecnie to wygląda następująco:

--- Kod: ---function T_MoverParameters.Adhesive(staticfriction:real): real;
begin
    if SlippingWheels=false then
     begin
        if SandDose then
           Adhesive:=(Max0R(staticfriction*(100.0+Vel)/((50.0+Vel)*11.0),0.048))*(11.0-2.0*random)
        else
           Adhesive:=(staticfriction*(100.0+Vel)/((50.0+Vel)*10))*(11.0-2.0*random);
     end
  else
     begin
        if SandDose then
           Adhesive:=(0.048)*(11-2*random)
        else
           Adhesive:=(staticfriction*0.02)*(11-2*random);
     end;
end;
--- Koniec kodu ---
Poślizg przy hamowaniu:

--- Kod: ---if (NBpA*UnitBrakeForce>TotalMassxg*Adhesive(RunningTrack.friction)/NAxles) and (Abs(V)>0.001) then
   {poslizg}
   begin
{     Fb:=Adhesive(Track.friction)*Mass*g;  }
     SlippingWheels:=true;
   end;
--- Koniec kodu ---
Poślizg przy jeździe:

--- Kod: ---if Max0R(Abs(FTrain),Fb)>TotalMassxg*Adhesive(RunningTrack.friction) then    {poslizg}
     SlippingWheels:=true;
    if SlippingWheels then
     begin
  {     TrainForce:=TrainForce-Fb; }
       nrot:=ComputeRotatingWheel((FTrain-Fb*Sign(V)-Fstand)/NAxles-Sign(nrot*Pi*WheelDiameter-V)*Adhesive(RunningTrack.friction)*TotalMass,dt,nrot);
       FTrain:=sign(FTrain)*TotalMassxg*Adhesive(RunningTrack.friction);
       Fb:=Min0R(Fb,TotalMassxg*Adhesive(RunningTrack.friction));
     end;
--- Koniec kodu ---
Tych randomizatorów Abu zbytnio nie rozumiem. Dalej wygląda ok. Funkcji liczącej tarcie statyczne nie mogę znaleźć.

firleju:
chodzi Ci o zmienną staticfriction?

--- Kod: ---if (NBpA*UnitBrakeForce>TotalMassxg*Adhesive(RunningTrack.friction)/NAxles) and (Abs(V)>0.001) then
--- Koniec kodu ---
Adhesive wywołuje funkcję z pierwszej części gdzie parametrem jest staticfricton a jako dana podawane jest tarcie pobrane z toru.

youBy:
Sprawa jest nieco głębsza. Oczywiście możemy na którymkolwiek poziomie powiększyć wyliczoną wartość, tylko warto byłoby mieć świadomość, co się za tym kryje. Jeden problem jest taki, że znane mi wzory pochodzą z czasów, kiedy część pojazdów sama sobie moczyła szyny. Przyjmowane wartości współczynnika przyczepności przy ruszaniu wtedy osiągała 0,3 i dość gwałtownie spadała wraz ze wzrostem prędkości. Obecnie normą w pojazdach jest uzyskiwanie i wykorzysywanie współczynnika przyczepności na poziomie 0,35 w dobrych warunkach. Kolejna kwestia to zaszyta w naszej implementacji część losowa, która de facto (ze względu na szybką zmienność – co iterację fizyki) będzie nam obniżać otrzymywaną przyczepność o 10%. Jeszcze inna kwestia to logika binarna, która zmienia u nas skokowo wartość przyczepności przy poślizgu. Obecnie wiadomo, że współczynnik przyczepności podczas poślizgu maleje w sposób płynny (a nawet ma drugie lokalne maksimum). Jeszcze inna rzecz to kwestia doboru wzoru do rodzaju drogi/pojazdu. Dobre tory, złe tory, tramwajowe tory, szyny oblodzone/wilgotne na moście czy przy jeziorze, droga betonowa, droga asfaltowa itd. Dziś mamy jeden wzór do wszystkiego, ale to chyba tak nie działa… ;)

Nawigacja

[0] Indeks wiadomości

Idź do wersji pełnej
Powered by Advanced Topic Prefix Pro
Powered by SMFPacks Likes Pro Mod