KR102441960B1 - 가상 훈련을 위한 3d 시뮬레이션 시스템 및 방법 - Google Patents

가상 훈련을 위한 3d 시뮬레이션 시스템 및 방법 Download PDF

Info

Publication number
KR102441960B1
KR102441960B1 KR1020210096914A KR20210096914A KR102441960B1 KR 102441960 B1 KR102441960 B1 KR 102441960B1 KR 1020210096914 A KR1020210096914 A KR 1020210096914A KR 20210096914 A KR20210096914 A KR 20210096914A KR 102441960 B1 KR102441960 B1 KR 102441960B1
Authority
KR
South Korea
Prior art keywords
program
training
iot
simulator
virtual
Prior art date
Application number
KR1020210096914A
Other languages
English (en)
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 KR1020210096914A priority Critical patent/KR102441960B1/ko
Application granted granted Critical
Publication of KR102441960B1 publication Critical patent/KR102441960B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • 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
    • G09B19/00Teaching not covered by other main groups of this subclass
    • G09B19/0069Engineering, e.g. mechanical, electrical design

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Automation & Control Theory (AREA)
  • Computer Graphics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

본 발명의 일 실시예에 따른 3D 시뮬레이션 시스템은, 산업 현장에서 사용되는 PLC 제어 프로그램이나 각종 산업현장의 훈련기기를 가상의 3D 환경 상에 구현하여 입력에 대한 출력 제어가 이루어지는 IoT 시뮬레이터가 구비되는 사용자단말; 상기 IoT 시뮬레이터와 연동하여 훈련기기를 가상 제어할 훈련 프로그램이 마련되는 컨트롤러를 포함하며, 상기 컨트롤러는 훈련기기와 통신 가능하도록 연결되어, 훈련 프로그램을 통하여 입력된 입력값을 훈련기기에 제공하여 훈련기기를 가상 제어하거나 훈련기기로부터 출력값을 제공받아 상기 IoT 시뮬레이터 상에서 출력값에 대한 시뮬레이션 결과를 출력하도록 출력값을 제공하고, 훈련기기의 상태를 점검할 수 있는 것을 특징으로 한다.

Description

가상 훈련을 위한 3D 시뮬레이션 시스템 및 방법{3D simulation system and method for virtual training}
본 발명은 3D 시뮬레이션 시스템 및 방법에 관한 것으로, 더욱 상세하게는 가상 훈련을 위한 3D 시뮬레이션 시스템 및 방법에 관한 것이다.
현대 학생들은 매일 인터넷에 접속하고 컴퓨터와 스마트 폰을 통하여 다양한 학습 도구와 플랫폼을 사용하여 원격으로 교육 콘텐츠를 학습하고 있다. 최근 4차산업 혁명으로 스마트 팩토리를 구성하는 요소 기술의 중요성이 높아지고 있으며, 이러한 기술들에 대한 원격 교육이 이루어지고 있는 실정이다.
최근 교육 장소에서 실제 교육 컨텐츠를 수업하거나, 시뮬레이션 환경에서 교육하는 방법에 대한 방향이 제시되고 있고, 이를 통한 교육 방법 중 하나인 가상의 학습 환경이 널리 사용되고 있다.
4차 산업혁명 이후에 다양한 분야의 산업 발전이 이루어지고 있고, 특히 IoT와 관련된 교육이 실행되고 있는 실정이나, 대부분 하드웨어를 기반으로 하고 있고, 2D 상에서 간단한 동작을 학습하고 있으나, 학습자들의 흥미를 저하시키고 있다.
따라서, 전술한 문제를 해결하기 위하여 학습자들의 흥미를 유발시킬 수 있는 3D 기반의 교육 컨텐츠에 대한 연구가 필요하게 되었다.
한국공개특허 제10-2019-0047125호(2019년05월07일 공개)
본 발명의 목적은 가상 3D 환경에서 시뮬레이션 시스템을 응용하여 IoT 시스템을 간접적으로 구축하여 실제 환경에 맞게 산업 훈련 및 교육을 할 수 있도록 하며, 특히 산업 현장에서 사용되는 PLC 제어 프로그램이나 각종 산업현장의 훈련기기를 가상의 3D 환경 상에 구현하여 입력에 대한 출력 제어가 이루어지는 IoT 시뮬레이터가 구비되는 사용자단말; 상기 IoT 시뮬레이터와 연동하여 훈련기기를 가상 제어할 훈련 프로그램이 마련되는 컨트롤러를 포함하여 구성되는 3D 시뮬레이션 시스템 및 방법을 제공하는 것이다.
본 발명의 일 실시예에 따른 3D 시뮬레이션 시스템은, 산업 현장에서 사용되는 PLC 제어 프로그램이나 각종 산업현장의 훈련기기를 가상의 3D 환경 상에 구현하여 입력에 대한 출력 제어가 이루어지는 IoT 시뮬레이터가 구비되는 사용자단말; 상기 IoT 시뮬레이터와 연동하여 훈련기기를 가상 제어할 훈련 프로그램이 마련되는 컨트롤러를 포함하며, 상기 컨트롤러는 훈련기기와 통신 가능하도록 연결되어, 훈련 프로그램을 통하여 입력된 입력값을 훈련기기에 제공하여 훈련기기를 가상 제어하거나 훈련기기로부터 출력값을 제공받아 상기 IoT 시뮬레이터 상에서 출력값에 대한 시뮬레이션 결과를 출력하도록 출력값을 제공하고, 훈련기기의 상태를 점검할 수 있는 것을 특징으로 한다.
상기에 있어서, 상기 사용자단말은 내부에 설치 및 실행되는 시뮬레이션 프로그램인 IoT 시뮬레이터상의 Virtual Remote IO가 통신을 통해 컨트롤러에 연결된 훈련기기로부터 디지털 신호나 아날로그 신호를 수신하여, 시뮬레이션 결과를 출력하거나 훈련기기를 제어할 수 있도록 하는 것을 특징으로 한다.
상기에 있어서, 상기 컨트롤러는 GPIO 호출 함수와 유사하게 제공되는 UART Library를 통해 상기 Virtual Remote IO와 통신을 수행하며, IoT 시뮬레이터상에 가상으로 구현된 Virtual IoT Module에 훈련기기로부터의 입/출력 신호를 전달하여, 가상 훈련을 수행할 수 있으며, 상기 Virtual IoT Module은 사용자단말에 설치되어 3차원 공간에 구현된 시뮬레이션 프로그램인 IoT 시뮬레이터상의 가상 기기인 것을 특징으로 한다.
상기 사용자단말에 설치되거나 웹기반으로 실행되는 상기 훈련 프로그램을 제공하고, 사용자 로그인 인증을 수행하여 상기 훈련 프로그램을 사용 가능하도록 관리하는 관리서버를 포함한다.
상기 관리서버는 통신망을 통하여 사용자단말과 통신하기 위한 통신 프로토콜을 포함하는 통신부; 사용자단말에서 설치용 또는 웹기반 훈련 프로그램을 실행하여 사용하기 위해 사용자 로그인 인증을 수행하는 인증관리부; 사용자단말에 실행되는 훈련 프로그램과 통신하여 프로그램 기능을 제공하기 위한 인터페이스를 구성하는 프로그램연동부;를 포함한다.
본 발명의 일 실시예에 따른 3D 시뮬레이션 방법은, 산업 현장에서 사용되는 PLC 제어 프로그램이나 각종 산업현장의 훈련기기를 가상의 3D 환경 상에 구현하여 입력에 대한 출력 제어가 이루어지는 IoT 시뮬레이터가 구비되는 사용자단말과, 상기 IoT 시뮬레이터와 연동하여 훈련기기를 가상 제어할 훈련 프로그램이 마련되는 컨트롤러를 이용한 3D 시뮬레이션 방법에 있어서, 상기 훈련 프로그램은 사용자단말에 설치 및 실행되는 IoT 시뮬레이터와 연동하여 사용 가능하도록 로그인 인증을 수행하여 실행되는 단계; 상기 훈련 프로그램은 훈련기기에 대한 입력값을 훈련기기에 제공하여 훈련기기를 가상 제어하거나 훈련기기로부터 출력값을 제공받는 단계; 상기 IoT 시뮬레이터는 컨트롤러로부터 수신한 훈련기기의 출력값을 제공받아 상기 IoT 시뮬레이터의 가상의 3D 환경 상에 구현되는 출력값에 대한 시뮬레이션 결과를 출력하는 단계를 포함한다.
상기에 있어서, 상기 IoT 시뮬레이터는 상기 출력값에 대한 검증을 수행하는 단계를 더 포함한다.
상기에 있어서, 상기 로그인 인증을 위한 관리서버는 인증시 생성된 인증정보와, 프로그램 사용 정보를 통신망을 통하여 사용자단말기의 IoT 시뮬레이터로부터 제공받는 단계; 상기 관리서버는 인증정보와 프로그램 사용 정보를 데이터베이스에 저장하여 관리하는 단계를 더 포함한다.
상기 3D 시뮬레이션 방법은 컴퓨터로 판독 가능한 기록매체에 저장된 컴퓨터 프로그램에 의해 수행된다.
본 발명의 3D 시뮬레이션 시스템은 온라인을 통한 학습은 디지털 보급이 확산된 국가에서는 매우 효과적일 수 있고, 원격 교육은 학생들에게 매우 인기가 있으며, 학습 및 교육의 공간을 확장할 수 있고, 학생들이 전공과 무관한 일반 프로그램도 심도 있게 학습할 수 있는 장점을 가지고 있다
또한 실제 교육적인 환경에서 PID(Proportional, Integral, Differential) 제어와 같은 실제 응용 분야에서 다양하게 사용되고 있는 자동제어 기법 원리뿐만 아니라, 게인 값 조정 및 제어기 사용 방법 등에 대한 PID 시뮬레이터 교육이 가능하며, 물리적 특성을 이해하지 못해도, 게인 값의 조정을 통하여 비교적 간단하게 교육 목표에 도달할 수 있도록 구현되는 원격 교육 소프트웨어를 제공하는 장점이 있다.
MPS 설비 실린더, 컨베이어, 센서, 모션(서보제어), HMI 연동 프로그래밍, PLC LADDER C, C++, C# 등 다양한 프로그래밍 언어 실습을 지원하며, 난이도별 다양한 종류의 실습 KIT를 3D 시뮬레이션으로 간단하게 실습 가능한 형태로 제공할 수 있다.
실제 기구 모델을 바탕으로 제작하여 PC가 있는 환경이면 어디서든 실물 수업과 동일한 실습 교육이 가능하고, 기존 2인 1 대 또는 4인 1 대로 실습하던 환경에서 벗어나 1인 1대 실습으로 동일 시간 수업시보다 높은 실습 효과 기대할 수 있는 장점이 있다.
또한, 실행되는 IoT 시뮬레이터를 통하여 가상 훈련상의 실험값, 제어값을 산출할 뿐만 아니라, 해당 결과값들이 실제 환경에 적합한 값인지 훈련 프로그램상에서 검증 과정을 수행할 수 있으며, 이를 통해 실제 환경에 맞게 가상 훈련을 수행할 수 있을 뿐만 아니라, 실제 환경에서 작업을 하더라도 훈련과정과 동일한 조건으로 임할 수 있어, 훈련 과정을 실제 산업 현장에 그대로 접목할 수 있다.
도 1은 본 발명의 일 실시예에 따른 3D 시뮬레이션 시스템의 구성을 보인 블록도이다.
도 2는 도 1의 3D 시뮬레이션 시스템의 내부 구성을 세부적으로 보인 블록도이다.
도 3은 본 발명의 일 실시예에 따른 3D 시뮬레이션 방법의 순서도이다.
도 4는 PLC와 PC 제어용 훈련 프로그램 구현을 위한 프로그램 구성 예시를 세부적으로 보인 도면이다.
도 5는 PLC 제어용 훈련 프로그램 화면 예시를 보여주는 도면이다.
도 6은 산업현장 제어용 아두이노 보드와 리모트 입출력(Remote IO) 구성 예시를 보인 도면이다.
도 7 및 도 8은 아두이노 보드에 의한 AGV 설비에 대한 각종 제어 파라미터 및 시뮬레이션 화면 예를 보여주는 도면이다.
도 9는 3D 시뮬레이션 시스템 구현을 위한 전체 개념을 도시한 도면이다.
이하에서는 도면을 참조하여 본 발명의 구체적인 실시예를 상세하게 설명한다. 다만, 본 발명의 사상은 제시되는 실시예에 제한되지 아니하고, 본 발명의 사상을 이해하는 당업자는 동일한 사상의 범위 내에서 다른 구성요소를 추가, 변경, 삭제 등을 통하여, 퇴보적인 다른 발명이나 본 발명 사상의 범위 내에 포함되는 다른 실시예를 용이하게 제안할 수 있을 것이나, 이 또한 본원 발명 사상 범위 내에 포함된다고 할 것이다. 또한, 각 실시예의 도면에 나타나는 동일한 사상의 범위 내의 기능이 동일한 구성요소는 동일한 참조부호를 사용하여 설명한다.
도 1은 본 발명의 일 실시예에 따른 3D 시뮬레이션 시스템의 구성을 보인 블록도이며, 도 2는 도 1의 3D 시뮬레이션 시스템의 내부 구성을 세부적으로 보인 블록도이다.
본 발명의 3D 시뮬레이션 시스템은 도 1을 참조하면 산업 현장에서 사용될 훈련 프로그램이 설치 및 실행되는 복수의 사용자단말(사용자단말 1~n, 100)과, 사용자단말(100)에 웹기반으로 훈련 프로그램을 제공하거나 로그인 인증 및 프로그램 관리를 위한 관리서버(300)를 포함한다.
훈련 프로그램은 관리서버(300)에서 클라이언트 설치용 프로그램을 제공하여 사용자단말(100)에 설치하여 사용할 수 있으며, 웹기반 서비스 형태로 관리서버(300)에서 제공하여 훈련 프로그램의 별도 설치 없이도 통신망(200)을 통하여 프로그램을 실행시켜 사용할 수도 있다.
여기서 훈련 프로그램은 산업 현장에서 실제 많이 사용되는 PLC와 PC 제어 프로그램(도 4 및 도 5 참조)이나 각종 산업현장의 훈련기기(120)(무인 운반차 등)를 훈련용으로 3D 환경 상에 구축된 시뮬레이터를 통하여 가상 제어하기 위해 제어용 보드(아두이노, 라즈베리 파이 등의 제어용 보드)로 이루어진 컨트롤러에 사용자가 입출력 제어할 프로그램이 구현될 수 있도록 포함되어 제공된다.
여기서 훈련기기(120)는 가상 환경에서 가상 훈련이 가능하도록 구현 가능하고, 산업현장에서 훈련이 필요한 기기에 해당하는 것으로서, 구체적인 예를 들어 각종 PLC와 PC 제어용 기기, 무인 운반차(AGV), 산업용 각종 센서, 액츄에이터, 밸브, 모터 PID(Proportional, Integral, Differential) 제어 가능한 볼 컨트롤 장치 등이 될 수 있으며, 본 발명이 특정 훈련기기(120)에 한정되는 것은 아니다.
또한 상술한 훈련 프로그램을 통한 훈련 과정을 위해 도 4, 도 6 및 도 9를 참조하면, 3D 환경에서 시뮬레이션을 응용하여 IoT 디바이스인 컨트롤러를 간접적으로 구축하여 컨트롤러를 통하여 교육할 수 있는 프로그램으로서, IOT device 시뮬레이션 환경 구축을 위하여 컨트롤러를 아두이노 등을 이용하여 프로그램을 구성하고, 하드웨어적인 테스트가 별도로 필요한 프로그램 구성이나, 외부 인터럽트 신호를 전달할 수 있는 아두이노 보드에 연결된 각종 훈련기기(120, 무인 운반차, 센서, 액츄에이터 등)를 제어하기 위한 가상의 Remote IO(입출력) 및 IoT module 등을 제공할 수 있다.
구체적으로 IoT Device로서, 전체 IoT 시스템을 제어하며, 구동하기 위한 전원 보드 등을 포함한 아두이노, 라즈베리 파이 등의 제어보드를 이용하여 컨트롤러(110)를 구성한다.
또한 사용자단말(100)은 내부에 설치 및 실행되는 시뮬레이션 프로그램인 IoT 시뮬레이터 상에 구현된 가상의 Virtual Remote IO가 GPIO(general-purpose input/output) 통신을 통해 실제 컨트롤러(110)에 연결된 센서(120)나 액츄에이터(120)와 같은 훈련기기(120)로부터 디지털 신호나 아날로그 신호를 수신하여 시뮬레이션 결과를 출력하거나 제어할 수 있다.
여기서 사용자단말(100)은 데스크톱 PC, 랩톱 컴퓨터뿐만 아니라, 태블릿, 스마트 폰 등이 될 수도 있으며, 모바일 환경에서 프로그램 통신을 위한 모바일 통신 프로토콜이 더 포함될 수 있다.
또한, 컨트롤러(110)는 도 9를 참조하면 GPIO 호출 함수와 유사하게 제공되는 UART Library를 통해 Virtual Remote IO와 통신을 수행하며, Virtual IoT Module에 입/출력 신호를 전달할 수 있다.
여기서 Virtual IoT Module은 사용자단말(100)에 설치되어 3차원 공간에 구현된 시뮬레이션 프로그램인 IoT 시뮬레이터상의 가상 기기들이며, 여기서 발생한 신호들은 Virtual Remote IO를 거쳐 시리얼 통신 신호로 변환할 수 있게 된다.
IoT 시뮬레이터에서 사용할 훈련기기(120)에 적합한 GPIO의 입출력 함수의 원형을 분석하여 헤더 파일 형태의 라이브러리를 작성할 수 있으며, Virtual Remote IO를 구현하고, 또한 실제 사용할 훈련기기(120)의 물리적, 전기적 특성을 파악하여 가상의 공간에 구현하고, 다양한 특성을 가진 센서와 Actuator를 가상으로 구현할 수 있도록 한다.
훈련할 프로그램의 구체적인 예시로, 도 10에 도시된 바와 같이 MPS(Manufacturing Production System)설비 모션 시뮬레이션 프로그램이 있으며, MPS 설비의 부품인 실린더, 컨베이터, 센서, 모션, HMI 연동 프로그램으로서, PLC LADDER에 대한 실습 난이도별 다양한 3D 시뮬레이션 환경을 통하여 실습 및 훈련이 가능하도록 구현할 수 있다.
여기서 MPS 설비는 제조생산시스템에 대한 설비에 해당하며, MPS 설비 모션 시뮬레이션 프로그램은 각종 분야에서 사용되는 제조 자동화 설비인 제조생산시스템의 중요 부품인 센서, 실린더, 솔레노이드밸브, 모터, 컨베이어, 모션, 타워램프 등을 구축하여 부품의 동작원리, 사용방법, 특성을 이해하고 제조 공정에서의 관리방법, 고장진단과 조치를 실습하기 위한 프로그램이 될 수 있다.
좀더 구체적으로 모든 구성품의 IO는 Agent 상에 각 구성품의 Address 및 명칭, 동작 상태를 IO 리스트 형태로 제공할 수 있으며, PLC의 접속 상태에 따라 프로그램 없이 수동 동작 기능이 구현될 수 있다.
또한, Agent를 통한 PLC 접속뿐만 아니라 가상의 IO 보드 및 모션 보드 라이브러리를 제공하여, PC기반 제어 실습 기능을 구현할 수도 있다.
산업 현장의 훈련을 위해 설비의 각 구성품은 태그를 화면상에 표시하여 구성품의 명칭을 쉽게 이해할 수 있도록 구현하며, 태그의 표시 상태 On/Off 기능을 구현하며, 모션의 단위설정, 모터 회전 당 펄스 수 및 회전 당 이동거리 설정 기능을 구현할 수도 있다.
모션 속도 변경이 가능한 조그 운전 기능과 원점복귀 리트라이 기능과 원점복귀 방향설정에 따른 설비이동 방향 변경 기능이 구현되어 실제 운전과 유사한 형태로 가상 3D 화면을 통한 훈련을 수행할 수 있다.
나아가 모션 단독위치결정제어, 연속위치결정제어, 연속궤적제어 모션 동작이 구현되어 위치결정완료 신호 프로그램 기능이 구현되고, 모션 조그 속도 경고코드 표시, 리미트 에러코드 표시, 에러리셋 기능이 구현될 수도 있다.
또한 모션 전송 현재 값, 전송, 기계 값, 전송 속도 값, BUSY, 에러검출, 외부입력신호, 시동완료, 준비완료 신호의 실시간 모니터링 기능을 구현할 수 있다.
또한 도 4를 참조하면, PLC LADDER 프로그래밍 등 MPS 설비 모션 시뮬레이션 프로그램 구성이 가능하도록 구체적으로 실제 PLC와 연동시킬 수 있는 컴포넌트(PLC Agent, MX Component), 사용자가 훈련 프로그램의 가상 훈련을 통해 입력값에 대한 출력되는 결과물을 가상의 장비에 적용할 수 있는 Direct Studio 부재와, 추가적으로 IoT 디바이스인 컨트롤러(110, 아두이노 제어보드)에 대한 프로그래밍과 실제 제어가 가능하도록 하는 리모트 IO(컨트롤러에 포함 가능) 제어 구성이 포함될 수도 있다.
또한 훈련용 무인 운반차(Automatic Guided Vehicle ; AGV) 제어 프로그램의 경우, 도 6 내지 도 8을 참조하면, 실제 운전과 유사한 형태로 가상 3D 화면을 통한 훈련을 수행할 수 있다.
예컨대 마우스 좌우 클릭으로 화면을 회전하거나 무인 운반차를 이동시킬 수 있으며, 마우스 휠의 회전으로 화면 확대/축소 기능, 키보드의 기능키(F1 등)를 이용한 시점 변경 기능, 스페이스바를 이용한 시점(1인칭/3인칭) 변경 기능 등을 제공할 수 있다.
또한, 조작의 편의성을 위해 UI 상에 Switch 신호를 화면 잘보이는 위치(상단)에 배치를 하고, 다양한 트랙을 실습하기 위해 '라인 없음', '트랙 주행', '교차 트랙' 등 모드 변경 기능을 제공할 수 있으며, Virtual AGV IoT Module의 입출력 신호를 전달할 Virtual Remote IO를 구성할 수 있다.
구체적인 예로 화면 구성 아두이노와 연결 방법 및 COM Port, Baud Rate의 기본 통신 설정과 학습자로 하여금 신호 디버깅의 편의성을 위한 모니터링 화면 예시를 도 7과 같이 구성할 수 있다.
중앙을 기준으로 좌측 화면은 쓰기 가능한 영역으로 아두이노에서 가상 IoT 모듈로 보내는 출력 신호에 해당하며, 우측 화면은 읽기 가능한 영역으로 가상 IoT 모듈의 입력 신호를 아두이노 쪽으로 보내는 부분이다. 또한 상단은 디지털 신호를 하단은 아날로그 신호를 배치하여 디지털 신호와 아날로그 신호를 그룹화할 수도 있다.
나아가 훈련 프로그램은 사용자단말(100)에서 실행되는 IoT 시뮬레이터를 통하여 가상 훈련상의 실험값, 제어값을 산출할 뿐만 아니라, 해당 결과값들이 실제 환경에 적합한 값인지 훈련 프로그램상에서 검증 과정을 수행할 수 있으며, 이를 통해 실제 환경에 맞게 가상 훈련을 수행할 수 있을 뿐만 아니라, 실제 환경에서 작업을 하더라도 훈련과정과 동일한 조건으로 임할 수 있어, 훈련 과정을 실제 산업 현장에 그대로 접목할 수 있다.
또한 복수의 공정 설비가 있는 경우 이전 공정에 대한 결과값을 실제 설비에 적용하여 다음 공정의 시뮬레이션 과정을 수행할 수 있는데, 예컨대 복수의 A,B,C,D의 공정 설비가 있는 경우, A공정 설비는 PLC, 아두이노의 컨트롤러(110)를 사용하여 제어하고, 나머지 B, C, D공정은 A공정의 실제 설비와 연동하여 시뮬레이션이 가능하도록 구현할 수도 있다.
또한, 관리서버(300)는 사용자를 위한 훈련 프로그램 관리 및 로그인 인증 등에 대한 세부 기능을 수행하기 위해 도 2를 참조하면, 통신부(310), 인증관리부(320), 프로그램연동부(330), 통계학습부(340), 보안부(350), 데이터베이스(360)를 더 포함한다.
통신부(310)는 통신망(200)을 통하여 사용자단말(100)과 통신하기 위한 통신 프로토콜을 포함한다.
인증관리부(320)는 사용자단말(100)에서 설치용 또는 웹기반 훈련 프로그램을 실행하여 사용하기 위해 사용자 로그인 인증을 수행할 수 있다. 또한 사용자 로그인 인증을 위해 최초 회원가입을 위한 개인정보를 입력받아 로그인 인증에 활용할 수 있다.
프로그램연동부(330)는 사용자단말(100)에 실행되는 훈련 프로그램과 통신하여 각종 프로그램 기능을 제공하기 위한 일종의 인터페이스인 API를 구성할 수 있다.
여기서 API(Application Programming Interface, 응용 프로그램 프로그래밍 인터페이스)는 응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 의미하며, 본 발명에서는 사용자단말(100)의 훈련 프로그램과 관리서버(300)의 관리용 프로그램간에 연동하여 훈련 프로그램의 훈련 기능들을 위한 각종 인터페이스를 제공할 수 있다.
통계학습부(340)는 로그인되어 사용자별로 프로그램 사용시 내역(로그인 시간, 프로그램 사용시간, 프로그램 사용 빈도, 주로 사용되는 프로그램 기능 등)에 대한 통계자료를 생성할 수 있다.
특히 통계학습부(340)는 통계자료를 모니터링 자료로 활용하도록 프로그램을 통하여 수집된 정보를 체계적으로 보여줄 수 있으며, 빅데이터 형태로 수집된 통계자료를 바탕으로 미리 생성한 별도의 예측 모델을 이용하여 학습을 수행하고, 학습 결과로 예측되는 프로그램 사용 환경에 대한 예측 결과를 산출할 수 있으며, 예측 결과를 관리자 또는 사용자에게 제공하여 보다 나은 서비스의 프로그램을 제공할 수 있도록 할 수 있다.
보안부(350)는 다수의 블록체인서버와 연계하여 블록체인망을 구축하고, 기구축된 내부의 블록체인 네트워크를 통해 공개키 및 개인키를 생성하여 해쉬값으로 변환하여 상술한 민감한 정보에 해당하는 로그인 인증에 사용되는 개인정보(아이디, 패스워드, 휴대폰번호 등)에 대해서 분산 저장하고, 분산 저장시 생성된 공개키와 사용자의 개인정보를 기반으로 권한이 있는 사용자에 대해서 열람이 가능하도록 사용자 인증을 수행할 수 있다.
특히 최초 소프트웨어의 시작시 아이디, 패스워드 등의 서버 인증 절차를 거쳐, 인증을 수행함으로서, 프로그램의 무단 사용 및 무제한 사용을 막도록 하고, 사용 기한이 포함된 라이센스 인증정보 등을 이때 블록체인 기반의 분산원장을 통하여 관리함으로써, 무결성의 안전한 거래를 보장할 수 있도록 할 수 있다. 또한 사용 기한이 만료된 경우에는 크랙 등으로 재사용을 못하도록 블록체인 네트워크를 통해 분산 관리되는 해당 원장을 파기하도록 하여 재사용을 원천봉쇄할 수 있도록 함이 바람직하다.
또한 부가적으로 서버와 단말간의 주고받는 정보(예를 들어 로그인시 입력되는 개인정보)는 외부 해킹 등의 위험으로부터 정보를 보호하기 위해, 해당 정보의 송/수신에 데이터 암/복호화 기술을 적용할 수 있다.
보다 구체적으로, 서버나 단말에 각각 신분 증명이 가능한, 식별 정보(identification information)를 부여하여, 각 서버 또는 단말의 식별 정보를 사설 암호 키(private key)로 활용하는 경량 암호 알고리즘을 수행한다. 경량 암호 알고리즘은 대칭키 암호 알고리즘인 HIGHT(HIGh security and light weigHT), LEA(Lightweight Encryption)와 해시함수인 LSH(Lightweight Secure Hash) 등을 활용할 수 있다.
데이터베이스(360)는 로그인에 필요한 개인정보를 포함하여 훈련 프로그램 정보, 훈련 프로그램, 통계자료 등이 저장될 수 있으며, 데이터 보호를 위해 블록체인 기반으로 분산 저장 관리함이 바람직하다.
도 3은 본 발명의 일 실시예에 따른 3D 시뮬레이션 방법의 순서도이다.
상기 훈련 프로그램은 사용자단말(100)에 설치 및 실행되는 IoT 시뮬레이터와 연동하여 사용 가능하도록 로그인 인증을 수행하여 IoT 시뮬레이터와 훈련 프로그램이 실행되도록 할 수 있다(S11).
상기 훈련 프로그램은 훈련기기(120)에 대한 입력값을 훈련기기(120)에 제공하여 훈련기기(120)를 가상 제어하거나 훈련기기(120)로부터 출력값을 제공받는다(S12).
IoT 시뮬레이터는 컨트롤러(110)로부터 수신한 훈련기기(120)의 출력값을 제공받아 상기 IoT 시뮬레이터의 가상의 3D 환경 상에 구현되는 출력값에 대한 시뮬레이션 결과를 출력한다(S13).
이때 IoT 시뮬레이터는 상기 출력값에 대해 미리 설정된 검증 기준에 의해 오류나 동작 정상 범위 여부 등 출력값에 대해 검증을 수행할 수 있다(S14).
이를 통하여 훈련이 제대로 수행되고 있는지 검증을 바로 수행할 수 있어, 제대로 교육이 이루어지는지 확인할 수 있어 제대로 된 훈련 과정을 수행하도록 제공할 수 있다.
또한, 프로그램 로그인 인증을 위한 관리서버(300)는 회원가입 및 로그인 인증시 생성된 인증정보(개인정보 포함)와, 프로그램 사용 정보를 통신망(200)을 통하여 사용자단말(100)의 IoT 시뮬레이터로부터 제공받을 수 있다.
관리서버(300)는 인증정보와 프로그램 사용 정보를 데이터베이스에 저장하여 관리할 수 있다(S15).
이때 민감한 개인정보에 대한 보호 및 프로그램 사용 기한에 대한 해킹이나 크랙 등의 방지를 위해 보안 처리를 수행할 수 있으며, 경량 암호 알고리즘에 의해 암호화하거나, 분산 저장 관리가 가능하도록 해당 정보에 대한 분산 원장을 생성하여 블록체인 네트워크를 통하여 저장 및 관리할 수도 있다.
또한 관리서버(300)는 프로그램 사용정보로부터 프로그램 사용시 내역(로그인 시간, 프로그램 사용시간, 프로그램 사용 빈도, 주로 사용되는 프로그램 기능 등)에 대한 통계자료를 생성하고, 관리자나 사용자단말(100)로 통계자료를 제공할 수 있다(S16).
본 명세서에서 ‘단말’은 데스트톱 PC 형태뿐만 아니라, 휴대성 및 이동성이 보장된 무선 통신 장치일 수 있으며, 예를 들어 스마트폰, 태블릿 PC 또는 노트북 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치일 수 있다. 또한, ‘단말’은 통신망(200)을 통해 다른 단말 또는 서버 등에 접속할 수 있는 PC 등의 유선 통신 장치인 것도 가능하다. 또한, 관리서버(300)와 통신할 수 있는 통신망(200)은 단말들 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 근거리 통신망(LAN: Local Area Network), 광역 통신망(WAN: Wide Area Network), 인터넷 (WWW: World Wide Web), 유무선 데이터 통신망, 전화망, 유무선 텔레비전 통신망 등을 포함한다.
무선 데이터 통신망의 일례에는 3G, 4G, 5G, 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution), WIMAX(World Interoperability for Microwave Access), 와이파이(Wi-Fi), 블루투스 통신, 적외선 통신, 초음파 통신, 가시광 통신(VLC: Visible Light Communication), 라이파이(LiFi) 등이 포함되나 이에 한정되지는 않는다.
100 ; 사용자단말
110 ; 컨트롤러
120 ; 훈련기기
200 ; 통신망
300 ; 관리서버
310 ; 통신부
320 ; 인증관리부
330 ; 프로그램연동부
340 ; 통계학습부
350 ; 보안부
360 ; 데이터베이스

Claims (9)

  1. 각종 산업현장의 훈련기기를 가상의 3D 환경 상에 구현하여 입력에 대한 출력 제어가 이루어지는 IoT 시뮬레이터가 구비되는 사용자단말;
    상기 IoT 시뮬레이터와 연동하여 상기 훈련기기를 가상 제어할 훈련 프로그램이 마련되는 컨트롤러; 및
    웹기반으로 실행되는 상기 훈련 프로그램을 제공하고, 사용자 로그인 인증을 수행하여 상기 훈련 프로그램을 사용 가능하도록 관리하는 관리서버를 포함하며,
    상기 컨트롤러는 훈련기기와 통신 가능하도록 연결되어, 훈련 프로그램을 통하여 입력된 입력값을 훈련기기에 제공하여 훈련기기를 가상 제어하거나 훈련기기로부터 출력값을 제공받아 상기 IoT 시뮬레이터 상에서 출력값에 대한 시뮬레이션 결과를 출력하도록 출력값을 제공하고, 훈련기기의 상태를 점검하며,
    상기 관리서버는, 통계학습부와 보안부를 포함하되,
    상기 통계학습부는, 로그인되어 사용자별로 프로그램 사용시 내역에 대한 통계자료를 생성하되, 상기 통계자료를 모니터링 자료로 활용하도록 프로그램을 통하여 수집된 정보를 보여주고, 상기 통계자료를 바탕으로 미리 생성한 예측 모델을 이용하여 학습을 수행하고, 학습 결과로 예측되는 프로그램 사용 환경에 대한 예측 결과를 산출하며, 예측 결과를 관리자 또는 사용자에게 제공하고,
    상기 보안부는, 다수의 블록체인서버와 연계하여 블록체인망을 구축하고, 기구축된 내부의 블록체인 네트워크를 통해 공개키 및 개인키를 생성하여 해쉬값으로 변환하여 상기 사용자 로그인 인증에 사용되는 개인정보를 분산 저장하고, 분산 저장시 생성된 공개키와 상기 개인정보를 기반으로 권한이 있는 사용자에 대해서 열람이 가능하도록 사용자 인증을 수행하며,
    상기 관리서버와 상기 사용자단말간의 주고받는 정보를 보호하기 위해 상기 관리서버와 상기 사용자단말에 각각 신분 증명이 가능한, 식별 정보(identification information)를 부여하고, 상기 식별 정보를 사설 암호 키(private key)로 활용하는 경량 암호 알고리즘을 수행하되, 대칭키 암호 알고리즘인 HIGHT(HIGh security and light weigHT), LEA(Lightweight Encryption) 및 해시함수인 LSH(Lightweight Secure Hash) 중에서 선택된 어느 하나를 활용하는 것을 특징으로 하는 3D 시뮬레이션 시스템.
  2. 제1항에 있어서,
    상기 사용자단말은 내부에 설치 및 실행되는 시뮬레이션 프로그램인 IoT 시뮬레이터상의 Virtual Remote IO가 통신을 통해 컨트롤러에 연결된 훈련기기로부터 디지털 신호나 아날로그 신호를 수신하여, 시뮬레이션 결과를 출력하거나 훈련기기를 제어할 수 있도록 하는 것을 특징으로 하는 3D 시뮬레이션 시스템.
  3. 제2항에 있어서,
    상기 컨트롤러는 UART Library를 통해 상기 Virtual Remote IO와 통신을 수행하며, IoT 시뮬레이터상에 가상으로 구현된 Virtual IoT Module에 훈련기기로부터의 입/출력 신호를 전달하여, 가상 훈련을 수행할 수 있으며,
    상기 Virtual IoT Module은 사용자단말에 설치되어 3차원 공간에 구현된 시뮬레이션 프로그램인 IoT 시뮬레이터상의 가상 기기인 것을 특징으로 하는 3D 시뮬레이션 시스템.
  4. 삭제
  5. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 관리서버는
    통신망을 통하여 사용자단말과 통신하기 위한 통신 프로토콜을 포함하는 통신부;
    사용자단말에서 설치용 또는 웹기반 훈련 프로그램을 실행하여 사용하기 위해 사용자 로그인 인증을 수행하는 인증관리부;
    사용자단말에 실행되는 훈련 프로그램과 통신하여 프로그램 기능을 제공하기 위한 인터페이스를 구성하는 프로그램연동부;
    를 더 포함하는 3D 시뮬레이션 시스템.
  6. 각종 산업현장의 훈련기기를 가상의 3D 환경 상에 구현하여 입력에 대한 출력 제어가 이루어지는 IoT 시뮬레이터가 구비되는 사용자단말과, 상기 IoT 시뮬레이터와 연동하여 상기 훈련기기를 가상 제어할 훈련 프로그램이 마련되는 컨트롤러를 이용한 3D 시뮬레이션 방법에 있어서,
    상기 훈련 프로그램은 사용자단말에 설치 및 실행되는 IoT 시뮬레이터와 연동하여 사용 가능하도록 로그인 인증을 수행하여 실행되는 단계;
    상기 훈련 프로그램은 훈련기기에 대한 입력값을 훈련기기에 제공하여 훈련기기를 가상 제어하거나 훈련기기로부터 출력값을 제공받는 단계;
    상기 IoT 시뮬레이터는 컨트롤러로부터 수신한 훈련기기의 출력값을 제공받아 상기 IoT 시뮬레이터의 가상의 3D 환경 상에 구현되는 출력값에 대한 시뮬레이션 결과를 출력하는 단계를 포함하며,
    상기 로그인 인증을 위한 관리서버는 인증시 생성된 인증정보와, 프로그램 사용 정보를 통신망을 통하여 사용자단말기의 IoT 시뮬레이터로부터 제공받는 단계;
    상기 관리서버는 인증정보와 프로그램 사용 정보를 데이터베이스에 저장하여 관리하는 단계를 더 포함하고,
    상기 관리서버는, 로그인되어 사용자별로 프로그램 사용시 내역에 대한 통계자료를 생성하되, 상기 통계자료를 모니터링 자료로 활용하도록 프로그램을 통하여 수집된 정보를 보여주고, 상기 통계자료를 바탕으로 미리 생성한 예측 모델을 이용하여 학습을 수행하고, 학습 결과로 예측되는 프로그램 사용 환경에 대한 예측 결과를 산출하며, 예측 결과를 관리자 또는 사용자에게 제공하고,
    상기 관리서버는, 다수의 블록체인서버와 연계하여 블록체인망을 구축하고, 기구축된 내부의 블록체인 네트워크를 통해 공개키 및 개인키를 생성하여 해쉬값으로 변환하여 사용자의 상기 로그인 인증에 사용되는 개인정보를 분산 저장하고, 분산 저장시 생성된 공개키와 상기 개인정보를 기반으로 권한이 있는 사용자에 대해서 열람이 가능하도록 사용자 인증을 수행하며,
    상기 관리서버는, 상기 관리서버와 상기 사용자단말간의 주고받는 정보를 보호하기 위해 상기 관리서버와 상기 사용자단말에 각각 신분 증명이 가능한, 식별 정보(identification information)를 부여하고, 상기 식별 정보를 사설 암호 키(private key)로 활용하는 경량 암호 알고리즘을 수행하되, 대칭키 암호 알고리즘인 HIGHT(HIGh security and light weigHT), LEA(Lightweight Encryption) 및 해시함수인 LSH(Lightweight Secure Hash) 중에서 선택된 어느 하나를 활용하는 3D 시뮬레이션 방법.
  7. 제6항에 있어서,
    상기 IoT 시뮬레이터는 상기 출력값에 대한 검증을 수행하는 단계
    를 더 포함하는 3D 시뮬레이션 방법.
  8. 삭제
  9. 제6항 또는 제7항의 3D 시뮬레이션 방법을 수행하는 컴퓨터로 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
KR1020210096914A 2021-07-23 2021-07-23 가상 훈련을 위한 3d 시뮬레이션 시스템 및 방법 KR102441960B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210096914A KR102441960B1 (ko) 2021-07-23 2021-07-23 가상 훈련을 위한 3d 시뮬레이션 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210096914A KR102441960B1 (ko) 2021-07-23 2021-07-23 가상 훈련을 위한 3d 시뮬레이션 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102441960B1 true KR102441960B1 (ko) 2022-09-08

Family

ID=83279669

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210096914A KR102441960B1 (ko) 2021-07-23 2021-07-23 가상 훈련을 위한 3d 시뮬레이션 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102441960B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101715671B1 (ko) * 2016-10-24 2017-03-13 포스컨트롤 주식회사 생산자동화실습장치 제어 시뮬레이션 시스템
KR20190047125A (ko) 2017-09-05 2019-05-07 미쓰비시덴키 가부시키가이샤 시뮬레이션 장치 및 시뮬레이션 방법
KR20210085586A (ko) * 2019-12-31 2021-07-08 한국 전기안전공사 가상현실 기반 전기설비 교육 훈련 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101715671B1 (ko) * 2016-10-24 2017-03-13 포스컨트롤 주식회사 생산자동화실습장치 제어 시뮬레이션 시스템
KR20190047125A (ko) 2017-09-05 2019-05-07 미쓰비시덴키 가부시키가이샤 시뮬레이션 장치 및 시뮬레이션 방법
KR20210085586A (ko) * 2019-12-31 2021-07-08 한국 전기안전공사 가상현실 기반 전기설비 교육 훈련 시스템

Similar Documents

Publication Publication Date Title
EP3660717B1 (en) Dynamic authorization of requested actions using adaptive context-based matching
EP3203703B1 (en) Beacon-based industrial automation access authorization
CN105373091B (zh) 用于在过程控制***中使用的方法和装置
US10075450B2 (en) One time use password for temporary privilege escalation in a role-based access control (RBAC) system
CN108319161A (zh) 一种工业scada***仿真平台
JP2002099512A (ja) プロセス制御システムとそのセキュリティシステムおよび方法並びにそのソフトウェアシステム
CN110225038B (zh) 用于工业信息安全的方法、装置及***
Kumar et al. Challenges within the industry 4.0 setup
JP2019046349A (ja) エッジサーバ及び管理サーバ
US10515187B2 (en) Artificial intelligence (AI) techniques for learning and modeling internal networks
Georgescu et al. The importance of internet of things security for smart cities
US10970369B2 (en) Rapid file authentication on automation devices
Gupta et al. Integration of technology to access the manufacturing plant via remote access system-A part of Industry 4.0
Hernandez et al. Dynamic interface and access model by dead token for IoT systems
US20160337359A1 (en) Securing a control system application layer protocol
KR102441960B1 (ko) 가상 훈련을 위한 3d 시뮬레이션 시스템 및 방법
Gunjal et al. Internet of things: Theory to practice
CN117395141A (zh) 一种简化站房智能辅助与人工智能可视化网关配置的方法
Bo et al. Usable security mechanisms in smart building
Albettar Evaluation and assessment of cyber security based on Niagara framework: a review
Lakshmi et al. Emerging Technologies and Security in Cloud Computing
KR102532269B1 (ko) 디지털트윈을 기반으로 하는 설비제어 시뮬레이션 시스템 및 이를 이용한 교육 컨텐츠 제공 방법
Deshpande et al. Smart Locking System Using AR and IoT
Granö et al. Virtual environments for penetration testing of IoT devices
Basan et al. Development of test stands of cyber-physical systems for security analysis

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant