tunin BrakeProcessor

This commit is contained in:
Stephan Richter
2021-03-12 17:19:42 +01:00
parent 629b30c078
commit 8a9aada83e
4 changed files with 10 additions and 6 deletions

View File

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

View File

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

View File

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

View File

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