(57)【要約】【課題】可動物体の環境でのアプリケーション開発を支援することができるシステム及び方法を提供する。【解決手段】可動物体マネージャは、可動物体との接続を確立することができ、この可動物体からの１つ又は複数のデータパケットを受信する。次いで、この可動物体マネージャは、前記１つ又は複数のデータパケット内の情報を、ユーザ端末上のアプリケーションに提供することができる。【選択図】図４
2018049654.tif 000002
【特許請求の範囲】
【請求項１】
可動物体マネージャを介して、可動物体との接続を確立するステップと、
前記可動物体マネージャを介して、１つ又は複数のデータパケットを前記可動物体から受信するステップと、
前記可動物体マネージャを介して、前記１つ又は複数のデータパケット内の情報をユーザ端末上のアプリケーションに提供するステップと
を含む可動物体の環境でのアプリケーション開発を支援する方法。
【請求項２】
前記可動物体が、無人機、無人車両、ハンドヘルド装置、又はロボットである、請求項１に記載の方法。
【請求項３】
前記可動物体マネージャを介して、１つ又は複数のコマンドを前記アプリケーションから受信するステップと、
前記可動物体マネージャを介して、前記１つ又は複数のコマンドを前記可動物体に送信するステップと
を更に含む、請求項１に記載の方法。
【請求項４】
通信装置を使用して、前記１つ又は複数のデータパケットを前記可動物体から受信するステップを更に含む、請求項１に記載の方法。
【請求項５】
前記通信装置が、複数のリンクを介して前記可動物体と通信するように動作し、それぞれの前記リンクを使用して、互いに異なるタイプのデータパケットを伝送する、請求項４に記載の方法。
【請求項６】
前記通信装置が、リンクを介して前記可動物体と通信するように動作し、このリンクを使用して、混合タイプのデータパケットを伝送する、請求項４に記載の方法。
【請求項７】
通信マネージャを使用して、前記１つ又は複数のデータパケットに関連付けられた通信プロトコルを処理するステップを更に含む、請求項１に記載の方法。
【請求項８】
データマネージャを使用して、前記可動物体から受信した情報を、ユーザ端末上の前記アプリケーションに分配するステップを更に含む、請求項１に記載の方法。
【請求項９】
前記可動物体マネージャが、インターフェースを介して１つ又は複数のアプリケーションによってアクセスできる、請求項１に記載の方法。
【請求項１０】
前記インターフェースと１つ又は複数のインターフェース構成要素とを関連付けるステップを更に含み、それぞれの前記インターフェース構成要素が、可動物体内のモジュールを表す、請求項９に記載の方法。
【請求項１１】
それぞれの前記インターフェース構成要素とリスナを関連付けるステップを更に含み、これにより、前記インターフェース構成要素が、前記表されたモジュールに関連する情報を受信できるようになる、請求項１０に記載の方法。
【請求項１２】
前記可動物体が無人機であり、前記インターフェースが、カメラ構成要素、電池構成要素、ジンバル構成要素、通信構成要素、及び飛行制御装置構成要素を備える、請求項９に記載の方法。
【請求項１３】
前記インターフェースが地上局構成要素を備え、これが前記飛行制御装置構成要素に関連付けられ、前記地上局構成要素が、１つ又は複数の飛行制御操作を実行するように動作する、請求項１２に記載の方法。
【請求項１４】
認証サーバを使用して前記アプリケーションを認証した後、前記アプリケーションが前記可動物体と通信できるようにするステップを更に含む、請求項１に記載の方法。
【請求項１５】
１つ又は複数のマイクロプロセッサと、
前記１つ又は複数のマイクロプロセッサ上で実行される可動物体マネージャと
を備え、
前記可動物体マネージャが、
可動物体との接続を確立し、
１つ又は複数のデータパケットを前記可動物体から受信し、
前記１つ又は複数のデータパケット内の情報をユーザ端末上のアプリケーションに提供する
ように動作する可動物体の環境でのアプリケーション開発を支援するシステム。
【請求項１６】
前記可動物体が、無人機、無人車両、ハンドヘルド装置、又はロボットである、請求項１５に記載のシステム。
【請求項１７】
前記可動物体マネージャが、１つ又は複数のコマンドを前記アプリケーションから受信し、
前記１つ又は複数のコマンドを前記可動物体に送信する
ように動作する、請求項１５に記載のシステム。
【請求項１８】
前記１つ又は複数のデータパケットを前記可動物体から受信するように動作する通信装置を更に備える、請求項１５に記載のシステム。
【請求項１９】
前記通信装置が、複数のリンクを介して前記可動物体と通信するように動作し、それぞれの前記リンクを使用して、互いに異なるタイプのデータパケットを伝送する、請求項１８に記載のシステム。
【請求項２０】
前記通信装置が、リンクを介して前記可動物体と通信するように動作し、このリンクを使用して、混合タイプのデータパケットを伝送する、請求項１８に記載のシステム。
【請求項２１】
前記可動物体マネージャが、通信マネージャを使用して、前記１つ又は複数のデータパケットに関連付けられた通信プロトコルを処理するように動作する、請求項１５に記載のシステム。
【請求項２２】
前記可動物体マネージャが、データマネージャを使用して、前記可動物体から受信した情報をユーザ端末上のアプリケーションに分配するように動作する、請求項１５に記載のシステム。
【請求項２３】
前記可動物体マネージャが、インターフェースを介して１つ又は複数のアプリケーションによってアクセスできる、請求項１５に記載のシステム。
【請求項２４】
前記インターフェースが、１つ又は複数のインターフェース構成要素に関連付けられ、それぞれの前記インターフェース構成要素が、可動物体内のモジュールを表す、請求項２３に記載のシステム。
【請求項２５】
それぞれの前記インターフェース構成要素が、リスナに関連付けられ、これにより、前記インターフェース構成要素が、前記表されたモジュールに関連する情報を受信できるようになる、請求項２４に記載のシステム。
【請求項２６】
前記可動物体が無人機であり、前記インターフェースが、カメラ構成要素、電池構成要素、ジンバル構成要素、通信構成要素、及び飛行制御装置構成要素を備える、請求項２３に記載のシステム。
【請求項２７】
前記インターフェースが地上局構成要素を備え、これが前記飛行制御装置構成要素に関連付けられており、前記地上局構成要素が、１つ又は複数の飛行制御操作を実行するように動作する、請求項２６に記載のシステム。
【請求項２８】
前記アプリケーションを認証した後、前記アプリケーションが前記可動物体と通信できるように動作する認証サーバを更に備える、請求項１５に記載のデータ処理方法。
【請求項２９】
命令を内部に記憶した持続的なコンピュータ読取り可能媒体であって、プロセッサによって実行されると、
可動物体マネージャを介して、可動物体との接続を確立するステップと、
前記可動物体マネージャを介して、１つ又は複数のデータパケットを前記可動物体から受信するステップと、
前記可動物体マネージャを介して、前記１つ又は複数のデータパケット内の情報をユーザ端末上のアプリケーションに提供するステップと
を含むステップを実行する、持続的なコンピュータ読取り可能媒体。
【請求項３０】
１つ又は複数のマイクロプロセッサと、
前記１つ又は複数のマイクロプロセッサ上で実行される可動物体マネージャと
を備え、
前記可動物体マネージャは、
ユーザ端末上のアプリケーションとの接続を確立し、
前記可動物体内の１つ又は複数の関数モジュールから情報を受信し、
前記１つ又は複数のデータパケットを前記アプリケーションに送信し、
前記１つ又は複数のデータパケットが前記受信した情報を含む
ように動作する可動物体の環境でのアプリケーション開発を支援するシステム。
【請求項３１】
可動物体の環境でのアプリケーション開発を支援するための方法であって、
認証サーバを介してアプリケーションからアクティベーション要求を受信するステップであって、前記アクティベーション要求が、可動物体にアクセスするための権限を求める要求を含むステップと、
１つ又は複数のポリシーを前記アクティベーション要求に適用するステップと、
前記アプリケーションに資格がある場合、前記可動物体にアクセスするための権限を前記アプリケーションに付与するステップと
を含む方法。
【請求項３２】
前記可動物体が、無人機、無人車両、ハンドヘルド装置、又はロボットである、請求項３１に記載の方法。
【請求項３３】
前記アプリケーションに関連付けられたアプリケーション識別子に基づいて、アプリケーションキーを前記アプリケーションに割り当てるステップを更に含む、請求項３１に記載の方法。
【請求項３４】
前記アプリケーションキーが、前記アプリケーション識別子と一義的に結びついており、前記アプリケーションキーが、１組の権限に関連付けられている、請求項３３に記載の方法。
【請求項３５】
異なるアプリケーション識別子を有する別のアプリケーションに、異なるアプリケーションキーを割り当てるステップを更に含み、前記異なるアプリケーションキーが、異なる組の権限に関連付けられている、請求項３４に記載の方法。
【請求項３６】
前記アクティベーション要求が、前記アプリケーションキーを含む、請求項３３に記載の方法。
【請求項３７】
前記認証サーバを介して、最大インストレーション数を維持するステップを更に含み、前記最大インストレーション数が、事前構成又は動的構成されるようになっている、請求項３１に記載の方法。
【請求項３８】
アプリケーションがアクティブにされると、アクティブにされたアプリケーションカウントを更新するステップを更に含む、請求項３７に記載の方法。
【請求項３９】
前記アクティブにされたアプリケーションカウントが前記最大インストレーション数以上である場合、前記アクティベーション要求を却下するステップを更に含む、請求項３８に記載の方法。
【請求項４０】
前記最大インストレーション数を増やして、アップグレード要求を処理するステップ、又は
前記最大インストレーション数をゼロに設定して、不法若しくは不適切なアプリケーションを停止するステップ
を更に含む、請求項３７に記載の方法。
【請求項４１】
前記可動物体にアクセスするためのインターフェースを前記アプリケーションが使用できるようにするステップを更に含む、請求項３１に記載の方法。
【請求項４２】
前記可動物体が無人機であり、前記インターフェースが、カメラ構成要素、電池構成要素、ジンバル構成要素、通信構成要素、及び飛行制御装置構成要素を備える、請求項４１に記載の方法。
【請求項４３】
前記インターフェースが地上局構成要素を備え、これが前記飛行制御装置構成要素に関連付けられ、前記地上局構成要素が、１つ又は複数の飛行制御操作を実行するように動作する、請求項４２に記載の方法。
【請求項４４】
前記地上局構成要素が、特定の組の権限を有するアプリケーションによってのみアクセス可能になるように構成される、請求項４３に記載の方法。
【請求項４５】
可動物体の環境でのアプリケーション開発を支援するためのシステムであって、
１つ又は複数のマイクロプロセッサと、
前記１つ又は複数のマイクロプロセッサ上で実行される認証サーバと
を備え、
前記認証サーバは、
アプリケーションからアクティベーション要求を受信し、前記アクティベーション要求が、可動物体にアクセスするための権限を求める要求を含み、
１つ又は複数のポリシーを前記アクティベーション要求に適用し、
前記アプリケーションに資格がある場合、前記可動物体にアクセスするための前記権限を前記アプリケーションに付与する
ように動作するシステム。
【請求項４６】
前記可動物体が、無人機、無人車両、ハンドヘルド装置、又はロボットである、請求項４５に記載のシステム。
【請求項４７】
前記認証サーバが、前記アプリケーションに関連付けられたアプリケーション識別子に基づいて、アプリケーションキーを前記アプリケーションに割り当てるように動作する、請求項４５に記載のシステム。
【請求項４８】
前記アプリケーションキーが、前記アプリケーション識別子と一義的に結びついており、前記アプリケーションキーが、１組の権限に関連付けられている、請求項４７に記載のシステム。
【請求項４９】
前記認証サーバが、異なるアプリケーション識別子を有する別のアプリケーションに、異なるアプリケーションキーを割り当てるように動作し、前記異なるアプリケーションキーが、異なる組の権限に関連付けられている、請求項４８に記載のシステム。
【請求項５０】
前記アクティベーション要求が、前記アプリケーションキーを含む、請求項４７に記載のシステム。
【請求項５１】
前記認証サーバが、最大インストレーション数を維持するように動作し、前記最大インストレーション数が、事前構成又は動的構成されるようになっている、請求項４７に記載のシステム。
【請求項５２】
アプリケーションがアクティブにされると、前記認証サーバが、アクティブにされたアプリケーションカウントを更新するように動作する、請求項５１に記載のシステム。
【請求項５３】
前記アクティブにされたアプリケーションカウントが前記最大インストレーション数以上である場合、前記認証サーバが、前記アクティベーション要求を却下するように動作する、請求項４７に記載のシステム。
【請求項５４】
前記認証サーバが、
前記最大インストレーション数を増やして、アップグレード要求を処理し、又は
前記最大インストレーション数をゼロに設定して、不法若しくは不適切なアプリケーションを停止する
ように動作する、請求項４７に記載のシステム。
【請求項５５】
前記認証サーバは、前記可動物体にアクセスするためのインターフェースを前記アプリケーションが使用できるようにする、請求項４５に記載のシステム。
【請求項５６】
前記可動物体が無人機であり、前記インターフェースが、カメラ構成要素、電池構成要素、ジンバル構成要素、通信構成要素、及び飛行制御装置構成要素を備える、請求項５５に記載のシステム。
【請求項５７】
前記インターフェースが地上局構成要素を備え、これが前記飛行制御装置構成要素に関連付けられており、前記地上局構成要素が、１つ又は複数の飛行制御操作を実行するように動作する、請求項５５に記載のシステム。
【請求項５８】
前記地上局構成要素が、特定の組の権限を有するアプリケーションによってのみアクセス可能になるように構成される、請求項５５に記載のシステム。
【請求項５９】
命令を内部に記憶した持続的なコンピュータ読取り可能媒体であって、プロセッサによって実行されると、
認証サーバを介してアプリケーションからアクティベーション要求を受信するステップであって、前記アクティベーション要求が、可動物体にアクセスするための権限を求める要求を含むステップと、
１つ又は複数のポリシーを前記アクティベーション要求に適用するステップと、
前記アプリケーションに資格がある場合、前記可動物体にアクセスするための権限を前記アプリケーションに付与するステップと
を含むステップを実行する、持続的なコンピュータ読取り可能媒体。
【請求項６０】
可動物体の環境でのアプリケーション開発を支援するシステムであって、
１つ又は複数のマイクロプロセッサと、
前記１つ又は複数のマイクロプロセッサ上で実行されるウェブポータルと
を備え、
前記ウェブポータルが、
アプリケーションからアプリケーション開発情報を受信し、
前記受信したアプリケーション開発情報を認証サーバに提供する
ように動作し、
前記認証サーバは、
アプリケーションからアクティベーション要求を受信し、前記アクティベーション要求が可動物体にアクセスするための権限を求める要求を含み、
１つ又は複数のポリシーを前記アクティベーション要求に適用し、
前記アプリケーションに資格がある場合、前記可動物体にアクセスするための前記権限を前記アプリケーションに付与する
ように動作するシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
無人機の時代が到来している。無人機は、考古学研究、スポーツイベント、災害救助、環境保護など、数多くの様々な分野で使用してもよい。無人機、並びに無人車両、ハンドヘルド装置、ロボットなど他の可動物体は、これまでの産業を発展させるための新しい方向及び独特な視点を提供することができる。
【０００２】
これは、本発明の実施形態が取り組もうとする一般的な領域である。
【発明の概要】
【課題を解決するための手段】
【０００３】
本明細書には、可動物体の環境におけるアプリケーション開発を支援できるシステム及び方法が記載されている。可動物体マネージャは、可動物体との接続を確立することができ、この可動物体からの１つ又は複数のデータパケットを受信する。次いで、この可動物体マネージャは、前記１つ又は複数のデータパケット内の情報を、ユーザ端末上のアプリケーションに提供することができる。
【０００４】
本明細書にはまた、可動物体の環境におけるアプリケーション開発を支援できるシステム及び方法が記載されている。認証サーバが、アプリケーションからアクティベーション要求を受信することができ、このアクティベーション要求は、可動物体にアクセスするための権限を求める要求を含む。次いで、認証サーバは、１つ又は複数のポリシーをアクティベーション要求に適用し、アプリケーションに資格がある場合は、可動物体にアクセスするための権限をアプリケーションに付与することができる。
【図面の簡単な説明】
【０００５】
【図１】本発明の様々な実施形態による、可動物体の環境でのアプリケーションの例示的な図である。
【図２】本発明の様々な実施形態により、アプリケーションと可動物体の間の通信をサポートするために複数のデータ接続を使用する様子の例示的な図である。
【図３】本発明の様々な実施形態により、アプリケーションと可動物体の間の通信をサポートするために高速接続を使用する様子の例示的な図である。
【図４】本発明の様々な実施形態により、可動物体の環境でのソフトウェアアプリケーション開発を支援する様子の例示的な図である。
【図５】本発明の様々な実施形態による、可動物体の環境での可動物体マネージャの例示的な図である。
【図６】本発明の様々な実施形態による、可動物体の環境での通信プロトコルの抽象概念の例示的な図である。
【図７】本発明の様々な実施形態による、可動物体のアプリケーション環境でのパケットフォーマットの例示的な図である。
【図８】本発明の様々な実施形態により、可動物体アプリケーションをサポートするために可動物体マネージャを使用する様子のフローチャートを示す。
【図９】本発明の様々な実施形態により、ソフトウェア開発環境において可動物体インターフェースをサポートする様子の例示的な図である。
【図１０】本発明の様々な実施形態による、無人機インターフェースの例示的な図である。
【図１１】本発明の様々な実施形態による、ソフトウェア開発キット（ＳＤＫ）における無人機用の構成要素の例示的な図である。
【図１２】本発明の様々な実施形態により、ソフトウェア開発環境において可動物体インターフェースをサポートする様子のフローチャートを示す。
【図１３】本発明の様々な実施形態により、可動物体の環境においてセキュリティモデルをサポートするために認証サーバを使用する様子の例示的な図である。
【図１４】本発明の様々な実施形態により、可動物体の環境において複数のアプリケーションをサポートするために認証サーバを使用する様子の例示的な図である。
【図１５】本発明の様々な実施形態により、可動物体の環境でのセキュリティモデルをサポートする様子の例示的な図である。
【図１６】本発明の様々な実施形態により、可動物体の環境でのセキュリティモデルをサポートする様子のフローチャートを示す。
【発明を実施するための形態】
【０００６】
本発明は、添付図面中の各図において一例として示すものであって、限定するために示すものではない。各図面において、同じ参照番号は同様の要素を指す。本開示での、「ある」又は「１つの」又は「幾つかの」実施形態への言及は、必ずしも同じ実施形態への言及ではなく、こうした言及は少なくとも１つを意味することに留意されたい。
【０００７】
以下のような本発明の説明では、可動物体の例として無人機を使用する。それだけに限らず、他のタイプの可動物体も使用できることが当業者には明らかとなろう。
【０００８】
例示的な可動物体の環境
図１は、本発明の様々な実施形態による、可動物体の環境でのアプリケーションの例示的な図である。図１に示すように、可動物体の環境１００でのアプリケーション１１２は、物理リンク１１０を介して可動物体１０１と通信することができる。可動物体１０１は、無人機、無人車両、ハンドヘルド装置、及び／又はロボットとすることができる。
【０００９】
本発明の様々な実施形態によれば、可動物体１０１は、様々な関数モジュール１１１を備えることができる。たとえば、無人機は、カメラモジュール、電池モジュール、ジンバルモジュール、通信モジュール、及び飛行制御装置モジュールなどを備えることができる。
【００１０】
図１に示すように、アプリケーション１１２は、ユーザ端末１０２に実装することができる。たとえば、このユーザ端末１０２は、携帯用パーソナルコンピューティング装置、スマートフォン、遠隔制御装置、及び／又はパーソナルコンピュータとすることができる。
【００１１】
更に、ユーザ端末１０２は、通信装置（図示せず）を備えることができ、この装置は、ユーザ端末１０２上のアプリケーション１１２と、可動物体１０１上の様々なモジュール１１１との間の通信を処理する役割を担う。たとえば、無人機は、アップリンク及びダウンリンクを有することができる。アップリンクを使用して、制御信号を送信することができ、ダウンリンクを使用して、メディアストリーム又はビデオストリームを送信することができる。
【００１２】
本発明の様々な実施形態によれば、物理リンク１１０は、ネットワーク（の一部）とすることができ、このネットワークは、ＷｉＦｉ、ブルートゥース（登録商標）、３Ｇ／４Ｇ、他の無線周波数技術など、様々な無線技術に基づいている。更に、物理リンク１１０は、インターネット技術など他のコンピュータネットワーク技術に基づくことができる。
【００１３】
図２は、本発明の様々な実施形態により、アプリケーションと可動物体の間の通信をサポートするために複数のデータ接続を使用する様子の例示的な図である。図２に示すように、可動物体の環境２００におけるレンジエクステンダ２０３などの通信装置を使用して、ユーザ端末２０２に実装されたアプリケーション２２１と、可動物体２０１上の様々な関数モジュール２１０との間の通信を処理することができる。可動物体２０１は、無人機、無人車両、ハンドヘルド装置、及びロボットのうち少なくとも１つとすることができる。
【００１４】
本発明の様々な実施形態によれば、ユーザ端末２０２は、無線接続２０４を介して、通信装置すなわちレンジエクステンダ２０３に接続することができる。或いは、通信装置は、ケーブルを介してユーザ端末２０２と接続することができる。更に、ユーザ端末２０２は、遠隔制御（ＲＣ）接続２０７を介して、可動物体２０１と通信することができる。
【００１５】
更に、通信装置２０３は、複数の接続２０５〜２０６を介して可動物体２０１と通信することができ、これらの接続を使用して様々なタイプのデータパケットを送信する。
【００１６】
図２に示すように、可動物体２０１は、様々な関数モジュール２１０に加えて、メディア／ビデオサーバ２１１及びデータサーバ２１２を備える。メディア／ビデオ接続２０５はＵＣＰプロトコルに基づいてもよく、これを使用して、メディア／ビデオサーバ２１１から通信装置２０３（たとえばレンジエクステンダ）にメディア／ビデオ情報を伝送することができる。データ接続２０６はＴＣＰプロトコルに基づいてもよく、これを使用して、データサーバ２１２と通信装置２０３の間で、飛行状況の情報やユーザコマンドなどのデータを伝送することができる。
【００１７】
更に、データ接続２０６は、アプリケーション２２１から可動物体２０１に、且つデータサーバ２１２からアプリケーション２２１に（すなわち、アップリンクとダウンリンクの両方において）データを伝送することができる。
【００１８】
図３は、本発明の様々な実施形態により、アプリケーションと可動物体の間の通信をサポートするために高速接続を使用する様子の例示的な図である。図３に示すように、可動物体の環境３００における高速通信モジュール３０３などの通信装置を使用して、ユーザ端末３０２に実装されたアプリケーション３２１と、可動物体３０１上の様々な関数モジュール３１０との間の通信を処理することができる。可動物体３０１は、無人機、無人車両、ハンドヘルド装置、及びロボットのうち少なくとも１つとすることができる。
【００１９】
本発明の様々な実施形態によれば、高速通信モジュール３０３は、高速接続３０５を介して可動物体３０１と通信するように動作し、この高速接続を使用して、コマンド情報やメディア／ビデオストリームなど、混合タイプのデータパケットを伝送することができる。また、無人機などの可動物体３０１は、高速接続３０５を使用して、アップリンクとダウンリンクの両方をサポートすることができる。アップリンクを使用して、制御信号を送信することができ、ダウンリンクを使用して、メディアストリーム又はビデオストリーム、及び様々な飛行状況情報を送信することができる。
【００２０】
本発明の様々な実施形態によれば、ユーザ端末２０２は、ケーブル３０４を介して、高速通信モジュール３０３に接続することができる。或いは、高速通信モジュール３０３は、無線接続を介してユーザ端末３０２と接続することができる。更に、ユーザ端末３０２は、遠隔制御（ＲＣ）接続３０７を介して、可動物体３０１と通信することができる。
【００２１】
図３に示すように、可動物体３０１は、高速通信モジュール３１１を備えることができる。高速通信モジュール３０３と高速通信モジュール３１１の間の接続３０５は、たとえば、直交周波数分割多重化（ＯＦＤＭ）技術に基づく様々なプロトコルなどの高速通信プロトコルに基づくことができる。
【００２２】
可動物体３０１上の高速通信モジュール３１１は、可動物体３０１の様々な関数モジュール３１０から、リアルタイムで並列に情報を収集することができる。次いで、高速通信モジュール３１１は、受信データをシリアルフォーマットに変換することができ、接続３０５を介してこれを伝送することができる。データパケットが高速通信モジュール３０３に到達すると、この高速通信モジュール３０３は、このデータをシリアルフォーマットからパラレルフォーマットに変換することができる。
【００２３】
その一方で、高速通信モジュール３０３がアプリケーション３２１から様々なコマンドを受信すると、この高速通信モジュール３０３は、これらのコマンドをシリアルフォーマットで高速通信モジュール３１１に伝送することができる。データパケットが高速通信モジュール３１１に到達すると、この高速通信モジュール３１１は、データをシリアルフォーマットからパラレルフォーマットに変換し、このデータを可動物体３０１上の様々なモジュール３１０に並列に分配することができる。
【００２４】
可動物体マネージャ
図４は、本発明の様々な実施形態により、可動物体の環境でのソフトウェアアプリケーション開発を支援する様子の例示的な図である。図４に示すように、可動物体の環境４００でのアプリケーション４０３は、可動物体マネージャ４０２を使用して、可動物体４０１にアクセスし、それを制御することができ、このマネージャは、様々な関数モジュールを制御するファームウェア４１１を使用する。可動物体４０１は、無人機、無人車両、携帯型コンピューティング装置、ハンドヘルド装置、又はロボットとすることができる。
【００２５】
本発明の様々な実施形態によれば、可動物体マネージャ４０２は、ソフトウェア開発キット（ＳＤＫ）の一部とすることができ、これを使用して、可動物体の環境４００でのソフトウェアアプリケーションの開発を支援する。
【００２６】
図４に示すように、可動物体マネージャ４０２は、可動物体４０１との接続を確立することができ、アプリケーション４０３と可動物体４０１の間の通信を管理する。
【００２７】
たとえば、可動物体マネージャ４０２は、１つ又は複数のデータパケットを可動物体４０１から受信することができる。次いで、この可動物体マネージャ４０２は、前記１つ又は複数のデータパケット内の情報を、アプリケーション４０３に提供することができる。また、可動物体マネージャ４０２は、１つ又は複数のコマンドをアプリケーションから受信し、この１つ又は複数のコマンドを可動物体４０１に送信することができる。
【００２８】
本発明の様々な実施形態によれば、可動物体マネージャ４０２は、インターフェース４１２を介してアプリケーション４０３によってアクセスできる。
【００２９】
更に、可動物体マネージャ４０２は、可動物体の環境４００における様々な場所に位置するよう構成してもよい。たとえば、可動物体マネージャ４０２は、アプリケーション４０３が実装されているユーザ端末に存在してもよい。或いは、可動物体マネージャ４０２は、遠隔サーバ、通信装置、又は可動物体４０１に存在してもよい。
【００３０】
更に、認証サーバ４０４を使用して、可動物体の環境４００でのアプリケーション開発を支援するためのセキュリティモデルを提供することができる。
【００３１】
図５は、本発明の様々な実施形態による、可動物体の環境での可動物体マネージャの例示的な図である。図５に示すように、可動物体マネージャ５０１を使用して、可動物体５１０にアクセスし、それを制御することができ、この可動物体５１０は、様々な関数モジュール５１１〜５１３を含むことができる。
【００３２】
たとえば、可動物体マネージャ５０１は、アプリケーション、たとえばＡＰＰ５１１〜５１３とともにユーザ端末５０５に実装することができる。或いは、可動物体マネージャ５１０を、別個のサーバ又は通信装置に実装することができ、そこから、アプリケーションが可動物体５１０へのアクセス権を得ることができる。また、可動物体マネージャ５０２は、可動物体５１０上に直接実装することができる。
【００３３】
可動物体マネージャ５０１は、通信マネージャ５０２、データマネージャ５０３、及びインターフェース５０４を含むことができる。通信マネージャ５０２を使用して、通信プロトコルに関連付けられた１つ又は複数のデータパケットを処理することができる。データマネージャ５０３を使用して、アプリケーションと可動物体５１０の間のデータ交換を管理することができる。更に、可動物体マネージャ５０１は、インターフェース５０４を設けることができ、このインターフェースは、可動物体の環境５００でのアプリケーション５１１〜５１３によってアクセスできる。
【００３４】
図６は、本発明の様々な実施形態による、可動物体の環境での通信プロトコルの抽象概念の例示的な図である。図６に示すように、通信プロトコル６００は、データリンク層６０３、ネットワーク層６０２、及びアプリケーション層６０１を含むことができる。
【００３５】
データリンク層６０３は、データフレーミング、データチェック、及びデータ再送信を処理する役割を担うことができる。ネットワーク層６０２は、データパケットの経路指定及び中継をサポートする役割を担うことができる。アプリケーション層６０１は、可動物体内の様々な関数モジュールの挙動を制御することなど、様々なアプリケーションロジックを処理する役割を担うことができる。
【００３６】
本発明の様々な実施形態によれば、通信プロトコル６００は、カメラ、飛行遠隔制御装置、ジンバル、デジタルメディアプロセッサ、及び回路板を含むことができる飛行画像システムなど、可動物体内の様々なモジュール間の通信をサポートすることができる。
【００３７】
更に、通信プロトコル６００は、万能非同期受信送信機（ＵＡＲＴ）技術、コントローラ・エリア・ネットワーク（ＣＡＮ）技術、集積回路間（Ｉ２Ｃ）技術など、様々な物理リンク技術とともに使用することができる。
【００３８】
図７は、本発明の様々な実施形態による、可動物体のアプリケーション環境でのパケットフォーマットの例示的な図である。図７に示すように、パケット７００は、ヘッダ７０１、アプリケーションヘッダ７０２、データ７１０、及び末尾７０３を含むことができる。
【００３９】
ヘッダ７０１及び末尾７０３は、ネットワークでユーザデータを送達するのに必要とする制御情報を含むことができる。たとえば、制御情報は、送信元及び宛先のネットワークアドレス、誤り検出符号、順序付け情報を含むことができる。
【００４０】
アプリケーションヘッダ７０２は、様々な送信側情報及び受信側情報を含むことができる。たとえば、送信側及び受信側は、可動物体内の様々なモジュール間に、またユーザ端末上のアプリケーション間に存在することができる。
【００４１】
図８は、本発明の様々な実施形態により、可動物体アプリケーションをサポートするために可動物体マネージャを使用する様子のフローチャートを示す。図８に示すように、ステップ８０１において、可動物体マネージャは、可動物体との接続を確立することができる。次いで、ステップ８０２で、可動物体マネージャは、１つ又は複数のデータパケットを可動物体から受信することができる。更に、ステップ８０３で、可動物体マネージャは、前記１つ又は複数のデータパケット内の情報を、ユーザ端末上のアプリケーションに提供することができる。
【００４２】
可動物体インターフェース
図９は、本発明の様々な実施形態により、ソフトウェア開発環境において可動物体インターフェースをサポートする様子の例示的な図である。図９に示すように、可動物体インターフェース９０３を使用して、ソフトウェア開発キット（ＳＤＫ）環境などソフトウェア開発環境９００での可動物体９０１にアクセスすることができる。
【００４３】
更に、可動物体９０１は、様々な関数モジュールＡ〜Ｃ（９１１〜９１３）を含むことができ、可動物体インターフェース９０３は、様々なインターフェース構成要素Ａ〜Ｃ（９３１〜９３３）を含むことができる。可動物体インターフェース９０３内の前記各インターフェース構成要素Ａ〜Ｃ（９３１〜９３３）は、可動物体９０１内のモジュールＡ〜Ｃ（９１１〜９１３）を表すことができる。
【００４４】
本発明の様々な実施形態によれば、可動物体インターフェース９０３は、アプリケーションと可動物体９０１の間の分散コンピューティングモデルをサポートするための、１つ又は複数のコールバック関数を提供することができる。
【００４５】
アプリケーションがコールバック関数を使用して、可動物体９０１がコマンドを受信したかどうか確認することができる。また、アプリケーションがコールバック関数を使用して、実行結果を受信することができる。したがって、アプリケーション及び可動物体９０１は、空間的及び論理的に分離されていても対話することができる。
【００４６】
図９に示すように、インターフェース構成要素Ａ〜Ｃ（９３１〜９３３）は、リスナＡ〜Ｃ（９４１〜９４３）に関連付けられてもよい。リスナＡ〜Ｃ（９４１〜９４３）は、インターフェース構成要素Ａ〜Ｃ（９３１〜９３３）に、対応するコールバック関数を使用して、関連するモジュールから情報を受信するよう通知することができる。
【００４７】
更に、データマネージャ９０２は、可動物体インターフェース９０３用のデータ９２０を準備し、可動物体９０１の関連する機能を分離及びパッケージ化することができる。また、データマネージャ９０３を使用して、アプリケーションと可動物体９０１の間のデータ交換を管理することができる。したがって、アプリケーション開発者は、複雑なデータ交換プロセスに深入りする必要がない。
【００４８】
たとえば、ＤＪＩ  ＳＤＫは、インスタンスメッセージを伝達し、無人機から実行結果を受信するための、一連のコールバック関数を提供することができる。ＤＪＩ  ＳＤＫは、確実に情報交換が安定になり、また完了するよう、ＤＪＩコールバック関数のライフサイクルを構成することができる。たとえば、ＤＪＩ  ＳＤＫは、無人機と（たとえば、アンドロイドシステム又はｉＯＳシステムを使用する）スマートフォン上のアプリケーションとの間の接続を確立することができる。スマートフォンのライフサイクルに続いて、無人機から情報を受信する関数などのＤＪＩコールバック関数は、スマートフォンシステム内のパターンを利用し、スマートフォンシステムのライフサイクルでの様々な段階に従って命令文を更新することができる。
【００４９】
図１０は、本発明の様々な実施形態による、無人機インターフェースの例示的な図である。図１０に示すように、無人機インターフェース１００３は、無人機１００１を表すことができる。したがって、無人機環境１０００でのアプリケーション、たとえばＡＰＰ１００４〜１００６は、無人機１００１にアクセスし、それを制御することができる。
【００５０】
たとえば、無人機１００１は、カメラ１０１１、電池１０１２、ジンバル１０１３、飛行制御装置１０１４、レンジエクステンダ１０１５など、様々なモジュールを備えることができる。
【００５１】
それに対応して、可動物体インターフェース１００３は、カメラ構成要素１０２１、電池構成要素１０２２、ジンバル構成要素１０２３、飛行制御装置構成要素１０２４、及びレンジエクステンダ構成要素１０２５を含むことができる。
【００５２】
更に、可動物体インターフェース１００３は、地上局構成要素１０２６を含むことができ、この構成要素は、飛行制御装置構成要素１０２４に関連付けられている。地上局構成要素は、１つ又は複数の飛行制御操作を実行するように動作し、この操作には高レベルの権限が必要となる場合がある。
【００５３】
図１１は、本発明の様々な実施形態による、ソフトウェア開発キット（ＳＤＫ）における無人機用の構成要素の例示的な図である。図１１に示すように、ＳＤＫ１１００でのドローンクラス１１０１は、無人機（すなわちドローン）用の他の構成要素１１０２〜１１０７の集合である。ドローンクラス１１０１は、その他の構成要素１１０２〜１１０７へのアクセス権を有し、その他の構成要素１１０２〜１１０７と情報を交換することができ、その他の構成要素１１０２〜１１０７を制御する。
【００５４】
本発明の様々な実施形態によれば、アプリケーションは、ドローンクラス１１０１の１つのインスタンスにのみアクセス可能でもよい。或いは、ドローンクラス１１０１の複数のインスタンスは、アプリケーション内に存在してもよい。
【００５５】
ＤＪＩ  ＳＤＫでは、アプリケーションは、ドローンクラス１１０１のインスタンスに接続して、制御用コマンドを無人機にアップロードすることができる。たとえば、無人機への接続を確立するためのＤＪＩ  ＳＤＫの適切な場所は、ＭａｉｎＡｃｔｉｖｉｔｙクラスでのＯｎＣｒｅａｔｅ（）メソッドである。また、ＤＪＩ  ＳＤＫは、ＭａｉｎＡｃｔｉｖｉｔｙクラスでのＯｎＤｅｓｔｏｒｙ（）メソッドにおいて無人機への接続を切断することができる。無人機に接続した後、開発者は、その他のクラス（たとえば、カメラクラス１１０２及びジンバルクラス１１０４）へのアクセス権を手にすることができる。次いで、ドローンクラス１１０１を使用して、特定の関数、たとえばカメラ関数及びジンバル関数を呼び出して、無人機の挙動を制御することができる。
【００５６】
本発明の様々な実施形態によれば、アプリケーションは、電池クラス１１０３を使用して、無人機の電源を制御することができる。また、このアプリケーションは、電池クラス１１０３を使用して、様々な飛行任務のスケジュールを計画及び試験することができる。
【００５７】
電池は無人機内で最も規制の厳しい要素なので、無人機の安全性だけでなく、無人機が確実に指定の任務を完遂できるよう、アプリケーションは電池の状況を厳しく考慮する場合がある。たとえば、電池クラス１１０３は、電池レベルが低い場合、無人機が任務を終了でき、即座に帰還するよう構成することができる。
【００５８】
ＤＪＩ  ＳＤＫを使用すると、アプリケーションは、ＤＪＩドローン電池クラス内のｇｅｔ（）関数を呼び出すことによって、電池の現在の状況及び情報を得ることができる。また、アプリケーションは、ｓｅｔ（）関数を使用して、フィードバックの頻度を制御することができる。
【００５９】
本発明の様々な実施形態によれば、アプリケーションは、カメラクラス１１０２を使用して、無人機などの可動物体内のカメラへの様々な操作を定義することができる。たとえば、ＤＪＩ  ＳＤＫでは、ＤＪＩカメラクラスは、ＳＤカード内のメディアデータを受信し、写真パラメータを取得して設定し、写真撮影及びビデオ録画するための関数を含む。
【００６０】
アプリケーションは、カメラクラス１１０２を使用して、写真及び録画の設定を修正することができる。たとえば、開発者は、ｓｅｔＣａｍｅｒａＰｈｏｔｏＳｉｚｅ（）メソッドを使用して、撮影した写真のサイズを調整することができる。また、アプリケーションはメディアクラスを使用して、写真及び録画を維持することができる。
【００６１】
本発明の様々な実施形態によれば、アプリケーションは、ジンバルクラス１１０４を使用して、無人機の視界を制御することができる。たとえば、ＤＪＩジンバルクラスを使用して、実際の視界を構成すること、たとえば無人機自体の第１の視界を設定することができる。また、ＤＪＩジンバルクラスを使用して、ジンバルを自動的に安定化させて、一方向に焦点を合わせることができる。また、アプリケーションは、ＤＪＩジンバルクラスを使用して、様々な物体を検出するために画角を変更することができる。
【００６２】
本発明の様々な実施形態によれば、アプリケーションは、飛行制御装置クラス１１０５を使用して、無人機についての様々な飛行制御の情報及び状況を提供することができる。
【００６３】
ＤＪＩ主制御装置クラスを使用すると、アプリケーションは、たとえばインスタントメッセージを使用して、飛行状況を監視することができる。たとえば、ＤＪＩ主制御装置クラス内のコールバック関数は、１０００ミリ秒（１０００ｍｓ）毎にインスタントメッセージを返信することができる。
【００６４】
更に、ＤＪＩ主制御装置クラスにより、アプリケーションのユーザは、無人機インターフェースから受信したインスタントメッセージを調査できるようになる。たとえば、パイロットは、それぞれの飛行についてのデータを解析して、自身の飛行技術を更に改善することができる。
【００６５】
本発明の様々な実施形態によれば、アプリケーションは、地上局クラス１１０７を使用して、無人機を制御する一連の操作を実行することができる。
【００６６】
たとえば、ＤＪＩ  ＳＤＫでは、ＤＪＩ地上局クラスを使用するため、アプリケーションがＳＤＫレベル２キーを有することを要求される場合がある。ＤＪＩ地上局クラスは、ａｐｐ（すなわちジョイスティックモード）によるｏｎｅ−ｋｅｙ−ｆｌｙ、ｏｎ−ｋｅｙ−ｇｏ−ｈｏｍｅのドローンの手動制御、巡航及び／又は中間地点の設定、並びに他の様々なタスクスケジューリング機能を実現することができる。
【００６７】
本発明の様々な実施形態によれば、アプリケーションは、レンジエクステンダクラス１１０６などの通信構成要素を使用して、アプリケーションと無人機の間のネットワーク接続を確立することができる。
【００６８】
図１２は、本発明の様々な実施形態により、ソフトウェア開発環境において可動物体インターフェースをサポートする様子のフローチャートを示す。図１２に示すように、ステップ１２０１において、システムは１つ又は複数のインターフェース構成要素と可動物体を表す可動物体インターフェースを関連付けることができる。次いで、ステップ１２０２において、データマネージャは、可動物体からのデータを受信することができ、このデータは、可動物体内の１つ又は複数のモジュールに対応している。更に、ステップ１２０３において、データマネージャは、可動物体内の前記１つ又は複数のモジュール向けのデータを、可動物体インターフェースに関連付けられた前記１つ又は複数のインターフェース構成要素に提供することができる。
【００６９】
セキュリティモデルをサポートするための認証サーバの使用
図１３は、本発明の様々な実施形態により、可動物体の環境においてセキュリティモデルをサポートするために認証サーバを使用する様子の例示的な図である。図１３に示すように、アプリケーション開発環境１３００において認証サーバ１３０１を使用して、セキュリティモデルをサポートすることができる。
【００７０】
アプリケーション開発環境は、開発中のアプリケーション１３０３向けのアプリケーション識別子１３０７を作成（又は関連付け）することができる。たとえば、アプリケーション識別子１３０７は、アンドロイドシステムでのパッケージ名、又はｉＯＳシステムでのバンドル名とすることができる。
【００７１】
図１３に示すように、開発者は、アプリケーション識別子１３０７をウェブポータル１３０９に提出することができ、このウェブポータルは、このような情報を認証サーバ１３０１に送ることができる。したがって、認証サーバ１３０１は、開発中のアプリケーション１３０３に関連付けられたアプリケーション識別子１３０７に基づいて、開発中のアプリケーション１３０３にアプリケーションキー１３０５を割り当てることができる。
【００７２】
次いで、アプリケーション１３０４は、アプリケーションキー１３０５を用いて、ユーザ端末１３０２上に実装することができる。本発明の様々な実施形態によれば、アプリケーションキー１３０５は、アプリケーション識別子１３０７と一義的に結びついており、各アプリケーションキーは、１組の権限に関連付けられている。
【００７３】
図１３に示すように、アプリケーション開発環境１３００での認証サーバ１３０１は、アプリケーション１３０４からアクティベーション要求１３１０を受信することができる。たとえば、アクティベーション要求１３１０は、アプリケーションキー１３０５を含んでもよい。
【００７４】
本発明の様々な実施形態によれば、このアクティベーション要求は、可動物体にアクセスするための権限１３０８を求める要求とすることができる。たとえば、可動物体は、無人機、無人車両、ハンドヘルド装置、又はロボットとすることができる。
【００７５】
図１３に示すように、認証サーバ１３０１は、１つ又は複数のポリシー１３０６をアクティベーション要求１３１０に適用して、可動物体にアクセスする権限１３０８をアプリケーション１３０４に付与すべきかどうか判定することができる。これらのポリシーは、最大インストレーション数及び／又はアプリケーションの様々な役割など、様々な判定基準を使用して定義することができる。
【００７６】
本発明の様々な実施形態によれば、認証サーバ１３０１は、アプリケーションキー１３０５に基づいた決定をおこなうことができ、このアプリケーションキーはアクティベーション要求１３１０に含まれる。たとえば、それぞれ異なるアクティベーションキーは、異なる組の権限に関連付けられてもよい。
【００７７】
図１３に示すように、アプリケーション１３０４が権限１３０８を得る資格がある場合、認証サーバ１３０１は、可動物体にアクセスする権限１３０８をアプリケーション１３０４に付与することができる。
【００７８】
図１４は、本発明の様々な実施形態により、可動物体の環境において複数のアプリケーションをサポートするために認証サーバを使用する様子の例示的な図である。図１４に示すように、可動物体の環境１４００内の認証サーバ１４２０を使用して、１つ又は複数のポリシー１４２１に基づいて互いに異なるアプリケーションＡ〜Ｂ（１４０１〜１４０２）からのアクティベーション要求を処理し、可動物体１４１０にアクセスし、これを制御することができる。
【００７９】
たとえば、アプリケーションＡ（１４０１）には、アプリケーションキーＡ（１４０３）が割り当てられており、１組の権限たとえば権限Ａ（１４０７）に関連付けることができる。一方で、アプリケーションＢ（１４０１）には、アプリケーションキーＢ（１４０４）が割り当てられており、互いに異なる１組の権限たとえば権限Ｂ（１４０８）に関連付けることができる。
【００８０】
本発明の様々な実施形態によれば、ソフトウェア開発キット（ＳＤＫ）は、セキュリティ機構を含むことができ、これは、全ての登録開発者に利用可能な低レベル機能、及び認証開発者のみに利用可能な高レベル機能を含む。高レベルの権限を得るためには、アプリケーションは、承認プロセスを経ることが必要になる場合があり、このプロセスには、実名登録及び使用目的の記載が必要となる。
【００８１】
図１５は、本発明の様々な実施形態により、可動物体の環境でのセキュリティモデルをサポートする様子の例示的な図である。図１５に示すように、アプリケーション開発環境１５００、たとえばソフトウェア開発キット（ＳＤＫ）内の認証サーバ１５０５は、アプリケーション１５０４からアクティベーション要求を受信して、可動物体１５０１にアクセスし、それを制御することができる。
【００８２】
認証サーバは、最大インストレーション数１５１１を維持することができ、これを動的に事前構成又は構成することができる。次いで、アプリケーション１５０４がアクティブにされると、認証サーバ１５０５は、アクティブにされたアプリケーションカウント１５１２を更新することができる。
【００８３】
本発明の様々な実施形態によれば、アクティブにされたアプリケーションカウント１５１２が最大インストレーション数１５１１以上である場合、認証サーバ１５０５はアクティベーション要求を却下してもよい。
【００８４】
更に、認証サーバ１５０５は、最大インストレーション数１５１１を増やして、アップグレード要求を処理し、又は最大インストレーション数をゼロに設定して、不法若しくは不適切なアプリケーションを停止することができる。
【００８５】
図１５に示すように、認証サーバ１５０５により、アプリケーションがインターフェース１５１０を使用して、可動物体１５０１にアクセスできるようになる。たとえば、可動物体１５０１は無人機とすることができ、そのインターフェース１５１０は、カメラ構成要素、電池構成要素、ジンバル構成要素、通信構成要素、及び飛行制御装置構成要素を備える。
【００８６】
更に、インターフェース１５１０は地上局構成要素を備えてもよく、これは飛行制御装置構成要素に関連付けられており、前記地上局構成要素は、１つ又は複数の飛行制御操作を実行するように動作し、特定の組の権限を有するアプリケーションによってのみアクセス可能になるように構成される。
【００８７】
アプリケーション開発の初期段階では、ＳＤＫは、少数のアプリケーションのみを承認して、アプリケーション開発を安全に保護してもよい。開発者が開発を終了した後、ＳＤＫは、承認プロセス中で、要求文書、技術文書、インストール文書、及び関連するソースコードを検査することができる。承認プロセスを終了した後、ＳＤＫは、最大インストレーション数１５１１を増やして、アプリケーションをアップグレードすることができる。
【００８８】
本発明の様々な実施形態によれば、最大インストレーション数１５１１に基づくアクティベーションプロセスを使用して、悪意あるアプリケーション又は不適切なアプリケーションを防止することができる。
【００８９】
たとえば、このシステムは、最大インストレーション数１５１１をゼロに設定して、悪意あるアプリケーションをアクティブにするのを防止できる。更に、このシステムは、悪意あるアプリケーションがＳＤＫにアクセスするのを防止することなど、アプリケーションを無効化することができる。
【００９０】
図１６は、本発明の様々な実施形態により、可動物体の環境でのセキュリティモデルをサポートする様子のフローチャートを示す。図１６に示すように、ステップ１６０１において、認証サーバが、アプリケーションからアクティベーション要求を受信することができ、このアクティベーション要求は、可動物体にアクセスするための権限を求める要求を含む。更に、ステップ１６０２において、認証サーバは、１つ又は複数のポリシーをアクティベーション要求に適用することができる。次いで、ステップ１６０３において、アプリケーションに資格がある場合、認証サーバは、可動物体にアクセスするための権限をアプリケーションに付与することができる。
【００９１】
本発明の数多くの特徴は、ハードウェア、ソフトウェア、ファームウェア、若しくはその組合せにおいて、又はそれらを使用して、又はそれらの助けを借りて実行することができる。したがって、本発明の特徴は、（たとえば、１つ又は複数のプロセッサを備える）処理システムを使用して実施してもよい。例示的なプロセッサには、それだけには限らないが、１つ又は複数の汎用マイクロプロセッサ（たとえば、シングルプロセッサ若しくはマルチプロセッサ）、特定用途向け集積回路、特定用途向け命令セットプロセッサ、グラフィックス処理装置、物理処理装置、デジタル信号処理装置、コプロセッサ、ネットワーク処理装置、オーディオ処理装置、暗号化処理装置などが含まれ得る。
【００９２】
本発明の特徴は、処理システムをプログラムして、本明細書において提示した特徴のいずれかを実行するために使用できる命令を内部に記憶している、（１つ若しくは複数の）記憶媒体、若しくは（１つ若しくは複数の）コンピュータ読取り可能媒体であるコンピュータプログラム製品において、又はそれらを使用して、又はそれらの助けを借りて実行することができる。記憶媒体には、それだけには限定されないが、フロッピーディスク、光ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、マイクロドライブ、及び光磁気ディスクを含む任意のタイプのディスク、ＲＯＭ、ＲＡＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ＤＲＡＭ、ＶＲＡＭ、フラッシュメモリ装置、磁気カード若しくは光カード、ナノシステム（分子メモリＩＣを含む）、又は命令及び／若しくはデータを記憶するのに適した任意のタイプの媒体若しくは装置が含まれ得る。
【００９３】
機械読取り可能な（１つ又は複数の）媒体のいずれか１つに記憶されると、本発明の特徴は、ソフトウェア及び／又はファームウェアに組み込まれて、処理システムのハードウェアを制御することができ、また本発明の結果を利用して処理システムが他の機構と対話できるようにすることができる。このようなソフトウェア又はファームウェアには、それだけには限定されないが、アプリケーションコード、デバイスドライバ、オペレーティングシステム、及び実行環境／コンテナが含まれ得る。
【００９４】
本発明の特徴はまた、たとえば、特定用途向け集積回路（ＡＳＩＣ）やフィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）デバイスなどのハードウェア構成部品を使用して、ハードウェアで実施してもよい。本明細書に記載の関数を実行するためのハードウェア状態機械の実装形態が、当業者に明らかになろう。
【００９５】
更に、好都合には、本発明は、１つ若しくは複数の従来の汎用若しくは専用のデジタルコンピュータ、コンピューティング装置、マシン、又は、１つ若しくは複数のプロセッサ、メモリ、及び／若しくは本発明の教示に従ってプログラムされたコンピュータ読取り可能な記憶媒体を含むマイクロプロセッサを使用して実施してもよい。ソフトウェアの当業者には明らかになるように、適切なソフトウェアコーディングは、熟練したプログラマにより、本開示の教示に基づいて処理することができる。
【００９６】
本発明の様々な実施形態をこれまで説明してきたが、それらは一例として提示されたものであって、限定的なものではないことを理解されたい。本発明の趣旨及び範囲から逸脱することなく、形態及び詳細の様々な変更を実施形態に加えてもよいことが当業者には明らかになろう。
【００９７】
指定された関数の性能及びそれらの関係を示す関数ビルディングブロックの助けを借りて、本発明をこれまで説明してきた。説明の都合上、これら関数ビルディングブロックの境界は、本明細書においてしばしば任意に定義されてきた。指定された関数及びそれらの関係が適切に実行される限り、代替の境界を定義することができる。したがって、任意のこうした代替の境界は、本発明の範囲及び趣旨の内にある。
【００９８】
本発明の前述の説明は、例示及び説明を目的としてなされたものである。これは、網羅的なものではなく、又は開示された厳密な形態に本発明を限定するものではない。本発明の幅及び範囲は、前述の例示的な実施形態のいずれによっても限定すべきではない。多くの修正形態及び変形形態が、当業者には明白になろう。これらの修正形態及び変形形態は、開示された特徴の関連した任意の組合せを含む。本発明及びその実際の適用例の原理を最も良好に説明するために、各実施形態を選択し説明したが、それにより、様々な実施形態について、また企図された特定の使用に適した様々な修正形態とともに、当業者は本発明を理解できるようになる。本発明の範囲は、添付特許請求の範囲及びその均等物によって定義されるものである。
【図１】
2018049654.tif 000003
【図２】
2018049654.tif 000004
【図３】
2018049654.tif 000005
【図４】
2018049654.tif 000006
【図５】
2018049654.tif 000007
【図６】
2018049654.tif 000008
【図７】
2018049654.tif 000009
【図８】
2018049654.tif 000010
【図９】
2018049654.tif 000011
【図１０】
2018049654.tif 000012
【図１１】
2018049654.tif 000013
【図１２】
2018049654.tif 000014
【図１３】
2018049654.tif 000015
【図１４】
2018049654.tif 000016
【図１５】
2018049654.tif 000017
【図１６】
2018049654.tif 000018
【手続補正書】
【提出日】平成29年11月21日(2017.11.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
可動物体の環境でのアプリケーション開発を支援するための方法であって、
認証サーバを介してアプリケーションからアクティベーション要求を受信するステップであって、前記アクティベーション要求が、可動物体にアクセスするための権限を求める要求を含むステップと、
１つ又は複数のポリシーを前記アクティベーション要求に適用するステップと、
前記アプリケーションに資格がある場合、前記可動物体にアクセスするための権限を前記アプリケーションに付与するステップと、
を含む方法。
【請求項２】
前記可動物体が、無人機、無人車両、ハンドヘルド装置、又はロボットである、請求項１に記載の方法。
【請求項３】
前記アプリケーションに関連付けられたアプリケーション識別子に基づいて、アプリケーションキーを前記アプリケーションに割り当てるステップを更に含む、請求項１に記載の方法。
【請求項４】
前記アプリケーションキーが、前記アプリケーション識別子と一義的に結びついており、前記アプリケーションキーが、１組の権限に関連付けられている、請求項３に記載の方法。
【請求項５】
異なるアプリケーション識別子を有する別のアプリケーションに、異なるアプリケーションキーを割り当てるステップを更に含み、前記異なるアプリケーションキーが、異なる組の権限に関連付けられている、請求項４に記載の方法。
【請求項６】
前記アクティベーション要求が、前記アプリケーションキーを含む、請求項３に記載の方法。
【請求項７】
前記認証サーバを介して、最大インストレーション数を維持するステップを更に含み、前記最大インストレーション数が、事前構成又は動的構成されるようになっている、請求項１に記載の方法。
【請求項８】
アプリケーションがアクティブにされると、アクティブにされたアプリケーションカウントを更新するステップを更に含む、請求項７に記載の方法。
【請求項９】
前記アクティブにされたアプリケーションカウントが前記最大インストレーション数以上である場合、前記アクティベーション要求を却下するステップを更に含む、請求項８に記載の方法。
【請求項１０】
前記最大インストレーション数を増やして、アップグレード要求を処理するステップ、又は、
前記最大インストレーション数をゼロに設定して、不法若しくは不適切なアプリケーションを停止するステップ
を更に含む、請求項７に記載の方法。
【請求項１１】
前記可動物体にアクセスするためのインターフェースを前記アプリケーションが使用できるようにするステップを更に含む、請求項１に記載の方法。
【請求項１２】
前記可動物体が無人機であり、前記インターフェースが、カメラ構成要素、電池構成要素、ジンバル構成要素、通信構成要素、及び飛行制御装置構成要素を備える、請求項１１に記載の方法。
【請求項１３】
前記インターフェースが地上局構成要素を備え、これが前記飛行制御装置構成要素に関連付けられ、前記地上局構成要素が、１つ又は複数の飛行制御操作を実行するように動作する、請求項１２に記載の方法。
【請求項１４】
前記地上局構成要素が、特定の組の権限を有するアプリケーションによってのみアクセス可能になるように構成される、請求項１３に記載の方法。
【請求項１５】
可動物体の環境でのアプリケーション開発を支援するためのシステムであって、
１つ又は複数のマイクロプロセッサと、
前記１つ又は複数のマイクロプロセッサ上で実行される認証サーバと、を備え、
前記認証サーバは、
アプリケーションからアクティベーション要求を受信し、前記アクティベーション要求が、可動物体にアクセスするための権限を求める要求を含み、
１つ又は複数のポリシーを前記アクティベーション要求に適用し、
前記アプリケーションに資格がある場合、前記可動物体にアクセスするための前記権限を前記アプリケーションに付与する、
ように動作する、システム。
【請求項１６】
前記可動物体が、無人機、無人車両、ハンドヘルド装置、又はロボットである、請求項１５に記載のシステム。
【請求項１７】
前記認証サーバが、前記アプリケーションに関連付けられたアプリケーション識別子に基づいて、アプリケーションキーを前記アプリケーションに割り当てるように動作する、請求項１５に記載のシステム。
【請求項１８】
前記アプリケーションキーが、前記アプリケーション識別子と一義的に結びついており、前記アプリケーションキーが、１組の権限に関連付けられている、請求項１７に記載のシステム。
【請求項１９】
前記認証サーバが、異なるアプリケーション識別子を有する別のアプリケーションに、異なるアプリケーションキーを割り当てるように動作し、前記異なるアプリケーションキーが、異なる組の権限に関連付けられている、請求項１８に記載のシステム。
【請求項２０】
前記アクティベーション要求が、前記アプリケーションキーを含む、請求項１７に記載のシステム。
【請求項２１】
前記認証サーバが、最大インストレーション数を維持するように動作し、前記最大インストレーション数が、事前構成又は動的構成されるようになっている、請求項１７に記載のシステム。
【請求項２２】
アプリケーションがアクティブにされると、前記認証サーバが、アクティブにされたアプリケーションカウントを更新するように動作する、請求項２１に記載のシステム。
【請求項２３】
前記アクティブにされたアプリケーションカウントが前記最大インストレーション数以上である場合、前記認証サーバが、前記アクティベーション要求を却下するように動作する、請求項１７に記載のシステム。
【請求項２４】
前記認証サーバが、
前記最大インストレーション数を増やして、アップグレード要求を処理し、又は、
前記最大インストレーション数をゼロに設定して、不法若しくは不適切なアプリケーションを停止する
ように動作する、請求項１７に記載のシステム。
【請求項２５】
前記認証サーバは、前記可動物体にアクセスするためのインターフェースを前記アプリケーションが使用できるようにする、請求項１５に記載のシステム。
【請求項２６】
前記可動物体が無人機であり、前記インターフェースが、カメラ構成要素、電池構成要素、ジンバル構成要素、通信構成要素、及び飛行制御装置構成要素を備える、請求項２５に記載のシステム。
【請求項２７】
前記インターフェースが地上局構成要素を備え、これが前記飛行制御装置構成要素に関連付けられており、前記地上局構成要素が、１つ又は複数の飛行制御操作を実行するように動作する、請求項２５に記載のシステム。
【請求項２８】
前記地上局構成要素が、特定の組の権限を有するアプリケーションによってのみアクセス可能になるように構成される、請求項２５に記載のシステム。
【請求項２９】
命令を内部に記憶した持続的なコンピュータ読取り可能媒体であって、プロセッサによって実行されると、
認証サーバを介してアプリケーションからアクティベーション要求を受信するステップであって、前記アクティベーション要求が、可動物体にアクセスするための権限を求める要求を含むステップと、
１つ又は複数のポリシーを前記アクティベーション要求に適用するステップと、
前記アプリケーションに資格がある場合、前記可動物体にアクセスするための権限を前記アプリケーションに付与するステップと、
を含むステップを実行する、持続的なコンピュータ読取り可能媒体。
【請求項３０】
可動物体の環境でのアプリケーション開発を支援するシステムであって、
１つ又は複数のマイクロプロセッサと、
前記１つ又は複数のマイクロプロセッサ上で実行されるウェブポータルと、を備え、
前記ウェブポータルが、
アプリケーションからアプリケーション開発情報を受信し、
前記受信したアプリケーション開発情報を認証サーバに提供する、
ように動作し、
前記認証サーバは、
アプリケーションからアクティベーション要求を受信し、前記アクティベーション要求が可動物体にアクセスするための権限を求める要求を含み、
１つ又は複数のポリシーを前記アクティベーション要求に適用し、
前記アプリケーションに資格がある場合、前記可動物体にアクセスするための前記権限を前記アプリケーションに付与する、
ように動作する、システム。
【手続補正書】
【提出日】平成29年12月12日(2017.12.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
可動物体の環境でのアプリケーション開発を支援するための方法であって、
認証サーバを介してアプリケーションからアクティベーション要求を受信するステップであって、前記アクティベーション要求が、可動物体にアクセスするための権限を求める要求を含むステップと、
１つ又は複数のポリシーを前記アクティベーション要求に適用するステップと、
前記アプリケーションに資格がある場合、前記可動物体にアクセスするための権限を前記アプリケーションに付与するステップと、
を含む、方法。
【請求項２】
前記可動物体が、無人機、無人車両、ハンドヘルド装置、又はロボットである、請求項１に記載の方法。
【請求項３】
前記アプリケーションに関連付けられたアプリケーション識別子に基づいて、アプリケーションキーを前記アプリケーションに割り当てるステップを更に含む、請求項１に記載の方法。
【請求項４】
前記アプリケーションキーが、前記アプリケーション識別子と一義的に結びついており、前記アプリケーションキーが、１組の権限に関連付けられている、請求項３に記載の方法。
【請求項５】
異なるアプリケーション識別子を有する別のアプリケーションに、異なるアプリケーションキーを割り当てるステップを更に含み、前記異なるアプリケーションキーが、異なる組の権限に関連付けられている、請求項４に記載の方法。
【請求項６】
前記アクティベーション要求が、前記アプリケーションキーを含む、請求項３に記載の方法。
【請求項７】
前記認証サーバを介して、最大インストレーション数を維持するステップを更に含み、前記最大インストレーション数が、事前構成又は動的構成されるようになっている、請求項１に記載の方法。
【請求項８】
アプリケーションがアクティブにされると、アクティブにされたアプリケーションカウントを更新するステップを更に含む、請求項７に記載の方法。
【請求項９】
前記アクティブにされたアプリケーションカウントが前記最大インストレーション数以上である場合、前記アクティベーション要求を却下するステップを更に含む、請求項８に記載の方法。
【請求項１０】
前記最大インストレーション数を増やして、アップグレード要求を処理するステップ、又は、
前記最大インストレーション数をゼロに設定して、不法若しくは不適切なアプリケーションを停止するステップ、
を更に含む、請求項７に記載の方法。
【請求項１１】
前記可動物体にアクセスするためのインターフェースを前記アプリケーションが使用できるようにするステップを更に含む、請求項１に記載の方法。
【請求項１２】
前記可動物体が無人機であり、前記インターフェースが、カメラ構成要素、電池構成要素、ジンバル構成要素、通信構成要素、及び飛行制御装置構成要素を備える、請求項１１に記載の方法。
【請求項１３】
前記インターフェースが地上局構成要素を備え、これが前記飛行制御装置構成要素に関連付けられ、前記地上局構成要素が、１つ又は複数の飛行制御操作を実行するように動作する、請求項１２に記載の方法。
【請求項１４】
前記地上局構成要素が、特定の組の権限を有するアプリケーションによってのみアクセス可能になるように構成される、請求項１３に記載の方法。
【請求項１５】
可動物体の環境でのアプリケーション開発を支援するためのシステムであって、
１つ又は複数のマイクロプロセッサと、
前記１つ又は複数のマイクロプロセッサ上で実行される認証サーバと、を備え、
請求項１から１４の何れか一項に記載の方法を実施するように構成される、システム。
【請求項１６】
命令を内部に記憶した持続的なコンピュータ読取り可能媒体であって、プロセッサによって実行されると、
認証サーバを介してアプリケーションからアクティベーション要求を受信するステップであって、前記アクティベーション要求が、可動物体にアクセスするための権限を求める要求を含むステップと、
１つ又は複数のポリシーを前記アクティベーション要求に適用するステップと、
前記アプリケーションに資格がある場合、前記可動物体にアクセスするための権限を前記アプリケーションに付与するステップと、
を含むステップを実行する、持続的なコンピュータ読取り可能媒体。
【請求項１７】
可動物体の環境でのアプリケーション開発を支援するシステムであって、
１つ又は複数のマイクロプロセッサと、
前記１つ又は複数のマイクロプロセッサ上で実行されるウェブポータルと、を備え、
前記ウェブポータルが、
アプリケーションからアプリケーション開発情報を受信し、
前記受信したアプリケーション開発情報を認証サーバに提供する、
ように動作し、
前記認証サーバは、
アプリケーションからアクティベーション要求を受信し、前記アクティベーション要求が可動物体にアクセスするための権限を求める要求を含み、
１つ又は複数のポリシーを前記アクティベーション要求に適用し、
前記アプリケーションに資格がある場合、前記可動物体にアクセスするための前記権限を前記アプリケーションに付与する、
ように動作する、システム。
【外国語明細書】
2018049654000001.pdf