KR101880808B1 - 위성 운영 시뮬레이션 제어 장치 및 방법 - Google Patents

위성 운영 시뮬레이션 제어 장치 및 방법 Download PDF

Info

Publication number
KR101880808B1
KR101880808B1 KR1020160120678A KR20160120678A KR101880808B1 KR 101880808 B1 KR101880808 B1 KR 101880808B1 KR 1020160120678 A KR1020160120678 A KR 1020160120678A KR 20160120678 A KR20160120678 A KR 20160120678A KR 101880808 B1 KR101880808 B1 KR 101880808B1
Authority
KR
South Korea
Prior art keywords
measurement
measurement data
value
script
code
Prior art date
Application number
KR1020160120678A
Other languages
English (en)
Other versions
KR20180032033A (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 KR1020160120678A priority Critical patent/KR101880808B1/ko
Publication of KR20180032033A publication Critical patent/KR20180032033A/ko
Application granted granted Critical
Publication of KR101880808B1 publication Critical patent/KR101880808B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B9/00Simulators for teaching or training purposes
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B9/00Simulators for teaching or training purposes
    • G09B9/02Simulators for teaching or training purposes for teaching control of vehicles or other craft
    • G09B9/52Simulators for teaching or training purposes for teaching control of vehicles or other craft for teaching control of an outer space vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/14Relay systems
    • H04B7/15Active relay systems
    • H04B7/185Space-based or airborne stations; Stations for satellite systems
    • H04B7/1851Systems using a satellite or space-based relay
    • H04B7/18519Operations control, administration or maintenance

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Astronomy & Astrophysics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Selective Calling Equipment (AREA)

Abstract

시나리오에 기반하여 위성의 원격 측정 데이터에 대한 시뮬레이션을 제어하는 위성 운영 시뮬레이션 제어 장치가 제공된다. 상기 장치는: 사용자 인터페이스로부터 입력된 제1 스크립트에 연관되는 적어도 하나의 제1 명령어를 실행하는 실행부, 및 미리 지정된 주기에 따라 상기 제1 명령어에 대응하여 설정되는 구동환경에서의 적어도 하나의 제1 측정 데이터를 생성하는 처리부를 포함할 수 있다.

Description

위성 운영 시뮬레이션 제어 장치 및 방법{APPARATUS AND METHOD FOR CONTROLLING SIMULATION OF SATELLITE OPERATION}
위성 운영 시뮬레이션 제어 기술에 연관되며, 보다 상세하게는 시나리오에 기반하여 위성의 원격 측정 데이터에 대한 시뮬레이션을 제어하는 장치 및 제어 방법에 연관된다.
위성과 같은 대형 운영 시스템의 경우, 초기 운영 리허설이나 운영자 교육 등을 위해 시뮬레이터가 사용되는 것이 일반적이다. 시뮬레이터가 아닌 실제 시스템을 사용하여 리허설이나 교육을 실시한다면, 시스템이 직접 위험에 노출되는 상황이 발생할 수 있기 때문이다. 다만, 대형 운영 시스템에 적용되는 시뮬레이터는 시스템 자체의 복잡한 모델링 과정뿐만 아니라, 시스템이 운영되는 다양하고 복잡한 환경조건이 고려되어야 하며, 이로 인해 시스템 시뮬레이션을 위한 모델링과 검증에 소요되는 비용 및 시간이 커질 수밖에 없다.
또한, 시스템의 초기 운영 리허설이나 운영자 교육을 위해서는 여러 상황들을 가정한 시나리오가 필요하지만, 복잡한 시스템과 환경조건으로 인해 다양한 시나리오를 개발하여 검증하는 데 어려움이 있다.
이러한 한계를 보완하여 시스템 시뮬레이션 과정의 복잡도와 시뮬레이션을 위한 모델링 및 검증에 필요한 비용을 낮추기 위해서는, 복잡한 대형 시스템 전체에 대해 모델링 하지 않고 운영자 인터페이스가 시스템에 직접 연결되는 부분에 대해서만 시뮬레이션을 수행하도록 하는 기술이 요구된다.
일측에 따르면, 시나리오에 기반하여 위성의 원격 측정 데이터에 대한 시뮬레이션을 제어하는 위성 운영 시뮬레이션 제어 장치가 제공된다. 상기 장치는: 사용자 인터페이스로부터 입력된 제1 스크립트에 연관되는 적어도 하나의 제1 명령어를 실행하는 실행부, 및 미리 지정된 주기에 따라 상기 제1 명령어에 대응하여 설정되는 구동환경에서의 적어도 하나의 제1 측정 데이터를 생성하는 처리부를 포함할 수 있다.
일실시예에 따르면, 상기 처리부는: 실행부에 의해 제어되는 설정 시간에 기초하여 상기 미리 지정된 주기를 결정할 수 있다.
또한, 상기 처리부는: 상기 적어도 하나의 제1 측정 데이터를 미리 지정된 순서에 따라 패킷으로 구성하여 반복 출력할 수 있다.
일실시예에 따르면, 상기 처리부는: 실행되는 스크립트 별로 상기 제1 측정 데이터를 관리할 수도 있다.
일실시예에 따르면, 상기 장치는: 상기 구동환경에서의 제1 측정 데이터가 저장된 데이터베이스를 관리하는 관리부를 더 포함하며, 상기 처리부는, 상기 데이터베이스로부터 상기 제1 명령어에 대응하는 상기 제1 측정 데이터를 로딩한다.
여기서, 상기 데이터베이스는: 상기 구동환경에서 생성되는 측정 데이터의 종류별로 부여되는 측정 코드 및 상기 측정 코드에 대응하는 값을 저장할 수 있다.
일실시예에 따르면, 상기 데이터베이스는 상기 측정 코드마다 설정되는 규칙을 저장하는 전체 리스트 데이터베이스(Total value List DB), 설정 가능한 규칙 별 데이터 특성이 정의된 규칙 테이블(Rule Table), 상기 측정 코드 중 고정된 값이 정의된 코드의 값을 저장하는 정적 데이터베이스(Static DB), 상기 측정 코드 중 시간함수에 의해 정의되는 코드의 값을 저장하는 가변 데이터베이스(Variable DB) 및 구동환경 별 로딩할 데이터가 정의된 패킷 리스트 데이터베이스(Packet List DB) 중 적어도 하나를 포함한다.
다른 일측에 따르면, 시나리오에 기반하여 위성의 원격 측정 데이터에 대한 시뮬레이션을 제어하는 방법이 제공된다. 상기 방법은: 사용자 인터페이스로부터 입력된 제1 스크립트에 연관되는 적어도 하나의 제1 명령어를 실행하는 단계, 및 미리 지정된 주기에 따라 상기 제1 명령어에 대응하여 설정되는 구동환경에서의 적어도 하나의 제1 측정 데이터를 생성하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 제1 측정 데이터를 생성하는 단계는: 상기 적어도 하나의 제1 측정 데이터를 미리 지정된 순서에 따라 패킷으로 구성하여 반복 출력하는 단계를 포함할 수 있다.
일실시예에 따르면, 상기 제1 측정 데이터를 생성하는 단계는: 상기 구동환경에서의 제1 측정 데이터가 저장된 데이터베이스로부터 상기 제1 명령어에 대응하는 상기 제1 측정 데이터를 로딩한다.
또한, 상기 데이터베이스는, 상기 구동환경에서 생성되는 측정 데이터의 종류별로 부여되는 측정 코드 및 상기 측정 코드에 대응하는 값을 저장할 수 있다.
일실시예에 따르면, 상기 데이터베이스는: 상기 측정 코드마다 설정되는 규칙을 저장하는 전체 리스트 데이터베이스(Total value List DB), 설정 가능한 규칙 별 데이터 특성이 정의된 규칙 테이블(Rule Table), 상기 측정 코드 중 고정된 값이 정의된 코드의 값을 저장하는 정적 데이터베이스(Static DB), 상기 측정 코드 중 시간함수에 의해 정의되는 코드의 값을 저장하는 가변 데이터베이스(Variable DB) 및 구동환경 별 로딩할 데이터가 정의된 패킷 리스트 데이터베이스(Packet List DB) 중 적어도 하나를 포함한다.
도 1은 일반적인 대형 운영 시스템의 시뮬레이터 구조 및 실행 방식을 설명하는 도면이다.
도 2는 일실시예에 따른 위성 운영 시뮬레이션 제어 장치를 도시하는 블록도이다.
도 3은 일실시예에 따라 입력 스크립트에 기반하여 운영되는 시뮬레이션 제어 장치의 세부 구조를 설명하는 도면이다.
도 4는 일실시예에 따라 운영 스크립트에 대응하는 측정 데이터의 생성 과정을 설명하는 도면이다.
도 5는 일실시예에 따라 운영 스크립트에 대응하여 실행되는 제어 명령을 설명하는 도면이다.
도 6은 일실시예에 따른 위성 운영 시뮬레이션 제어 방법을 도시하는 흐름도이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.
본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시예들을 특정한 개시형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만, 예를 들어 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 "~사이에"와 "바로~사이에" 또는 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일반적인 대형 운영 시스템의 시뮬레이터 구조 및 실행 방식을 설명하는 도면으로, 도 1a는 대형 운영 시스템의 시뮬레이션을 수행하는 시뮬레이터의 구조를, 도 1b는 시뮬레이션 수행 과정에서 조작되는 운영자 인터페이스를 각각 나타낸다.
일반적으로 대형 운영 시스템의 동작 리허설이나 운영자 교육을 위해 적용되는 시뮬레이터를 구현하기 위해서는, 시스템 자체의 복잡성뿐만 아니라 시스템이 운영되는 환경 조건이 고려되어야 한다. 또한, 시뮬레이션 구현을 위해서는 시뮬레이션을 통해 시험 또는 교육하고자 하는 기능에 대한 시나리오 개발과 이에 기반한 모델링 작업이 필요하며, 이 과정에서 시스템 및 환경 조건에 대한 시뮬레이터 설계자나 시나리오 개발자의 폭넓은 이해가 요구된다. 그러나, 실제 위성 운영에 이용되는 기능이나 데이터 스트림은 복잡한 계산식에 기반하여 작성되기 때문에, 시뮬레이션 모델링 과정 또한 복잡하고 그 구현이 쉽지 않다.
도 1a에 도시된 시뮬레이터는 운영자가 검증하고자 하는 기능에 대한 시나리오나 이에 연관되는 제어 명령이 입력되는 GUI(110), 시스템 시뮬레이션 과정에서 요구되는 기능들을 수행하는 코어 모듈(120), 및 모델링 모듈(130)을 포함한다. 도 1a에서 실선으로 표시된 블록들은 상기 시뮬레이터 구현 시 필수적으로 요구되는 기본 기능을 제공하는 코어 컴포넌트이고, 점선으로 표시된 블록들은 시뮬레이션 목적에 따라 운영자(또는 설계자)가 구성 가능한 컴포넌트로 각각 이해될 수 있다. GUI(110)는 시뮬레이션 과정에서 운영자와의 통신을 지원하는 MMI(Multi Modal Interface, 111) 외에, 시스템 외부의 다른 프로그램과의 연동을 제공하는 외부 어플리케이션(External Application, 112), 수행되는 시뮬레이션의 특성에 따라 보다 다양한 인터페이스를 제공하는 미션 특정 MMI(Mission Specific MMIs, 113) 및 SAT3D(114)를 포함할 수 있다. 코어 모듈(120)은 시스템에 대한 시뮬레이션 수행 시 필요한 스케줄/시간/데이터/파일 관리와 같은 기본 기능들을 제공하는 스케줄러(Scheduler, 121), 로거(Logger, 122), 타임키퍼(Time Keeper, 123), 스크립트 호스트(Script Host, 124) 및 데이터 프로바이더(Data Provider, 125)와, 위성의 원격 측정을 위해 구성된 모델링 모듈과의 연동을 위한 스페이스크래프트 SMI 어댑터(Spacecraft SMI Adapter, 126) 및 그라운드 SMI 어댑터(Ground SMI Adapter)를 포함할 수 있다. 모델링 모듈(130)은 시뮬레이션 대상인 위성 특성에 적합하도록 구현되는 부분으로서, 미션 특정 스페이스크래프트 모델(Mission Specific Spacecraft Models, 131), 에뮬레이터(Emulators, 132), 센스(SENSE, 133), 펨(PEM, 134), 심팩(SIMPACK, 135) 및 ESA 그라운드 모델(European Space Agency Ground Models, 136) 등을 포함할 수 있다. 도 1a와 같이 위성 시스템에 대한 시뮬레이터를 구현하기 위해서는 시스템 전반과 시스템이 운영되는 환경 조건에 대한 운영자 및 설계자의 지식 습득이 선행되어야 하며, 시뮬레이션 과정에서 연동되는 연계 시스템이나 기능에 대한 모델링 작업 또한 수행되어야 하기 때문에, 시뮬레이터 구현 과정에서의 시간 및 비용이 많이 소요될 수밖에 없다.
또한, 도 1a와 같이 시뮬레이터를 구현하더라도, 실제 위성 운영에 이용되는 기능이나 데이터 스트림의 시험 검증을 위해서는 복잡한 계산식을 바탕으로 운영 시나리오나 제어 명령이 입력되어야 하기 때문에, 운영자의 제어 명령 입력과 데이터 출력이 제공되는 운영자 인터페이스 또한 도 1b와 같이 복잡해질 수밖에 없다.
도 2는 일실시예에 따른 위성 운영 시뮬레이션 제어 장치(200)를 도시하는 블록도이다.
위성 운영 시뮬레이션 제어 장치(200)는 위성과 같은 대형 운영 시스템의 원격 측정 기능에 대한 시뮬레이션을 제어하는 수단으로, 복잡한 대형 운영 시스템 전체에 대해 모델링 하지 않고 운영자 인터페이스가 시스템에 직접 연결되는 부분에 대해서만 시뮬레이션이 수행되도록 하여 시스템 시뮬레이션 과정의 복잡도와 시뮬레이션을 위한 모델링 및 검증에 필요한 비용을 감소시킬 수 있다. 상기 위성 운영 시뮬레이션 제어 장치(200)는 실행부(210), 처리부(220) 및 관리부(230)를 포함할 수 있다. 다만, 관리부(230)는 선택적인(optional) 구성으로서, 일부 실시예에서는 상기 관리부가 생략될 수도 있다.
먼저, 실행부(210)는 사용자 인터페이스로부터 입력된 제1 스크립트에 연관되는 적어도 하나의 제1 명령어를 실행할 수 있다. 여기서, 상기 제1 스크립트는 실제 위성 운영 시 발생 가능한 다양한 상황들을 모사하기 위한 시나리오로서, 사용자가 시험 검증하고자 하는 기능이나 상황들에 대응하도록 설계되어 이상 상황에 대비할 수 있다. 상기 제1 명령어는 상기 제1 스크립트에 대응하는 시스템 및 환경 조건을 설정하기 위한 제어 명령으로 이해될 수 있으며, 이는 상기 제1 스크립트에서 모사하는 상황에 부합하도록 사전에 미리 구현된다. 이를 테면, 태양 전력 생산이 잘 되지 않는 상황을 모사하기 위해서는, 태양이 잘 보이지 않는 조건을 설정하도록 데이터를 조정하여 태양 전지판에서의 전력 생산을 낮출 수 있으며, 이를 위한 제어 명령이 입력될 수 있다.
처리부(220)는 미리 지정된 주기에 따라 상기 제1 명령어에 대응하여 설정되는 구동환경에서의 적어도 하나의 제1 측정 데이터를 생성할 수 있다. 이 때, 처리부(220)는 상기 실행부(210)에 의해 제어되는 설정 시간에 기초하여 상기 미리 지정된 주기를 결정할 수 있다. 또한, 상기 처리부(220)는 상기 적어도 하나의 제1 측정 데이터를 미리 지정된 순서에 따라 패킷으로 구성하여 반복적으로 출력하며, 실행되는 스크립트 별로 상기 제1 측정 데이터(또는 상기 출력되는 패킷)를 분류하여 관리할 수 있다. 상기 처리부(220)는 상기 제1 측정 데이터가 저장된 데이터베이스로부터 상기 제1 명령어에 대응하는 데이터를 로딩하는 방식으로, 상기 제1 측정 데이터를 생성한다.
관리부(230)는 상기 제1 스크립트에 대응하여 설정된 구동환경에서의 상기 제1 측정 데이터가 저장된 데이터베이스를 관리한다. 이 때, 상기 데이터베이스는 상기 구동환경에서 생성되는 측정 데이터의 종류별로 부여되는 측정 코드 및 상기 측정 코드에 대응하는 값을 저장하며, 전체 리스트 데이터베이스(Total value List DB), 규칙 테이블(Rule Table), 정적 데이터베이스(Static DB), 가변 데이터베이스(Variable DB) 및 패킷 리스트 데이터베이스(Packet List DB) 중 적어도 하나를 포함할 수 있다. 상기 전체 리스트 데이터베이스는 상기 측정 코드마다 설정되는 규칙을 저장하고, 상기 규칙 테이블은 설정 가능한 규칙 별 데이터 특성을 정의한다. 또한, 상기 정적 데이터베이스는 상기 측정 코드 중 고정된 값이 정의된 코드의 값을 저장하고, 상기 가변 데이터베이스는 상기 측정 코드 중 시간함수에 의해 정의되는 코드의 값을 저장하며, 상기 패킷 리스트 데이터베이스는 구동환경 별 로딩할 데이터를 정의할 수 있다. 상기 데이터베이스의 종류나 구성 관계는 일실시예에 불과하며, 시뮬레이션의 목적이나 구현 방식에 따라 다양한 방식으로 구성될 수 있다.
위성 운영 시뮬레이션 제어 장치(200)는 대형 시스템 전체에 대해 모델링 하지 않고 운영자 인터페이스가 시스템과 직접 연결되는 부분에 대해서만 시뮬레이션이 수행되도록 구현함으로써, 시뮬레이션 과정의 복잡도를 낮추고, 시스템 전반과 시스템이 운영되는 환경 조건에 대한 지식 습득이나 복잡한 계산식에 대한 이해 없이도 다양한 상황들에 대응하는 데이터 측정 및 시험 검증이 가능해진다. 나아가, 위성 운영 시뮬레이션 제어 장치(200)는 시뮬레이션을 위한 모델링 및 검증에 소요되는 시간과 비용을 크게 낮출 수도 있다.
도 3은 일실시예에 따라 입력 스크립트에 기반하여 운영되는 시뮬레이션 제어 장치의 세부 구조를 설명하는 도면이다.
도 3에 도시된 스크립트 기반 시뮬레이션 제어 장치(300)는 사용자로부터 입력받은 스크립트에 기반하여 위성의 원격측정에 관한 시뮬레이션 과정을 제어하는 장치이며, 크게 운영 인터페이스(310), 원격 측정 데이터 빌더(320) 및 테이블 관리부(330)를 포함하여 구성될 수 있다. 도 3에서, CMD(Command)는 운영 스크립트의 실행에 따라 생성 및 실행되는 명령이고, TLM(Telemetry)는 상기 운영 스크립트 및 상기 명령의 실행 결과 생성되는 원격측정 데이터를 의미한다.
운영 인터페이스(310)는 시뮬레이션 과정에서 사용자가 시험 검증하고자 하는 기능이나 상황이 모사된 스크립트나 사용자의 제어명령을 입력받는 등 사용자와의 통신 기능을 제공하는 수단으로, 상기 시뮬레이션 제어 장치(300)가 운영자 교육을 위해 이용되는 경우에는 운영 트레이닝 툴로 활용될 수 있다. 상기 운영 인터페이스(310)는 입력된 운영 스크립트의 편집(311) 및 실행(312)을 수행하며, 상기 운영 스크립트가 실행되면 실행된 스크립트에 연관되는 적어도 하나의 제어명령이 원격 측정 데이터 빌더(320)로 전달된다.
원격 측정 데이터 빌더(320)는 상기 운영 인터페이스(310)에 의해 제어되는 시스템 시간에 기초하여 미리 지정된 일정 주기 또는 이벤트에 따라 위성의 원격 측정 데이터를 생성하고, 상기 생성된 원격 측정 데이터의 값을 운영 스크립트 별로 관리한다. 원격 측정 데이터 빌더(320)에 대해서는 도 4를 참조하여 상세히 설명한다.
도 4는 일실시예에 따라 원격 측정 데이터 빌더(400)가 운영 스크립트에 대응하는 측정 데이터를 생성하는 과정을 설명하는 도면이다.
원격 측정 데이터 빌더(400)는 운용 인터페이스로부터 입력된 스크립트와 이에 연관되는 제어명령이 실행되면, 원격 측정 데이터를 생성한다. 상기 생성된 원격 측정 데이터는 원격 측정 데이터 빌더(400)의 OBT 클락(401)에 기초하여 일정 주기마다 프레임으로 생성될 수도 있다. 상기 원격 측정 데이터 빌더(400)는 각 구동환경에서의 측정 데이터 종류별로 부여되는 측정 코드와 이에 대응하는 값 등을 저장한 데이터베이스로부터 데이터를 로딩하는 방식으로 상기 원격 측정 데이터를 생성할 수 있다.
도 4를 참조하면, 전체 리스트(410)에서는 원격 측정 데이터마다 부여되는 측정 코드(TLM Mnemonic) 별로 설정되는 규칙을 정의하고, 상기 규칙은 규칙 테이블(430)에 의해 정의된다. 상기 규칙 테이블(430)은 설정 가능한 규칙 별 데이터 특성을 정의하고 있는데, 이는 아래 표 1과 같이 설명될 수 있다.
Figure 112016091500972-pat00001
전체 리스트(410)에서 측정 코드 별로 설정된 규칙에 따라, 상기 원격 측정 데이터는 정적 DB(420), 가변 DB(440), 사용자 지정 함수나 스크립트, 사용자 로딩 파일 및 위성 시스템의 플레이백 값 중 적어도 하나로부터 로딩되어 생성된다. 정적 DB(420)는 상기 측정 코드 중 고정된 값이 정의된 코드의 값을 저장하고, 가변 DB(440)는 상기 측정 코드 중 시간함수에 의해 정의되는 코드의 값을 저장한다.
이외에, 패킷 리스트 데이터베이스(미도시)는 구동환경 별 로딩할 데이터나 일정 주기마다 프레임으로 전송될 패킷의 순서 등을 정의하고, Freeze 값 리스트(450)는 운영 스크립트에 연관되는 제어명령 중 *Freeze 명령에 의해 일시적으로 정의되는 코드의 값을 임시 저장할 수 있다. *Freeze는 특정 측정 코드의 값을 일정 시간 동안 특정 값으로 고정시키는 명령어로, 일정 시간 경과 후 상기 고정된 값은 해제된다. 다만, 일정 시간이 경과되지 않더라도, *Melt 명령이 실행되면 *Freeze에 의해 임시 저장된 값은 즉시 초기화되어 리셋된다. *Freeze 및 *Melt 제어 명령에 대해서는 아래 도 5를 참조하여 상세히 설명한다.
공유메모리(460)에는 구동 환경에서 생성되는 프레임에 포함될 측정 데이터의 측정 코드와 이에 대응하는 값, 및 비트 사이즈 값 등이 할당된다. 상기 측정 코드에 대응하는 값은 상기 전체 리스트(410)나 상기 Freeze 값 리스트로부터 가져올 수 있다. 이를 테면, 공유메모리(460)에서 가져오려는 측정 코드의 값이 전체 리스트(410)에 '0'의 규칙 값으로 정의되어 있으면, 이는 고정된 값이 정의된 것을 의미하므로, 정적 DB(420)에 저장된 값을 로딩하게 된다. 마찬가지로, 공유메모리(460)에서 가져오려는 측정 코드의 값이 시간함수에 의해 가변적으로 정의되는 값이라는 의미의 규칙 값인 '1'로 전체 리스트(410)에 정의되어 있으면, 해당 측정 코드의 값은 가변 DB(440)에 저장된 값을 로딩한다. 다만, 예외적으로 *Freeze 명령에 의해 일시적으로 정의되는 코드의 값이 있다면, *Freeze 명령과 함께 입력된 일정 시간 동안에는 전체 리스트(410)가 아닌 Freeze 값 리스트(450)로부터 해당 값을 가져온다.
상기 공유메모리(460)로부터 로딩된 값들은 프레임으로 구성되어 일정 주기마다 생성(470)될 수 있다. 프레임의 각 바이트 위치에 할당되는 측정 코드 값은 운영 스크립트에 따라 설정된 구동환경에 로딩되는 패킷 리스트 데이터베이스나 미리 지정된 패킷 시퀀스에 의해 정의된다.
다시 도 3을 참조하면, 테이블 관리부(330)는 상기 원격 측정 데이터 빌더(320, 400)의 원격 측정 데이터 생성 과정에서 참조되는 적어도 하나의 데이터베이스나 리스트, 테이블 등을 관리한다. 상기 테이블 관리부(330)에서는 정적 DB 및 가변 DB의 내용을 편집/관리하는 외에, 사용자가 로딩한 파일이나 시스템의 플레이백 데이터(playback data)를 로딩하고, 운영 스크립트에 대한 시뮬레이션 과정에서 송수신되는 명령(CMD), 원격측정 데이터(TLM) 및 패킷들을 시뮬레이션 시스템의 데이터베이스에 로딩하는 역할을 수행할 수 있다.
도 5는 일실시예에 따라 운영 스크립트에 대응하여 실행되는 제어 명령을 설명하는 도면이다.
시스템에 대한 시뮬레이션에 이용되는 운영 스크립트는 실제 위성과 같은 시스템 운영 시 발생 가능한 다양한 상황들을 모사하는 시나리오로서, 사용자가 시험 검증하고자 하는 기능이나 상황들에 대응하도록 작성된다. 사용자 인터페이스를 통해 특정 스크립트가 입력되면, 상기 특정 스크립트에 대응하여 작성된 제어 명령들이 순차적으로 실행되며, 이는 상기 스크립트에서 모사하는 상황에 부합하도록 사전에 미리 구현될 수 있다.
도 5를 참조하면, 상기 운영 스크립트에 대응하여 실행되는 제어 명령 중 대표적인 2가지 문법을 확인할 수 있다. 먼저, *Freeze는 특정 측정 데이터를 일정 시간 동안 특정 값으로 고정시키는 명령어이다. 510과 같이 <*Freeze "TASTATUS1", "10sec", "OFF">의 명령이 실행되면, "TASTATUS1"의 값이 10초 동안 'OFF'로 시현되도록 조정된다. *Freeze 명령어는 도 4에 도시된 'Freeze 값 리스트'(450)과 같이 별도로 관리되는 리스트(또는 데이터베이스)에 특정 측정 데이터와 이에 대응하는 특정 값을 신규 추가하는 방식으로 정의되며, 시뮬레이션 과정에서 공유메모리(460)에 기록되는 특정 측정 데이터의 값을 전체 리스트(410)가 아닌 Freeze 값 리스트(450)에서 가져오도록 값의 설정 경로를 일시적으로 변경하는 기능을 가진다. *Freeze 명령어 실행 시 입력된 시간이 경과하면, 상기 특정 측정 데이터의 값은 다시 전체 리스트(410)로부터 가져오게 된다.
이에 반해, *Melt는 앞서 *Freeze에 의해 고정된 특정 측정 값을 즉시 초기화하는 명령어이다. 530과 같이 <*Melt "TASTATUS1">의 명령이 실행되면, 510에서 *Freeze 명령어에 의해 고정된 특정 측정 데이터에 대한 특정 값이 삭제되고, *Freeze 명령 실행 이전과 같이 리셋된다. *Melt 명령어는 상기 Freeze 값 리스트(450)에 저장된 특정 측정 데이터와 이에 대응하는 특정 값을 삭제하는 방식으로 정의되며, *Freeze 명령어 실행 시 입력된 시간이 모두 경과하지 않더라도 상기 공유메모리(460)에 기록되는 특정 측정 데이터의 값을 다시 전체 리스트(410)에서 가져오도록 값의 설정 경로를 변경하는 기능을 가진다.
도 5에서, <*Freeze "TASTATUS1", "10sec", "OFF"> (510)의 명령이 실행되면 10초간 "TASTATUS1"의 값이 "OFF"로 설정되는데, 이후 10초가 경과하기 전에 "TASTATUS1"의 값이 "ON"인지를 확인하는 <Verify TLM "TASTATUS1" "ON"> (520) 명령어가 입력되면 이는 현재 설정된 "TASTATUS1"의 값과 다르므로 "Verify FAIL"로 표시된다. 다만, <*Melt "TASTATUS1"> (530)의 명령이 추가 실행되면 앞서 "TASTATUS1"에 대해 고정된 값이 초기화되면서, 이후 "TASTATUS1"의 값이 "ON"인지를 확인하는 <Verify TLM "TASTATUS1" "ON"> (540) 명령어가 입력되면 이는 현재 설정된 "TASTATUS1"의 값과 동일하므로 "Verify OK"가 표시된다.
상술한 2가지 문법 외에, 시뮬레이션 과정에서 시스템의 설정 값을 변경하기 위한 다양한 제어 명령이 추가 구현될 수 있다. 이를 테면, 명령어 승인 카운터 값을 설정하는 *SET ACCEPT Counter, 명령어 거절 카운터 값을 설정하는 *SET REJECT Counter, 명령어 거절 카운터 값을 1 증가시키는 *SET REJECT Counter Increase 명령이 이용된다. 이외에도, 운영 스크립트 실행 시 시스템 설정 시간이 일정 크기만큼 증가하도록 제어하는 "System Time Control" 명령이 추가될 수 있으며, 이 명령을 통해 운영 스크립트에서 시스템 설정 시간을 특정 시간으로 선언할 경우 상기 특정 시간을 기준으로 일정 크기만큼 증가(이를 테면, 현재 시스템 설정 시간 + 시간 조정 값)하도록 조정된다.
도 6은 일실시예에 따른 위성 운영 시뮬레이션 제어 방법을 도시하는 흐름도이다.
위성 운영 시뮬레이션 제어 장치는 시험 검증하고자 하는 상황에 대해 미리 작성된 시나리오에 기반하여 위성과 같은 대형 운영 시스템의 원격 측정 기능에 대한 시뮬레이션을 제어하는 방법을 제공한다.
단계 610에서는, 위성 운영 시뮬레이션 제어 장치의 실행부가 사용자 인터페이스로부터 입력된 제1 스크립트에 연관되는 적어도 하나의 제1 명령어를 실행할 수 있다. 여기서, 상기 제1 스크립트는 실제 위성 운영 시 발생 가능한 다양한 상황들을 모사하기 위한 시나리오이고, 상기 제1 명령어는 상기 제1 스크립트에 대응하는 시스템 및 환경 조건을 설정하기 위한 제어 명령으로, 상기 제1 명령어는 상기 제1 스크립트에서 모사하는 상황에 부합하도록 사전에 미리 구현될 수 있다.
단계 620에서는, 위성 운영 시뮬레이션 제어 장치의 처리부가 미리 지정된 주기에 따라 상기 제1 명령어에 대응하여 설정되는 구동환경에서의 적어도 하나의 제1 측정 데이터를 생성할 수 있다. 단계 620에서, 상기 처리부는 상기 실행부에 의해 제어되는 설정 시간에 기초하여 상기 미리 지정된 주기를 결정할 수 있다. 또한, 상기 처리부는 상기 적어도 하나의 제1 측정 데이터를 미리 지정된 순서에 따라 패킷으로 구성하여 반복적으로 출력하며, 실행되는 스크립트 별로 상기 제1 측정 데이터(또는 상기 출력되는 패킷)를 분류하여 관리할 수 있다.
단계 620에서, 상기 처리부는 상기 제1 스크립트에 대응하여 설정되는 구동환경에서의 측정 데이터가 저장된 데이터베이스로부터 상기 제1 명령어에 대응하는 데이터를 로딩하는 방식으로 상기 제1 측정 데이터를 생성하는데, 상기 데이터베이스는 위성 운영 시뮬레이션 제어 장치의 관리부에 의해 관리될 수 있다. 여기서, 상기 데이터베이스는 상기 구동환경에서 생성되는 측정 데이터의 종류별로 부여되는 측정 코드 및 상기 측정 코드에 대응하는 값을 저장하며, 전체 리스트 데이터베이스(Total value List DB), 규칙 테이블(Rule Table), 정적 데이터베이스(Static DB), 가변 데이터베이스(Variable DB) 및 패킷 리스트 데이터베이스(Packet List DB) 중 적어도 하나를 포함할 수 있다. 상기 전체 리스트 데이터베이스는 상기 측정 코드마다 설정되는 규칙을 저장하고, 상기 규칙 테이블은 설정 가능한 규칙 별 데이터 특성을 정의한다. 또한, 상기 정적 데이터베이스는 상기 측정 코드 중 고정된 값이 정의된 코드의 값을 저장하고, 상기 가변 데이터베이스는 상기 측정 코드 중 시간함수에 의해 정의되는 코드의 값을 저장하며, 상기 패킷 리스트 데이터베이스는 구동환경 별 로딩할 데이터를 정의할 수 있다. 상기 데이터베이스의 종류나 구성 관계는 일실시예에 불과하며, 시뮬레이션의 목적이나 구현 방식에 따라 다양한 방식으로 구성 가능하다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (14)

  1. 사용자 인터페이스로부터 입력된 제1 스크립트에 연관되는 적어도 하나의 제1 명령어를 실행하는 실행부; 및
    미리 지정된 주기에 따라 상기 제1 명령어에 대응하여 설정되는 구동환경에서의 적어도 하나의 제1 측정 데이터를 생성하는 처리부
    를 포함하고,
    상기 제1 스크립트는 실제 위성 운영 시 발생 가능한 다양한 상황들을 모사하기 위한 시나리오이고,
    상기 제1 명령어는 상기 제1 스크립트에 대응하는 시스템 및 환경 조건을 설정하기 위한 제어 명령인, 위성 운영 시뮬레이션 제어 장치.
  2. 제1항에 있어서,
    상기 처리부는,
    상기 실행부에 의해 제어되는 설정 시간에 기초하여 상기 미리 지정된 주기를 결정하는 위성 운영 시뮬레이션 제어 장치.
  3. 제1항에 있어서,
    상기 처리부는,
    상기 적어도 하나의 제1 측정 데이터를 미리 지정된 순서에 따라 패킷으로 구성하여 반복 출력하는 위성 운영 시뮬레이션 제어 장치.
  4. 제1항에 있어서,
    상기 처리부는,
    실행되는 스크립트 별로 상기 제1 측정 데이터를 관리하는 위성 운영 시뮬레이션 제어 장치.
  5. 제1항에 있어서,
    상기 구동환경에서의 제1 측정 데이터가 저장된 데이터베이스를 관리하는 관리부
    를 더 포함하며,
    상기 처리부는, 상기 데이터베이스로부터 상기 제1 명령어에 대응하는 상기 제1 측정 데이터를 로딩하는 위성 운영 시뮬레이션 제어 장치.
  6. 제5항에 있어서,
    상기 데이터베이스는,
    상기 구동환경에서 생성되는 측정 데이터의 종류별로 부여되는 측정 코드 및 상기 측정 코드에 대응하는 값을 저장하는 위성 운영 시뮬레이션 제어 장치.
  7. 제6항에 있어서,
    상기 데이터베이스는,
    상기 측정 코드마다 설정되는 규칙을 저장하는 전체 리스트 데이터베이스(Total value List DB), 설정 가능한 규칙 별 데이터 특성이 정의된 규칙 테이블(Rule Table), 상기 측정 코드 중 고정된 값이 정의된 코드의 값을 저장하는 정적 데이터베이스(Static DB), 상기 측정 코드 중 시간함수에 의해 정의되는 코드의 값을 저장하는 가변 데이터베이스(Variable DB) 및 구동환경 별 로딩할 데이터가 정의된 패킷 리스트 데이터베이스(Packet List DB) 중 적어도 하나를 포함하는 위성 운영 시뮬레이션 제어 장치.
  8. 사용자 인터페이스로부터 입력된 제1 스크립트에 연관되는 적어도 하나의 제1 명령어를 실행하는 단계; 및
    미리 지정된 주기에 따라 상기 제1 명령어에 대응하여 설정되는 구동환경에서의 적어도 하나의 제1 측정 데이터를 생성하는 단계
    를 포함하고,
    상기 제1 스크립트는 실제 위성 운영 시 발생 가능한 다양한 상황들을 모사하기 위한 시나리오이고,
    상기 제1 명령어는 상기 제1 스크립트에 대응하는 시스템 및 환경 조건을 설정하기 위한 제어 명령인, 위성 운영 시뮬레이션 제어 방법.
  9. 제8항에 있어서,
    상기 제1 측정 데이터를 생성하는 단계는,
    상기 적어도 하나의 제1 측정 데이터를 미리 지정된 순서에 따라 패킷으로 구성하여 반복 출력하는 단계
    를 포함하는 위성 운영 시뮬레이션 제어 방법.
  10. 제8항에 있어서,
    상기 제1 측정 데이터를 생성하는 단계는,
    상기 구동환경에서의 제1 측정 데이터가 저장된 데이터베이스로부터 상기 제1 명령어에 대응하는 상기 제1 측정 데이터를 로딩하는 위성 운영 시뮬레이션 제어 방법.
  11. 제10항에 있어서,
    상기 데이터베이스는,
    상기 구동환경에서 생성되는 측정 데이터의 종류별로 부여되는 측정 코드 및 상기 측정 코드에 대응하는 값을 저장하는 위성 운영 시뮬레이션 제어 방법.
  12. 제11항에 있어서,
    상기 데이터베이스는,
    상기 측정 코드마다 설정되는 규칙을 저장하는 전체 리스트 데이터베이스(Total value List DB), 설정 가능한 규칙 별 데이터 특성이 정의된 규칙 테이블(Rule Table), 상기 측정 코드 중 고정된 값이 정의된 코드의 값을 저장하는 정적 데이터베이스(Static DB), 상기 측정 코드 중 시간함수에 의해 정의되는 코드의 값을 저장하는 가변 데이터베이스(Variable DB) 및 구동환경 별 로딩할 데이터가 정의된 패킷 리스트 데이터베이스(Packet List DB) 중 적어도 하나를 포함하는 위성 운영 시뮬레이션 제어 방법.
  13. 제8항에 있어서,
    실행되는 스크립트 별로 상기 적어도 하나의 제1 측정 데이터를 저장 및 관리하는 단계
    를 더 포함하는 위성 운영 시뮬레이션 제어 방법.
  14. 삭제
KR1020160120678A 2016-09-21 2016-09-21 위성 운영 시뮬레이션 제어 장치 및 방법 KR101880808B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160120678A KR101880808B1 (ko) 2016-09-21 2016-09-21 위성 운영 시뮬레이션 제어 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160120678A KR101880808B1 (ko) 2016-09-21 2016-09-21 위성 운영 시뮬레이션 제어 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20180032033A KR20180032033A (ko) 2018-03-29
KR101880808B1 true KR101880808B1 (ko) 2018-07-20

Family

ID=61907192

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160120678A KR101880808B1 (ko) 2016-09-21 2016-09-21 위성 운영 시뮬레이션 제어 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101880808B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116382333B (zh) * 2023-03-23 2023-12-05 北京和德宇航技术有限公司 一种卫星指令的编排方法、装置、电子设备及存储介质
CN117081658B (zh) * 2023-09-27 2024-05-17 中国人民解放军32039部队 一种通信卫星有效载荷遥控作业脚本自动生成方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100536892B1 (ko) * 2002-12-20 2005-12-16 한국전자통신연구원 통신 방송 위성 시뮬레이션 시스템과 원격 명령 데이터 및원격 측정 데이터 처리 방법
KR101348963B1 (ko) * 2011-12-22 2014-01-16 한국항공우주연구원 시나리오 기반의 위성비행소프트웨어 모사 시스템
KR20140136706A (ko) * 2013-05-21 2014-12-01 한국항공우주연구원 데이터베이스 구축 방법 및 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100536892B1 (ko) * 2002-12-20 2005-12-16 한국전자통신연구원 통신 방송 위성 시뮬레이션 시스템과 원격 명령 데이터 및원격 측정 데이터 처리 방법
KR101348963B1 (ko) * 2011-12-22 2014-01-16 한국항공우주연구원 시나리오 기반의 위성비행소프트웨어 모사 시스템
KR20140136706A (ko) * 2013-05-21 2014-12-01 한국항공우주연구원 데이터베이스 구축 방법 및 시스템

Also Published As

Publication number Publication date
KR20180032033A (ko) 2018-03-29

Similar Documents

Publication Publication Date Title
Lu et al. Unlocking the power of OPNET modeler
US9501594B2 (en) Graphical design verification environment generator
KR101425527B1 (ko) 원자력발전소 훈련용 시뮬레이터의 실시간 중대사고 모의 시스템 및 그 방법
CN110765010B (zh) 基于Flink的可视化开发在线调试方法及装置
US20140173347A1 (en) Firmware generated register file for use in hardware validation
KR101880808B1 (ko) 위성 운영 시뮬레이션 제어 장치 및 방법
Walker et al. A simulation environment for ITER PCS development
US20100218172A1 (en) Method for simulating a system on board an aircraft for testing an operating software program and device for implementing said method
Ofenloch et al. MOSAIK 3.0: Combining Time-Stepped and Discrete Event Simulation
Nozhenkova et al. Creation of the base of a simulation model’s precedents for analysis of the spacecraft onboard equipment testing results
KR102155126B1 (ko) 이산 사건 명세와 모의 개체 아웃소싱 기반의 반도체 공정 모델링 및 시뮬레이션 시스템 및 방법
Fitzgerald et al. Co-modelling and co-simulation in embedded systems design
KR101335657B1 (ko) 실시간 시뮬레이터와 시스템 스위칭을 이용한 대규모 dcs 검증 장치 및 그 검증방법
Ciarletta et al. Development of a safe CPS component: the hybrid parachute, a remote termination add-on improving safety of UAS
CN106682249B (zh) 模型无关的通用发布/订阅接口测试系统及方法
Bergomi et al. Beyond traceability: Compared approaches to consistent security risk assessments
Pang et al. Towards Formal Verification of IEC61499: modelling of Data and Algorithms in NCES
Nozhenkova et al. Integration technology of the onboard equipment simulation models in simulation modeling infrastructure
Thomas Software Development and Testing Support for the Avionics Systems Telemetry Tool Suite
Villalonga Gomà Development of extension modules for the Distributed Satellite Systems Simulator
Verhoef et al. TASTE for Overture to keep SLIM
Mannering et al. Relating safety requirements and system design through problem oriented software engineering
Rodríguez et al. An object-oriented library for process control simulations in MATLAB
Trout Testing safety-critical systems using Model-based Systems Engineering (MBSE)
Rodrigues et al. Operational Nanosatellite Simulator: would it be applicable to Cubesat missions?

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant