8 CONCLUSIONS
In this paper a novel modeling approach for CPS fol-
lowing the SMARDT methodology was evaluated.
Therefore, a self-driving vehicle controller for driv-
ing on a track in TORCS was developed. Using
formal SysML diagrams and the MontiCAR mod-
eling language it was possible to hierarchically de-
sign the system and evaluate its performance. Novel
language elements such as component and connec-
tor arrays proved to enhance component decoupling
and reuse, e.g., by allowing the evolutional param-
eter tuner to connect to arbitrary many PID compo-
nents. The strong type system supporting units en-
abled efficient component integrity checks. The mod-
ular architecture description enabled the developers
to experiment with many different variants and con-
figurations of the system. Thereby, a suitable control
strategy could be found and evaluated in an efficient
manner. Finally, the models were used to generate a
working system. Hence, it was shown that MontiCAR
is a homogeneous development framework for mod-
eling, verification, testing, and generation of CPS.
ACKNOWLEDGEMENTS
This research was supported by a Grant from the
GIF, the German-Israeli Foundation for Scientific Re-
search and Development, and by the Grant SPP1835
from DFG, the German Research Foundation.
REFERENCES
Accellera SYSTEMS INITIATIVE (2014). Verilog-AMS
Language Reference Manual. Technical Report 2.4.0.
Aravantinos, V., Voss, S., Teufl, S., H
¨
olzl, F., and Sch
¨
atz, B.
(2015). AutoFOCUS 3: Tooling Concepts for Seam-
less, Model-based Development of Embedded Sys-
tems. In ACES-MB.
Ashenden, P. J. (2010). The designer’s guide to VHDL, vol-
ume 3. Morgan Kaufmann.
˚
Astr
¨
om, K. J. and H
¨
agglund, T. (1995). PID controllers:
theory, design, and tuning, volume 2. Isa Research
Triangle Park, NC.
Baheti, R. and Gill, H. (2011). Cyber-physical systems. The
impact of control technology, 12.
Barrett, C., Deters, M., de Moura, L. M., Oliveras, A., and
Stump, A. (2013). 6 Years of SMT-COMP. J. Autom.
Reasoning, 50(3).
Beck, K., Beedle, M., Van Bennekum, A., Cockburn, A.,
Cunningham, W., Fowler, M., Grenning, J., High-
smith, J., Hunt, A., Jeffries, R., et al. (2001). Man-
ifesto for agile software development.
Berger, C. (2016). An Open Continuous Deployment In-
frastructure for a Self-driving Vehicle Ecosystem. In
IFIP International Conference on Open Source Sys-
tems.
Bernhard Wymann, Eric Espi
´
e, C. G. C. D. R. C. and Sum-
ner, A. (2013). TORCS, the open racing car simulator.
Bertram, V., Maoz, S., Ringert, J. O., Rumpe, B., and
von Wenckstern, M. (2017). Case Study on Struc-
tural Views for Component and Connector Models. In
MODELS.
Bertram, V., Roth, A., Rumpe, B., and von Wenckstern, M.
(2016). Extendable Toolchain for Automatic Compat-
ibility Checks. In OCL’16.
Bojarski, M., Del Testa, D., Dworakowski, D., Firner, B.,
Flepp, B., Goyal, P., Jackel, L. D., Monfort, M.,
Muller, U., Zhang, J., et al. (2016). End to end learn-
ing for self-driving cars. Technical report, NVIDIA.
Br
¨
ohl, A.-P. and Dr
¨
oschel, W. (1995). Das V-Modell.
M
¨
unchen, Wien: Oldenburg-Verlag.
Broy, M. and Rausch, A. (2005). Das neue v-modell® xt.
Informatik-Spektrum, 28(3).
Broy, M. and S¸tef
˘
anescu, G. (2001). The algebra of stream
processing functions. Theoretical Computer Science,
258(1-2).
Broy, M. and Stolen, K. (2012). Specification and develop-
ment of interactive systems: focus on streams, inter-
faces, and refinement. Springer Science & Business
Media.
Camacho, E. F. and Alba, C. B. (2013). Model predictive
control. Springer Science & Business Media.
Chen, C., Seff, A., Kornhauser, A., and Xiao, J. (2015).
Deepdriving: Learning affordance for direct percep-
tion in autonomous driving.
Cover, T. M. and Thomas, J. A. (2012). Elements of infor-
mation theory. John Wiley & Sons.
Cramer, E., Kamps, U., and Steland, A. (2008). Grund-
lagen der Wahrscheinlichkeitsrechnung und Statistik.
Springer.
Dautelle, J.-M. and Keil, W. (2010). JSR 275: Units Speci-
fication. Java specification request, RWTH Aachen.
De Moura, L. and Bjørner, N. (2008). Z3: An efficient SMT
solver. In TACAS.
Dormoy, F.-X. (2008). Scade 6: a model based solution for
safety critical software development. In ERTS.
Elmqvist, H., Mattsson, S. E., and Otter, M. (1999).
Modelica-a language for physical system modeling,
visualization and interaction. In CAV.
Friedrich, J., Kuhrmann, M., Sihling, M., and Hammer-
schall, U. (2009). Das v-modell xt. Springer.
Gogolla, M., B
¨
uttner, F., and Richters, M. (2007). USE: A
UML-based specification environment for validating
UML and OCL. Science of Computer Programming,
69(1).
Gray, J. W. (2004). PID Routines for MC68HC11K4 and
MC68HC11N4 Microcontrollers.
Grazioli, F., Kusmenko, E., Roth, A., Rumpe, B., and von
Wenckstern, M. (2017). Simulation Framework for
Executing Component and Connector Models of Self-
Driving Vehicles. In EXE at MODELS.
Model-Based Development of Self-Adaptive Autonomous Vehicles using the SMARDT Methodology
177