Feedback
Feedback

If you are having issues with the exercises, please create a ticket on DevZone: devzone.nordicsemi.com
Drag & Drop Files, Choose Files to Upload 最大 2 個のファイルをアップロードできます。
  • 日本語
    Eng
    日本語
  • Matterアーキテクチャ

    MatterはIPv6上に構築された階層型アーキテクチャです。このアーキテクチャの中核は、デバイスが機能を構造化し、安全で相互運用可能な方法で情報を交換する仕組みを定義しています。このトピックでは、Matterアーキテクチャの主要な構成要素であるノード、エンドポイント、クラスタ、属性、コマンド、デバイスタイプ、およびコミッショニングとネットワークトポロジの基礎について学習します。

    デバイスタイプ、クラスタ、データモデルについては、レッスン3でより詳しく学習しますが、このトピックではコース全体を通じて必要となる概念的な基礎を提供します。

    ノードとエンドポイント

    Matterにおいて、ノードは単一のデバイス上で実行されるMatterアプリケーションの完全な実装を表します。各ノードはMatterファブリック内で一意にアドレス指定可能であり、IPv6を介した安全な通信に参加します。

    Definition

    ファブリックは、相互に信頼し合うMatterデバイスの論理的なグループです。ファブリック内のデバイスは、同じ信頼のルート、共通の構成状態、および一意の64ビットファブリックIDを共有します。

    ノードはエンドポイントに構造化されており、各エンドポイントは関連する機能のセットをグループ化します。エンドポイントにより、デバイスは複数の独立した機能ブロックを公開できます。

    例:

    • スマートロックノードは、ボルト制御用のエンドポイントと、ドア位置検知用の別のエンドポイントを公開する場合があります。
    • サーモスタットノードは、温度測定用とHVAC制御用に別々のエンドポイントを公開する場合があります。

    Note

    エンドポイント0は常にMatterのユーティリティクラスタ(DescriptorやBasic Informationなど)用に予約されています。これはすべてのデバイスで唯一必須のエンドポイントです。すべての機能的動作は、追加のエンドポイントを通じて公開されます。

    クラスタ(高レベルの概念)

    各エンドポイントには1つ以上のクラスタが含まれており、デバイスが提供する個々の機能を定義します。クラスタは以下をグループ化します:

    • 属性 – デバイスの状態を表します(例:温度値)。
    • コマンド – 別のデバイスによってトリガーされるアクション(例:LockDoor)。
    • イベント – 重要な状態変化の通知

    クラスタはMatterのデータモデルの構成要素であり、異なるベンダーのデバイス間の相互運用性を保証します。

    クラスタには以下の種類があります:

    • サーバークラスタ – 属性、コマンド、イベントを保持します
    • クライアントクラスタ – 他のノード上のサーバークラスタと相互作用します

    レッスン3では、独自のアプリケーションでクラスタを追加および変更することを含め、クラスタを広範囲に扱います。

    デバイスタイプ(基本概念)

    デバイスタイプは、製品のカテゴリを表す、仕様で定義された必須クラスタとオプション機能の組み合わせです。例:

    • 電球
    • ドアロック
    • サーモスタット
    • 窓カバー

    デバイスタイプにより、異なるベンダーのデバイスが同じカテゴリを実装する際に一貫した動作をすることが保証されます。デバイスタイプは、1つ以上のエンドポイントに配置された特定のクラスタセットによって形成されます。

    デバイスタイプ、必須クラスタ、機能セットについては、レッスン3で詳しく学習します。

    インタラクションの基礎

    MatterのInteraction Modelは、コントローラとデバイスがデータを交換する方法を定義します。4つの基本的なインタラクションは以下の通りです:

    • Read – 属性値またはイベントを取得します
    • Write – 属性値を更新します
    • Invoke – コマンドを呼び出します
    • Subscribe – 属性の変更またはイベントに関する継続的な更新を受信します

    コースの後半でデバイスのコミッショニングと制御を行う際に、これらのインタラクションを直接扱います。

    コミッショニング(基本的な導入)

    コミッショニングは、デバイスをMatterファブリックに追加する安全なプロセスです。このプロセスには2つの主要な役割があります:

    • コミッショナー – 通常はスマートフォンアプリまたはスマートホームハブ
    • コミッショニー – オンボーディングされるデバイス

    高レベルでは、コミッショニングには以下が含まれます:

    1. デバイスの検出(Bluetooth LEまたはIPベースの検出経由) – 追加準備ができているデバイスを見つける
    2. コミッショナーへのオンボーディング情報の提供(QRコード、手動ペアリングコード、またはNFCタグ) – このデバイスのセットアップパスコードを持っていることを証明する
    3. 安全なPASEセッションの確立 – セットアップパスコードを使用してオンボーディング用の暗号化チャネルを作成する
    4. Device Attestationを使用したデバイスIDの検証 – 信頼する前にデバイスが正規品で認証済みであることを確認する
    5. ネットワーク認証情報の提供(ThreadまたはWi-Fi) – デバイスが動作のためにローカルIPv6ネットワークに参加できるようにする
    6. Node Operational Certificate(NOC)のインストール – デバイスに安全に動作できるようファブリックIDを付与する
    7. 運用検出(DNS-SD)とCASE(Certificate-Authenticated Session Establishment) – コミッショナーがIP上でノードを検出し、通常動作のためのCASEセッションをセットアップする
    8. コミッショニングの完了 – デバイスはファブリック内の運用ノードになりました

    Definition

    PASEは、デバイスのセットアップパスコード(QR/手動ペアリングコード/NFCタグから)を使用してオンボーディング中に作成される一時的な暗号化セッションです。これはコミッショニング交換を保護します。

    CASEは、コミッショニング後の通常動作に使用される安全なセッションです。

    このレッスンの演習1では、nRF Connect SDKのMatterサンプルを使用して、実際にコミッショニングを実行します。

    管理者と複数のファブリック

    ファブリックは、信頼のルートと構成状態を共有するノードのグループです。すべてのファブリックには、そのファブリック内のデバイスを管理できる少なくとも1人の管理者がいます。Matterはマルチファブリック動作をサポートしており、デバイスが同時に複数のエコシステムによって制御されることを可能にします。これは、例えば、家庭が2つのエコシステムを並行して使用する場合(例:Apple HomeとGoogle Home)、またはインストーラー/メンテナンスファブリックが住宅所有者のファブリックと共存する場合に便利です。それぞれが個別の信頼とアクセスを持ちます。

    主要な基礎事項:

    • デバイスは、新しいコミッショニングウィンドウを開くためにAdministrator Commissioning Clusterをサポートする必要があります。
    • 各コミッショナーは、デバイスを追加する際に管理者になります。
    • 異なるファブリックの管理者は、信頼のルートを共有しません。

    マルチファブリックサポートは、Matterのエコシステムに依存しない設計の中核部分です。

    ネットワークトポロジ(高レベル)

    MatterデバイスはIPv6を介して通信し、Thread、Wi-Fi、Ethernetネットワーク全体で動作できます。これらのネットワークは統一されたMatterファブリックを形成します。

    • ボーダールーター – Threadネットワークをより大きなIPv6ネットワークに接続します。
    • ブリッジ – 非Matterエコシステム(Zigbeeなど)をMatterコントローラからアクセス可能にします。
    • コントローラ – コミッショニングを実行し、インタラクション(read/write/invoke/subscribe)を送信します。

    Threadの役割とネットワーク動作については、レッスン2でThreadネットワーキングを学習する際に、より詳しく学びます。

    Switch language?

    Progress is tracked separately for each language. Switching will continue from your progress in that language or start fresh if you haven't begun.

    Your current progress is saved, and you can switch back anytime.

    Register an account
    Already have an account? Log in
    (All fields are required unless specified optional)

    • 8 or more characters
    • Upper and lower case letters
    • At least one number or special character

    Forgot your password?
    Enter the email associated with your account, and we will send you a link to reset your password.