Browse Source

tunin BrakeProcessor

lookup-tables
Stephan Richter 4 years ago
parent
commit
8a9aada83e
  1. 2
      pom.xml
  2. 3
      resources/logback.xml
  3. 2
      src/main/java/de/srsoftware/web4rail/moving/Train.java
  4. 9
      src/main/java/de/srsoftware/web4rail/threads/BrakeProcessor.java

2
pom.xml

@ -4,7 +4,7 @@ @@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>de.srsoftware</groupId>
<artifactId>web4rail</artifactId>
<version>1.3.59</version>
<version>1.3.60</version>
<name>Web4Rail</name>
<packaging>jar</packaging>
<description>Java Model Railway Control</description>

3
resources/logback.xml

@ -29,7 +29,7 @@ @@ -29,7 +29,7 @@
<appender-ref ref="STDOUT" />
</root>
<logger name="de.srsoftware.web4rail" level="DEBUG" />
<logger name="de.srsoftware.web4rail" level="INFO" />
<logger name="de.srsoftware.web4rail.Application" level="DEBUG" />
<logger name="de.srsoftware.web4rail.Route" level="DEBUG" />
<logger name="de.srsoftware.web4rail.actions.Action" level="DEBUG" />
@ -37,5 +37,6 @@ @@ -37,5 +37,6 @@
<logger name="de.srsoftware.web4rail.moving.Train" level="DEBUG" />
<logger name="de.srsoftware.web4rail.tiles.Contact" level="DEBUG" />
<logger name="de.srsoftware.web4rail.tiles.Block" level="DEBUG" />
<logger name="de.srsoftware.web4rail.threads.BrakeProcessor" level="DEBUG" />
</configuration>

2
src/main/java/de/srsoftware/web4rail/moving/Train.java

@ -903,12 +903,12 @@ public class Train extends BaseClass implements Comparable<Train> { @@ -903,12 +903,12 @@ public class Train extends BaseClass implements Comparable<Train> {
@Override
public void locked(Route newRoute) {
LOG.debug("Locked route {} for {}",newRoute,Train.this);
route = newRoute;
}
@Override
public void prepared(Route newRoute) {
LOG.debug("Prepared route {} for {}",newRoute,Train.this);
route = newRoute;
set((PathFinder)null);
route.start(Train.this);
}

9
src/main/java/de/srsoftware/web4rail/threads/BrakeProcessor.java

@ -43,10 +43,13 @@ public class BrakeProcessor extends BaseClass implements Runnable { @@ -43,10 +43,13 @@ public class BrakeProcessor extends BaseClass implements Runnable {
int step = brakeTime;
for (int i = 0; i < 15; i++) {
long calculatedDistance = calculate(brakeTime, startSpeed);
step /= 2;
if (step < 1) step = 1;
if (measuredDistance > calculatedDistance) brakeTime += step;
if (measuredDistance > calculatedDistance) {
brakeTime += brakeTime;
step = brakeTime/3;
}
if (measuredDistance < calculatedDistance) {
step /= 2;
if (step < 1) step = 1;
brakeTime -= step;
}
LOG.debug("new brake time: {}, calculated distance: {}", brakeTime, calculatedDistance);

Loading…
Cancel
Save