製造工程の準備

製造プロセスには、ファクトリ フロア のタスクとクラウド構成タスクの両方が含まれます。 これらのタスクを中断することなく完了するには、準備が必要です。

次の準備手順は、製造プロセスがスムーズに実行されるようにするのに役立ちます。

  • 機器のセットアップと PC ソフトウェアのインストール
  • 機能テスト用のアプリケーションを開発する
  • アプリケーションとスクリプトが機能することを確認する
  • OS の更新の準備
  • ID とその他の情報を記録する
  • 運用環境で署名されたイメージを取得する

大事な

いくつかの準備手順には、Azure CLI が含まれます。 このような手順を完了するには、インターネット接続の PC と Azure Sphere SDK が必要です。 SDK のインストール手順については、「 Azure Sphere SDK for Windows のインストール 」または「 Azure Sphere SDK for Linux のインストール」を参照してください。

機器のセットアップと PC ソフトウェアのインストール

ファクトリ フロア タスクとクラウド構成タスクの両方に PC が必要です。 その他の必要な機器は、このセクションで説明するように、実行されているタスクのセットによって異なります。 ほとんどの製造タスクには、これらのタスクに使用される PC にインストールする必要がある一部のソフトウェア ツールも必要です。

工場の現場作業用機器

工場の作業には、次の装置が必要です。

  • 工場の床の PC。 各 Azure Sphere デバイスは、ファクトリ フロアの PC に接続する必要があります。 この PC は、Windows 11、Windows 10 Anniversary update (以降)、または Linux を実行している必要があります。

    Linux では、接続されているデバイスが 1 つだけサポートされます。 1 台の PC を使用して複数の Azure Sphere デバイスと同時に通信する場合は、次のいずれかの操作を行います。

    • Windows を実行していて、デバイスごとに 1 つの USB ポートが接続されている PC に接続します。

    • 接続するデバイスごとに 1 つの Linux 仮想マシン (VM) を実行している PC に接続します。 VM の作成に使用する仮想化ソフトウェアは、各 Azure Sphere FTDI プログラミング インターフェイスを個別の専用 Linux VM にルーティングできるように、ハードウェア レベルの USB 周辺機器リダイレクトをサポートする必要があります。

    PC の USB サブシステムでサポートされるのと同じ数の Azure Sphere デバイスを PC に同時に接続できます。 PC ソフトウェア ツールは、一度に接続できるデバイスの数を制限しません。

  • チップ対 PC インターフェイス。 このインターフェイスは、PC と接続されているデバイス間の USB-UART 通信用の PC ソフトウェア ツール で必要です。

    Azure Sphere への PC インターフェイス

    このインターフェイスを実装する方法を選択します。

    • 製造時に PC に接続するインターフェイス ボードを設計します。

    • 接続されている各デバイスに組み込まれているインターフェイスを設計します。 たとえば、MT3620 リファレンス ボード 設計 (RDB) には、このようなインターフェイスが含まれています。

    チップ対 PC インターフェイスの設計要件の詳細については、「 MCU プログラミングおよびデバッグ インターフェイス 」を参照してください。

  • Wi-Fi アクセス ポイント。 デバイスが Wi-Fi に接続して、顧客アプリケーションが Wi-Fi 経由で通信できることを確認できる必要があります。 チップがインターネットが有効なアクセス ポイントに接続すると、空中更新が発生する可能性があるため、Wi-Fi 接続にはインターネットにアクセスできません。

  • 外部テスト機器 (オプション)。 機能テストの場合は、MT3620 (ISU0、ISU1、ISU2、または ISU3) 上の周辺機器の UART を、独自の設計の適切な回路を使用して外部テスト機器に接続できます。 2 つ目の箇条書きで説明されているように、別のボードにチップ対 PC インターフェイスを作成した場合は、この回路をそのボードに追加できます。

  • 無線周波数 (RF) テスト機器。 この機器は、工場の作業に RF テストと校正を含める場合にのみ必要です。 詳細については、「 RF テストとキャリブレーション用の機器とソフトウェア」を参照してください。

クラウド構成タスク用の機器

クラウド構成タスクには、次の機器が必要です。

  • クラウド構成用の PC。 Azure Sphere デバイスをクラウド構成 PC に接続する必要はありません。 この PC は、Windows 11、Windows 10 Anniversary update (以降)、または Linux を実行している必要があります。

  • インターネット接続。 クラウド構成に使用する PC をインターネットに接続する必要があります。

RF テストおよびキャリブレーション用の機器とソフトウェア

製品の要件と設計により、工場の作業に RF テストと校正を含める必要があるかどうかが決まります。 製品に Wi-Fi が必要で、次のいずれかが組み込まれている場合は、デバイスごとに RF テストとキャリブレーションを実行する必要があります。

  • チップダウン設計

  • まだ RF 認定されていないモジュール—質問がある場合は、サプライヤーにチェックします。

RF テストと校正には、次の機器と PC ソフトウェアが必要です。

  • RFテスト機器。 この機器は、次の箇条書きで説明されている RF ツール パッケージと共に使用されます。

    RF ツール C API ライブラリとテスト機器の統合は、お客様の責任となります。 現在、Microsoft は LitePoint と提携して、Azure Sphere RF テスト ライブラリと LitePoint 機器を統合するターンキー ソリューションを提供しています。

    Litepoint を使用した RF テスト

  • RF ツール パッケージ。 このPCソフトウェアには、RF操作のテストと調整に使用するためのユーティリティとC APIライブラリが含まれています。 C API ライブラリを使用すると、RF テストと調整用のカスタム アプリケーションを作成できます。

    このパッケージを入手するには、Microsoft の担当者にお問い合わせください。 工場の床の PC にインストールします。 テスト ハウスでデバイスの認定にツールを使用する必要がある場合は、ソフトウェアを共有する前に Microsoft の担当者にお問い合わせください。

PC ソフトウェア ツール

さまざまなファクトリ フロア タスクとクラウド構成タスクでは、次の PC ソフトウェア ツールを使用できます。 これらのソフトウェア ツールは、これらのタスクに使用される PC にインストールする必要があります。

  • Azure Sphere SDK。 SDK には、Azure CLI と、アプリケーションとデプロイを構築および管理するためのその他のツールが含まれています。 CLI コマンドは、接続されたデバイスへのソフトウェアの読み込み、デバイスの要求、接続されたデバイスに関する詳細の取得などの操作を実行できます。 SDK は、ファクトリ フロアとクラウド構成の両方のタスクに必要です。

    PC が実行されている内容に応じて、 Windows または Linux 用の SDK をインストールします。

  • 製造サンプル。 製造サンプルでは、ファクトリ フロアとクラウド構成の両方のタスクがサポートされ、次のものが含まれます。

    • 最適化された製造操作のために直接 PC からデバイスへの通信を実装する Device Rest API 用の Python および C# クライアント ライブラリ。 これらは、PyPI と NuGet からも入手できます。
    • デバイスの準備チェック、マルチボードリカバリ、マルチボード OTA 構成など、製造のさまざまな段階を自動化する Python スクリプトである一連の製造ツール。
  • RF ツール パッケージ。 このパッケージは、工場の作業に RF テストと調整を含める場合にのみ必要です。 詳細については、「 RF テストとキャリブレーション用の機器とソフトウェア」を参照してください。

機能テスト用のアプリケーションを開発する

機能テストでは、製品が正しく動作することを確認します。 実行する必要がある特定のテストは、個々のハードウェアによって異なります。 機能テストは、工場の作業に含まれている必要があります。

テストは、1 つのアプリケーションとして、または一連のアプリケーションとして整理できます。 Azure Sphere アプリケーションの概要Azure Sphere サンプル、および Azure Sphere SDK のテンプレートは、アプリケーションの設計に関する情報を提供します。 選択した設計に関係なく、「運用環境で署名されたイメージを取得する」の準備手順で説明されているように、機能テスト アプリケーションを 運用環境に署名 し、ファクトリ フロア プロセスの一部としてデプロイする必要があります。

エラー、ログ データ、またはシーケンス テストを報告するために、一部の機能テストでは、テスト対象のチップとの通信が必要になります。 このような通信を有効にするには、MT3620 (ISU0、ISU1、ISU2、または ISU3) 上の周辺機器の UD を使用できます。 自社設計の適切な回路を使用して、これらのUTを工場のフロアPCまたは外部テスト機器に接続します。 チップ間通信をサポートするインターフェイス ボードを作成した場合は、この回線をそのボードに追加できます。

アプリケーションとスクリプトが機能することを確認する

完成した製品アプリケーション、テスト アプリケーション、テスト スクリプトを徹底的にテストする必要があります。 再テストは、Azure Sphere SDK、Azure Sphere OS、またはソフトウェアを更新するたびに推奨されます。

次のガイドラインに従ってください。

  • テスト アプリケーションと完成した製品アプリケーションをインストール、実行、および削除できることを確認します。

  • テスト スクリプト、テスト アプリケーション、および完成した製品アプリケーションが、Azure Sphere SDK と Azure Sphere OS の最新バージョンで動作することを確認します。

OS の更新の準備

サイドロードされたアプリケーションに、新しいバージョンの OS にのみ存在する OS 機能を必要とする更新プログラムがある場合、または Microsoft がセキュリティ更新プログラムを使用して OS をリリースする場合、更新された Azure Sphere OS バージョンをデバイスに読み込む必要がある場合があります。

製造中に Azure Sphere OS の更新を準備するには、次の手順を実行します。

ID とその他の情報を記録する

製造タスクでは、イメージ、コンポーネント、製品、またはデバイス グループを指定する必要がある場合があります。 これらの項目を識別するために使用される ID と名前のレコードは、ファクトリ フロアおよびクラウド構成タスク中に後で使用するために、適切な PC に作成して格納する必要があります。 このセクションでは、各項目の識別情報を取得する方法について説明します。

イメージ ID とコンポーネント ID

各アプリケーションには、コンポーネント ID とイメージ ID があります。 実稼働署名済みイメージの取得準備タスク中に、イメージ ID とコンポーネント ID を記録します。 イメージ ID とコンポーネント ID はどちらも、その準備タスクで使用されるコマンドの azsphere image-package show --image-package <path-to-imagepackage> 出力に表示されます。

製品名とデバイス グループ

製品とデバイス グループを作成するときに、その名前を記録します。 クラウド構成タスクの一部として、各 Azure Sphere デバイスを製品とデバイス グループに割り当てる必要があります。

製造元は、食器洗い機やコーヒーメーカーなど、接続されたデバイスの各モデルに対して製品を作成する必要があります。 接続されているすべてのデバイスには 1 つの製品がありますが、1 つの製品を多数のデバイスに関連付けることができます。 製品を作成すると、既定のデバイス グループが製品内に作成されます。 既定のデバイス グループを使用することも、独自のデバイス グループを作成することもできます。

製品を作成するには、次のように az sphere product create コマンドを 使用します。 と <product description> をそれぞれ、製品に適した名前と説明に置き換えます<product-name>

az sphere product create --name <product-name> --description <product description>

クラウド構成の場合は、 運用環境 の既定のデバイス グループを使用するか、独自のデバイス グループを作成できます。 独自のデバイス グループを作成するには、 次のように az sphere device-group create コマンドを 使用します。 を選択した名前に置き換えます <device-group-name> 。を、デバイス グループを作成する製品の名前に置き換えます <product-name>

az sphere device-group create --name <device-group-name> --product <product-name>

運用環境で署名されたイメージを取得する

Azure Sphere Security Service (AS3) にイメージをアップロードすると、信頼できる方法でデバイスに配布できるように、イメージに署名します。 運用環境にデプロイされたデバイスは、Azure Sphere のセキュリティ保証の一部として、運用環境で署名されたイメージのみを受け入れます。 製造中に、運用環境で署名されたイメージをデバイスに読み込むことができます。 工場のフロア プロセス中にインターネット接続の必要性を回避するには、運用環境で署名されたイメージを 1 回作成し、AS3 からダウンロードし、運用環境でサイドローディングするために工場のフロア PC に保存します。

ファクトリ フロア プロセス中にのみ使用することを目的としたアプリケーションは、 一時的 なイメージとして明示的に識別する必要があります。 これにより、テスト プロセスの最後にこれらのアプリケーションを削除できます。 製造後にデバイスに残るアプリケーションには一時的なイメージを使用しないでください。それ以外の場合、空中更新プロセスは正しく動作しません。

運用環境で署名されたイメージを取得する手順は次のとおりです。

  1. イメージを AS3 にアップロードします。 次のように az sphere image add コマンドを使用し、ソフトウェアを含むイメージ パッケージのパスと名前に置き換えます <path-to-image-package> 。 イメージを --temporary 一時的なものとしてマークするパラメーターを含めます。それ以外の場合は省略します。

    az sphere image add --image <path-to-image-package> --temporary
    
  2. 手順 1 の出力に az sphere image add コマンドが表示したイメージ ID とコンポーネント ID を保存します。一部のファクトリ フロア タスクとクラウド構成タスクでは、後でこれらが必要になります。 イメージ ID は、次の手順でも必要になります。

  3. 運用環境で署名されたイメージをダウンロードします。 az sphere image download コマンドを使用し、ダウンロードするイメージの ID に置き換え、ダウンロード<file-path>したイメージを保存するパスとファイル名に置き換えます<image-id>

    az sphere image download --image <image-id> --destination <file-path>
    

大事な

運用環境で署名されたイメージを取得する手順で使用したカタログとは異なるカタログにデバイスが要求される場合は、デバイスが要求された実際のカタログにアップロードできるように、正確な元の (アップロード前に) イメージ ファイルを保持する必要があります。 この要件については、「 クラウド構成タスク」で詳しく説明します。

更新された信頼されたキーストアを取得する

場合によっては、古い OS に適用する必要がある、新しい運用署名付きイメージが存在する場合があります。 これは、たとえば、バグを修正するためにアプリケーション イメージを更新する場合に発生する可能性があります。

ただし、問題が発生する可能性があります。 OS には、運用署名済みイメージの署名で使用される一連のキーを信頼する "信頼されたキーストア" が含まれています。 運用環境で署名されたイメージが OS より新しい場合、その間に AS3 がイメージ署名キーを更新した場合、OS はイメージの署名に使用されるキーを信頼しない可能性があります。 この問題が OS と運用環境で署名されたイメージの特定の組み合わせに影響するかどうかを判断するには、 ファクトリ フロアのタスクに従います。

この問題は、運用環境で使用される OS を更新することで解決できます。「 OS の更新の準備」を参照してください。 ただし、何らかの理由で OS を更新したくない場合は、代わりに古い OS を使用し、信頼できるキーストアだけを更新できます。

これを行うには、 ライセンス条項 に同意し、 回復イメージをダウンロードし、この zip ファイルから "trusted-keystore.bin" ファイルのみを抽出します。 ファクトリ フロア のタスクでは、この "trusted-keystore.bin" ファイルを使用して、信頼されたキーストアのみを更新する方法について説明します。