Scriptable train control system
#51
Posted 14 February 2014 - 06:10 AM
Is it the slope at the location of the present position of the train, the slope at the position of the signal or the average slope between the present position of the train and the position of the signal, or even the average slope between the position of the beacon and the position of the signal?
That can make a considerable difference. Remember that the train can still be on a rising slope while the signal itself can be on a falling slope - or vice versa.
Only in case it is the first item - the slope of the present position of the train - would an elevation value linked to the train be any use.
If it is the slope at the position of the signal it is a constant which should be linked to the signal.
If it is the average slope, it has to be calculated using the train position and signal height.
If it is the average slope between beacon and signal, it is a constant which could be linked to the beacon.
Regards,
Rob Roeterdink
#52
Posted 14 February 2014 - 06:20 AM
For KVB, the slope is measured between beacon and signal.
For ETCS, two possibilities : like KVB or discontinuous slope profile : you can define the slope using sections.
#53
Posted 14 February 2014 - 07:30 AM
How do you set the location of the beacon?
Regards,
Rob Roeterdink
#54
Posted 14 February 2014 - 08:05 AM
In OR : we'll have to use the height of the signal we've just passed and the height of the following signal.
#55
Posted 14 February 2014 - 10:53 AM
Serana, on 14 February 2014 - 05:14 AM, said:
I don't wanna spam here, but I disagre: older locomotives had just the speed control (cruise control system, more or less simple, somthing similar to the automotive cruise control). But anyway, if you handle the ETCS or similar speed control, it would be a huge improvement.
All the best,
Matej
#56
Posted 14 February 2014 - 11:31 AM
Matej Pacha, on 14 February 2014 - 10:53 AM, said:
I will explain why I said that.
For the KVB and ETCS L1 LS : they are train protection systems with speed control. There is almost no information given to the driver, but the systems, when a closed aspect is displayed on the next signal, generate a braking curve that is used only for speed control.
For the TVM system, the braking curve is not given to the driver, but it is calculated by the COVIT system of the TVM which is the speed control system. The speed limit at the entrance of the next block section is the information given to the driver. That way, the driver has to anticipate his braking because he doesn't know how much distance there is between his train and the next block section entrance. (For me, the TVM display is like an improved signal that displays more aspects.)
For other systems like LZB, TBL and ETCS (not LS), the speed curve generated by the speed control system is displayed to the driver via the signalling system.
Well... I've just described the most complex systems... that's because they are continuous speed control systems.
That's why I say that the braking curves are part of the speed control system : it is always in this system that the curves are computed.
But I didn't say that it is present in all speed control systems. For example, the TPWS is a discontinuous speed control system that only controls the speed at the signals and speed posts.
#57
Posted 14 February 2014 - 12:25 PM
#58
Posted 14 February 2014 - 12:28 PM
You also need to know the height of the next signal.
You can then use : slope = (height(n) - height(n-1))/distance between the two signals
#59
Posted 17 February 2014 - 12:34 PM
I am publishing the first version of my train speed control for French trains.
In this version, you will find the KVB and the TVM300 COVIT speed control systems.
The KVB, as I said, is a continuous speed control with discontinuous transmission. In order to do that, the script updates its speed limit in the 10 meters before the signal (in reality, the beacons are located after the signal...).
In front of a red aspect (stop and proceed), you have to slow down to 30 km/h. In front of a double red aspect (stop), you have to slow down to 10 km/h.
An emergency braking stops the train completely.
The TVM300 COVIT becomes active when the speed limit of the speed post is above 220 km/h.
It's a continuous speed control with continuous transmission. This speed control does not use speed curves. During a braking sequence, the speed comes down step by step at each block section entrance. But if the train ahead clears a block section, the speed limit will increase anywhere in the block section.
The speed limits are : 300 km/h, 270 km/h, 220 km/h, 160 km/h and 80 km/h (if the block section is short).
The emergency braking speeds are : 315 km/h, 285 km/h, 235 km/h, 170 km/h and 85 km/h.
With the COVIT, you can release the emergency braking once the speed drops down below the speed limit.
Due to the limited number of aspects in MSTS, the announce aspects are not displayed in the TGVs you can find on the internet.
In order to test this script, I recommend using the LGV Atlantique route with a TGV Duplex (most activities do not use this rolling stock, use explore route).
Link to LGVA
Link to TGV Duplex
Download the following files :
TGVDuplex V1.1
The patch n°5 if you want to hide the TVM on classic lines using the wipers key (system D :lol2: ).
Happy testing ! :oldstry:
PS : This isn't the final version, I still have to code the vigilance monitor (VACMA).
Attached File(s)
-
TCS_France.zip (2.71K)
Number of downloads: 424
#60
Posted 17 February 2014 - 12:58 PM
The patch also contains a bugfix (as I mentioned on the Hungarian boards) when trying to load a non-existent script, and a handy SetInfoString() function (which can take no arguments to reset, one string to just show, or a string and other arguments to show with String.Format) for scriptwriters to show some info on the F5 HUD Locomitve Info page.
Please consider applying any or all of these, Gpz. :lol2:
Attached File(s)
-
TCS_patch2.zip (1.75K)
Number of downloads: 412