빠른 시작 - Azure Digital Twins용 3D Scenes Studio(미리 보기) 시작
Azure Digital Twins 3D Scenes Studio(미리 보기)는 기업과 일선 작업자가 시각적 컨텍스트를 사용하여 Azure Digital Twins 솔루션에서 운영 데이터를 사용하고 조사할 수 있는 몰입형 3D 환경입니다.
이 문서에서는 샘플 데이터가 포함된 Azure Digital Twins 인스턴스 및 Azure 스토리지 리소스를 포함하여 3D Scenes Studio를 사용하는 데 필요한 모든 리소스를 설정합니다. 그런 다음, 스튜디오에서 샘플 Azure Digital Twins 환경에 연결된 장면을 만듭니다.
이 빠른 시작에서 사용하는 샘플 장면은 공장 로봇 팔의 운반 효율성을 모니터링합니다. 로봇 팔은 매시간 특정 수의 상자를 집어 들고, 비디오 카메라는 각 팔을 모니터링하다가 팔이 상자를 집어 들지 못하면 이를 감지합니다. 각 팔에는 Azure Digital Twins의 디지털 트윈이 연결되어 있으며, 팔이 상자를 놓칠 때마다 디지털 트윈의 데이터가 업데이트됩니다. 이 시나리오를 고려하여, 이 빠른 시작에서는 상자를 놓칠 때마다 시각적 경고와 함께 공장의 팔을 시각화하는 3D 장면을 설정하는 방법을 안내합니다.
장면은 다음과 같습니다.
필수 조건
이 빠른 시작을 완료하려면 Azure 구독이 필요합니다. 아직 없는 경우 지금 체험 구독을 만드세요.
또한 이 빠른 시작에서 장면에 사용할 샘플 glTF(Graphics Language Transmission Format) 3D 파일을 다운로드해야 합니다. GitHub : RobotArms.glb에서 다음 샘플 파일을 다운로드합니다.
Azure Digital Twins 및 샘플 데이터 설정
Azure Digital Twins를 사용하는 첫 번째 단계는 Azure Digital Twins 인스턴스를 만드는 것입니다. 서비스 인스턴스를 만든 후에는 빠른 시작의 뒷부분에 있는 3D Scenes Studio 시각화에 인스턴스를 연결할 수 있습니다.
이 섹션의 나머지 부분에서는 인스턴스를 만드는 방법을 안내합니다. 이전 빠른 시작에서 Azure Digital Twins 인스턴스를 이미 설정했으면 다음 섹션으로 건너뛰어도 됩니다.
Azure Digital Twins 인스턴스 만들기
이 섹션에서는 Azure Portal을 사용하여 Azure Digital Twins의 새 인스턴스를 만듭니다. 포털로 이동하여 자격 증명으로 로그인합니다.
포털에서 Azure 서비스 홈페이지 메뉴에서 리소스 만들기를 선택하여 시작합니다.
검색 창에서 Azure Digital Twins를 검색하고, 결과에서 Azure Digital Twins 서비스를 선택합니다.
플랜 필드를 Azure Digital Twins로 설정하고, 만들기 단추를 선택하여 서비스의 새 인스턴스 만들기를 시작합니다.
설정의 기본 사항 탭에서 새 인스턴스의 구독, 리소스 그룹, 리소스 이름과 지역을 포함한 필드에 정보를 입력합니다. Azure Digital Twins 데이터 소유자 역할 할당 상자를 선택하여 인스턴스에서 데이터를 관리할 권한을 자신에게 부여합니다.
참고 항목
Azure Digital Twins 데이터 소유자 역할 할당 상자가 회색으로 표시되면 Azure 구독에서 리소스에 대한 사용자 액세스를 관리할 권한이 없는 것입니다. 이 섹션에서 인스턴스를 계속 만들 수 있습니다. 이 경우 빠른 시작의 나머지 부분을 완료하기 전에 필요한 권한이 있는 누군가가 인스턴스에서 사용자에게 이 역할을 할당해야 합니다.
이 요구 사항을 충족하는 일반적인 역할은 소유자, 계정 관리자 또는 사용자 액세스 관리자와 기여자의 조합입니다.
검토 + 만들기를 선택하여 인스턴스 만들기를 완료합니다.
입력한 세부 정보를 보여 주는 요약 페이지가 표시됩니다. 만들기를 선택하여 인스턴스를 확인하고 만듭니다.
그러면 인스턴스의 배포 상태를 추적하는 [개요] 페이지로 이동됩니다.
배포가 완료되었다는 메시지가 페이지에 표시되기를 기다립니다.
호스트 이름 수집
배포가 완료되면 포털에서 리소스로 이동 단추를 사용하여 인스턴스의 [개요] 페이지로 이동합니다.
다음으로, 나중에 사용할 수 있도록 인스턴스의 호스트 이름 값을 기록해 둡니다.
샘플 모델 및 트윈 생성
이 섹션에서는 Azure Digital Twins 데이터 시뮬레이터 도구를 사용하여 인스턴스를 채우는 샘플 모델 및 트윈을 생성합니다. 그런 다음, 시뮬레이터를 사용하여 샘플 데이터를 그래프의 트윈으로 스트리밍합니다.
참고 항목
이 빠른 시작에서는 3D Scenes Studio에서 볼 수 있는 환경을 만드는 프로세스를 간소화하기 위해 모델, 트윈 및 시뮬레이션된 데이터가 제공됩니다. 사용자 고유의 완전한 Azure Digital Twins 솔루션을 디자인하는 경우 모델 및 트윈을 직접 만들어 환경을 자세히 설명하고, 그에 맞게 고유의 데이터 흐름을 설정합니다.
이 샘플 시나리오는 로봇 팔 6개가 있는 패키지 배포 센터를 나타냅니다. 각 팔에는 놓친 상자의 ID와 함께 놓친 상자 수를 추적하는 속성이 있는 디지털 트윈이 있습니다.
웹 브라우저에서 데이터 시뮬레이터로 이동합니다.
인스턴스 URL 공간에 이전 섹션의 호스트 이름을 입력합니다. 시뮬레이션 유형을 로봇 팔로 설정합니다.
환경 생성 단추를 사용하여 모델 및 트윈을 사용하는 샘플 환경을 만듭니다. (이렇게 해도 인스턴스에 이미 있는 모델과 트윈은 삭제되지 않고 새로운 모델과 트윈이 추가됩니다.)
아래로 스크롤하고 시뮬레이션 시작을 선택하여 시뮬레이션된 데이터를 Azure Digital Twins 인스턴스로 보내기 시작합니다. 시뮬레이션은 이 창이 열려 있고 시뮬레이션 시작 옵션이 활성화된 동안에만 실행됩니다.
Azure Digital Twins Explorer Graph 도구를 사용하여 만든 모델 및 그래프를 볼 수 있습니다. 이 도구로 전환하려면 왼쪽 메뉴에서 Graph 아이콘을 선택합니다.
그런 다음, 쿼리 실행 단추를 사용하여 인스턴스에 만들어진 모든 트윈 및 관계를 쿼리합니다.
각 트윈을 선택하여 자세히 볼 수 있습니다.
업로드된 모델과 모델 간의 관계를 보려면 모델 그래프를 선택합니다.
팁
Azure Digital Twins Explorer를 소개하는 내용은 Azure Digital Twins Explorer 시작을 참조하세요.
스토리지 리소스 만들기
다음으로, 새 스토리지 계정을 만들고 스토리지 계정에서 컨테이너를 만듭니다. 3D Scenes Studio는 이 스토리지 컨테이너를 사용하여 3D 파일 및 구성 정보를 저장합니다.
스토리지 계정에 대한 읽기 및 쓰기 권한도 설정하겠습니다. 이러한 지원 리소스를 신속하게 설정하기 위해 이 섹션에서는 Azure Cloud Shell을 사용합니다.
브라우저에서 Cloud Shell로 이동합니다.
다음 명령을 실행하여 CLI 컨텍스트를 이 세션의 구독으로 설정합니다.
az account set --subscription "<your-Azure-subscription-ID>"
다음 명령을 실행하여 구독에 스토리지 계정을 만듭니다. 이 명령에는 이름을 입력하고 스토리지 계정의 지역과 리소스 그룹에 대한 자리 표시자를 선택할 수 있는 자리 표시자가 포함되어 있습니다.
az storage account create --resource-group <your-resource-group> --name <name-for-your-storage-account> --location <region> --sku Standard_RAGRS
명령이 성공적으로 완료되면 출력에 새 스토리지 계정의 세부 정보가 표시됩니다. 출력에서
ID
값을 찾고 다음 명령에서 사용할 값을 복사합니다.다음 명령을 실행하여 스토리지 계정에 대한 Storage Blob 데이터 소유자에게 권한을 부여합니다. 이 액세스 수준을 사용하면 3D Scenes Studio에서 읽기 및 쓰기 작업을 모두 수행할 수 있습니다. 이 명령에는 Azure 계정과 연결된 이메일의 자리 표시자와 이전 단계에서 복사한 스토리지 계정의 ID가 포함되어 있습니다.
az role assignment create --role "Storage Blob Data Owner" --assignee <your-Azure-email> --scope <ID-of-your-storage-account>
명령이 성공적으로 완료되면 출력에 역할 할당에 대한 세부 정보가 표시됩니다.
다음 명령을 실행하여 스토리지 계정에 대한 CORS를 구성합니다. 이는 3D Scenes Studio가 스토리지 컨테이너에 액세스하는 데 필요합니다. 이 명령에는 스토리지 계정 이름에 대한 자리 표시자가 포함되어 있습니다.
az storage cors add --services b --methods GET OPTIONS POST PUT --origins https://explorer.digitaltwins.azure.net --allowed-headers Authorization x-ms-version x-ms-blob-type --account-name <your-storage-account>
이 명령에는 출력이 없습니다.
다음 명령을 실행하여 스토리지 계정에 프라이빗 컨테이너를 만듭니다. 3D Scenes Studio 파일은 여기에 저장됩니다. 이 명령에는 스토리지 컨테이너의 이름을 입력할 자리 표시자와 스토리지 계정 이름의 자리 표시자가 포함되어 있습니다.
az storage container create --name <name-for-your-container> --public-access off --account-name <your-storage-account>
명령이 성공적으로 완료되면 출력에
"created": true
가 표시됩니다.
3D Scenes Studio 환경 초기화
모든 리소스가 설정되었으므로, 3D Scenes Studio에서 환경을 만드는 데 사용할 수 있습니다. 이 섹션에서는 장면을 만들고 Azure Digital Twins 인스턴스에 있는 샘플 그래프에 맞게 사용자 지정하겠습니다.
3D Scenes Studio로 이동합니다. 스튜디오가 열리고 Azure Digital Twins Explorer에서 마지막으로 액세스한 Azure Digital Twins 인스턴스에 연결됩니다. 시작 데모를 해제합니다.
인스턴스 이름 옆에 있는 편집 아이콘을 선택하여 인스턴스 및 스토리지 컨테이너 세부 정보를 구성합니다.
Azure Digital Twins 인스턴스 URL의 경우 호스트 이름 수집 단계에서 인스턴스의 호스트 이름을
https://<your-instance-host-name>
URL로 채웁니다.Azure Storage 계정 URL의 경우 스토리지 리소스 만들기 단계의 스토리지 계정 이름을 다음 URL에 입력합니다.
https://<your-storage-account>.blob.core.windows.net
.Azure Storage 컨테이너 이름에 스토리지 리소스 만들기 단계에서 가져온 스토리지 컨테이너의 이름을 입력합니다.
저장을 선택합니다.
새 3D 장면 추가
이 섹션에서는 필수 조건에서 다운로드한 RobotArms.glb 3D 모델 파일을 사용하여 새 3D 장면을 만듭니다. 장면은 3D 모델 파일과 자동으로 만들어지는 구성 파일로 이루어집니다.
이 샘플 장면에는 배포 센터와 로봇 팔의 시각화가 포함되어 있습니다. 이 시각화를 샘플 모델 및 트윈 생성 단계에서 만든 샘플 트윈에 연결하고, 이후 단계에서 데이터 기반 보기를 사용자 지정하겠습니다.
3D 장면 추가 단추를 선택하여 새 장면 만들기를 시작합니다. 장면의 이름 및 설명을 입력하고 파일 업로드를 선택합니다.
컴퓨터에서 RobotArms.glb 파일을 찾아 엽니다. 만들기를 실행합니다.
파일이 업로드되면 3D Scenes Studio의 기본 화면에 이 파일이 다시 나열됩니다.
장면을 선택하고 열어서 봅니다. 장면은 빌드 모드에서 열립니다.
장면 요소 만들기
다음으로, 3D 시각화에서 요소를 정의하고, 앞에서 설정한 Azure Digital Twins 그래프의 트윈에 연결하겠습니다.
장면 시각화에서 아무 로봇 팔을 선택합니다. 그러면 가능한 요소 작업이 표시됩니다. + 새 요소 만들기를 선택합니다.
새 요소 패널의 기본 트윈 드롭다운 목록에는 연결된 Azure Digital Twins 인스턴스에 있는 모든 트윈의 이름이 포함됩니다.
Arm1을 선택합니다. 그러면 디지털 트윈 ID(
$dtId
)가 자동으로 요소 이름으로 적용됩니다.요소 만들기를 선택합니다.
이제 요소가 장면의 요소 목록에 표시됩니다.
동작 만들기
다음으로, 요소의 동작을 만들겠습니다. 이러한 동작을 통해 요소의 데이터 시각적 개체 및 관련 비즈니스 논리를 사용자 지정할 수 있습니다. 그런 다음, 이러한 데이터 시각적 개체를 탐색하여 물리적 환경의 상태를 이해할 수 있습니다.
동작 목록으로 전환하고 새 동작을 선택합니다.
표시 이름으로 포장 라인 효율성을 입력합니다. 요소 아래에서 Arm1을 선택합니다.
이 빠른 시작에서 사용되지 않는 트윈 탭을 건너뜁니다.
시각적 규칙 탭으로 전환합니다. 시각적 규칙은 시각적 규칙은 요소의 상태를 나타내도록 구성할 수 있는 요소의 데이터 기반 오버레이입니다.
먼저 패킹 라인의 효율성을 나타내는 몇 가지 조건을 설정합니다.
규칙 추가를 선택합니다.
시간별 픽업의 표시 이름을 입력합니다. 단일 속성에서 속성 식을 유지하고 속성 드롭다운 목록을 엽니다. 이 목록에는 Arm1 요소의 기본 트윈에 대한 모든 속성 이름이 포함됩니다. PrimaryTwin.FailedPickupsLastHr을 선택합니다. 그런 다음 조건 추가를 선택합니다.
다음으로, 시간당 픽업에서 너무 많은 패키지가 누락된 경우를 나타내는 몇 가지 경계를 정의합니다. 이 시나리오에서는 팔이 한 시간에 세 번 이상 픽업을 놓치면 주의가 필요하다고 가정해 보겠습니다. 레이블을 >놓친 픽업 3개 조건에 지정하고 4에서 Infinity 사이의 값 범위를 정의합니다(최소 범위 값은 , 최댓값은 배타적임). 요소 색을 빨간색으로 할당합니다. 저장을 선택합니다.
다시 조건 추가를 선택하고 1~3개 픽업 누락으로 레이블이 지정된 조건을 만듭니다. 1에서 4 사이의 값 범위를 정의하고 요소 색을 주황색으로 할당합니다. 조건을 저장합니다.
조건 추가를 한 번 더 선택하고 0개 픽업 누락으로 레이블이 지정된 조건을 만듭니다. 0과 1 사이의 값 범위를 정의하고 요소 색을 녹색으로 할당합니다. 조건을 저장합니다.
세 가지 조건을 모두 만든 후 새 시각적 규칙을 저장합니다.
다음으로 누락된 패키지에 대한 경고를 표시하는 시각적 규칙을 하나 더 만듭니다.
시각적 규칙 탭에서 규칙 추가를 다시 선택합니다.
표시 이름에 PickupFailedAlert을 입력합니다. 속성 식을 사용자 지정(고급)으로 변경하고 PrimaryTwin.PickupFailedAlert 속성을 입력한 다음 유형을 부울로 설정합니다. 패키지 픽업에 실패할 때 True로 설정되는 팔 트윈의 부울 속성입니다. 조건 추가를 선택합니다.
${PrimaryTwin.PickupFailedBoxID} 실패의 레이블을 입력합니다. 나중에 장면 보기에서 이는 팔 트윈의 문자열 속성 PickupFailedBoxID의 값을 동적으로 표시합니다. 이 속성에는 팔이 가장 최근에 픽업하지 못한 상자를 나타내는 ID가 있습니다. 값을 True로 설정하고 배지의 시각적 개체 형식을 선택합니다. 색을 빨간색으로 설정하고 아이콘을 선택합니다. 저장을 선택합니다.
이제 시각적 규칙 탭에 나열된 두 규칙을 모두 볼 수 있습니다.
위젯 탭으로 전환합니다. 위젯은 동작이 나타내는 시나리오를 이해하는 데 도움이 되는 추가 컨텍스트 및 데이터를 제공하는 데이터 기반 시각적 개체입니다. 여기서는 arm 요소에 대한 속성 정보를 표시하는 두 가지 시각적 위젯을 추가하겠습니다.
먼저, 로봇 팔의 유압 값 계기를 표시할 위젯을 만듭니다.
다음으로, 로봇 팔의 라이브 카메라 스트림에 대한 링크가 있는 위젯을 만듭니다.
위젯 추가를 선택합니다. 위젯 라이브러리에서 링크 위젯을 선택하고 위젯 추가를 선택합니다.
새 위젯 옵션에서 레이블로 라이브 로봇 팔 카메라을 입력합니다. URL의 경우 예제 URL http://contoso.armstreams.com/${PrimaryTwin.$dtId}를 사용할 수 있습니다. (이 샘플의 URL에 호스트되는 라이브 카메라는 없지만, 이 링크는 실제 시나리오에서 동영상 피드를 호스트할 수 있는 위치를 나타냅니다.)
위젯 만들기를 선택합니다.
이제 동작 옵션이 완성되었습니다. 동작 만들기를 선택하여 동작을 저장합니다.
이제 포장 라인 효율성 동작이 장면의 동작 목록에 표시됩니다.
장면 보기
지금까지 빌드 모드에서 3D Scenes Studio를 사용했습니다. 이제 보기 모드로 전환합니다.
요소 목록에서, 앞에서 만든 Arm1 요소를 선택합니다. 그러면 시각화가 확대되어 시각적 요소가 표시되고, 시각적 요소에 대하 설정한 동작이 표시됩니다.
추가 요소에 동작 적용
이 예제의 로봇 팔 6개처럼 환경에 유사한 요소가 여러 개 있을 수 있으며, 이러한 요소는 시각화에서 비슷하게 표시됩니다. 로봇 팔 하나에 대한 동작을 만들고 뷰어에서 어떻게 보이는지 확인했으므로, 이 섹션에서는 신속하게 다른 팔에 동작을 추가하여 뷰어에서 동일한 유형의 정보를 표시하게 만드는 방법을 보여줍니다.
빌드 모드로 돌아갑니다. 장면 요소 만들기에서 했던 것처럼 시각화에서 다른 팔을 선택하고 새 요소 만들기를 선택합니다.
요소 만들기를 선택하여 새 로봇 팔 요소 만들기를 완료합니다.
보기 탭으로 전환하여 새 로봇 팔 요소에서 작동하는 동작을 확인합니다. 동작 만들기에서 선택한 모든 정보는 이제 장면의 두 로봇 팔 요소에 모두 사용할 수 있습니다.
팁
원한다면 이 섹션의 단계를 반복하여 나머지 팔 4개에 대한 요소를 만들고, 모든 팔에 동작을 적용하여 시각화를 완료할 수 있습니다.
학습 검토 및 컨텍스트화
이 빠른 시작에서는 Azure Digital Twins 데이터에 대한 몰입형 대시보드를 만들고, 최종 사용자와 공유하고, 실제 환경에 대한 중요한 인사이트의 접근성을 높이는 방법을 보여줍니다.
이 빠른 시작에서는 패키지를 픽업하는 로봇 팔이 있는 패키지 배포 센터를 나타내는 샘플 3D 장면을 만들었습니다. 이 시각화는 디지털 트윈 그래프에 연결되었으며, 시각화의 팔을 지원 데이터를 제공하는 특정 디지털 트윈에 연결했습니다. 또한 지난 1시간 동안 해당 팔이 실패한 상자 픽업을 포함하여 전체 장면을 볼 때 해당 팔에 대한 주요 정보를 표시하는 시각적 동작을 만들었습니다.
이 빠른 시작에서는 Azure Digital Twins 데이터 시뮬레이터를 사용하여 공장 시나리오에 대한 샘플 모델과 트윈을 빠르게 만들었습니다. 사용자 고유의 환경에서 Azure Digital Twins을 사용하는 경우 고유의 모델 및 트윈을 만들어 환경의 요소를 정확하고 자세히 설명합니다. 또한 이 빠른 시작에서는 데이터 시뮬레이터를 사용하여 로봇 팔이 상자를 놓쳤을 때 디지털 트윈 속성 업데이트를 구동하는 "라이브" 데이터를 시뮬레이션했습니다. 사용자 고유의 환경에서 Azure Digital Twins를 사용하는 경우 라이브 데이터 수집은 사용자 고유의 환경 센서에 따라 사용자가 직접 설정하는 프로세스입니다.
리소스 정리
이 빠른 시작을 마친 후 리소스를 정리하려면 다음에 수행할 작업에 따라 제거하려는 Azure Digital Twins 리소스를 선택합니다.
- Azure Digital Twins 자습서를 계속 진행할 생각이라면 이 빠른 시작의 인스턴스를 해당 문서에 다시 사용할 수 있으므로 제거할 필요가 없습니다.
이 문서에서 Azure Digital Twins 인스턴스를 계속 사용하지만 해당 모델, 트윈 및 관계를 모두 지우려면 다음 az dt job deletion CLI 명령을 실행합니다.
az dt job deletion create -n <name-of-Azure-Digital-Twins-instance> -y
이러한 요소의 일부를 삭제하려는 경우 az dt twin relationship delete, az dt twin delete, az dt model delete 명령을 사용하여 제거하려는 요소만 선택적으로 삭제할 수 있습니다.
Azure Digital Twins 인스턴스가 더 이상 필요 없는 경우 Azure Portal에서 삭제할 수 있습니다.
포털에서 인스턴스의 개요 페이지로 돌아갑니다. (해당 탭을 이미 닫은 경우 Azure Portal 검색 창에서 해당 이름을 검색하고 검색 결과에서 인스턴스를 선택하여 인스턴스를 다시 찾을 수 있습니다.)
삭제를 선택하여 모든 모델 및 트윈을 포함한 인스턴스를 삭제합니다.
Azure Portal에서 스토리지 계정의 개요 페이지로 이동한 다음, 삭제를 선택하여 스토리지 리소스를 삭제할 수 있습니다. 그러면 스토리지 계정과 그 안에 있는 컨테이너, 컨테이너 안에 있는 3D 장면 파일이 모두 삭제됩니다.
로컬 머신에 다운로드한 샘플 3D 파일을 삭제할 수도 있습니다.
다음 단계
다음으로, Azure Digital Twins 자습서를 진행하여 사용자 고유의 Azure Digital Twins 환경을 빌드합니다.