AWS 기술 블로그

AWS IoT TwinMaker로 비디오 스트림을 연동한 디지털 트윈 생성하기

산업에서 사용되는 고성능 장비뿐만 아니라 실생활에서 사용되는 디바이스들의 기능이나 공정이 복잡해질수록 더 다양한 입출력 모듈을 가지고 있습니다. 쿠키 반죽을 만드는 믹서를 예로 들자면, 센서를 이용하여 결과물에 영향을 미치는 모터의 속도나 반죽의 온도와 같은 시계열 데이터를 실시간으로 측정할 수 있고, 머신러닝을 접목하여 반죽에 이물질이 들어가지는 않는지, 색깔이 이상하지는 않은지 빠르게 이상 감지하거나, 실시간으로 비디오 스트리밍 데이터를 출력할 수도 있습니다. 이 데이터들은 모두 다양한 포맷을 가지고 있고, 각기 다른 프로토콜로 출력됩니다.

이렇게 장비에 대한 다양한 출력값을 원격 모니터링하거나 가상 환경에서 시뮬레이션하여 값을 예측하는 데에 있어서 효과적으로 시각화하는 방법으로 디지털 트윈을 사용하실 수 있습니다.

Digital Twin

디지털 트윈은 실제 환경의 상태나 동작 등을 모방하여 디지털로 표현한 것을 말합니다. 실제 장비에서 발생하는 데이터를 실시간으로 수집하고 디지털 트윈에 반영할 수 있으려면 다양한 데이터들을 연동하고 쉽게 변경 사항을 반영할 수 있는 모델을 고려해야 합니다. 디지털 트윈에 대해 좀 더 자세히 설명되어 있는 Digital Twins on AWS:  Unlocking business value and outcomes를 참고하실 수 있습니다. 이렇게 다양한 데이터들을 연동해서 시각화한 디지털 트윈을 좀 더 쉽게 생성할 수 있도록 AWS IoT TwinMaker 서비스에서 기능을 제공하고 있습니다.

이 포스팅에서는 Amazon Web Services (AWS)에서 제공하는 서비스들을 이용하여 데이터 수집부터 디지털 트윈 생성 및 시각화까지 진행하는 기본 과정을 소개합니다. 특히, 어렵게 느끼실 수 있는 비디오 스트림 데이터 수집을 예시로 적용했습니다.

개요

이 포스팅에서는 제 방을 디지털 트윈으로 생성하고 시각화하는 과정을 소개합니다.

제 방에 위치한 Raspberry Pi의 카메라 모듈로 수집한 비디오 스트리밍 데이터를 연동하여 모니터링하는 방법에 대해 알아보겠습니다. 간단한 설명을 위해 비디오 스트림 데이터만 연동했지만, 더 나아가 문 열림 센서를 연동하거나, Raspberry Pi에 사물 감지(Object Detection) 기능의 머신 러닝 모델을 배포하고 수집된 이미지 데이터를 추론하여 사람이 감지되면 알림 데이터를 연동하는 등 추가 작업을 통해 더 생동감 넘치는 디지털 트윈으로 발전시킬 수 있습니다.

진행 순서는 다음과 같습니다.

  1. 사전 준비
  2. Amazon Kinesis Video Streams 서비스로 Video Stream 생성
  3. IoT TwinMaker 서비스로 디지털 트윈 구현
  4. Amazon Managed Grafana 서비스로 대시보드 구성 (Optional)

1. 사전 준비

  • AWS 계정
  • 3D 모델리소스
  • 카메라 모듈이 포함된 Raspberry Pi 디바이스

A. AWS 계정

AWS 계정을 준비합니다.

B. 3D 모델 리소스

실제 환경인 방을 시각적으로 표현할 3D 모델 파일을 준비합니다. 현재 GLB, GLTF 포맷을 지원하고 있으며 CAD나 BIM 파일이 있을 경우 포맷 변환을 통해 사용하실 수 있습니다. 3D 모델이 없어도 데이터소스를 연동하고 Icon이나 Indicator로 데이터 변동을 시각화할 수 있지만, 좀 더 효과적인 시각화를 위하여 AWS 파트너사인 Matterport의 유료 앱을 통해 3D 모델을 생성했습니다.

C. 카메라 모듈이 포함된 Raspberry Pi 디바이스

Debian 계열의 Raspberry Pi OS가 설치된 Raspberry Pi 디바이스와 카메라 모듈을 준비합니다. 여기서 사용한 디바이스는 Raspberry Pi 4 Model B, RAM 8GB 디바이스와 Raspberry Pi 전용 카메라 모듈v2를 사용했습니다. 카메라 모듈 설치와 관련해서 Document를 참고하실 수 있습니다. Kinesis Video Streams 에서 제공하는 KVS producer SDK를 지원하는 System Requirements를 확인하실 수 있습니다.

2. Kinesis Video Streams 서비스로 Video Stream 생성

Kinesis Video Streams 서비스는 AWS에서 제공하는 비디오 스트림 데이터 수집 기능을 제공하는 서비스입니다. 수집된 미디어 데이터는 HLS, MPEG-DASH로 스트리밍 기능을 제공할 뿐만 아니라 AWS에서 제공하는 IoT, Analytics 및 Machine Learning 서비스인 Amazon SageMaker 서비스와 연계해서 다양한 기능을 구현할 수 있습니다.

Kinesis Video Streams으로 비디오 스트림 수집 기능을 구현하도록 제공하고 있는 KVS producer SDK를 이용하여 빠르게 비디오 스트림 데이터를 클라우드로 수집했습니다.

3. IoT TwinMaker 서비스로 디지털 트윈 구현

이 단계에서는 IoT TwinMaker 서비스로 클라우드로 수집한 Raspberry Pi의 Video Stream 데이터를 3D 모델 리소스와 연결하여 제 방의 디지털 트윈을 생성합니다.

IoT TwinMaker 소개

IoT TwinMaker 서비스를 이용하면 보다 손쉽게 디지털 트윈을 생성하고 다양한 데이터소스를 연동할 수 있습니다. IoT TwinMaker는 AWS에서 제공하는 다양한 데이터 수집 서비스들과 연동할 수 있도록 Pre-defined된 connector를 제공하고 있고, third-party 솔루션이나 Local에 구현된 데이터베이스와 연동할 수 있도록 Custom한 connector를 구현할 수 있는 유연한 인터페이스를 함께 제공하고 있습니다. 이 포스팅에서는 Pre-defined된 Kinesis Video Streams(KVS) connector를 이용하여 간단하게 데이터 소스를 연결하고 있습니다.

IoT TwinMaker는 실제 환경의 변화에 맞게 디지털 트윈의 변경을 쉽게 적용하기 위해서 실제 환경과 데이터소스의 관계를 모델링할 때 Entity-Component System 패턴을 도입했습니다. 디지털 트윈으로 표현할 환경이나 장비를 Entity로 생성하고 Hierarchy한 구조로 세분화할 수 있습니다. 그리고 TwinMaker와 연결된 데이터 소스들은 Component 형태로 Entity에 추가되어 디지털 트윈을 다각적으로 표현하게 됩니다.

마지막으로 Scene이라는 3D 뷰를 구성하여 디지털 트윈을 구현하게 됩니다. 3D 모델을 배치하고 태그를 추가하여 표현하고자 하는 데이터의 위치를 표현할 수 있습니다. 그리고 Rule을 생성하고 threshold값을 적용하여 데이터의 실시간 변화에 대한 시각화를 제공할 수 있습니다.

이렇게 데이터소스와 연결하여 구현한 디지털 트윈을 시각화하여 실시간 모니터링, 시뮬레이션 서비스 등 다양한 분야에서 활용 가능합니다.

4. Amazon Managed Grafana 서비스로 대시보드 구성 (Optional)

Amazon Managed Grafana 서비스로 대시보드를 생성하고 IoT TwinMaker 플러그인을 적용하여 디지털 트윈을 활용한 시각화를 제공합니다.

AAmazon Managed Grafana를 사용하면 AWS IAM Identity Center (successor to AWS Single Sign-On) 서비스를 이용할 수 있어서 안전하고 쉽게 대시보드 사용자의 인증 및 권한을 관리할 수 있습니다. 대시보드 구성을 위해서 Amazon Elastic Compute Cloud (Amazon EC2) instance에 Grafana를 직접 설치하거나 Custom하게 웹 애플리케이션을 구축하여 디지털 트윈 모니터링을 진행하실 수도 있으므로 필수 요건은 아닙니다.

  • Grafana 8.2.0 버전 이상에서 IoT TwinMaker Plugin을 지원합니다.

Grafana에서 Data source로 AWS IoT TwinMaker를 추가한 다음,  대시보드에서 Visualization을 AWS IoT TwinMaker Scene Viewer로 설정한 Panel을 추가하여 앞 단계에서 생성한 디지털 트윈을 확인하실 수 있습니다. 실시간으로 모니터링하기 위해 하단의 Query를 추가하고 시계열 데이터를 조회하여 데이터의 실시간 변화를 감지할 수 있습니다.

이 외에도 다양한 Panel을 추가하여 원하는 형태로 대시보드를 구현하여 생성한 디지털 트윈을 시각화할 수 있습니다. 실제 환경에서 적용된 다양한 센서 데이터 및 데이터소스를 연동하여 보다 생동감 있게 디지털 트윈을 표현할 수 있고, Amazon Simple Notification Service (Amazon SNS) 서비스와 연동하여 이상 데이터가 감지되면 이메일이나 문자 메시지로 알림 기능을 추가하실 수 있습니다. 이렇게 Grafana에서 제공하는 다양한 기능들을 활용하여 디지털 트윈 모니터링 대시보드를 구현하실 수 있습니다.

마무리

지금까지 비디오 스트림을 연동한 디지털 트윈을 생성하고 대시보드를 구성하여 모니터링하는 방법에 대해 소개했습니다. AWS 서비스들을 이용하여 디지털 트윈으로 실시간 원격 모니터링할 수 있는 Home IoT의 기반을 구축할 수 있습니다. 위에서 작업한 세부 내용들은 AWS IoT TwinMaker로 비디오 스트림을 연동한 디지털 트윈 생성하기에 워크샵 형태로 가이드하였으니 실제 실습을 권장해 드립니다.

현재 다양한 산업 분야에서 디지털 트윈을 이용한 모니터링 및 시뮬레이션 서비스를 구현하여 효율적으로 활용되고 있습니다. 이번에 소개해드린 IoT TwinMaker로 쉽게 디지털 트윈을 구축하는 경험을 해보시길 바랍니다.

참고

아래의 Document에서 각 서비스 별 더 자세한 구현 가이드를 확인하실 수 있습니다.

Jinseon Lee

Jinseon Lee

이진선 IoT Solutions Architect는 IoT 및 Robotics 서비스 담당 SA로서 다양한 산업군 고객들의 Workload에 맞는 IoT 서비스들을 소개하고 IoT 서비스들을 적용한 최적의 아키텍쳐를 구성하도록 기술적인 도움을 제공해드리고 있습니다.