Design and Use of CSP Meta-Model for Embedded Control Software Development

M.M. Bezemer, R.J.W. Wilterdink, Johannes F. Broenink

    Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

    41 Downloads (Pure)

    Abstract

    Software that is used to control machines and robots must be predictable and reliable. Model-Driven Design (MDD) techniques are used to comply with both the technical and business needs. This paper introduces a CSP meta-model that is suitable for these MDD techniques. The meta-model describes the structure of CSP models that are designed; using this meta-model it is possible to use all regular CSP constructs when constructing a CSP model. The paper also presents a new tool suite, called TERRA, based on Eclipse and its frameworks. TERRA contains a graphical CSP model editor (using the new CSP meta-model), model validation tools and code generation tools. The model validation tools check whether the model conforms to the meta-model definition as well as to additional rules. Models without any validation problems result in proper code generation, otherwise the developer needs to address the found problems to be sure code generation will succeed. The code generation tools are able to generate CSPm code that is readable by FDR and to generate C++/LUNA code that is executable on embedded targets. The meta-model and the TERRA tool suite are tested by designing CSP models for several of our laboratory setups. The generated C++/LUNA code for the laboratory setups is able to control them as expected. Additionally, the paper contains an example model containing all supported CSP constructs to show the CSPm code generation results. So it can be concluded that the meta-model and TERRA are usable for these kind of tasks.
    Original languageEnglish
    Title of host publicationCommunicating Process Architectures 2012
    Subtitle of host publicationWoTUG-34
    EditorsPeter H. Welch, Frederick R.M. Barnes, Kevin Chalmers, Jan Baekgaard Pedersen, Adam T. Sampson
    Place of PublicationEngland
    PublisherOpen Channel Publishing Ltd
    Pages185-199
    Number of pages15
    ISBN (Print)978-0-9565409-5-9
    Publication statusPublished - Aug 2012
    EventCommunicating Process Architectures, CPA 2012: 34th WoTUG Conference on Concurrent and Parallel Programming - University of Abertay, Dundee, United Kingdom
    Duration: 26 Aug 201229 Aug 2012
    Conference number: 34
    http://wotug.org/cpa2012/

    Publication series

    NameConcurrent System Engineering Series
    PublisherOpen Channel Publishing Ltd.
    Volume69

    Conference

    ConferenceCommunicating Process Architectures, CPA 2012
    CountryUnited Kingdom
    CityDundee
    Period26/08/1229/08/12
    Internet address

    Fingerprint

    Software engineering

    Keywords

    • METIS-287991
    • Model Transformations
    • Code Generation
    • Co-simulation
    • CSP
    • IR-81379
    • TERRA
    • Eclipse
    • EMF
    • Metamodel
    • EWI-22205
    • model verification
    • LUNA

    Cite this

    Bezemer, M. M., Wilterdink, R. J. W., & Broenink, J. F. (2012). Design and Use of CSP Meta-Model for Embedded Control Software Development. In P. H. Welch, F. R. M. Barnes, K. Chalmers, J. Baekgaard Pedersen, & A. T. Sampson (Eds.), Communicating Process Architectures 2012: WoTUG-34 (pp. 185-199). (Concurrent System Engineering Series; Vol. 69). England: Open Channel Publishing Ltd.
    Bezemer, M.M. ; Wilterdink, R.J.W. ; Broenink, Johannes F. / Design and Use of CSP Meta-Model for Embedded Control Software Development. Communicating Process Architectures 2012: WoTUG-34. editor / Peter H. Welch ; Frederick R.M. Barnes ; Kevin Chalmers ; Jan Baekgaard Pedersen ; Adam T. Sampson. England : Open Channel Publishing Ltd, 2012. pp. 185-199 (Concurrent System Engineering Series).
    @inproceedings{5823036fcb4044beaa0cb9cda88d61ea,
    title = "Design and Use of CSP Meta-Model for Embedded Control Software Development",
    abstract = "Software that is used to control machines and robots must be predictable and reliable. Model-Driven Design (MDD) techniques are used to comply with both the technical and business needs. This paper introduces a CSP meta-model that is suitable for these MDD techniques. The meta-model describes the structure of CSP models that are designed; using this meta-model it is possible to use all regular CSP constructs when constructing a CSP model. The paper also presents a new tool suite, called TERRA, based on Eclipse and its frameworks. TERRA contains a graphical CSP model editor (using the new CSP meta-model), model validation tools and code generation tools. The model validation tools check whether the model conforms to the meta-model definition as well as to additional rules. Models without any validation problems result in proper code generation, otherwise the developer needs to address the found problems to be sure code generation will succeed. The code generation tools are able to generate CSPm code that is readable by FDR and to generate C++/LUNA code that is executable on embedded targets. The meta-model and the TERRA tool suite are tested by designing CSP models for several of our laboratory setups. The generated C++/LUNA code for the laboratory setups is able to control them as expected. Additionally, the paper contains an example model containing all supported CSP constructs to show the CSPm code generation results. So it can be concluded that the meta-model and TERRA are usable for these kind of tasks.",
    keywords = "METIS-287991, Model Transformations, Code Generation, Co-simulation, CSP, IR-81379, TERRA, Eclipse, EMF, Metamodel, EWI-22205, model verification, LUNA",
    author = "M.M. Bezemer and R.J.W. Wilterdink and Broenink, {Johannes F.}",
    year = "2012",
    month = "8",
    language = "English",
    isbn = "978-0-9565409-5-9",
    series = "Concurrent System Engineering Series",
    publisher = "Open Channel Publishing Ltd",
    pages = "185--199",
    editor = "Welch, {Peter H.} and Barnes, {Frederick R.M.} and Kevin Chalmers and {Baekgaard Pedersen}, Jan and Sampson, {Adam T.}",
    booktitle = "Communicating Process Architectures 2012",

    }

    Bezemer, MM, Wilterdink, RJW & Broenink, JF 2012, Design and Use of CSP Meta-Model for Embedded Control Software Development. in PH Welch, FRM Barnes, K Chalmers, J Baekgaard Pedersen & AT Sampson (eds), Communicating Process Architectures 2012: WoTUG-34. Concurrent System Engineering Series, vol. 69, Open Channel Publishing Ltd, England, pp. 185-199, Communicating Process Architectures, CPA 2012, Dundee, United Kingdom, 26/08/12.

    Design and Use of CSP Meta-Model for Embedded Control Software Development. / Bezemer, M.M.; Wilterdink, R.J.W.; Broenink, Johannes F.

    Communicating Process Architectures 2012: WoTUG-34. ed. / Peter H. Welch; Frederick R.M. Barnes; Kevin Chalmers; Jan Baekgaard Pedersen; Adam T. Sampson. England : Open Channel Publishing Ltd, 2012. p. 185-199 (Concurrent System Engineering Series; Vol. 69).

    Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

    TY - GEN

    T1 - Design and Use of CSP Meta-Model for Embedded Control Software Development

    AU - Bezemer, M.M.

    AU - Wilterdink, R.J.W.

    AU - Broenink, Johannes F.

    PY - 2012/8

    Y1 - 2012/8

    N2 - Software that is used to control machines and robots must be predictable and reliable. Model-Driven Design (MDD) techniques are used to comply with both the technical and business needs. This paper introduces a CSP meta-model that is suitable for these MDD techniques. The meta-model describes the structure of CSP models that are designed; using this meta-model it is possible to use all regular CSP constructs when constructing a CSP model. The paper also presents a new tool suite, called TERRA, based on Eclipse and its frameworks. TERRA contains a graphical CSP model editor (using the new CSP meta-model), model validation tools and code generation tools. The model validation tools check whether the model conforms to the meta-model definition as well as to additional rules. Models without any validation problems result in proper code generation, otherwise the developer needs to address the found problems to be sure code generation will succeed. The code generation tools are able to generate CSPm code that is readable by FDR and to generate C++/LUNA code that is executable on embedded targets. The meta-model and the TERRA tool suite are tested by designing CSP models for several of our laboratory setups. The generated C++/LUNA code for the laboratory setups is able to control them as expected. Additionally, the paper contains an example model containing all supported CSP constructs to show the CSPm code generation results. So it can be concluded that the meta-model and TERRA are usable for these kind of tasks.

    AB - Software that is used to control machines and robots must be predictable and reliable. Model-Driven Design (MDD) techniques are used to comply with both the technical and business needs. This paper introduces a CSP meta-model that is suitable for these MDD techniques. The meta-model describes the structure of CSP models that are designed; using this meta-model it is possible to use all regular CSP constructs when constructing a CSP model. The paper also presents a new tool suite, called TERRA, based on Eclipse and its frameworks. TERRA contains a graphical CSP model editor (using the new CSP meta-model), model validation tools and code generation tools. The model validation tools check whether the model conforms to the meta-model definition as well as to additional rules. Models without any validation problems result in proper code generation, otherwise the developer needs to address the found problems to be sure code generation will succeed. The code generation tools are able to generate CSPm code that is readable by FDR and to generate C++/LUNA code that is executable on embedded targets. The meta-model and the TERRA tool suite are tested by designing CSP models for several of our laboratory setups. The generated C++/LUNA code for the laboratory setups is able to control them as expected. Additionally, the paper contains an example model containing all supported CSP constructs to show the CSPm code generation results. So it can be concluded that the meta-model and TERRA are usable for these kind of tasks.

    KW - METIS-287991

    KW - Model Transformations

    KW - Code Generation

    KW - Co-simulation

    KW - CSP

    KW - IR-81379

    KW - TERRA

    KW - Eclipse

    KW - EMF

    KW - Metamodel

    KW - EWI-22205

    KW - model verification

    KW - LUNA

    M3 - Conference contribution

    SN - 978-0-9565409-5-9

    T3 - Concurrent System Engineering Series

    SP - 185

    EP - 199

    BT - Communicating Process Architectures 2012

    A2 - Welch, Peter H.

    A2 - Barnes, Frederick R.M.

    A2 - Chalmers, Kevin

    A2 - Baekgaard Pedersen, Jan

    A2 - Sampson, Adam T.

    PB - Open Channel Publishing Ltd

    CY - England

    ER -

    Bezemer MM, Wilterdink RJW, Broenink JF. Design and Use of CSP Meta-Model for Embedded Control Software Development. In Welch PH, Barnes FRM, Chalmers K, Baekgaard Pedersen J, Sampson AT, editors, Communicating Process Architectures 2012: WoTUG-34. England: Open Channel Publishing Ltd. 2012. p. 185-199. (Concurrent System Engineering Series).