다음을 통해 공유


IoT 자산 및 디바이스 개발

이 개요에서는 일반적인 Azure IoT 솔루션에 연결하는 자산 및 디바이스 개발에 대한 주요 개념을 소개합니다. 각 섹션에는 자세한 내용과 참고 자료를 제공하는 콘텐츠의 링크가 포함되어 있습니다. 일반적으로 디바이스는 IoT Hub와 같은 클라우드 기반 서비스에 직접 연결되지만 자산은 Azure IoT Operations와 같은 환경의 에지 기반 서비스에 연결됩니다. 이 문서에는 자산과 디바이스 모두에 대한 정보가 포함되어 있습니다.

다음 다이어그램은 일반적인 에지 기반 IoT 솔루션의 구성 요소에 대한 개략적인 보기를 보여 줍니다. 이 문서에서는 다이어그램에 표시된 자산 및 커넥터에 중점을 둡니다.

자산 연결 영역을 강조 표시하는 상위 수준 IoT 솔루션 아키텍처를 보여 주는 다이어그램

자산에는 일반적으로 표준 프로토콜을 구현하는 기본 제공 펌웨어가 있습니다. 예를 들어 로봇 암은 OPC UA 클라이언트일 수 있으며 보안 비디오 카메라는 ONVIF를 구현할 수 있습니다. Azure IoT Operations에는 이러한 프로토콜을 사용하여 자산과 통신하고 자산의 메시지를 MQTT 메시지로 변환할 수 있는 다양한 커넥터가 포함되어 있습니다. 일부 자산은 다음과 같은 작업을 수행할 수 있도록 메시지를 받을 수 있습니다.

  • 보안 카메라를 이동하거나 기울입니다.
  • 로봇 팔의 로깅 수준을 변경합니다.
  • 펌웨어 업데이트를 시작합니다.

고유한 사용자 지정 커넥터를 만들어 Azure IoT Operations에서 기본적으로 지원되지 않는 프로토콜을 사용하는 자산에 연결할 수 있습니다.

자산 및 디바이스 유형

IoT 솔루션에는 다양한 유형의 자산 및 디바이스가 포함될 수 있습니다. 일반적으로 에지 기반 솔루션의 클라우드 기반 솔루션 및 자산에서 디바이스를 찾습니다. 디바이스와 자산을 모두 포함하는 하이브리드 솔루션을 사용할 수도 있습니다.

에지 기반 솔루션의 자산 예는 다음과 같습니다.

  • 로봇 팔, 컨베이어 벨트 및 엘리베이터.
  • 산업용 CNC 기계, 선반, 톱 및 드릴.
  • 의료 진단 이미징 머신.
  • 보안 비디오 카메라.
  • 소프트웨어 또는 소프트웨어 구성 요소
  • 프로그래밍 가능한 논리 컨트롤러.

이러한 자산에는 일반적으로 표준 프로토콜을 구현하는 기본 제공 펌웨어가 있습니다. 예를 들어 로봇 암은 OPC UA 클라이언트일 수 있으며 보안 비디오 카메라는 ONVIF 프로토콜을 구현할 수 있습니다. 에지 기반 솔루션에서는 특수 커넥터를 사용하여 이러한 자산에 연결하고 해당 자산의 메시지를 일반적인 형식으로 변환합니다.

자산의 경우 디바이스 개발자 역할에 직접 해당하는 것은 없습니다. 대신 운영자는 자산에 연결하도록 커넥터를 구성할 수 있습니다. 그러나 에지 기반 솔루션에서 기본적으로 지원되지 않는 프로토콜을 사용하는 자산에 연결하기 위해 사용자 지정 커넥터를 개발해야 할 수 있습니다.

모델링 및 스키마

디바이스 및 자산 모델은 디바이스 및 자산이 클라우드와 교환하는 데이터를 정의합니다. 모델을 사용하면 디바이스 및 자산을 IoT 솔루션과 통합하기 위한 다양한 하위 코드 또는 코드 없는 시나리오를 사용할 수 있습니다.

에지 기반 솔루션에서 운영자는 자산에 연결하도록 커넥터를 구성합니다. 이 구성에는 자산의 데이터와 클라우드 스키마 간의 매핑이 포함됩니다. 예를 들어 OPC UA 커넥터를 사용하면 연산자가 MQTT broker와 교환된 JSON 메시지의 태그 및 이벤트에 OPC UA 노드 ID를 매핑할 수 있습니다. 다음 스크린샷은 자산에 대한 두 가지 매핑을 정의하는 디지털 작업 환경 웹 UI의 예를 보여 줍니다.

자산 정의 예제를 보여 주는 스크린샷

솔루션의 다른 위치에서 연산자는 OPC UA 노드 ID의 세부 정보를 알 필요 없이 온도태그 10 태그를 직접 참조할 수 있습니다.

컨테이너화

컨테이너화는 가볍고 격리된 환경에서 코드를 패키지하고 실행하는 방법입니다. 컨테이너는 이식 가능하며 컨테이너 런타임을 지원하는 모든 플랫폼에서 실행할 수 있습니다. 컨테이너는 코드에 일관된 런타임 환경을 제공하기 때문에 코드를 패키지하고 배포하는 좋은 방법입니다. 런타임 환경에는 일반적으로 코드가 실행되어야 하는 서비스, 라이브러리 및 패키지가 포함됩니다.

Azure IoT Operations는 에지에서 실행되는 모든 커넥터, 브로커 및 기타 구성 요소를 컨테이너화합니다. Azure IoT Operations는 컨테이너 오케스트레이션 플랫폼인 Kubernetes 클러스터에 배포합니다. Kubernetes 클러스터에 만드는 사용자 지정 커넥터 또는 기타 구성 요소를 배포합니다.

IoT Hub에 대한 에지 기반 게이트웨이로 Azure IoT Edge를 사용하는 솔루션을 에지 기반 및 클라우드 기반 솔루션의 요소를 모두 포함하는 하이브리드 솔루션으로 볼 수 있습니다.

디바이스 개발 도구

다음 표에서는 사용 가능한 IoT 디바이스 개발 도구 중 일부를 나열합니다.

도구 설명
Azure IoT Hub(VS Code 확장) 이 VS Code 확장을 사용하면 VS Code 내에서 IoT Hub 리소스 및 디바이스를 관리할 수 있습니다.
Azure IoT 탐색기 이 플랫폼 간 도구를 사용하면 데스크톱 애플리케이션에서 IoT Hub 리소스 및 디바이스를 관리할 수 있습니다.
Azure CLI용 Azure IoT 확장 이 CLI 확장에는 디바이스와의 상호 작용을 테스트하는 데 도움이 되는 az iot device simulate, az iot device c2d-messageaz iot hub monitor-events와 같은 명령이 포함되어 있습니다.