클라우드 기반의 첨단 애플리케이션 요건을 충족시키는 지능화된 알고빌더(AlgoBuiler)
상태바
클라우드 기반의 첨단 애플리케이션 요건을 충족시키는 지능화된 알고빌더(AlgoBuiler)
  • 박진희 기자
  • 승인 2019.04.19 09:05
  • 댓글 0
이 기사를 공유합니다

[테크월드=박진희 기자] 최신 애플리케이션은 물리적 자원과 가상 자원의 융합에 기반을 두고 있다. 이는 마이크로컨트롤러, 센서, 커넥티비티, 전원 디바이스, 클라우드, 에지 컴퓨팅, AI, 머신 러닝 분야에서 이뤄진 발전에서 확인할 수 있다. 기술의 진보로 이점을 얻고 있는 주요 시장 부문으로는 소위 산업용 사물 인터넷(IIoT)을 비롯한 산업용 시장을 들 수 있다. IoT 노드는 제조 환경에 구축돼 툴과 장비의 상태를 모니터링하고 제어한다.

기술 트렌드에서 공통적인 두 가지 키워드가 예측정비(Predictive Maintenance)와 예방정비(Prescriptive Maintenance)다. 예측정비는 고장 가능성을 예측해 그에 따라 적절히 대처하고자 장비, 툴, 기계를 모니터링하는 기능이다. 예방정비는 예측정비에서 한 발 더 나아가 고장 가능성을 예측하고 어느 지점에서 기술 작업을 취해야 할지를 알려준다.

기존 방식 또는 AI나 머신 러닝과 같은 첨단 기법을 통해 고장의 근본 원인을 알아내고 해결한다. 두 유형 모두 예방정비의 일반적 방식을 그대로 유지하고 있다. 비용과 자원이 들게 마련인 특별한 개입 없이도 툴과 장비를 주기적으로 보수하는 방식이다.

이런 시나리오에서 많은 기업들이 IIoT를 자사에 맞게 적용해 이익을 얻는 방안을 검토 중에 있다. ST는 고객들이 센서, 마이크로컨트롤러, 커넥티비티, 클라우드 컴퓨팅, 데이터의 시각화와 분석과 로깅을 위한 대시보드를 신속하게 평가하고 실행할 수 있도록 다양한 리소스를 제공한다.

이 글에서는 그래픽 디자인 애플리케이션을 위한 소프트웨어 툴인 ST의 ‘알고빌더(AlgoBuilder)’에 주목하고자 한다. 이 툴은 STM32 마이크로컨트롤러와 MEMS 센서용 애플리케이션의 프로토타입을 신속하게 제작하도록 해준다. 사용자는 센서 기반 애플리케이션을 설계하고, STM32 마이크로컨트롤러를 프로그래밍하며 ST 알고빌더와 함께 제공되는 유니클레오(Unicleo) 소프트웨어를 사용해 결과를 분석할 수 있다.

[그림 1] 모션 환경 파라미터를 추출하는 간단한 알고빌더 디자인
[그림 2] 알고빌더 워크플로우

요약하면, 알고빌더는 코드 한 줄도 작성할 필요 없이 프로토타입을 신속하게 구축하는 방식을 제공하며, 고객의 특정 작업에서 센서를 개발하도록 해준다. 몇 번의 클릭만으로 ST 누클레오(Nucleo) 보드와 X-누클레오- IKS01A2(X-Nucleo-IKS01A2) 확장 보드로부터 가속도, 각 속도, 자기장, 온도, 습도, 압력, FFT, 동작 세기와 그 외 많은 파라미터를 직관적으로 추출할 수 있다. 펌웨어 코드 작성에 시간과 노력을 들일 필요 없이 센서 데이터에 액세스하고 특정 작업에서 데이터를 평가한다.

ST의 MEMS 센서 부문(MSD)은 클라우드 애플리케이션의 첨단 센서에 대한 요구 사항을 충족시키기 위해 알고빌더의 기능을 확대하기로 결정했다. 컴퓨팅을 위해 로컬 하드웨어보다 더 강력한 역할을 수행하는 클라우드 서비스로 루프를 닫을 수 있도록 여러 새로운 기능들이 구현됐다. 특히 새로운 버전의 알고빌더가 아마존 웹 서비스(Amazon Web Services)용 커넥터를 통해 확장됐으며, 현재 프로타입을 제작 중이다. 센서의 미가공 데이터나 더 복합적으로 도출된 데이터들이 클라우드의 여러 서비스와 통합돼, 산업용 IoT나 그 외 많은 분야에서 이전에는 상상할 수 없었던 첨단 애플리케이션을 개발하게 됐다.

알고빌더의 클라우드 진입 지점은 AWS IoT 코어이다. 일단 클라우드로 진입하면, 모든 가능한 마이크로 서비스를 사용해 확장 가능한 클라우드 지향 애플리케이션을 구축할 수 있다. 이는 오디오와 비디오 스트리밍용 아마존 키네시스(Amazon Kinesis), 사용자 통보용 아마존 SNS(Amazon SNS), 스토리지 리소스인 아마존 다이나모DB(Amazon DynamoDB), 컴퓨팅 리소스인 아마존 람다(Amazon Lambda), 데이터 보강용 IoT 애널리틱스(IoT Analytics), AI, 머신 러닝 알고리즘을 적용하기 위한 AWS 세이지메이커(AWS SageMaker)와 서비스들을 융합해 이뤄진다.

[그림 3] 알고빌더, AWS IoT 코어, AWS 마이크로 서비스

클라우드 애플리케이션 개발 분야에서 보통의 숙련도를 지닌 고객이라도 마이크로 서비스들을 통합해 수천 혹은 수백만 명의 사용자 또는 IoT 노드를 동시에 관리할 수 있게 전 세계에서 확장 가능한 애플리케이션을 출시하는 방법을 알고 있다. 즉, 산업용 IoT 분야에서 신속하게 실행하도록 알고빌더에서 들어오는 데이터를 수집하고 활용할 수 있게 된다. 이는 데이터 전달 지연시간과 여타 클라우드 서비스의 한계를 고려해 이뤄진다.

애플리케이션 사례를 통한 알고빌더의 잠재력과 다양한 기능

클라우드 기반 게임 애플리케이션에서 알고빌더를 통합하면 바로 이점을 얻을 수 있다. LSM6DSL MEMS 3D 가속도 센서와 3D 자이로스코프나 LSM303AGR MEMS 3D 가속도 센서, MEMS 3D 지자계 센서의 알고빌더 데이터를 AWS IoT 코어에서 웹 애플리케이션으로 손쉽게 전달해 캐릭터를 애니메이션화하거나 따라 움직이게 할 수 있다.
HTS221 정전용량식 디지털 상대 습도, 온도 센서나 LPS22HB MEMS 압력 센서로 측정된 온도, 습도, 압력에 따라 시나리오 환경을 바꿀 수 있다. [그림 4]는 3D 게임을 구축하기 위한 Babilon.js의 자바스크립트 프레임워크를 보여준다. 게임 개발자들은 이런 방식으로 알고빌더를 통합해 새로운 애니메이션과 매력적인 시나리오를 별 다른 수고 없이 개발할 수 있다.

[그림 4] 게임 애플리케이션에 활용된 알고빌더

AWS 로보메이커(AWS RoboMaker)는 지능형 로봇 애플리케이션을 개발, 테스트, 구축하게 해주는 또 다른 아마존 클라우드 서비스이다. 로보메이커는 가장 널리 사용되는 오픈소스 로봇 소프트웨어 프레임워크인 ROS(Robot Operating System)에 클라우드 서비스 커넥티비티를 추가해 확장한 것이다.

알고빌더의 새로운 기능들을 통해 이 서비스에서 데이터를 직접 통합하고 수집하며, 이 경우에도 ST MEMS 센서를 기반으로 새로운 로봇과 자동화 애플리케이션을 개발할 수 있다. 센서 데이터가 AWS 머신 러닝 서비스, 모니터링 서비스, 분석 서비스가 결합된 새로운 도메인에 적용되면서 로봇이 데이터 스트리밍, 내비게이션, 통신, 이해, 학습을 수행한다.

[그림 5] 로봇 자동화에 활용된 알고빌더

마지막으로 알고빌더는 GPS 애플리케이션 테스트에도 활용할 수 있다. 데이터 세트에 위도와 경도 GPS 좌표를 포함시킴으로써 IoT 노드를 지리적 맥락에서 맵하게 된다. 또한, 생성된 알고빌더 센서 데이터는 상태 정보와 추가 키를 결합하면서 AWS 다이나모DB 기타 서비스들과 손쉽게 통합할 수 있다.

대시보드를 갖춘 클라우드 웹 프로토 타입

대시보드는 단순하고 복잡한 문제에 적용된 가상 현실을 결합해 인공 신경망(ANN), 컨볼루션 신경망(CNN), 클러스터링 알고리즘, 협력 알고리즘과 같은 개념을 고객들이 쉽게 접하고 경험하는 기능들을 제시한다. 센서, 클라우드, 머신 러닝을 어떻게 통합하고 활용할 수 있는지를 고객들에게 설명할 수 있게 한다.

이와 관련해 ST 심바이오스(ST Symbios) 시스템은 내부, 외부 고객에게 통합 리소스, 빌딩 블록 혹은 레퍼런스 디자인만을 제공하기 위한 실험 플랫폼이다. 다양한 종류의 애플리케이션을 위해 데이터 수집, 스트리밍, 보강, 분석에 대한 센서-클라우드 통합의 잠재력을 탐구하고, 센서 정확도와 신뢰성 향상을 위해 잠재적 솔루션까지 확인할 수 있다.

심바이오스는 알고빌더에서 거의 실시간으로 데이터를 탐색하고 폴라 그래프로 패턴을 표시한다. 선택, 측정된 파라미터에 따라 단일 또는 다중의 센서에서 다양한 센서 시그니처를 생성한다.

[그림 6] 머신 러닝을 통한 클라우드의 주파수 스펙트럼 분석에 활용된 알고빌더

[그림 6]은 X, Y, Z 축으로 생성된 알고빌더 FFT를 심바이오스로 나타낸 것으로, 특히 이 폴라 그래프는 각 주파수 당 FFT 크기를 보여준다. 심바이오스는 ST MEMS 가속도 센서로 모니터링한 모터로부터 데이터 세트를 형성하고(예. 각기 다른 모터 속도에 대한 주파수 모터 시그니처), 패턴을 레이블링하며, CNN을 적용해 패턴 학습을 할 수 있는 기능을 제공한다. 알고빌더의 센서 데이터 패턴을 사용하면 몇 번의 클릭만으로도 관리된 딥 러닝 모델 구축이 가능하다. 동일 모터나 원격으로 연결된 다른 모터들에서도 CNN 분류기를 즉시 평가할 수 있다. 또한, STM32 IoT 노드에서 포팅을 실행하도록 STCubeMX.AI와 호환 가능한 형식으로 CNN을 생성할 수 있다. 

[그림 7] 알고빌더와 심바이오스 활용

[그림 7]은 또 다른 심바이오스 애플리케이션을 보여준다. AWS를 통과해 알고빌더에서 나오는 환경, 모션 파라미터가 폴라 그래프에서 시그니처를 형성하는 동안 탐색되고 표현된다. 폴라 그래프의 극 좌표축이 알고빌더에서 추출해 전송된 파라미터를 나타내기 때문에 이 애플리케이션으로 보드를 이동하거나 환경 파라미터를 변경하면 시그니처 또는 패턴이 어떻게 변화하는지 알 수 있다. 따라서 개발자는 클라우드 서비스에서 가져온 센서 데이터가 애플리케이션에 도움이 될지를 신속하게 파악할 수 있다.

또한, 개발자들에게 유연성을 제공하기 위해 심바이오스는 센서 데이터를 다른 두 폴라 그래프로 보내 각기 다르게 취합하게 해준다. [그림 8]에서 좌측 폴라 그래프는 모션 MEMS 가속도 센서와 자이로스코프 파라미터만 보여주고, 우측 폴라 그래프는 모션 MEMS 데이터를 HTS221, LPS22HB의 환경 데이터와 결합한 결과를 보여준다.

이 경우에도 사용자는 제공된 툴박스를 이용해 적절한 학습 세트를 생성할 수 있다. 인공 신경망 학습단계를 시작하고 실행 중 테스트도 가능하다. 성능이 만족스러우면 개발자는 STCubeMX.AI로 STM32 마이크로컨트롤러에 포팅하도록 ANN의 생성을 결정할 수 있다. 당연히 이 워크플로우를 이해한 개발자라면 이 방식을 다른 곳에도 똑같이 적용해 개발 주기를 앞당길 수 있을 것이다.

[그림 8] 알고빌더와 심바이오스 활용

앞서 선보인 다른 사례들은 단일 애플리케이션 환경에서 알고빌더로 오디오와 비디오 스트리밍을 융합하는 작업과 관련된다. 이는 그래프 이론과 가상 현실로 지원되는 첨단 데이터 융합 알고리즘(뇌 자동화)을 개발하게 해준다.

여기에서는 서로 간에 계층적으로 연결되고(브레인) 로컬 STM32 IoT 노드, 에지나 클라우드, 웹 애플리케이션에서 실행되는 단일한 ANN이 복잡한 작업들을 해결한다. [그림 9, 10]은 이종적인 인공 신경망들의 협력 네트워크의 한 사례를 보여준다. 이 브레인은 새로운 알고빌더 입력이 주어지기를 기다리고 있는데, 일단 입력 패턴이 주어지면 연결된 모든 노드로 이를 전파하고, 단일 ANN을 활성화하면서 출력을 다른 ANN으로 전달한다. 이처럼 특정 업무를 전담하는 ANN은 협력을 통해 복잡한 툴과 장비를 여러 관점에서 동시에 모니터링 하는 등 보다 복잡한 일을 처리한다.

[그림 9] 새로운 알고빌더 입력을 대기 중인 브레인
[그림 10] 알고빌더 입력의 센서 자극에 의해 작동하는 브레인

맺음말

결론적으로 ST의 알고빌더를 활용하면 코드 한 줄 작성할 필요 없이 클라우드 기반의 첨단 애플리케이션을 개발할 수 있다. 클릭 몇 번만으로도 애플리케이션의 실현 가능성을 높이며 개발 주기를 줄일 수 있다는 점이 장점이다. 심바이오스는 클라우드 컴퓨팅 시대에도 센서와 클라우드의 통합 가능성을 보여주는 시험 사례들을 제시한다.

 

글: 시모네 페리(Simone FERRI) ST 아날로그 MEMS 센서 그룹장, 엔리코 알레시(Enrico ALESSI) ST 아날로그 MEMS 센서 그룹, Application R&D

자료제공: ST마이크로일렉트로닉스


관련기사