KR20120064547A - Hardware-in-the-loop simulation system and method for distributed embedded devices - Google Patents

Hardware-in-the-loop simulation system and method for distributed embedded devices Download PDF

Info

Publication number
KR20120064547A
KR20120064547A KR1020100125825A KR20100125825A KR20120064547A KR 20120064547 A KR20120064547 A KR 20120064547A KR 1020100125825 A KR1020100125825 A KR 1020100125825A KR 20100125825 A KR20100125825 A KR 20100125825A KR 20120064547 A KR20120064547 A KR 20120064547A
Authority
KR
South Korea
Prior art keywords
data
simulation
embedded
embedded devices
middleware
Prior art date
Application number
KR1020100125825A
Other languages
Korean (ko)
Inventor
이해영
전인걸
김원태
박승민
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020100125825A priority Critical patent/KR20120064547A/en
Publication of KR20120064547A publication Critical patent/KR20120064547A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines

Abstract

PURPOSE: A hardware-in-the-loop simulation system and method for distributed embedded devices are provided to issue data as global database through a publication and subscription middleware and a plurality of embedded devices. CONSTITUTION: A hardware-in-the-loop simulation system for distributed embedded devices comprises: one or more embedded devices(200,201,202) based on publication and subscription middleware conducting pre-defined specific function; a simulator(300) based on publication and subscription middleware simulating the embedded devices; a global database(500) sharing data issued by the embedded devices and simulation data issued by the simulator.

Description

분산 임베디드 장치들을 위한 하드웨어-인-더-루프 시뮬레이션 시스템 및 방법{HARDWARE-IN-THE-LOOP SIMULATION SYSTEM AND METHOD FOR DISTRIBUTED EMBEDDED DEVICES}HARDWARE-IN-TH-LOOP SIMULATION SYSTEM AND METHOD FOR DISTRIBUTED EMBEDDED DEVICES

본 발명은 하드웨어-인-더-루프 시뮬레이션 시스템 및 방법에 관한 것으로, 더욱 상세하게는 대규모 분산/이종 임베디드 장치들을 시험하기 위한 하드웨어-인-더-루프 시뮬레이션 시스템 및 방법에 관한 것이다.The present invention relates to hardware-in-the-loop simulation systems and methods, and more particularly to hardware-in-the-loop simulation systems and methods for testing large scale distributed / heterogeneous embedded devices.

임베디드 시스템(Embedded System, 내장형 시스템)은 시스템을 동작시키는 소프트웨어를 하드웨어에 내장하여 특수한 기능만을 수행하는 컴퓨터 시스템이다. 개인용 컴퓨터와는 달리 특정한 요구사항을 가지고, 미리 정의된 작업만을 수행한다. 개인용 컴퓨터는 하드 디스크와 같은 대용량 저장장치에 운영 체제를 내장하고 있는데 반해, 임베디드 시스템은 운영 체제와 응용 프로그램들이 메모리에 이미지 형태로 저장되어 있다가 시동과 동시에 램 디스크를 만든 다음, 램 디스크 위에 운영 체제와 응용 프로그램들이 구성되어 구동되는 시스템이다.An embedded system is a computer system that performs only a special function by embedding software that operates the system in hardware. Unlike personal computers, they have specific requirements and perform only predefined tasks. Personal computers have an operating system embedded in a mass storage device such as a hard disk, whereas an embedded system stores operating systems and applications in the form of images in memory, creates a RAM disk at startup, and then runs on the RAM disk. It is a system in which the system and application programs are configured and run.

예를 들면 항공기의 비행 및 자세 제어를 위한 비행 제어 시스템이나 자동차의 전장의 제어를 위한 ECU, 냉장고에도 탑제된 내부 온도 제어를 위한 시스템이 대표적인 임베디드 시스템이다.For example, a typical embedded system is a flight control system for flight and attitude control of an aircraft, an ECU for control of an electric field of an automobile, and a system for internal temperature control installed in a refrigerator.

하드웨어-인-더-루프(HIL:Hardware-in-the-loop) 시뮬레이션은, 위와 같은 임베디드 시스템에 입력되는 값들을 모의할 수 있는 시뮬레이터와 임베디드 시스템을 연결하여 임베디드 시스템의 출력 값들을 관찰하는 식으로 임베디드 시스템을 시험하는 방법이다. 이는 비행 제어시스템이나 자동차 전장의 제어를 위한 ECU(Electronic Control Unit)와 같은 복잡한 전자 시스템들을 테스트하기 위한 효과적이고 비용 효율적인 방법을 제공한다. Hardware-in-the-loop (HIL) simulation is a method of observing the output values of an embedded system by connecting the embedded system with a simulator that can simulate the values input to the embedded system. To test embedded systems. This provides an effective and cost-effective way to test complex electronic systems such as flight control systems or electronic control units (ECUs) for the control of the automotive electronics.

전형적으로, 하드웨어-인-더-루프 시뮬레이션 시스템들은 시험중인 시스템의 운영환경을 시험하도록 구성된 하드웨어-인-더-루프 시뮬레이터를 포함한다. 예를 들면, 차량 ECU는 차량 내의 다른 제어유닛, 센서 및 시스템들을 시험하도록 구성된 하드웨어-인-더-루프 시뮬레이터에 연결된다.Typically, hardware-in-the-loop simulation systems include a hardware-in-the-loop simulator configured to test the operating environment of the system under test. For example, the vehicle ECU is connected to a hardware-in-the-loop simulator configured to test other control units, sensors and systems in the vehicle.

상기와 같은 구성은 ECU가 실제 차량과 같은 운영환경에서 작동하도록 한다. 따라서, 하드웨어-인-더-루프 시뮬레이션 시스템은 사용자가 실제 차량을 동작시키기 위해서 필요한 복잡한 구성이나 비용을 추가하지 않고도 ECU를 시험할 수 있도록 한다.Such a configuration allows the ECU to operate in an operating environment such as a real vehicle. Thus, a hardware-in-the-loop simulation system allows the user to test the ECU without adding the complicated configuration or cost needed to operate the actual vehicle.

그러나 현재 대부분의 하드웨어-인-더-루프(프로세서/소프트웨어-인-더-루프 포함) 시뮬레이션 방법들은 단일 임베디드 시스템의 시험을 목적으로 하고 있고 통신 하드웨어 인터페이스들에 종속되기 때문에, 네트워크를 이루는 대규모 분산/이종 임베디드 시스템들을 시험하기 어려운 문제점이 있다.However, most current hardware-in-the-loop (including processor / software-in-the-loop) simulation methods are aimed at testing a single embedded system and are dependent on communication hardware interfaces, thus creating a large distributed network. Problems with testing heterogeneous embedded systems are difficult

상기의 같은 문제점을 해결하기 위하여, 본 발명의 목적은 추가적인 시뮬레이션 시스템의 추가 없이 대규모의 분산/이종 임베디드 장치들을 통합적으로 시험하도록 지원할 수 있는 시뮬레이션 시스템을 제공하는 것이다. In order to solve the above problems, it is an object of the present invention to provide a simulation system that can support the integrated testing of large-scale distributed / heterogeneous embedded devices without the addition of additional simulation system.

상기의 같은 문제점을 해결하기 위하여, 본 발명의 다른 목적은 추가적인 시뮬레이션 시스템의 추가 없이 대규모의 분산/이종 임베디드 장치들을 통합적으로 시험하도록 지원할 수 있는 시뮬레이션 방법을 제공하는 것이다. In order to solve the above problems, another object of the present invention is to provide a simulation method that can support the integrated testing of large-scale distributed / heterogeneous embedded devices without the addition of additional simulation system.

상기의 목적을 달성하기 위한 본 발명의 일 측면은 다수의 분산/이종의 임베디드 장치를 지원하기 위한 시뮬레이션 시스템에 있어서, 미리 정의된 특정기능을 수행하기 위한 하나 이상의 출판구독 미들웨어 기반의 임베디드 장치들, 상기 임베디드 장치들을 시뮬레이션하기 위한 출판구독 미들웨어 기반의 시뮬레이터, 상기 임베디드 장치들을 모니터링하는 출판구독 미들웨어 기반의 모니터링 장치 및 상기 임베디드 장치들이 발행하는 데이터와 상기 시뮬레이터가 발행하는 모의 데이터를 공유하기 위한 전역 데이터베이스를 포함하고, 상기 임베디드 장치들은 각각의 출판구독 미들웨어를 통하여 내부의 데이터를 상기 전역 데이터베이스로 발행하고, 상기 다른 임베디드 장치들, 시뮬레이터 및 모니터링 장치로부터 발행된 데이터를 상기 전역 데이터베이스로부터 구독하고, 상기 시뮬레이터는 자신의 출판구독 미들웨어를 통하여 상기 임베디드 장치들을 시뮬레이션하기 위한 모의데이터를 상기 전역 데이터베이스에 발행하고, 모의 데이터 생성에 필요한 데이터를 상기 전역 데이터베이스로부터 구독하고, 상기 모니터링 장치는 자신의 출판구독 미들웨어를 통하여 상기 전역 데이터베이스로부터 모니터링을 위한 데이터를 구독하고, 상기 전역 데이터베이스로 모니터링 제어 데이터를 발행하는 것을 특징으로 하는 시뮬레이션 시스템을 제공한다.One aspect of the present invention for achieving the above object is a simulation system for supporting a plurality of distributed / heterogeneous embedded device, one or more published middleware-based embedded devices for performing a predetermined specific function, A publishing middleware-based simulator for simulating the embedded devices, a publishing middleware-based monitoring device for monitoring the embedded devices, and a global database for sharing data published by the embedded devices and simulation data issued by the simulator. And the embedded devices publish internal data to the global database through respective publish subscription middleware, and store the data issued from the other embedded devices, the simulator and the monitoring device. Subscribe to the database, the simulator publishes simulation data for simulating the embedded devices through its publishing middleware to the global database, subscribes data necessary for generating simulation data from the global database, and monitors the monitoring device. Subscribe to the data for monitoring from the global database through its own subscription middleware, and provides a simulation system, characterized in that to publish the monitoring control data to the global database.

여기서, 상기 시뮬레이터는 하드웨어-인-더-루프방식의 시뮬레이션 방식을 기반으로 하고, 상기 임베디드 장치들에 제공할 모의 데이터를 생성하고, 상기 시뮬레이션의 시작 및 종료와 같은 시뮬레이션 제어명령을 발행하여, 출판구독 미들웨어를 통하여 상기 생성된 모의 데이터 및 시뮬레이션 제어명령을 상기 전역 데이터베이스에 제공하는 것을 특징으로 한다. Here, the simulator is based on a hardware-in-the-loop simulation method, generates simulation data to be provided to the embedded devices, and issues a simulation control command such as start and end of the simulation, and publish it. The generated simulation data and simulation control commands are provided to the global database through a subscription middleware.

상기의 목적을 달성하기 위한 본 발명의 다른 측면은 외부 시스템들과 데이터를 공유할 수 있는 시스템 전역 데이터베이스를 이용하여, 다른 임베디드 장치들 및 시뮬레이터와 인터페이스하고, 시스템 운용모드 또는 시험 모드로 동작하는 임베디드 장치에 있어서, 시스템 외부의 변화를 감지하여 감지 데이터를 획득하는 감지기, 상기 전역 데이터베이스로부터 외부 데이터를 획득하고, 시스템 내부에서 전달받은 데이터를 상기 전역 데이터베이스에 제공하는 출판구독 미들웨어 모듈, 상기 감지기 또는 출판구독 미들웨어 모듈에서 획득한 외부 데이터들을 기반으로 미리 정해진 계산을 수행하여 이와 관련된 제어명령을 발행하는 임베디드 소프트웨어 모듈 및 상기 감지기, 출판구독 미들웨어 모듈 및 임베디드 소프트웨어 모듈간의 인터페이스를 담당하는 시뮬레이션 에이전트를 포함하는 것을 특징으로 하는 임베디드 장치를 제공한다. Another aspect of the present invention for achieving the above object is to use a system global database that can share data with external systems, to interface with other embedded devices and simulators, embedded to operate in the system operation mode or test mode An apparatus, comprising: a detector for detecting change outside a system to obtain sensed data; a publish-subscription middleware module for acquiring external data from the global database and providing data received from the system to the global database; An embedded software module for performing a predetermined calculation based on external data obtained from a subscription middleware module and issuing a control command related thereto, and an interface between the detector, the publish subscription middleware module, and the embedded software module. It provides an embedded device, characterized in that it comprises a simulation agent in question.

여기서, 상기 임베디드 장치가 운영모드인 경우, 상기 시뮬레이션 에이전트는, 상기 감지기가 획득한 감지 데이터를 상기 임베디드 소프트웨어 모듈에 전달하고, 상기 임베디드 소프트웨어 모듈은 상기 전달받은 감지 데이터를 이용하여 미리 정해진 계산을 수행하여, 관련된 제어명령을 발행하고, 상기 시뮬레이션 에이전트는, 상기 임베디드 소프트웨어 모듈에서 발행된 제어명령을 시스템 외부에 연결된 구동기에 전달하는 것을 특징으로 한다.Here, when the embedded device is in the operation mode, the simulation agent delivers the sensing data acquired by the detector to the embedded software module, and the embedded software module performs a predetermined calculation using the received sensed data. By issuing a related control command, the simulation agent is characterized in that for transmitting a control command issued from the embedded software module to a driver connected to the outside of the system.

또한 여기서, 상기 감지기가 획득한 감지 데이터와 임베디드 소프트웨어 모듈에서 발행된 제어명령은 상기 시뮬레이션 에이전트를 통하여 상기 출판구독 미들웨어로 전달되고, 상기 출판 구독 미들웨어는 상기 전달받은 감지 데이터와 제어명령을 상기 전역 데이터베이스로 전달하는 것을 특징으로 한다.In addition, the sensing data obtained by the detector and the control command issued by the embedded software module are transmitted to the publication subscription middleware through the simulation agent, and the publication subscription middleware transmits the received sense data and control commands to the global database. Characterized in that delivered to.

또한 여기서, 상기 시뮬레이션 에이전트는 상기 출판구독 미들웨어를 통하여 상기 전역 데이터베이스로부터 다른 임베디드 장치의 감지 데이터를 획득하고, 상기 획득된 감지 데이터를 상기 임베디드 소프트웨어 모듈로 전달하고, 상기 임베디드 소프트웨어 모듈은 상기 전달된 감지데이터를 이용하여 미리 정해진 계산을 수행하여, 관련된 제어명령을 발행하는 것을 특징으로 한다.In addition, the simulation agent obtains the sensed data of the other embedded device from the global database through the publish subscription middleware, and transfers the obtained sensed data to the embedded software module, the embedded software module is the delivered sense It is characterized by issuing a predetermined control by performing a predetermined calculation using the data.

또한 여기서, 상기 시뮬레이션 에이전트는 상기 출판구독 미들웨어를 통하여 상기 전역 데이터베이스로부터 임베디드 장치를 모니터링 하는 모니터링 장치가 발행한 모니터링 제어명령을 획득하고, 상기 획득된 제어 명령은 상기 임베디드 소프트웨어 모듈로 전달하고, 상기 임베디드 소프트웨어 모듈은 상기 전달된 모니터링 제어명령을 이용하여 계산을 수행하고, 상기 계산 결과인 제어명령을 발행하는 것을 특징으로 한다.In addition, the simulation agent obtains a monitoring control command issued by the monitoring device for monitoring the embedded device from the global database through the publish subscription middleware, and transfers the obtained control command to the embedded software module, the embedded The software module performs calculation using the transferred monitoring control command and issues a control command which is a result of the calculation.

또한 여기서 상기 임베디드 장치가 시험모드인 경우, 상기 시뮬레이션 에이전트는, 상기 출판구독 미들웨어를 통하여 상기 전역데이터베이스로부터 시뮬레이터가 제공한 모의 데이터를 획득하여, 상기 임베디드 소프트웨어 모듈에 전달하고, 상기 임베디드 소프트웨어 모듈은 상기 시뮬레이션 에이전트로부터 전달받은 모의 데이터를 이용하여, 미리 정해진 계산을 수행하여 상기 계산 결과인 제어 명령을 발행하고, 상기 시뮬레이션 에이전트는 상기 발행된 제어명령을 상기 출판구독 미들웨어를 통하여 상기 전역 데이터베이스로 전달하는 것을 특징으로 한다.In addition, when the embedded device is in the test mode, the simulation agent obtains the simulation data provided by the simulator from the global database through the publish subscription middleware, and delivers the simulated data to the embedded software module, wherein the embedded software module Using the simulation data received from the simulation agent, a predetermined calculation is performed to issue a control command which is the result of the calculation, and the simulation agent transfers the issued control command to the global database through the publication subscription middleware. It features.

또한 여기서, 상기 시뮬레이션 에이전트는 하드웨어-인-더-루프 시뮬레이션을 위한 에이전트인 것을 특징으로 한다.In addition, the simulation agent is characterized in that the agent for hardware-in-the-loop simulation.

상기의 목적을 달성하기 위한 본 발명의 또 다른 측면은, 임베디드 장치들과 데이터를 공유할 수 있는 시스템 전역 데이터베이스를 이용하여, 하나 이상의 임베디드 장치들을 시뮬레이션하기 위한 시뮬레이터에 있어서, 상기 임베디드 장치들에 제공할 모의 데이터를 생성하는 모의 데이터 생성모듈, 상기 생성된 모의데이터를 상기 전역데이터 베이스에 제공하는 출판구독 미들웨어 모듈을 포함하는 것을 특징으로 하는 시뮬레이터를 제공한다.Another aspect of the present invention for achieving the above object, in the simulator for simulating one or more embedded devices using a system-wide database that can share data with the embedded devices, provided to the embedded devices It provides a simulator, comprising a simulation data generation module for generating a mock data, a publishing subscription middleware module for providing the generated simulation data to the global database.

여기서, 시뮬레이션의 시작 및 종료와 같은 시뮬레이션 제어명령을 발행하는 시뮬레이션 제어모듈을 더 포함하고, 상기 출판구독 미들웨어는 상기 시뮬레이션 제어명령을 상기 전역데이터 베이스에 제공하는 것을 특징으로 한다.Here, the simulation control module for issuing a simulation control command, such as the start and end of the simulation, the publish subscription middleware is characterized in that for providing the simulation control command to the global database.

또한 여기서, 상기 연동가능한 임베디드 장치들의 목록 및 입출력 데이터 형태를 관리하고, 상기 임베디드 장치들의 입출력 형태에 맞추어 상기 모의데이터를 변환하는 데이터 변환모듈을 더 포함하고, 상기 출판구독 미들웨어는 상기 시뮬레이션 제어명령을 상기 전역데이터 베이스에 제공하는 것을 특징으로 한다.The method may further include a data conversion module configured to manage the list of the interoperable embedded devices and the input and output data types, and convert the simulation data according to the input and output types of the embedded devices. The publication subscription middleware may execute the simulation control command. It characterized in that provided to the global database.

또한 여기서, 상기 시뮬레이션 방식은 하드웨어-인-더-루프 시뮬레이션 방식인 것을 특징으로 한다.In addition, the simulation method is characterized in that the hardware-in-the-loop simulation method.

상기의 목적을 달성하기 위한 본 발명의 또 다른 측면은 임베디드 장치들과 데이터를 공유할 수 있는 시스템 전역 데이터베이스를 이용하여 임베디드 장치들을 모니터링하는 시스템에 있어서, 상기 임베디드 장치들이 발행한 데이터를 수집하는 데이터 수집모듈, 상기 수집된 데이터를 이용하여 상기 임베디드 장치들에 대한 모니터링 제어명령을 발행하는 모니터링 제어모듈 및 상기 전역 데이터베이스로부터 상기 임베디드 장치들이 발행한 데이터를 구독하여 상기 데이터 수집모듈에 제공하고, 상기 모니터링 제어명령을 상기 전역 데이터베이스에 제공하는 출판구독 미들웨어 모듈을 포함하는 것을 특징으로 하는 모니터링 장치를 제공한다.Another aspect of the present invention for achieving the above object is a system for monitoring embedded devices using a system-wide database that can share data with embedded devices, the data for collecting the data issued by the embedded devices A collection module, a monitoring control module for issuing a monitoring control command for the embedded devices using the collected data, and subscribing the data issued by the embedded devices from the global database to the data collection module; It provides a monitoring device comprising a publish subscription middleware module for providing a control command to the global database.

여기서, 상기 임베디드 장치들이 발행하는 데이터는 임베디드 장치의 감지기에서 감지한 데이터 및 임베디드 소프트웨어 모듈에서 발행한 제어 명령을 포함하는 것을 특징으로 한다.The data issued by the embedded devices may include data detected by a detector of an embedded device and control commands issued by an embedded software module.

또한 여기서, 상기 데이터 수집모듈에서 수집한 데이터 및 모니터링 제어명령에 관한 사용자 인터페이스를 제공하는 모니터링 인터페이스 모듈을 더 포함하는 것을 특징으로 한다.The method may further include a monitoring interface module configured to provide a user interface related to data collected by the data collection module and a monitoring control command.

상기의 다른 목적을 달성하기 위한 본 발명의 일 측면은 임베디드 장치들과 데이터를 공유할 수 있는 시스템 전역 데이터베이스를 이용하여, 하나 이상의 임베디드 장치들을 시뮬레이션하기 위한 방법에 있어서, 시뮬레이터에서 상기 임베디드 장치들에 제공할 모의 데이터를 생성하는 단계, 상기 생성된 모의데이터를 상기 임베디드 장치들에 맞추어 변환하는 단계, 상기 변환된 모의데이터를 상기 전역데이터 베이스에 제공하는 단계 및 상기 임베디드 장치들 중 하나 이상의 임베디드 장치에서 상기 전역 데이터베이스로부터 상기 모의데이터를 획득하는 단계를 포함하는 것을 특징으로 하는 시뮬레이션 방법을 제공한다.One aspect of the present invention for achieving the above another object is a method for simulating one or more embedded devices using a system-wide database that can share data with embedded devices, in a simulator to the embedded devices; Generating mock data to be provided, converting the generated mock data to the embedded devices, providing the converted mock data to the global database, and at least one embedded device of the embedded devices. And providing the simulation data from the global database.

여기서, 상기 시뮬레이션 방법은 하드웨어-인-더-루프 시뮬레이션 방법이고, 상기 시뮬레이터 및 임베디드 장치들은 출판 구독 미들웨어를 기반으로 하는 것을 특징으로 한다.Here, the simulation method is a hardware-in-the-loop simulation method, and the simulator and the embedded devices are characterized in that based on the publishing subscription middleware.

상기의 다른 목적을 달성하기 위한 본 발명의 다른 측면은 출판구독 미들웨어 기반의 임베디드 장치들과 데이터를 공유할 수 있는 시스템 전역 데이터베이스를 이용하여, 하나 이상의 임베디드 장치들을 모니터링 하는 방법에 있어서, 출판구독 미들웨어 기반의 모니터링 장치에서 임베디드 장치들이 발행한 감지 데이터 및 제어명령을 수집하는 단계, 상기 수집된 데이터를 이용하여 상기 임베디드 장치들에 대한 모니터링 제어명령을 상기 전역데이터베이스에 발행하는 단계 및 상기 수집된 데이터 및 모니터링 제어명령을 사용자에게 제공하는 단계를 포함하는 것을 특징으로 한다.Another aspect of the present invention for achieving the above object is a method for monitoring one or more embedded devices using a system global database that can share data with the embedded middleware-based embedded devices, Collecting sensing data and control commands issued by embedded devices in the monitoring device based on the device; issuing monitoring control commands for the embedded devices to the global database using the collected data; and collecting the collected data and And providing the monitoring control command to the user.

상술한 바와 같은 본 발명에 따른 분산 임베디드 장치들을 위한 하드웨어-인-더-루프 시뮬레이션 시스템 및 방법을 이용하면, 다수의 임베디드 장치들 및 시뮬레이터가 출판구독 미들웨어를 통하여 전역 데이터베이스로 데이터를 발행하고 구독함으로써 대규모의 분산/이종 임베디드 장치들을 통합적으로 시뮬레이션할 수 있는 효과가 있다.With the hardware-in-the-loop simulation system and method for distributed embedded devices according to the present invention as described above, a number of embedded devices and simulators can be published and subscribed to a global database through a publish middleware. It is effective to integrate large scale distributed / heterogeneous embedded devices.

도 1은 본 발명에 따른 분산/이종의 임베디드 장치를 지원하기 위한 시뮬레이션 시스템의 기본적인 구성을 보여주는 개념도이다.
도 2는 본 발명에 따른 임베디드 장치의 구성을 보여주는 블록도이다.
도 3은 본 발명에 따른 임베디드 장치의 시뮬레이션 에이전트가 입출력을 제어하는 과정을 보여주는 시퀀스 챠트이다.
도 4는 본 발명에 따른 분산/이종의 임베디드 장치들을 시뮬레이션하기 위한 시뮬레이터의 구성을 보여주는 블록도이다.
도 5는 본 발명에 따른 분산/이종의 임베디드 장치들을 모니터링 하는 시스템의 구성을 보여주는 블록도이다.
도 6은 본 발명에 따른 분산/이종의 임베디드 장치를 지원하기 위한 시뮬레이션 시스템에서의 출판 및 구독 데이터 흐름을 보여주는 개념도이다.
1 is a conceptual diagram illustrating a basic configuration of a simulation system for supporting distributed / heterogeneous embedded devices according to the present invention.
2 is a block diagram showing the configuration of an embedded device according to the present invention.
3 is a sequence chart illustrating a process of controlling input / output by a simulation agent of an embedded device according to the present invention.
4 is a block diagram showing a configuration of a simulator for simulating distributed / heterogeneous embedded devices according to the present invention.
5 is a block diagram showing the configuration of a system for monitoring distributed / heterogeneous embedded devices according to the present invention.
6 is a conceptual diagram illustrating a publishing and subscription data flow in a simulation system for supporting distributed / heterogeneous embedded devices according to the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하, 본발명에 따른 바람직한 실시예를 첨부한 도면들을 참조하여 상세하게 설명한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In order to facilitate the understanding of the present invention, the same reference numerals are used for the same constituent elements in the drawings and redundant explanations for the same constituent elements are omitted.

본 발명에 따른 분산 네트워크 환경에서 다수의 임베디드 장치를 통합적으로 시험할 수 있는 시뮬레이션 시스템과 방법이 개시된다. Disclosed are a simulation system and method for integrating testing a plurality of embedded devices in a distributed network environment in accordance with the present invention.

본 발명에 따른 시뮬레이터 및 임베디드 장치는 출판/구독 미들웨어를 기반으로 한다. 미들웨어는 분산 컴퓨팅 환경에서 서로 다른 기종의 하드웨어나 프로토콜, 통신환경 등을 연결하여, 응용프로그램과 그 프로그램이 운영되는 환경 간에 원만한 통신이 이루어질 수 있게 하는 소프트웨어를 말하며, 출판/구독 미들웨어는 통신 미들웨어의 일종으로, 미들웨어가 탑재되는 노드들의 위치에는 관계없이 이들이 제공하는 내용을 기반으로 통신할 수 있는 인터페이스를 제공한다.Simulators and embedded devices according to the present invention are based on publish / subscribe middleware. Middleware refers to software that connects different types of hardware, protocols, and communication environments in a distributed computing environment to enable smooth communication between an application and the environment in which the program operates.Publish / subscribe middleware refers to communication middleware. As a kind, it provides an interface that can communicate based on the contents provided by the nodes regardless of the location of the middleware.

본 발명에 따른 임베디드 장치는 정해진 특정기능을 수행하기 위한 시스템으로 하드웨어/소프트웨어 또는 소프트웨어 모듈로 구성될 수 있으며, 자동차, 냉장고와 같은 특정목적의 제어기능을 요구하는 장치에 탑재되어 작동하는 시스템일 수 있다. The embedded device according to the present invention may be a system for performing a specific function, and may be configured as hardware / software or a software module, and may be a system installed and operated in a device requiring a control function for a specific purpose such as a car or a refrigerator. have.

본 발명에 따른 시뮬레이션 에이전트는 임베디드 장치에 탑재된 소프트웨어을 하드웨어-인더루프-시뮬레이션 기반으로 시험하기 위하여 제작된 소프트웨어 모듈이다.The simulation agent according to the present invention is a software module manufactured for testing software mounted on an embedded device on a hardware-in-loop-simulation basis.

이하 본 발명에 따른 분산/이기종의 임베디드 장치를 지원하는 시뮬레이션 시스템과 관련하여 시뮬레이션 시스템의 전체적인 구성에 대해서 살펴보고, 시스템을 이루는 각 구성요소에 대해서 좀 더 자세하게 설명하기로 한다. 다음으로 본 발명에 따른 시뮬레이션 시스템의 중요한 구성요소인 출판/구독 미들웨어를 통하여 데이터를 발행하고 구독하는 부분에 대하여 살펴보기로 한다.
Hereinafter, the overall configuration of the simulation system will be described with respect to the simulation system supporting the distributed / heterogeneous embedded device according to the present invention, and each component of the system will be described in detail. Next, a part of publishing and subscribing to data through a publishing / subscription middleware which is an important component of the simulation system according to the present invention will be described.

본 발명에 따른 시뮬레이션 시스템의 구성Configuration of Simulation System According to the Present Invention

도 1은 본 발명에 따른 분산/이종의 임베디드 장치를 지원하기 위한 시뮬레이션 시스템의 기본적인 구성을 보여주는 개념도이다.1 is a conceptual diagram illustrating a basic configuration of a simulation system for supporting distributed / heterogeneous embedded devices according to the present invention.

도 1을 참조하면, 본 발명에 따른 시뮬레이션 시스템은 출판/구독 미들웨어 기반의 다수의 임베디드 장치들(200)과 출판/구독 미들웨어 기반의 시뮬레이터(300), 출판/구독 미들웨어 기반의 모니터링 장치(400)를 포함하여 구성되는 것을 알 수 있다. Referring to FIG. 1, a simulation system according to the present invention includes a plurality of embedded devices 200 based on a publish / subscribe middleware, a simulator 300 based on a publish / subscribe middleware, and a monitor 400 based on a publish / subscribe middleware. It can be seen that including the configuration.

또한 도 1을 참조하면, 다수의 임베디드 장치(200,201,202), 시뮬레이터(300) 및 모니터링 장치(400)가 데이터를 공유할 수 있는 전역 데이터베이스(500)를 통하여 데이터를 주고 받으면서 상호 연동 되는 것을 알 수 있다. 1, it can be seen that a plurality of embedded devices 200, 201, 202, simulator 300, and monitoring device 400 interoperate with each other while exchanging data through a global database 500 that can share data. .

이하, 도 1을 참조하여 본 발명에 따른 분산/이종의 임베디드 장치를 지원하기 위한 시뮬레이션 시스템에 대하여 좀 더 상세하게 설명하기로 한다.Hereinafter, a simulation system for supporting distributed / heterogeneous embedded devices according to the present invention will be described in more detail with reference to FIG. 1.

임베디드 장치들(200,201,202)은 미리 정의된 특정기능을 수행하기 위하여 하드웨어와 소프트웨어로 구성되는 시스템들이다. 예를 들면, 항공기의 비행 및 자세제어를 위한 비행제어 시스템, 자동차의 전장 제어를 위한 ECU(Electronic Control Unit), 냉장고의 내부 온도제어를 위한 임베디드 장치 등이 있다. 본 발명에 따른 임베디드 장치들은 각각 독립적인 기능을 수행하지만 출판구독 미들웨어를 통하여 외부의 시스템들과 통신하면서 필요한 데이터를 주고 받을 수 있다.The embedded devices 200, 201, and 202 are systems composed of hardware and software to perform a predetermined specific function. For example, there is a flight control system for flight and attitude control of the aircraft, an electronic control unit (ECU) for controlling the overall length of the vehicle, an embedded device for controlling the internal temperature of the refrigerator. Although the embedded devices according to the present invention perform independent functions, they may exchange necessary data while communicating with external systems through a publish subscription middleware.

시뮬레이터(300)는 시험 대상이 되는 분산/이종 임베디드 장치들(200,201,202)에 입력되는 모의 데이터를 생성한다. 필요에 따라서는 실제 임베디드 장치들 대신 소프트웨어 에뮬레이터들이 사용될 수도 있다. 시뮬레이터는 모의하는 데이터들을 출판구독 미들웨어(310)를 통하여 전역 데이터베이스(500)에 발행하며, 임베디드 장치들은 출판구독 미들웨어(210)를 통하여 해당 데이터들을 구독한다.The simulator 300 generates simulation data input to the distributed / heterogeneous embedded devices 200, 201, and 202 under test. If necessary, software emulators may be used instead of the actual embedded devices. The simulator publishes simulated data to the global database 500 through the publish middleware 310 and the embedded devices subscribe to the corresponding data through the publish middleware 210.

또한 모니터링 장치(400)는 분산/이종 임베디드 장치들(200,201,202)의 운영상태를 모니터링한다. 즉 각 시스템의 상황(예를 들면, 시스템의 감지기에서 감지한 데이터와 시스템에서 발행한 제어명령) 모니터링 장치는 모니터링 결과 발행된 제어 데이터를 출판구독 미들웨어(410)를 통하여 전역 데이터베이스(500)에 발행한다. 예를 들면, 공장의 경우 자동화된 제조기기에 다수의 임베디드 장치들이 탑재될 수 있는데, 이러한 시스템들을 모니터링하여 제조현황을 감독하고 원격으로 조정할 수 있다.In addition, the monitoring device 400 monitors operating states of the distributed / heterogeneous embedded devices 200, 201, and 202. That is, the situation monitoring device of each system (for example, data detected by the detector of the system and control commands issued by the system) issues the control data issued as a result of the monitoring to the global database 500 through the publish subscription middleware 410. do. For example, a factory can have a number of embedded devices in an automated manufacturing machine that can be monitored to remotely control manufacturing and monitor manufacturing.

출판구독 미들웨어(210)는 통신에 참여하는 각 개체가 발행자 또는 구독자 되어 별도의 서비스 연결 없이 원하는 자료를 발행하고 구독할 수 있는 미들웨어이다. 각 임베디드 장치(200)는 출력되는 데이터들을 출판구독 미들웨어(210)를 통하여 발행하며, 시뮬레이터(300) 또는 모니터링 장치(400)는 출판구독 미들웨어를 통하여 출력 데이터들을 구독한다.The publication subscription middleware 210 is a middleware in which each entity participating in the communication becomes a publisher or a subscriber and can publish and subscribe to a desired material without a separate service connection. Each embedded device 200 publishes the output data through the publish subscription middleware 210, and the simulator 300 or the monitoring device 400 subscribes the output data through the publish subscription middleware.

예를 들어, 임베디드 장치(200)에서 감지한 조도 값을 출판구독 미들웨어(210)를 통하여 전역 데이터베이스(500)에 발행하였다면, 다른 임베디드 장치(201)에서 상기 발행된 조도값이 필요한 경우에 출판구독 미들웨어 모듈(2011)에서 이를 구독하여 시스템 내부에 전달하게 된다. For example, if the illuminance value detected by the embedded device 200 is published to the global database 500 through the publish subscription middleware 210, the published illuminance value is required when the published illuminance value is needed by another embedded device 201. The middleware module 2011 subscribes to it and delivers it to the system.

전체 시스템에는 하나 이상의 시뮬레이터들과 관찰 시스템들이 포함될 수 있다.The entire system may include one or more simulators and observation systems.

이하 본 발명에 따른 분산/이종의 임베디드 장치를 지원하기 위한 출판/구독 미들웨어 기반의 시뮬레이션 시스템의 각 구성요소들에 대하여 좀 더 상세하게 살펴보기로 한다.
Hereinafter, each component of a publishing / subscription middleware based simulation system for supporting distributed / heterogeneous embedded devices according to the present invention will be described in more detail.

1) 임베디드 장치의 구성1) Configuration of Embedded Device

본 발명에 따른 분산/이종의 임베디드 장치를 지원하기 위한 출판/구독 미들웨어 기반의 시뮬레이션 시스템의 일 구성요소인 임베디드 장치의 구성에 대하여 좀 더 살펴보기로 한다.The configuration of an embedded device, which is a component of a publishing / subscription middleware based simulation system for supporting distributed / heterogeneous embedded devices according to the present invention, will be described.

도 2는 본 발명에 따른 임베디드 장치의 구성을 보여주는 블록도이다.2 is a block diagram showing the configuration of an embedded device according to the present invention.

도 2를 참조하면 본 발명에 따른 임베디드 장치는 출판구독 미들웨어 모듈(210), 임베디드 소프트웨어 모듈(220), 시뮬레이션 에이전트(230), 감지기(240)를 포함하여 구성되는 것을 알 수 있다.2, it can be seen that the embedded device according to the present invention includes a publication subscription middleware module 210, an embedded software module 220, a simulation agent 230, and a detector 240.

또한 도 2를 참조하면, 본 발명에 따른 임베디드 장치(200)와 데이터를 공유할 수 있는 전역 데이터베이스(500)를 통하여 시뮬레이터(300) 및 다른 임베디드시스템(202)와 인터페이스 하고, 또한 임베디드 장치의 제어명령을 수신하여 구동하는 구동기(250)와 연동하여 동작하는 것을 알 수 있다.2, the interface with the simulator 300 and the other embedded system 202 through the global database 500 that can share data with the embedded device 200 according to the present invention, and also controls the embedded device It can be seen that the operation operates in conjunction with the driver 250 that receives and drives the command.

도 2를 참조하면 본 발명에 따른 임베디드 장치의 각 구성요소의 역할은 아래와 같이 설명될 수 있다.Referring to Figure 2 the role of each component of the embedded device according to the present invention can be described as follows.

출판구독 미들웨어 모듈(210)은 전역 데이터베이스(500)로부터 외부 데이터를 획득하고, 시스템 내부에서 전달받은 데이터를 상기 전역 데이터베이스(500)에 전달한다. 즉, 시뮬레이션 에이전트(230)를 통하여 전달된 감지기가 획득한 감지 데이터와 임베디드 소프트웨어 모듈(220)에서 발행된 제어명령을 전역 데이터베이스(500)로 전달하는 역할을 한다.The publish subscription middleware module 210 obtains external data from the global database 500 and delivers the data received in the system to the global database 500. That is, the sensor transmits the sensed data acquired by the detector transmitted through the simulation agent 230 and the control command issued by the embedded software module 220 to the global database 500.

또한 전역 데이터베이스(500)로부터 다른 임베디드 장치(201)가 제공한 감지 데이터, 시뮬레이터(300)가 제공한 모의데이터 및 모니터링 장치(400)가 제공한 모니터링 제어데이터를 획득하여, 상기 시뮬레이션 에이전트(230)를 통하여 임베디드 소프트웨어 모듈(220)로 전달한다. The simulation agent 230 obtains sensing data provided by another embedded device 201, simulation data provided by the simulator 300, and monitoring control data provided by the monitoring device 400 from the global database 500. It passes through the embedded software module 220 through.

임베디드 소프트웨어 모듈(220)은 감지기(240)를 통하여 획득한 감지 데이터 또는 출판구독 미들웨어 모듈(210)을 통하여 획득한 외부 데이터, 즉 시뮬레이터(300)가 제공한 모의 데이터, 다른 임베디드 장치(201)가 제공한 감지데이터, 또는 모니터링 장치(400)가 제공한 모니터링 제어 데이터들을 기반으로 미리 정해진 계산을 수행하여 이와 관련된 제어명령을 발행한다.The embedded software module 220 may include sensor data acquired through the detector 240 or external data acquired through the publish-subscription middleware module 210, that is, simulation data provided by the simulator 300, and other embedded devices 201. Based on the sensed data provided or the monitoring control data provided by the monitoring apparatus 400, a predetermined calculation is performed to issue a control command related thereto.

예를 들어 냉장고의 내부온도 제어를 위한 임베디드 장치가 센서 또는 시뮬레이터로부터 내부온도를 제공받아서 온도제어를 위한 명령을 발행하게 된다.For example, an embedded device for controlling an internal temperature of a refrigerator receives an internal temperature from a sensor or a simulator and issues a command for temperature control.

시뮬레이션 에이전트(230)는 상기 감지기(240), 출판구독 미들웨어 모듈(210) 및 임베디드 소프트웨어 모듈(220) 간의 인터페이스를 담당한다. 즉 상기 감지기(240)가 획득한 감지 데이터를 상기 임베디드 소프트웨어 모듈(220)에 전달하고, 상기 임베디드 소프트웨어 모듈(220)에서 발행된 제어명령을 시스템 외부에 연결된 구동기(250)에 전달한다.The simulation agent 230 is responsible for the interface between the detector 240, the publish middleware module 210, and the embedded software module 220. That is, the sensing data acquired by the detector 240 is transmitted to the embedded software module 220, and the control command issued by the embedded software module 220 is transmitted to the driver 250 connected to the outside of the system.

또한, 출판구독 미들웨어(210)를 통하여 전역 데이터베이스(500)로부터 다른 임베디드 장치들(202)의 감지 데이터를 획득하고, 상기 획득된 감지 데이터를 임베디드 소프트웨어 모듈(220)로 전달하는 역할을 한다.In addition, the sensor acquires the sensed data of other embedded devices 202 from the global database 500 through the publish subscription middleware 210 and delivers the acquired sensed data to the embedded software module 220.

한편 본 발명에 따른 시뮬레이션 에이전트(230)는 상기 임베디드 소프트웨어 모듈(220)을 하드웨어-인-더-루프 시뮬레이션기반으로 시험한다. 따라서 시스템이 시험모드일 경우에는 시뮬레이터(300)에서 제공한 모의 데이터를 임베디드 소프트웨어 모듈(220)에 제공하지만, 운용모드인 경우에는 감지기에서 감지한 데이터를 제공한다. 시스템의 시험모드 및 운용모드에 따른 시뮬레이션 에이전트(230)의 역할에 대해서는 후술하기로 한다.Meanwhile, the simulation agent 230 according to the present invention tests the embedded software module 220 based on hardware-in-the-loop simulation. Therefore, when the system is in the test mode, the simulation data provided by the simulator 300 is provided to the embedded software module 220, but in the operation mode, it provides the data detected by the detector. The role of the simulation agent 230 according to the test mode and operation mode of the system will be described later.

감지기(240)는 시스템 외부의 변화를 감지하여 감지 데이터를 획득하는 부분이다. 즉 시스템에 포함되는 센서이다. 예를 들면, 비행 제어 시스템의 경우 속도 측정 센서, 고도 측정 센서 등이 감지기이며, 냉장고의 경우 온도 센서, 습도 센서, 문 열림 센서 등이 감지기이다. The detector 240 detects a change outside the system to acquire sensing data. That is the sensor included in the system. For example, in the case of a flight control system, a speed sensor, an altitude sensor, and the like are sensors, and in the case of a refrigerator, a temperature sensor, a humidity sensor, and a door open sensor are sensors.

감지기(240)의 감지 데이터는 보통 하드웨어 제작업체가 제공하는 인터페이스를 통해 정수(예, 0~255) 또는 실수로 임베디드 소프트웨어 모듈에 공급될 수 있다. 예를 들어, 후진시 뒤의 장애물까지의 거리를 알려주는 자동차에 달린 초음파 센서의 경우, 장애물까지의 거리를 숫자(예를 들어, 50cm 거리라면 50으로)로 표현하여 임베디드 소프트웨어 모듈(220)에 전달한다.
Sensing data from the detector 240 may be supplied to the embedded software module by integer (eg, 0 to 255) or by mistake, usually via an interface provided by the hardware manufacturer. For example, in the case of an ultrasonic sensor attached to a car that informs the distance to an obstacle behind the vehicle in reverse, the distance to the obstacle is expressed in a number (for example, 50 if the distance is 50 cm) to the embedded software module 220. To pass.

이하 임베디드 장치의 운영모드 및 시험모드에 따른 상기 시뮬레이션 에이전트(230)가 입출력을 제어하는 과정을 좀더 상세하게 살펴보기로 한다.Hereinafter, the process of controlling the input / output by the simulation agent 230 according to the operation mode and the test mode of the embedded device will be described in more detail.

도 3은 본 발명에 따른 임베디드 장치의 시뮬레이션 에이전트가 입출력을 제어하는 과정을 보여주는 시퀀스 챠트이다.3 is a sequence chart illustrating a process of controlling input / output by a simulation agent of an embedded device according to the present invention.

도 2와 도 3을 참조하면 본 발명에 따른 임베디드 장치의 시뮬레이션 에이전트가 입출력을 제어하는 과정은 아래와 같이 설명될 수 있다.2 and 3, a process of controlling input / output by a simulation agent of an embedded device according to the present invention may be described as follows.

시스템 운용 모드인 경우, 임베디드 장치(200)에 탑재된 시뮬레이션 에이전트(230)가 감지기들이 제공한 감지 데이터들을 임베디드 소프트웨어 모듈(220)에 공급한다(S301). 또한 상기 감지 데이터를 이용하여 계산된 임베디드 소프트웨어 모듈(220)의 제어 명령들을 이용하여 시뮬레이션 에이전트(230)를 통하여 구동기들(250)을 제어한다(S303). In the system operation mode, the simulation agent 230 mounted in the embedded device 200 supplies the sensing data provided by the detectors to the embedded software module 220 (S301). In addition, the drivers 250 are controlled through the simulation agent 230 using the control commands of the embedded software module 220 calculated using the sensed data (S303).

시스템 시험 모드의 경우, 시뮬레이션 에이전트(230)는 출판구독 미들웨어(210)를 통하여 시뮬레이터(300)로부터 제공받은 모의 데이터를 임베디드 소프트웨어 모듈(220)에 공급하고(S304), 상기 모의 데이터를 이용하여 계산된 임베디드 소프트웨어 모듈(220)의 제어명령들을 출판구독 미들웨어(210)를 통하여 발행한다(S306).In the system test mode, the simulation agent 230 supplies simulation data provided from the simulator 300 to the embedded software module 220 through the publication subscription middleware 210 (S304), and calculates using the simulation data. The control commands of the embedded software module 220 are issued through the publish subscription middleware 210 (S306).

필요에 따라서는 운용 단계에서 시뮬레이션 에이전트(230)를 제거할 수도 있다.
If necessary, the simulation agent 230 may be removed at the operation stage.

2) 시뮬레이터의 구성2) Configuration of the simulator

이하 본 발명에 따른 분산/이종의 임베디드 장치를 지원하기 위한 출판/구독 미들웨어 기반의 시뮬레이션 시스템의 일 구성요소인 시뮬레이터의 구성에 대하여 좀 더 살펴보기로 한다.Hereinafter, the configuration of a simulator, which is one component of a publishing / subscription middleware based simulation system for supporting distributed / heterogeneous embedded devices according to the present invention, will be described.

도 4는 본 발명에 따른 분산/이종의 임베디드 장치들을 시뮬레이션하기 위한 시뮬레이터의 구성을 보여주는 블록도이다.4 is a block diagram showing a configuration of a simulator for simulating distributed / heterogeneous embedded devices according to the present invention.

도 4를 참조하면 본 발명에 따른 시뮬레이터(300)는 출판구독 미들웨어 모듈(310), 모의데이터 생성모듈(320), 시뮬레이션 제어모듈(330), 자료 변환모듈(340)을 포함하여 구성되는 것을 알 수 있다.Referring to FIG. 4, the simulator 300 according to the present invention includes a publication subscription middleware module 310, a simulation data generation module 320, a simulation control module 330, and a data conversion module 340. Can be.

또한 도 4를 참조하면, 본 발명에 따른 시뮬레이터(300)와 데이터를 공유할 수 있는 전역 데이터베이스(500)를 통하여 임베디드 장치들(200,202)과 인터페이스하는 것을 알 수 있다.4, it can be seen that the interface with the embedded devices (200, 202) through a global database 500 that can share data with the simulator 300 according to the present invention.

도 4를 참조하면 본 발명에 따른 시뮬레이터의 각 구성요소의 역할은 아래와 같이 설명될 수 있다.Referring to Figure 4 the role of each component of the simulator according to the present invention can be described as follows.

출판구독 미들웨어 모듈(310)은 모의데이터 생성모듈(320)에서 생성된 모의 데이터 또는 데이터 변환모듈(340)에서 변환된 데이터 및 시뮬레이션 제어모듈(330)에서 생성된 시뮬레이션 제어명령을 전역데이터 베이스(500)에 제공한다.The publication subscription middleware module 310 receives the simulation data generated by the simulation data generation module 320 or the data converted by the data conversion module 340 and the simulation control command generated by the simulation control module 330 from the global database 500. To provide.

모의 데이터 생성모듈(320)은 임베디드 장치들(200,202)에 제공할 모의 데이터를 생성하는 부분이다.The simulation data generation module 320 is a part for generating simulation data to be provided to the embedded devices 200 and 202.

시뮬레이션 제어모듈(330)은 시뮬레이션의 시작 및 종료와 같은 시뮬레이션 제어명령을 발행하는 부분이다. Simulation control module 330 is a part for issuing simulation control commands, such as start and end of the simulation.

데이터 변환모듈(340)은 연동가능한 임베디드 장치들의 목록 및 입출력 데이터 형태를 관리하고, 상기 임베디드 장치들의 입출력 형태에 맞추어 모의 데이터 생성모듈(320)에서 생성된 모의데이터를 변환하는 부분이다. The data conversion module 340 manages a list of interoperable embedded devices and an input / output data type, and converts the simulation data generated by the simulation data generation module 320 according to the input / output types of the embedded devices.

상기와 같은 구성을 통하여 시뮬레이터는(330)는 임베디드 장치들에게 입력할 모의 데이터를 생성하여 출판/구독 미들웨어(310)를 통하여 발행하게 된다.
Through the above configuration, the simulator 330 generates mock data for input to the embedded devices and publishes it through the publish / subscribe middleware 310.

시뮬레이터(300)의 모의데이터 생성 과정은 아래와 같이 설명될 수 있다.The simulation data generation process of the simulator 300 may be described as follows.

시뮬레이터(300)의 모의데이터 생성모듈(320)은 임베디드 장치들에게 제공할 모의데이터를 생성하여 출판구독 미들웨어(310)를 통하여 전역 데이터베이스(500)로 발행한다. 시뮬레이터(300)에 탑재된 시뮬레이션 제어모듈(330)은 연동 가능한 임베디드 장치들의 목록 및 입출력 형태들을 관리하고 하드웨어-인-더-루프 시뮬레이션의 시작/종료 등의 제어 명령들을 출판구독 미들웨어 모듈(310)을 통하여 임베디드 장치들에게 전달하는 역할을 한다.The simulation data generation module 320 of the simulator 300 generates simulation data to be provided to the embedded devices and publishes the simulation data to the global database 500 through the publication subscription middleware 310. The simulation control module 330 mounted on the simulator 300 manages a list of interoperable embedded devices and input / output types, and publishes control commands such as start / end of hardware-in-the-loop simulation. Delivers to embedded devices through

또한 시뮬레이터가 모의하는 값들과 임베디드 장치들의 입력 값들의 형태가 서로 다른 경우, 값들의 변환을 담당하는 데이터 변환모듈(340)이 탑재될 수 있다. 필요에 따라서는 시뮬레이션 제어모듈(330)이나 데이터 변환모듈(30)을 제거할 수도 있으며, 임베디드 장치들에 탑재할 수도 있다.
In addition, when the values simulated by the simulator and the input values of the embedded devices are different from each other, the data conversion module 340 may be mounted to handle the conversion of the values. If necessary, the simulation control module 330 or the data conversion module 30 may be removed or mounted on embedded devices.

3) 모니터링 장치의 구성3) Configuration of monitoring device

이하 시뮬레이션 시스템의 일 구성요소인 모니터링 장치의 구성에 대하여 좀 더 살펴보기로 한다.Hereinafter, the configuration of the monitoring device, which is a component of the simulation system, will be described.

도 4는 본 발명에 따른 분산/이종의 임베디드 장치들을 시뮬레이션하기 위한 시뮬레이터의 구성을 보여주는 블록도이다.4 is a block diagram showing a configuration of a simulator for simulating distributed / heterogeneous embedded devices according to the present invention.

도 4를 참조하면 본 발명에 따른 모니터링 장치(400)는 출판구독 미들웨어 모듈(410), 모니터링 인터페이스(420), 모니터링 제어모듈(430), 데이터 수집모듈(440)을 포함하여 구성되는 것을 알 수 있다.Referring to FIG. 4, it can be seen that the monitoring device 400 according to the present invention includes a publication subscription middleware module 410, a monitoring interface 420, a monitoring control module 430, and a data collection module 440. have.

또한 도 4를 참조하면, 본 발명에 따른 모니터링 장치(400)와 데이터를 공유할 수 있는 전역 데이터베이스(500)를 통하여 임베디드 장치들(200,202)을 모니터링 하는 것을 알 수 있다.4, it can be seen that the embedded devices 200 and 202 are monitored through the global database 500 that can share data with the monitoring device 400 according to the present invention.

도 4를 참조하면 본 발명에 따른 모니터링 장치의 각 구성요소의 역할은 아래와 같이 설명될 수 있다.Referring to Figure 4 the role of each component of the monitoring device according to the present invention can be described as follows.

출판구독 미들웨어 모듈(410)은 전역 데이터베이스(500)로부터 임베디드 장치들이 발행한 데이터를 구독하여 데이터 수집모듈(440)에 제공하고, 모니터링 제어모듈(430)에서 발행하는 모니터링 제어명령을 상기 전역 데이터베이스(500)에 제공하는 역할을 한다. 이때 임베디드 장치들이 발행하는 데이터는 해당 임베디드 장치의 감지기에서 감지한 데이터 및 임베디드 소프트웨어 모듈에서 발행한 제어 명령이 포함될 수 있다.The publication subscription middleware module 410 subscribes to the data collection module 440 by subscribing data issued by the embedded devices from the global database 500, and provides a monitoring control command issued by the monitoring control module 430 to the global database ( 500). In this case, the data issued by the embedded devices may include data detected by the detector of the embedded device and control commands issued by the embedded software module.

모니터링 인터페이스 모듈(420)은 상기 데이터 수집모듈(440)에서 수집한 데이터 및 모니터링 제어명령에 관한 사용자 인터페이스를 제공하여 각 임베디드 장치의 작동현황을 사용자에게 알려주는 부분이다.The monitoring interface module 420 is a part for providing a user interface related to the data and monitoring control commands collected by the data collection module 440 to inform the user of the operation status of each embedded device.

모니터링 제어모듈(430)은 상기 데이터 수집모듈(440)에서 수집된 데이터를 이용하여 임베디드 장치들에 대한 모니터링 제어명령을 발행하는 역할을 한다.
The monitoring control module 430 serves to issue a monitoring control command for embedded devices using the data collected by the data collection module 440.

모니터링 장치(400)의 모니터링 과정은 아래와 같이 설명될 수 있다.The monitoring process of the monitoring device 400 may be described as follows.

임베디드 장치들(200,201)은 일반 운용 단계와 동일하게 감지기(240)들의 감지 데이터들을 받아 구동기들을 제어한다. 동시에 감지 데이터와 제어 명령들을 출판구독 미들웨어를 통하여 전역 데이터베이스(500)에 발행한다.The embedded devices 200 and 201 control the drivers by receiving the sensing data of the detectors 240 in the same manner as in the normal operation stage. At the same time, the sensing data and control commands are issued to the global database 500 through the publishing middleware.

이와 같은 기능은 임베디드 장치들에 탑재되는 하드웨어-인-더-루프 시뮬레이션 방식의 시뮬레이션 에이전트의 입출력 제어에 의해 구현될 수 있다. 모니터링 장치(400)는 상기 임베디드 장치들로부터 발행된 데이터들을 출판구독 미들웨어(410)를 통하여 구독하여 모니터링 인터페이스(420)를 통하여 사용자에게 제공함으로써 원격 모니터링 역할을 수행하게 한다.Such a function may be implemented by input / output control of a simulation agent of a hardware-in-the-loop simulation method mounted on embedded devices. The monitoring device 400 performs a remote monitoring role by subscribing the data issued from the embedded devices through the publishing subscription middleware 410 to the user through the monitoring interface 420.

어플리케이션은 다수의 모니터링 장치들로 구성될 수 있으며, 서로 다른 모니터링 장치들이 동일 임베디드 장치를 모니터링할 수도 있다.
An application may consist of multiple monitoring devices, and different monitoring devices may monitor the same embedded device.

본 발명에 따른 시뮬레이션 시스템에서의 출판 및 구독 데이터 흐름 Publication and subscription data flow in the simulation system according to the present invention

도 6은 본 발명에 따른 분산/이종의 임베디드 장치를 지원하기 위한 시뮬레이션 시스템에서의 출판 및 구독 데이터 흐름을 보여주는 개념도이다.6 is a conceptual diagram illustrating a publishing and subscription data flow in a simulation system for supporting distributed / heterogeneous embedded devices according to the present invention.

도 6을 참조하면, 본 발명에 따른 시뮬레이션 시스템은 다수의 임베디드 장치(200,201,202), 시뮬레이터(300), 모니터링 장치(400) 및 전역 데이터베이스(500)로 구성되며, 상기 임베디드 장치들은 시험중인 시스템(200, 201)과 운용중인 시스템(202)이 공존하는 것을 알 수 있다. Referring to FIG. 6, the simulation system according to the present invention includes a plurality of embedded devices 200, 201, 202, a simulator 300, a monitoring device 400, and a global database 500, wherein the embedded devices are under test system 200. 201) and the operating system 202 coexist.

도 6을 참조하면 본 발명에 따른 분산/이종의 임베디드 장치를 지원하기 위한 시뮬레이션 시스템에서의 출판 및 구독 데이터의 흐름은 아래와 같이 설명될 수 있다.Referring to FIG. 6, the flow of publication and subscription data in a simulation system for supporting distributed / heterogeneous embedded devices according to the present invention may be described as follows.

시뮬레이터(300)가 시험 대상이 되는 분산/이종 임베디드 장치들(200, 201, 202)에 제공할 모의데이터를 생성하여, 상기 모의 데이터를 전역 데이터베이스(500)에 출판/구독 미들웨어를 통하여 발행한다. 또한 전역 데이터베이스(500)로부터 출판/구독 미들웨어를 통하여 임베디드 장치들이 제공한 제어 값을 구독하여 자료 생성모듈에 제공된다. The simulator 300 generates mock data to be provided to the distributed / heterogeneous embedded devices 200, 201, and 202 under test, and publishes the mock data to the global database 500 through publish / subscribe middleware. In addition, through the publish / subscribe middleware from the global database 500 is subscribed to the control values provided by the embedded device is provided to the data generation module.

시험 중인 임베디드 장치들(200,201)은 출판/구독 미들웨어를 통하여 전역 데이터베이스(500)로부터 시뮬레이터(300)가 발행한 모의 데이터를 구독한다. 또한 출판/구독 미들웨어를 통하여 전역 데이터베이스(500)로 시뮬레이션과 관련된 제어 데이터를 발행한다.The embedded devices 200 and 201 under test subscribe to the simulation data issued by the simulator 300 from the global database 500 through the publish / subscribe middleware. It also publishes control data related to the simulation to the global database 500 through the publish / subscribe middleware.

운용 중인 임베디드 장치(202)는 감지기를 통하여 감지된 데이터 및 임베디드 소프트웨어 모듈에서 출력되는 제어 데이터를 출판/구독 미들웨어를 통하여 전역 데이터베이스(500)로 발행한다. 또한 출판/구독 미들웨어를 통하여 상기 전역 데이터베이스(500)로부터 모니터링 장치(400) 또는 다른 임베디드 장치에서 제공한 감지데이터 또는 모니터링 제어명령을 구독한다.The embedded device 202 in operation publishes the data sensed through the detector and the control data output from the embedded software module to the global database 500 through the publish / subscribe middleware. It also subscribes to the sensing data or monitoring control commands provided by the monitoring device 400 or other embedded devices from the global database 500 through a publish / subscribe middleware.

모니터링 장치(400)는 운용중인 임베디드 장치(202)에서 제공한 감지기로부터 감지된 데이터 및 제어 데이터를 출판/구독 미들웨어를 통하여 전역 데이터베이스(500)로부터 구독한다. 또한 출판/구독 미들웨어를 통하여 상기 전역 데이터베이스(500)로 모니터링 제어명령을 발행한다.
The monitoring device 400 subscribes the data sensed from the detector provided by the embedded device 202 in operation and the control data from the global database 500 through the publish / subscribe middleware. It also issues a monitoring control command to the global database 500 through a publish / subscribe middleware.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that

Claims (19)

다수의 분산/이종의 임베디드 장치를 지원하기 위한 시뮬레이션 시스템에 있어서,
미리 정의된 특정기능을 수행하기 위한 하나 이상의 출판구독 미들웨어 기반의 임베디드 장치들;
상기 임베디드 장치들을 시뮬레이션하기 위한 출판구독 미들웨어 기반의 시뮬레이터;
상기 임베디드 장치들을 모니터링하는 출판구독 미들웨어 기반의 모니터링 장치; 및
상기 임베디드 장치들이 발행하는 데이터와 상기 시뮬레이터가 발행하는 모의 데이터를 공유하기 위한 전역 데이터베이스를 포함하고,
상기 임베디드 장치들은 각각의 출판구독 미들웨어를 통하여 내부의 데이터를 상기 전역 데이터베이스로 발행하고, 상기 다른 임베디드 장치들, 시뮬레이터 및 모니터링 장치로부터 발행된 데이터를 상기 전역 데이터베이스로부터 구독하고,
상기 시뮬레이터는 자신의 출판구독 미들웨어를 통하여 상기 임베디드 장치들을 시뮬레이션하기 위한 모의데이터를 상기 전역 데이터베이스에 발행하고, 모의 데이터 생성에 필요한 데이터를 상기 전역 데이터베이스로부터 구독하고,
상기 모니터링 장치는 자신의 출판구독 미들웨어를 통하여 상기 전역 데이터베이스로부터 모니터링을 위한 데이터를 구독하고, 상기 전역 데이터베이스로 모니터링 제어 데이터를 발행하는 것을 특징으로 하는 시뮬레이션 시스템.
In a simulation system to support a large number of distributed / heterogeneous embedded devices,
One or more publish middleware-based embedded devices for performing a predefined specific function;
A publishing middleware based simulator for simulating the embedded devices;
A publishing subscription middleware-based monitoring device for monitoring the embedded devices; And
A global database for sharing data issued by the embedded devices and simulation data issued by the simulator;
The embedded devices publish internal data to the global database through respective publish subscription middleware, subscribe to data published from the other embedded devices, simulators and monitoring devices from the global database,
The simulator publishes simulation data for simulating the embedded devices to the global database through its own subscription middleware, and subscribes data necessary for generating simulation data from the global database.
The monitoring apparatus subscribes to the data for monitoring from the global database through its own subscription middleware, and publishes monitoring control data to the global database.
제 1항에 있어서,
상기 시뮬레이터는 하드웨어-인-더-루프방식의 시뮬레이션 방식을 기반으로 하고, 상기 임베디드 장치들에 제공할 모의 데이터를 생성하고, 상기 시뮬레이션의 시작 및 종료와 같은 시뮬레이션 제어명령을 발행하여, 출판구독 미들웨어를 통하여 상기 생성된 모의 데이터 및 시뮬레이션 제어명령을 상기 전역 데이터베이스에 제공하는 것을 특징으로 하는 시뮬레이션 시스템.
The method of claim 1,
The simulator is based on a hardware-in-the-loop simulation method, generates simulation data to be provided to the embedded devices, and issues simulation control commands, such as start and end of the simulation, to publish subscription middleware. The simulation system, characterized in that for providing the generated simulation data and simulation control commands to the global database.
외부 시스템들과 데이터를 공유할 수 있는 시스템 전역 데이터베이스를 이용하여, 다른 임베디드 장치들 및 시뮬레이터와 인터페이스하고, 시스템 운용모드 또는 시험 모드로 동작하는 임베디드 장치에 있어서,
시스템 외부의 변화를 감지하여 감지 데이터를 획득하는 감지기;
상기 전역 데이터베이스로부터 외부 데이터를 획득하고, 시스템 내부에서 전달받은 데이터를 상기 전역 데이터베이스에 제공하는 출판구독 미들웨어 모듈;
상기 감지기 또는 출판구독 미들웨어 모듈에서 획득한 외부 데이터들을 기반으로 미리 정해진 계산을 수행하여 이와 관련된 제어명령을 발행하는 임베디드 소프트웨어 모듈; 및
상기 감지기, 출판구독 미들웨어 모듈 및 임베디드 소프트웨어 모듈간의 인터페이스를 담당하는 시뮬레이션 에이전트를 포함하는 것을 특징으로 하는 임베디드 장치.
In an embedded device operating in a system operation mode or a test mode by interfacing with other embedded devices and simulators using a system-wide database that can share data with external systems,
A detector for detecting a change outside the system to obtain sensing data;
A publish subscription middleware module for acquiring external data from the global database and providing the internal database with data received in the system;
An embedded software module for performing a predetermined calculation based on external data obtained from the detector or a publication subscription middleware module and issuing a control command related thereto; And
Embedded device, characterized in that it comprises a simulation agent that is responsible for the interface between the detector, publish subscription middleware module and embedded software module.
제 3항에 있어서,
상기 임베디드 장치가 운영모드인 경우,
상기 시뮬레이션 에이전트는, 상기 감지기가 획득한 감지 데이터를 상기 임베디드 소프트웨어 모듈에 전달하고,
상기 임베디드 소프트웨어 모듈은 상기 전달받은 감지 데이터를 이용하여 미리 정해진 계산을 수행하여, 관련된 제어명령을 발행하고,
상기 시뮬레이션 에이전트는, 상기 임베디드 소프트웨어 모듈에서 발행된 제어명령을 시스템 외부에 연결된 구동기에 전달하는 것을 특징으로 하는 임베디드 장치.
The method of claim 3, wherein
When the embedded device is in the operation mode,
The simulation agent delivers the sensed data obtained by the detector to the embedded software module,
The embedded software module performs a predetermined calculation by using the received sensed data, and issues an associated control command.
The simulation agent, the embedded device, characterized in that for transmitting a control command issued from the embedded software module to a driver connected to the outside of the system.
제 4항에 있어서,
상기 감지기가 획득한 감지 데이터와 임베디드 소프트웨어 모듈에서 발행된 제어명령은 상기 시뮬레이션 에이전트를 통하여 상기 출판구독 미들웨어로 전달되고,
상기 출판 구독 미들웨어는 상기 전달받은 감지 데이터와 제어명령을 상기 전역 데이터베이스로 전달하는 것을 특징으로 하는 임베디드 장치.
The method of claim 4, wherein
The sensing data obtained by the detector and the control command issued by the embedded software module are transmitted to the publication subscription middleware through the simulation agent.
The publishing subscription middleware is an embedded device, characterized in that for transmitting the received sense data and control commands to the global database.
제 4항에 있어서,
상기 시뮬레이션 에이전트는 상기 출판구독 미들웨어를 통하여 상기 전역 데이터베이스로부터 다른 임베디드 장치의 감지 데이터를 획득하고, 상기 획득된 감지 데이터를 상기 임베디드 소프트웨어 모듈로 전달하고,
상기 임베디드 소프트웨어 모듈은 상기 전달된 감지데이터를 이용하여 미리 정해진 계산을 수행하여, 관련된 제어명령을 발행하는 것을 특징으로 하는 임베디드 장치.
The method of claim 4, wherein
The simulation agent obtains the sensed data of another embedded device from the global database through the publish subscription middleware, transfers the obtained sensed data to the embedded software module,
The embedded software module is configured to perform a predetermined calculation by using the transferred sense data, and issue an associated control command.
제 4항에 있어서,
상기 시뮬레이션 에이전트는 상기 출판구독 미들웨어를 통하여 상기 전역 데이터베이스로부터 임베디드 장치를 모니터링 하는 모니터링 장치가 발행한 모니터링 제어명령을 획득하고, 상기 획득된 제어 명령은 상기 임베디드 소프트웨어 모듈로 전달하고,
상기 임베디드 소프트웨어 모듈은 상기 전달된 모니터링 제어명령을 이용하여 계산을 수행하고, 상기 계산 결과인 제어명령을 발행하는 것을 특징으로 하는 임베디드 장치.
The method of claim 4, wherein
The simulation agent obtains a monitoring control command issued by a monitoring device that monitors an embedded device from the global database through the publish subscription middleware, and transfers the obtained control command to the embedded software module.
The embedded software module performs a calculation using the transferred monitoring control command, and issuing a control command that is a result of the calculation.
제 3항에 있어서,
상기 임베디드 장치가 시험모드인 경우,
상기 시뮬레이션 에이전트는, 상기 출판구독 미들웨어를 통하여 상기 전역데이터베이스로부터 시뮬레이터가 제공한 모의 데이터를 획득하여, 상기 임베디드 소프트웨어 모듈에 전달하고,
상기 임베디드 소프트웨어 모듈은 상기 시뮬레이션 에이전트로부터 전달받은 모의 데이터를 이용하여, 미리 정해진 계산을 수행하여 상기 계산 결과인 제어 명령을 발행하고,
상기 시뮬레이션 에이전트는 상기 발행된 제어명령을 상기 출판구독 미들웨어를 통하여 상기 전역 데이터베이스로 전달하는 것을 특징으로 하는 임베디드 장치.
The method of claim 3, wherein
If the embedded device is in the test mode,
The simulation agent obtains simulation data provided by the simulator from the global database through the publication subscription middleware, and delivers the simulation data to the embedded software module.
The embedded software module performs a predetermined calculation by using the simulation data received from the simulation agent, and issues a control command which is the calculation result.
And the simulation agent transfers the issued control command to the global database through the publish subscription middleware.
제 3항에 있어서,
상기 시뮬레이션 에이전트는 하드웨어-인-더-루프 시뮬레이션을 위한 에이전트인 것을 특징으로 하는 임베디드 장치.
The method of claim 3, wherein
The simulation agent is an agent for hardware-in-the-loop simulation.
임베디드 장치들과 데이터를 공유할 수 있는 시스템 전역 데이터베이스를 이용하여, 하나 이상의 임베디드 장치들을 시뮬레이션하기 위한 시뮬레이터에 있어서,
상기 임베디드 장치들에 제공할 모의 데이터를 생성하는 모의 데이터 생성모듈;
상기 생성된 모의데이터를 상기 전역데이터 베이스에 제공하는 출판구독 미들웨어 모듈을 포함하는 것을 특징으로 하는 시뮬레이터.
In a simulator for simulating one or more embedded devices, using a system-wide database that can share data with embedded devices,
A simulation data generation module for generating simulation data to be provided to the embedded devices;
And a publishing subscription middleware module for providing the generated simulation data to the global database.
제 10항에 있어서,
시뮬레이션의 시작 및 종료와 같은 시뮬레이션 제어명령을 발행하는 시뮬레이션 제어모듈을 더 포함하고, 상기 출판구독 미들웨어는 상기 시뮬레이션 제어명령을 상기 전역데이터 베이스에 제공하는 것을 특징으로 하는 시뮬레이터.
The method of claim 10,
And a simulation control module for issuing a simulation control command, such as start and end of a simulation, wherein the publish subscription middleware provides the simulation control command to the global database.
제 10항에 있어서,
상기 연동가능한 임베디드 장치들의 목록 및 입출력 데이터 형태를 관리하고, 상기 임베디드 장치들의 입출력 형태에 맞추어 상기 모의데이터를 변환하는 데이터 변환모듈을 더 포함하고,
상기 출판구독 미들웨어는 상기 시뮬레이션 제어명령을 상기 전역데이터 베이스에 제공하는 것을 특징으로 하는 시뮬레이터.
The method of claim 10,
And a data conversion module configured to manage the list of the interoperable embedded devices and the input and output data types, and convert the simulation data according to the input and output types of the embedded devices.
The publish subscription middleware provides the simulation control command to the global database.
제 10항에 있어서,
상기 시뮬레이션 방식은 하드웨어-인-더-루프 시뮬레이션 방식인 것을 특징으로 하는 시뮬레이터.
The method of claim 10,
And the simulation scheme is a hardware-in-the-loop simulation scheme.
임베디드 장치들과 데이터를 공유할 수 있는 시스템 전역 데이터베이스를 이용하여 임베디드 장치들을 모니터링하는 시스템에 있어서,
상기 임베디드 장치들이 발행한 데이터를 수집하는 데이터 수집모듈;
상기 수집된 데이터를 이용하여 상기 임베디드 장치들에 대한 모니터링 제어명령을 발행하는 모니터링 제어모듈; 및
상기 전역 데이터베이스로부터 상기 임베디드 장치들이 발행한 데이터를 구독하여 상기 데이터 수집모듈에 제공하고, 상기 모니터링 제어명령을 상기 전역 데이터베이스에 제공하는 출판구독 미들웨어 모듈을 포함하는 것을 특징으로 하는 모니터링 장치.
In a system for monitoring embedded devices using a system-wide database that can share data with embedded devices,
A data collection module for collecting data issued by the embedded devices;
A monitoring control module for issuing a monitoring control command for the embedded devices using the collected data; And
And a publishing subscription middleware module for subscribing data issued by the embedded devices from the global database to the data collection module and providing the monitoring control command to the global database.
제 14항에 있어서,
상기 임베디드 장치들이 발행하는 데이터는 임베디드 장치의 감지기에서 감지한 데이터 및 임베디드 소프트웨어 모듈에서 발행한 제어 명령을 포함하는 것을 특징으로 하는 모니터링 장치.
The method of claim 14,
And the data issued by the embedded devices includes data detected by a detector of an embedded device and control commands issued by an embedded software module.
제 14항에 있어서,
상기 데이터 수집모듈에서 수집한 데이터 및 모니터링 제어명령에 관한 사용자 인터페이스를 제공하는 모니터링 인터페이스 모듈을 더 포함하는 것을 특징으로 하는 모니터링 장치.
The method of claim 14,
And a monitoring interface module for providing a user interface related to the data collected by the data collection module and a monitoring control command.
임베디드 장치들과 데이터를 공유할 수 있는 시스템 전역 데이터베이스를 이용하여, 하나 이상의 임베디드 장치들을 시뮬레이션하기 위한 방법에 있어서,
시뮬레이터에서 상기 임베디드 장치들에 제공할 모의 데이터를 생성하는 단계;
상기 생성된 모의데이터를 상기 임베디드 장치들에 맞추어 변환하는 단계;
상기 변환된 모의데이터를 상기 전역데이터 베이스에 제공하는 단계; 및
상기 임베디드 장치들 중 하나 이상의 임베디드 장치에서 상기 전역 데이터베이스로부터 상기 모의데이터를 획득하는 단계를 포함하는 것을 특징으로 하는 시뮬레이션 방법.
A method for simulating one or more embedded devices using a system-wide database capable of sharing data with embedded devices, the method comprising:
Generating mock data to provide to the embedded devices in a simulator;
Converting the generated simulation data according to the embedded devices;
Providing the transformed simulated data to the global database; And
And obtaining the mock data from the global database in one or more of the embedded devices.
제 17항에 있어서,
상기 시뮬레이션 방법은 하드웨어-인-더-루프 시뮬레이션 방법이고,
상기 시뮬레이터 및 임베디드 장치들은 출판 구독 미들웨어를 기반으로 하는 것을 특징으로 하는 시뮬레이션 방법.
The method of claim 17,
The simulation method is a hardware-in-the-loop simulation method,
And the simulator and the embedded devices are based on a publication subscription middleware.
출판구독 미들웨어 기반의 임베디드 장치들과 데이터를 공유할 수 있는 시스템 전역 데이터베이스를 이용하여, 하나 이상의 임베디드 장치들을 모니터링 하는 방법에 있어서,
출판구독 미들웨어 기반의 모니터링 장치에서 임베디드 장치들이 발행한 감지 데이터 및 제어명령을 수집하는 단계;
상기 수집된 데이터를 이용하여 상기 임베디드 장치들에 대한 모니터링 제어명령을 상기 전역데이터베이스에 발행하는 단계; 및
상기 수집된 데이터 및 모니터링 제어명령을 사용자에게 제공하는 단계를 포함하는 것을 특징으로 하는 임베디드 장치 모니터링 방법
In a method for monitoring one or more embedded devices using a system-wide database that can share data with embedded middleware-based embedded devices,
Collecting sensed data and control commands issued by embedded devices in a publishing subscription middleware based monitoring device;
Issuing a monitoring control command for the embedded devices to the global database using the collected data; And
And providing the collected data and the monitoring control command to a user.
KR1020100125825A 2010-12-09 2010-12-09 Hardware-in-the-loop simulation system and method for distributed embedded devices KR20120064547A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100125825A KR20120064547A (en) 2010-12-09 2010-12-09 Hardware-in-the-loop simulation system and method for distributed embedded devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100125825A KR20120064547A (en) 2010-12-09 2010-12-09 Hardware-in-the-loop simulation system and method for distributed embedded devices

Publications (1)

Publication Number Publication Date
KR20120064547A true KR20120064547A (en) 2012-06-19

Family

ID=46684635

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100125825A KR20120064547A (en) 2010-12-09 2010-12-09 Hardware-in-the-loop simulation system and method for distributed embedded devices

Country Status (1)

Country Link
KR (1) KR20120064547A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101363092B1 (en) * 2012-09-20 2014-02-14 강원대학교산학협력단 Implementation method of rils(robot-in-the-loop simulation) in robot system
US10379983B2 (en) 2013-06-28 2019-08-13 Samsung Electronics Co., Ltd. Simulation device and distribution simulation system
CN112666846A (en) * 2020-12-30 2021-04-16 西安现代控制技术研究所 Multifunctional data communication interface debugging method for simulation system debugging

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101363092B1 (en) * 2012-09-20 2014-02-14 강원대학교산학협력단 Implementation method of rils(robot-in-the-loop simulation) in robot system
US10379983B2 (en) 2013-06-28 2019-08-13 Samsung Electronics Co., Ltd. Simulation device and distribution simulation system
CN112666846A (en) * 2020-12-30 2021-04-16 西安现代控制技术研究所 Multifunctional data communication interface debugging method for simulation system debugging

Similar Documents

Publication Publication Date Title
US20190332514A1 (en) Mobile application interactive user interface for a remote computing device monitoring a test device
CN108803502B (en) Data collection device and system, data server, data collection method, and computer-readable non-volatile recording medium
US20100175012A1 (en) System and Method for Remote Monitoring and Control of Field Device
US10198536B2 (en) Simulation system, method for carrying out a simulation, control system, and computer program product
US20090132060A1 (en) Foundation fieldbus simulation system
CA2631570A1 (en) Arrangement and method for accessing data of a building automation system component
CN102419578A (en) Methods and apparatus to display process control device information
RU2632910C2 (en) Informational control system of aircrafts
US8732586B2 (en) Complex system function status diagnosis and presentation
US20140172402A1 (en) Simulation system, method for carrying out a simulation, guidance system, and computer program product
KR20120064547A (en) Hardware-in-the-loop simulation system and method for distributed embedded devices
US8204608B2 (en) Monitoring and control apparatus
Das et al. Data-logging and supervisory control in wireless sensor networks
US20140222408A1 (en) Simulation system, method of carrying out a simulation, guidance system and computer program product
US20210216047A1 (en) Control system, support device, and storage medium
JP2010157103A (en) Verification system and operation verification apparatus
Dietrich et al. Visualization of robot's awareness and perception
CN111327671B (en) Hardware and software communication system for sensor signal monitoring in process automation technology
Galeas et al. EtherCAT as an alternative for the next generation real-time control system for telescopes
JP2019120998A (en) Control system and control unit
Rajabzadeh et al. A generic model for smart house remote control systems with software and hardware simulators
Bruce-Boye et al. Distributed data acquisition and control via software bus
Weichinger A nonlinear model-based control realized with an open framework for educational purposes
CN103518164A (en) Method for operating an automation system
KR101161309B1 (en) Simulation Processing System for AI Robotics

Legal Events

Date Code Title Description
A201 Request for examination