A key challenge to progress in cyber-physical systems (CPS) and the Internet of Things (IoT) is the lack of robust platforms for experiment and testing, which NIST is addressing in this project through development of an integrative, reconfigurable, reproducible, scalable and usable multi-domain CPS/IoT testbed with remote federation functionality. Today, many IoT/CPS experiments are done either in operational systems or in domain-specific testbeds. The former is limited by the severe constraints required to ensure that experiments and testing do not affect trustworthiness (security, safety, reliability, resilience, and privacy) for systems that are providing critical, often life- and health-safety, functions in real time. The latter are limited by the inability to test, in constrained environments, the general applicability of IoT/CPS concepts and technologies intended for implementation across multiple domains and in varied applications. The IoT/CPS Program is addressing this need through the development of a cross-sector CPS/IoT testbed based on co-simulation and consensus-based design principles for modular, composable testbeds that are interoperable with facilities across the nation and around the world for varying scale and readily reconfigurable for work across domains and applications.
Objective - To develop general design principles useful to all cyber-physical systems testbed developers and the co-simulation community; to develop specific design concepts to guide the development, operation, and evolution of NIST’s IoT/CPS testbed; and to establish a cross-sector IoT/CPS testbed that enables remote federation with other NIST labs and external testbeds to support NIST CPS measurement science work. Such a testbed must be integrative, reconfigurable, reproducible, scalable and usable across multi-domain CPS and IoT. It must support hardware in the loop, hardware emulation, and pure simulation in any and all permutations (note that the term ‘co-simulation’ is used throughout to refer to this combination of supported capabilities).
What is the new technical idea? The technical approach relies on three key ideas: (1) to integrate “best-of-breed” tools from multiple domains; (2) to do so using well-established standards for federated communications; and (3) to define the components of an experiment in a granular form that allows experiments to be composed of well-defined and tested parts.
First, the testbed design is based on the NIST CPS Framework methodology and reference architecture concepts that promote convergence and synergy across all IoT/CPS domains. Second, the testbed’s integrative, reconfigurable, reproducible, scalable and usable design requirements makes it a powerful platform for testing concepts for composability and standards, protocols, and test methods for interoperability. Third, the testbed’s interchangeable modules allow agile reconfiguration of the testbed for varying experimental and domain-specific applications. Access to a range of physical testbeds is a unique strength at NIST, and NIST’s smart grid, SCADA, robotics, net-zero energy, building control systems, and other test facilities provide a range of candidates for remote federated experiments that allow testing of CPS/IoT concepts in a spectrum of realistic, domain-specific settings. Finally, the testbed is a resource to other NIST researchers that is both flexible and easy to use, providing documentation and usable software for many experiments that require co-simulation.
What is the research plan? The research plan has three components: CPS testbed measurement science research and development; CPS/IoT applications and multi-domain experimentation; and development of a CPS/IoT testbed community of practice based on co-simulation.
In CPS testbed measurement science, the research plan is to develop foundational principles for CPS/IoT testbeds, to develop co-simulations techniques for implementing and operating testbeds, and to advance standards for testbeds including enhancements of IEEE Standard 1516: High-Level Architecture (HLA), testbed federate descriptors, and federate libraries. Strong interconnections with the CPS/IoT Foundations project ensure that CPS Framework concepts of “facets” and “aspects” serve as holistic, concern-driven guiding principles for testbed conceptualization, realization and operation. These principles guide the development of a universal “federate descriptor” as a data structure that will allow analytical tools to determine the ability to compose independently developed “federates” into meaningful experiments where measurements of figures of merit for CPS/IoT can be made.
Tools for performing such an analysis of CPS/IoT, including simulation, emulation, and hardware-in-the-loop, have been developed by the CPS/IoT Program. These compose the Universal CPS Environment for Federation (UCEF), a software package that enables the creation and management of configurations of experimental components of the system under test. This includes testing both virtual and physical experimental components. Improvements and extensions of UCEF in FY19 included development of new software wrappers and the new capability to connect to a private cloud for running federations that contain hundreds of federates. This cloud capability enables the testbed control room to not only provide situational awareness, but also serve as a deployment platform where one can start large federations on the testbed network. The software behind the control room will be further developed in FY20 with support for automated launching and execution of experiments across multiple domains. Additional improvements to UCEF will continue, including the development of software wrappers to incorporate new simulators, and these new capabilities will be released in a new version of the UCEF software package.
In the second research plan component, the project focuses on demonstrating this unique multi-domain federated CPS/IoT testbed with multiple integrated and reconfigurable domain-specific components. The UCEF approach allows leveraging existing and disparate simulation tools and hardware in the loop for rapid experiment design and configuration. UCEF is being applied to the domains of transactive energy (TE) and autonomous vehicles (AV) through collaborations with the Energy and Environment Division and the CPS/IoT Foundations project. The current collaboration on transactive energy (TE) with the Energy and Environment Division will continue with a focus on two areas of interest for co-simulation. First, a TE federation relies on the integration of a market algorithm with grid dynamics which operate on vastly different time scales. This is an opportunity for the CPS/IoT program to investigate co-simulation techniques for the integration of different time scales using a meaningful use case. Second, a TE federation could contain a significant number of transactive agents, such as price-aware home appliances, that operate independently without regard for their aggregate effect on the grid. This is an opportunity for the CPS program to consider the benefits of a large-scale federation that models the actions and behavior of individual agents.
An additional ongoing activity involves collaboration with the transportation sector on development of an autonomous vehicle testbed as an application of the NIST federated testbed model, with a focus on trustworthiness (e.g., security, privacy, safety, reliability and resilience). The NIST-Ricardo collaborators are working with transportation original equipment manufacturers and suppliers to represent the component systems of an autonomous, connected vehicle system as simulated software components for purposes of configuring an autonomous vehicle testbed. ‘Federated’ into a testbed, these collaborators will pilot virtual testing and assessment of the system’s performance.
Third, the CPS/IoT testbed is designed to collaborate with other testbed research efforts and laboratories both on and off the NIST campus. To engage stakeholders in the CPS/IoT testbed research plan, NIST is leading and encouraging the formation of a CPS/IoT testbed community of practice that consists of testbed users and developers in the industrial and academic sectors with an interest in co-simulation. The CPS/IoT program has developed significant expertise in the area of co-simulation through its development of the UCEF software tool. Leveraging this expertise and building on initial NIST activities including leading a public workshop on CPS testbed design and developing an inventory of existing collaborating CPS testbeds, the NIST CPS/IoT Program will continue to engage the co-simulation community with an additional workshop and continued development of the public collaboration sites at our Github site and UCEF site.