You are on page 1of 7

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/268374574

Model-based development of an Automatic Train Operation component for


Communication Based Train Controls

Conference Paper · August 2014


DOI: 10.13140/2.1.5114.8486

CITATIONS READS

2 1,106

5 authors, including:

Mariano Di Claudio Alessandro Fantechi


University of Florence University of Florence
2 PUBLICATIONS   18 CITATIONS    179 PUBLICATIONS   2,213 CITATIONS   

SEE PROFILE SEE PROFILE

Paolo Nesi
University of Florence
255 PUBLICATIONS   2,088 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Governing the smart city: a governance-centred approach to smart urbanism View project

i-Maestro View project

All content following this page was uploaded by Mariano Di Claudio on 17 November 2014.

The user has requested enhancement of the downloaded file.


Model-based development of an Automatic Train Operation
component for Communication Based Train Control
Mariano Di Claudio, Alessandro Fantechi(*), Giacomo Martelli, Simone Menabeni, Paolo Nesi
DISIT Lab, DINFO, Dep. of Information Engineering, University of Florence, Italy; (*) DINFO,
University of Florence, http://www.disit.dinfo.unifi.it, http://www.dinfo.unifi.it
(Mariano.DiClaudio, Alessandro.Fantechi, Giacomo.Martelli, Simone.Menabeni, Paolo.Nesi)@unifi.it

Abstract— In recent years, there has been a significant former is installed on the train and forms the on-board
development in the world of conventional and/or urban railway subsystem (BSS). The latter is located at a station or along
systems. The evolution of technologies is leading to deployment the line and forms the trackside subsystem (TSS). The major
of new signaling and control systems, including the components identified in these systems are ATC (Automatic
Communication-Based Train Control widespread primarily in Train Control), ATS (Automatic Train Supervision), ATO
metro network. Strengths of this technology are continuous bi- (Automatic Train Operation) and IXL (interlocking system).
directional communication track to train, so as to provide
timely information on the status of the train and the line, but
especially the possibility of implementing automatic guidance
through the ATO (Automatic Train Operation). ATO manages
the running of the train by adjusting traction and braking
according to safety limits, but replaces the driver also in other
operations such as opening-closing doors or the initialization of
the train. In this article, we describe the development of an
ATO system by adopting a Model Driven Approach that aims
to increase the coherence between the analysis and the
implementation phase. The main blocks of the system were Figure 1: CBTC system components.
modeled with the UML notation, starting from the functional The ATC represents the technological evolution of classical
requirements, while to show their behavior were used ATP (Automatic Train Protection) system ensuring train
statecharts. At the end a testing activity was performed for the
safety in manned or fully automatic operation. It is the
verification and validation of the whole model in order to
demonstrate the properties of consistency, completeness and
subsystem responsible for the control and protection of the
correctness. train running. The ATC ensures that the authorized distance
to be travelled by the train (Movement Authority, MA) is
I. INTRODUCTION respected. It keeps under control the distance among the
trains, checks that the speed limits are respected and ensures
The Communications-Based Train Control (CBTC) is a a continuous protection of the train in every condition.
novel signaling and control system for light rail in urban Despite the significant structural differences between light
context (e.g., tramway), heavy rail (e.g., metro) and APM rail /metro systems and conventional rail, the CBTC systems
(Automated People Mover, e.g., Airport metros) [1], [2]. have similar needs to those of a conventional rail and can
These systems give operators precise control in the include an ATC similar to that used in the conventional rail
movement of trains based on positions information (derived from ERTMS/ETCS signaling system), simplifying
provided by the high precision onboard equipment. and/or refining some aspects. The supervision and
However, much more control and status information can be management of train traffic is provided by the wayside ATS
provided to the train exploiting a continuous bi-directional subsystem. The ATS integrates other functionalities such as:
track-train data communication. Currently, most of CBTC train depot management, train wakeup/sleep, integrated
systems implement this communication by using radio maintenance, incident report/replay and train routing. The
transmission. These systems allow more trains to run on the ATS operates in combination with an IXL system (that
same line at higher frequency and speed (with or without generates the signals for route control) if the latter is
drivers) thus providing high capacity, efficiency, and included in the overall CBTC system. Finally, the automatic
operational flexibility and reducing operating costs, while at control of train movement without drivers is ensured by the
the same time guaranteeing reliability and safety. For CBTC onboard Automatic Train Operation (Autonomous Train
systems the reference standards are IEEE 1474.1-2004 and Operator, ATO) subsystem in combination with the ATC.
IEC 62290. Although these documents do not constitute an
industry standard for CBTC system architecture and function The ATO manages the train running from one station (or
allocation, they provide a recommended practice for the predetermined operational stopping point) to the next,
design CBTC products to be launched into the market. automatically adjusting the train speed with appropriate
The CBTC control systems are constituted by onboard traction and braking commands. This automatic control with
equipment and wayside equipment (see Figure 1). The regard to speed, acceleration, deceleration and jerk rate is
performed by the ATO respecting the required operating
conditions and the limits imposed by the ATC. The goal is to
ensure passenger comfort, as established by operating specifies the distance that the train is authorized to cover and
policy, and safe operation. ATO can replace the driver also additional information about the track, such as speed
in other operations (opening and closing doors, initial train restrictions, gradients, etc. The ATS is responsible for
setup, etc.), making unnecessary the presence of a human sending mission data used in the Start of Mission and during
operator on board. the train running. The mission contains a set of information
for each stop that the train must perform during the service.
The work we present is part of a project aimed to address the These include: start time, stop point, side of the doors to be
development a novel CBTC system at a lower costs, by opened and the time duration that doors must remain open.
adopting a strategy to lower development costs that includes
both the adoption of modern software development The Maintenance Operator is the human dealing with the
technologies, such as Model-Driven design, and the ATO maintenance. The AS Designer is the human that
exploitation of already available components by the provides the configuration of the ATO system, the Platform
industrial partner, namely components already developed for Doors Control Unit is the Device for platform doors
a typical ETCS system. Model-Driven design typically opening and closing, on the TSS side. Moreover, the
requires a model of the system to be built first. In the TRAIN subsystems includes: Command and Control Unit to
literature, we can find models of CBTC systems using manage train braking and traction; Train Doors Control Unit
formal methods to enable the verification and validation of for doors opening and closing; Passenger Emergency
the model via simulation or formal proof. The models Handles operated by the passengers on board the train for
adopted are Petri Nets, Z notation, VDM. Formal emergency braking. In order to complete the analysis of the
specification in UML and corresponding verification with a ATO, the communication protocols between ATS-ATO,
rigorous mathematical model are very complex to be used ATO-TRAIN, and ATC-ATO have been defined and
and their application to large systems very difficult. Model formalized, respectively. The ATS-ATO protocol has to be
checking and simulations are the typical verification and compliant with three layers (Transport - Safety -
validation models adopted, and in order to reduce Application) of the ISO/OSI stack model. TCP is used as a
complexity are applied only to some of the subsystems. The transport protocol for its ability to provide an end-to-end
complexity of adopting formal modeling techniques typical bidirectional connection, byte oriented service with
of Model-Driven design to CBTC systems has hence been verification of the correct delivery order and with error and
attacked by partitioning the modeling into subsystems. flow control. Details of the protocols are omitted for lack of
space.
In this paper, we present a specification and validation
process for ATO component of a CBTC system. Firstly, we
created a general architecture and a set of functional
requirements for ATO based on analysis of reference
standard and solutions proposed by main vendors. Starting
from this analysis we created a model for ATO using IBM
Rational Rhapsody. Finally, the simulation results, based on
a self-developed simulator and test results are shown. The
paper is organized as follows. In Section II, a general
architecture of ATO is presented together with a set of
functional requirements. Section III describes ATO
specification through UML diagrams with a focus on
specific functional blocks of the model. Validation process is
described in Section IV and some simulation and testing
results are reported. Section V contains an overview of those
research results most related to our work. Conclusions are
drawn in Section VI. Figure 2. ATO Application Environment.
Based on these general functionalities and on the
II. GENERAL ARCHITECTURE AND ATO REQUIREMENTS analysis of reference standards a set of functional
requirements that specify the expected behavior of ATO
The ATO is connected with a number of subsystems and have been identified. The operating context highlighting the
with the train as described in Figure 2. Based on the general interfaces and the messages exchanged among components
integration requirements and on the evaluation of the CBTC are shown in Figure 2. The information exchanged have
solutions proposed by main vendors (Bombardier, Alstom, been identified on the basis of the functionality associated
Thales, Invensys Rail Group, Ansaldo STS, Siemens and GE with the ATO.
Transportation), the integration architecture has been
studied, where the interactions with the external components For the ATO, the following main requirements have
which are present on board the train and on the wayside, are been identified. Train initialization: the capability to
described. The ATC guarantees train protection in initialize all the onboard systems. It must be able to
accordance with level 2 of ERTMS/ETCS standard. . complete the initialization procedure of the ATC.
This subsystem creates a continuous communication sending Automatic speed regulation: start, stop, and speed
to the ATO the train position information, limit speed profile regulation of the train as it travels along the track shall be
and MA received from its trackside equipment positioned automatically controlled by the ATO to control speed,
along the line, called Radio Block Centre (RBC). The MA acceleration, deceleration, and jerk rates according to
specified passenger comfort limits (as defined by the requirements it has to always provide non-blocking states. In
authority having jurisdiction). The train speed has to be less addition, there is a method of logging all actions of the system in order to
than the over-speed limits imposed by ATC, in all conditions track the behavior of the model.
of the train. Platform berthing control: an ATO system ATSprotocol JRUprotocol
TRAINprotocol
shall be capable of implementing any platform berthing ATCprotocol

control modes. Door control: an ATO system shall be


capable of automatically controlling train doors during «Usage»
Interfaces
passenger boarding and discharging. Fault recording and Running
«Usage» «Usage»
reporting to ATS: failures and out-of-tolerance conditions
«Usage»
detected by, or input to, ATO that can impact the on-time Events

performance of the transit system or result in some other loss


Init LogPkg
of specific functionality may be automatically indicated on «Usage»
the ATS user interface display. Any alarms shall be
categorized and prioritized into critical and noncritical
alarms and logged.
Figure 3. Package diagram of ATO.
Moreover, the ATO development is conditioned by
additional key factors as compliance with: reference According to the features described in section II, in the
standards of Communications-Based Train Control following sections the main blocks of the ATO specification
technology: IEEE 1474.1-2004, IEC 62290, CENELEC are reported and discussed, by putting in evidence the
standards EN50128, 50126, 50129 in order to meet the complexity and the most critical aspects. The same issues
demands for safety , ERTMS/ETCS Baseline 3 (BL3) for have been in the main focus of the validation process
use of some technologies within the ATO. described in Section IV. For the UML modeling, the IBM
Rational Rhapsody (versions Designer for Systems
III. SPECIFICATION Engineers and Developer for C++) has been used. This tool
offers a visual SW development environment and improves
In order to specify and design the ATO BSS component of a productivity managing the whole lifecycle, from
CBTC system a model-based/model driven approach (MDA) requirements capture to model development,
has been adopted, usually referred as "Model-Based Systems implementation, test and deployment. Its main strengths are
Engineering" - MBSE [3], [4], [5]. This approach aims to support for team collaboration; automated code generation,
enhance the connection between the system model and its that allows you to move from design to implementation,
final realization, increasing the coherence among the simulation and model-based testing. It enables the use of
analysis and the implementation phase. The model is the execution to validate models and offers some plug-in for
central element in this approach, thus a system can be automated testing. It is also possible to integrate in
represented and specified at various level of granularity such Rhapsody objects representing particular functionality
as the operational, functional, and technical aspects. MDA modeled in the most appropriate way with external tools
always keeps the model updated and related to the final such as Simulink (used to design the control blocks), and
system during all the phases of software development then achieve a co-simulation of the entire model [6].
process, and even when the system is complete and Moreover, for the verification and validation a specific
maintained. approach has been used since the automated validation and
Referring to the ATO functionalities exposed, a model test provided by Rational Rhapsody presents some
limitations to cope with the complexity of the specified ATO
divided into different packages has been designed. Each
system.
package is a set of functional blocks that perform the sub-
features of the functionality associated to the package. The The Running package contains the components that are
UML Package diagram in Figure 3 shows the structure of involved in various operation for the automatic management
the designed model and the interconnections between the and control of the train running between two predetermined
various packages. In the diagram, there are two main operational stopping points once the initialization is
packages that represent two main features of the ATO: Init complete. This package is more complex, since it has to take
(initialization of on board systems) and Running into account a higher number of constraints. Inside Running
(management of the train running). The other packages package of Figure 3, there are blocks for the management of
model communication protocols with external entities data coming from the outside (ATC, ATS, TRAIN
(ATCprotocol, ATSprotocol, TrainProtocol, and interface), blocks for calculating speed profiles and for
tracking of these curves and two logic blocks responsible for
JRUprotocol). There is also a package that records/logs all
the activation of controllers and of all the actions necessary
system actions, LogPkg, of the ATO side. The structural for moving the train from one station to another. These two
specification of the packages is given by means of UML logic blocks were subject to a test phase to verify the
Class diagrams for what concerns the structural aspects, and correctness and the compliance with requirements.
by UML State diagrams for what concerns behavioral
aspects. The core part is the block Running_Manager that interacts
The general principles followed in order to build the ATO with others blocks of the package and with the external
model are those necessary to have a consistent and robust blocks, as shown by the class specification diagram in
model. For example, in order to meet the reliability Figure 4. The elements of Running package can be classified
into interface blocks, logical blocks and control blocks.
Interface blocks are ATSData_mng, ATCData_mng, The entry point is the Standby state and if the
TagData_mng and TrainData_mng. The first two manage ControllerLogic is active it switches to the pre_active state.
the input/output data exchange with ATS and ATC The latter is divided into 2 concurrent substates (AND
components. TrainData_mng simulates the positioning of states). In the upper side the reporting of some train data is
tags necessary to ensure the stopping accuracy required by executed. In the lower side ControllerLogic performs the
the functional specifications. TrainData_mng manages the operations concerning the train departure from a certain
input/output data exchange with Command and Control Unit stopping point (station) and the management of train
(for automatically control the brake/traction) and Train running. Each of these operations is executed in a predefined
Doors Control Unit (for automatically closing and opening state. To allow the train to start, the operations to be
of train doors). executed are: verifying that the current time is greater than
or equal to the departure time obtained from the Mission
«Block»
LogPkg::Log
1 Plan (state TimeControl), train position updating to the most
«Block»
ATCprotocol::ATCExecutor
1 11
«Block»
TagData_mng
recent value retrieved from Gestore_DatiATS (state
SerialComm iATPact
1
1
PositionUpdate), sending of authorization for the train doors
Init::Initialization_Manager «Block»
ATSData_mng closing (state ClosingApprovalSending) and enabling of
1
1 «Block»
Running_Manager
1
1 1 blocks OrdinarySpeedController and SpeedProfileSelection.
1
«Block»

1
«Block» 1
TrainData_mng
To manage the train running, ControllerLogic switches to
ATCprotocol::ATCMessage_Manager
1
the InControlstate where the traction and braking commands
1 1 will be determined based on the speed profile to follow.
«Block,SimulinkBlock» «Block»
SignalingSpeedProfileGenerator ATCData_mng 1 When the train reaches the next planned station the train
«Block»
1 SpeedProfileSelection doors open in the same way as done for closing operation.
«Block,SimulinkBlock»
OrdinarySpeedController 1 Standby Idle
evIdle
1 1 evStart evAttiva
«Block,SimulinkBlock» «Block» pre_active
ServiceSpeedProfileGenerator ControllerLogic dataReport
tm(2
idle
00)
tm(200)
evStateControl
Figure 4. Class diagram of Running package of Figure 3. TimeControl evErrorNotification
PositionUpdate

tm(1000)
evClosingApproval
ClosingApprovalSending
The external blocks belong to other packages of the ATO
system structure that interact with Running_Manager. These MACheck
tm(1000) evSateRepeat
ClosingCheck

evClosingDoorsApproval to itsTrainData_mng
are specifically Initialization_Manager, ATCExecutor, evClosingApproval evClosingRepeat
evErrorNotification
ATCMessage_Manager and Log. The control (or functional) evEnabling

blocks identified are ServiceSpeedProfileGenerator, ATSEventWaiting

SignalingSpeedProfileGenerator, OrdinarySpeedController. evErrorNotification


ClosingAttemptsCheck
evAttemptControl
These blocks have been developed by using Simulink. The evClosedDoors
first builds a reference curve VN-SER (VN is the Nominal Enabling
InControl
evEnableErrorNotification
Velocity) that meets specifications given in terms of
maximum acceleration, maximum jerk, time of arrival and evPStationErrorNotification

evSpeedErrorNotification
stopping accuracy, exploiting information related to train evErrorNotification
BlocksEnablingCheck
evConfirmation
position (received from ATCData_mng), the location of the evEnablingControl
tm(1000)
station and service speed (received from ATSData_mng). evAttemptControl
EnabledBlocksConfirmation
evInControl
The second produces a reference curve VN-SEG, upper OpeningControl evErrorNotification evDisabling
OpeningAttemptsCheck evErrorNotification
limited by the signaling speed profile (VSEG), allowing the evOpeningApproval
disablesLDSDPDV
evOpeningRepeat OpeningApprovalSending
train to stop within the limit established by the MA, and to evOpenedDoors evOpeningDoorsApproval to itsTrainData_mng
evOpeningApproval tm(1000)
resume the service due to an extension of the same MA. OpenedDoors StoppingTimeCheck
evStateControl
Finally, the latter operates a control based on the trajectory tm(1000)

planning, i.e., performs the tracking of the reference speed


VN generating the traction and braking percentage as a Figure 5. State diagram of ControllerLogic of Running package of Figure 4.
function of the error VN-VMETRO (where VMETRO is the
actual train speed). These blocks are been realized in IV. VALIDATION
Simulink and then integrated in the model.
In order to verify that the ATO model meets expected
The logical blocks are SpeedProfileSelection and functional requirements and it is consistent, complete, and
ControllerLogic. The SpeedProfileSelection performs a correct a verification and validation activity by testing has to
comparison between the service profile and the signaling be performed. In our context we want to verify if the ATO
profile to select the most restrictive one. This represents the system's behavior shown by the model was compliant with
VN transferred to other logic blocks as ControllerLogic. ATO System's specification, defined during the analysis
ControllerLogic handles activation/ inhibition of the phase. Once modeled the ATO component with IBM
functional blocks and consequently supervises the traction Rational Rhapsody UML tool, the testing process has been
and braking commands to be applied to the train. The scheduled for the generation and execution of test suite with
behavior of this block has been modeled by the State the aim of analyzing the results. Indeed, the best practice in
diagram shown in Figure 5. the so-called model-based testing is to test the system
running a test suite generated from the model of the system,
for test case generation a first approach was to use the ATG have defined a set of test cases considering the functional
(automatic test generator) tool provided by the Rhapsody requirements involved and the inputs needed for their
suite. In this way, we could use the system model as input to verification. Moreover, also tests to verify the robustness of
ATG and obtain automatically test cases in output. However, the ATO system have been performed. The inputs were
it was not possible to achieve good results for validating the generated for both verifying the nominal behavior of the
whole system. The ATG tool has proved insufficient to test ATO system's model and assessing the fault tolerance
the model exhaustively; in fact, some function blocks nested capabilities against eventual, e.g., a wrong sequence of
within states of the various Statechart modules have been not events/transitions. A test has been considered successful
considered by the ATG, thus leaving hidden large parts of when the results have been proved to be consistent with the
logical and functional aspects. This limited the validity and expected behavior -- i.e., the sequence of transitions/events
the coverage of the produced tests from the ATG. encountered is such as that provided by the specific scenario.
We have therefore adopted a different method with the aim In total, 15 test cases have defined. They allowed us to test
of achieving full test coverage of the system. To this end, the system in a comprehensive manner. At the first
criteria regarding test cases generation and testing coverage execution, some tests failed (e.g., the infinite loop into a
have been applied. For this purpose, a "test environment" state was not managed) highlighting the presence of some
has been built. It consists of a model and tool (specified with errors in the early ATO model. Following this first result,
its own formal specification via Statechart) modeling all the the ATO model was corrected accordingly. Then, the
external components which interact with the ATO in Figure regressions testing demonstrated that the second version of
2. The external system emulates the environment by loading the ATO passed the verification and validation test.
real traces and generating input and/or events needed to
simulate the behavior of ATO system components involved The final results obtained have been significantly better. In
in all the specified test cases. Each test case and trace can be fact, all tests were successful passed. Please note that, the
focused to verify one or more specific functional test covered/involved the 100% of the modeled states, and
requirements which can include several components of ATO 90.1% of transitions. The missed transitions have been a
system. Then, each test case was executed against the small part of those associated with detection of unexpected
simulation of the realized ATO, system obtained by using and unrealistic errors, in a so-called Defensive Programming
automatic C++ code generation from UML models, using approach. These transitions cannot be realistically exercised
IBM Rational Rhapsody development tool and then by any input to the ATO.
compiled by using the native code compiler. Notice that the state coverage corresponds, in traditional
The simulation allows keeping track of all the sequences of code structural testing, to statement coverage, while
states within the realized State diagram, caused by sequences transition coverage corresponds to branch coverage. Indeed,
of inputs/events sent by external entities involved in this CENELEC safety guidelines, rule the use of coverage-based
context. During tests, the sequence of operations performed testing in the validation of safety-related systems. Full
and all the significant values are recorded in the log file, as statement coverage is highly recommended for all safety
usually performed to keep trace of the ATO behavior. Thus, related systems (having a Safety Integrity Level (SIL) from
it is possible to verify if the system’s response is compliant 1 to 4), but has to be complemented with finer coverage
with expected requirements and specifications and according testing for SIL 3 and 4. ATO is not considered a safety-
to the expected and correct ‘state’. related system, since safety is enforced by the ATP system
inside a CBTC system. However, errors in ATO may
In the following paragraph, an example of the validation strongly affect availability: indeed, an erroneous control of
experience for the above presented ATO blocks related to traction which activates ATP frequently results in reduced
the management of running phase is reported. performance and availability of the transport system. At this
regard, having used verification criteria that are required for
For the functionalities of the Running block, the blocks SIL2 systems looks appropriate.
ControllerLogic and SpeedProfileSelection are central, while
the Simulink coded blocks (mentioned in Section III) have
been used only in order to send events, to change variables V. RELATED WORK
values and to trigger the transitions between the states of the There is a large literature concerning the development
whole ATO system. Within the test environment we have approaches of CBTC systems that currently represent the
simulated first the route that a train follows in different last evolution of signaling and control systems in urban
conditions. So the system was able to start the service context. A common aspect of these development methods is
provided by the mission plan verifying that all preparatory the use of system modeling to be realized as a primary form
operations for the departure of the train have been executed of expression. The different approaches can be classified
properly. For the arrival at the station we have checked that according to the system modeling technique used and the
the block ControllerLogic has verified that the train speed formal methods or structured approaches to verify the model
reaches the value of 0m/s and the train position complies realized. Typically, formal denotational models for behavior
with the stopping point defined by the Mission Plan. After specification such as VDM, Z and temporal logics may be
these last two checks, it has been verified that the system used for system specification while the verification can be
autonomously disables the block SpeedProfileSelection and performed by using theorem provers [7]. This approach is
that subsequently pass to send the authorization to open viable only for small systems due to the explosion of
doors, waiting for a response to confirm that the train doors complexity and difficulties in formal proof. The alternative
have been opened. In relation to the operations described, we consists in passing from the specification performed via
denotational model to an operational model such as Petri the behavior of the ATO system components related to one
Nets or state machines. Operational model can be validated or more specific functional requirements.
for simulation, and also using model checking, history
checking techniques. In [8], the system modeling technique ACKNOWLEDGMENTS
is based on the use of the SCADE too, that allows for the
management of requirements, system modeling and This work was partially supported by the PAR FAS
automatic code generation; code generated by the tool is 2007-2013 (TRACE-IT) project, in collaboration with ECM
certified according to the standard EN 50128 SIL 4. In [9], S.p.A., a company producing solutions and technologies for
the Z notation is used for the specification of the system and the safety and control of railway infrastructures.
the SMV model checker for the verification through
simulation of the model. In [10], some BSS ATP REFERENCES
components of a CBTC system is modeled with Colored [1] R. D. Pascoe and T. N. Eichorn, "What is Communication-
Petri Nets (CPN), while the validation is performed by using Based Train Control?," IEEE Veicular Technology Magazine,
simulations. In [11] the CBTC model is based on Stochastic vol. 4, pp. 16-21, 2009.
Automata Networks (SANs): these are based on Markov Siemens AG, Trainguard MT The scalable automatic train
[2]
chains. In [12] the authors illustrate an approach for formal control system for maximum flexibility in modern mass
verification applied to the train-to-ground communication transit, 2010.
link verification component of CBCT system. This is
[3] A. Ferrari, G. O. Spagnolo, G. Martelli and S. Menabeni,
implemented with the TANGRAM (Tool for Analysis of
"From Commercial Documents to System Requirements: an
Diagrams) tool that performs automatic translation from Approach for the Engineering of Novel CBTC Solutions,"
UML diagrams into equivalent timed automata. In [13] an International Journal on Software Tools for Technology
approach based on the Harmony model-driven hybrid Transfer (STTT), 2013.
iterative process that uses UML/SysML as modeling
[4] E. Kindler, "Model-based software engineering: the
language is presented. The model is tested with the
challenges of modelling behavior," in Second International
assistance of a CASE tool to verify and validate the Workshop on Behaviour Modelling: Foundations and
functional requirements. The latter are converted into use Applications, Proceedings of, New York, 2010.
cases and assigned them to development cycles. For each
development cycle, they conduct analysis, design, [5] P. F. Franzini and P. M. L. Sala, A Model Driven Approach to
the Development of the controller for an unmanned all-terrain
implementation, and testing. The ATO specified, as
veichle, Milan, 2007-2008.
described in this paper, allows to be used on systems that
have been designed so that a human driver is present on- [6] T. Sakairi, E. Palachi, C. Cohen, Y. Hatsutori, J. Shimizu and
board. H. Miyashita, "Model Based Control System Design Using
SysML, Simulink, and Computer Algebra System," Journal
of Control Science and Engineering, p. 14, 2013.
VI. CONCLUSIONS
[7] P. Bellini, P. Nesi and D. Rogai, "Expressing and organizing
The need to create railway signaling systems with real-time specification patterns via temporal logics," Journal
characteristics of efficiency, security and interoperability, of Systems and Software, v.82, no.2, pp.183-196, Feb. 2009.
has seen in recent years the definition of new procedures [8] Z.-H. Quan, S.-A. Choi, D.-H. Choi, C.-H. Cho, G.-S. Park
and standards that will align this industry, and the rise of and M.-S. Ryou, "Modeling for CBTC car-borne ATP/ATO
new technologies such as CBTC that extend these issues in a functions and its applications," in SICE Annual Conference
urban rail context. An element of innovation in a CBTC (SICE), 2011 Proceedings of, 2011.
system is the ATO subsystem responsible for automatic train [9] F. Yan, "Studying Formal Methods Applications in CBTC,"
operation in combination with ATC. The main functional in Management and Service Science (MASS), 2011
requirements that the ATO must fulfill are: Train International Conference on, 2011.
initialization - Automatic speed regulation - Platform [10] L. Chen, B. Ning and T.-H. Xu, "Research an Modeling and
berthing control - Doors control - Faults handling. In our Simulation of Vehicle-on-board Automatic Train Protection
work we have developed this component with a model- Subsystem of Communication Based Train Control System,"
driven approach using UML notation, so the model is the in Vehicular Electronics and Safety, ICVES. IEEE Int. Conf.
central element and the system can be represented at on, 2007.
different levels of detail. The two main features of the ATO [11] H. Zhao, T. Xu and T. Tang, "Towards modeling and
are modeled within the packages Init and Running, and we evaluation of availability of communication based train
have described in details on the latter. For UML modeling control (CBTC) system," in Communications Technology and
Applications, ICCTA'09. IEEE Int. Conference on , 2009.
the IBM Rational Rhapsody tool has been adopted, but for
the validation phase the ATG tool, included in Rhapsody, [12] A. L. N. Muniz, A. M. S. Andrade and G. Lima, "Integrating
UML and UPPAAL for designing. specifying and verifying
has not been proved able to test the whole model
component-based real-time systems," Innovation in Sys. and
exhaustively. For this reason we have adopted a different Soft. Eng., vol. 6, no. 1-2, pp. 29-37, 2009.
method to verify the full test coverage of the system. A test
[13] C. Yang, J. Lim, J. Um, J. Han, Y. Bang, H. Kim, Y. Yun, C.
environment has been built, in order to emulate the external
Kim and Y. Cho, "Developing CBTC Software Using Model-
components with which the system must interact. This Driven Development Approach," in Proc. of WCRR, 2008.
environment has been triggered with real traces to simulate

View publication stats

You might also like