(57)【要約】  ロボットを制御するための基本機能と、基本機能に追加可能で、ロボットを制御する機能や性能を向上させるための先進機能とを含むソフトウェアが格納されたソフトウェア格納部であるメモリ（１０）と、要求に応じた機能をソフトウェア格納部から読み出し、実行する演算部であるＣＰＵ（１１）と、基本機能による動作のためのハードウェア性能を演算部に付与する基本性能付与部であるクロック（１３）と、を有し、先進機能を使用可能とするための設定において、ハードウェアドングル（２−１〜２−３）が装着され、ハードウェアドングルは、先進機能による動作のためのハードウェア性能を演算部に付与する追加性能付与部であるクロック（１５−１〜１５−３）を有する。
2013183149.tif 000002
【特許請求の範囲】
【請求項１】
ロボットを制御するための基本機能と、前記基本機能に追加可能で、前記ロボットを制御する機能や性能を向上させるための先進機能とを含むソフトウェアが格納されたソフトウェア格納部と、
要求に応じた機能を前記ソフトウェア格納部から読み出し、実行する演算部と、
前記基本機能による動作のためのハードウェア性能を前記演算部に付与する基本性能付与部と、を有し、
前記先進機能を使用可能とするための設定において、ハードウェアドングルが装着され、
前記ハードウェアドングルは、前記先進機能による動作のためのハードウェア性能を前記演算部に付与する追加性能付与部を有することを特徴とするロボット制御装置。
【請求項２】
前記基本性能付与部は、前記基本機能による前記演算部の動作に適用される駆動周波数で発振する基本発振器であって、
前記追加性能付与部は、前記先進機能による前記演算部の動作に適用される駆動周波数で発振する追加用発振器であることを特徴とする請求項１に記載のロボット制御装置。
【請求項３】
前記基本性能付与部は、前記基本機能による前記演算部の動作に適用される設定事項を保持する不揮発性メモリであって、
前記追加性能付与部は、前記先進機能による前記演算部の動作に適用される設定事項を保持する追加用不揮発性メモリであることを特徴とする請求項１に記載のロボット制御装置。
【請求項４】
前記ソフトウェア格納部は、前記基本機能の動作に応じたメモリ容量を持つ前記基本性能付与部として機能し、
前記追加性能付与部は、前記先進機能の動作においてメモリ容量を拡張させる拡張用メモリであることを特徴とする請求項１に記載のロボット制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット制御装置に関する。
【背景技術】
【０００２】
従来、ロボットを制御するための基本機能に、オプションとして先進機能の追加を可能とするロボット制御装置が知られている。ここで、先進機能とは、ロボット制御装置の機能や性能を向上させるためのオプション機能のことをいい、例えば衝突検知機能のように、ロボットの動作中に、ロボット制御装置が周辺物との衝突を検知して、可及的すみやかに停止させる機能が挙げられる。ロボット制御装置は、追加用のソフトウェアのインストールによって先進機能が追加される以外に、先進機能を含むソフトウェアをあらかじめ保持し、使用の可否の設定により先進機能が追加されるものがある。【０００３】
ロボット制御装置は、メモリ上のソフトウェアの設定により先進機能を追加するために、ドングルと称される、ライセンス認証のためのハードウェアが接続されることがある。このハードウェアドングルは、あらかじめメモリに格納されているソフトウェアから、ライセンス認証の対象である先進機能を識別し、その先進機能へのアクセスを許可する（例えば、特許文献１参照）。ロボット制御装置の提供者は、ロボット制御の一部の機能をオプションとし、その機能を所望とするユーザにライセンスを認証するとともに、提供する機能に応じた課金を行う。ロボット制御装置の提供者は、ユーザごとのニーズに応じて、付加価値の高い先進機能を提供することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−２７７５２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ロボット制御装置は、付加価値の高い先進機能の不適切な流出を抑制させるために、ライセンス認証を正規に取得していない限り先進機能の使用を厳重に阻止することが望まれる。ただし、例えば、先進機能を識別するための識別ＩＤと、ソフトウェア内の先進機能との割り振りが導き出されれば、ハードウェア（ＨＷ）ドングルの模造品の作製、メモリ内の設定の書き換え等の比較的安易な方法により、先進機能の不正利用や、プログラムの不正コピー等がなされてしまうこととなる。【０００６】
本発明は、上記に鑑みてなされたものであって、設定により追加される先進機能について、正当な設定行為がなされない状況での不正利用を効果的に抑止可能とするロボット制御装置を得ることを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明は、ロボットを制御するための基本機能と、前記基本機能に追加可能で、前記ロボットを制御する機能や性能を向上させるための先進機能とを含むソフトウェアが格納されたソフトウェア格納部と、要求に応じた機能を前記ソフトウェア格納部から読み出し、実行する演算部と、前記基本機能による動作のためのハードウェア性能を前記演算部に付与する基本性能付与部と、を有し、前記先進機能を使用可能とするための設定において、ハードウェアドングルが装着され、前記ハードウェアドングルは、前記先進機能による動作のためのハードウェア性能を前記演算部に付与する追加性能付与部を有することを特徴とする。
【発明の効果】
【０００８】
本発明にかかるロボット制御装置は、先進機能を追加する場合に、ソフトウェア格納部上でのソフトウェアの設定のみならず、ハードウェアドングル内の追加性能付与部によってハードウェア性能も向上させる。先進機能の識別ＩＤやソフトウェア内における設定が解読されたとしても、ハードウェアドングルが装着されない限り、先進機能を有効とするにはハードウェア性能が不十分であるために、先進機能による動作を阻止可能とする。これにより、ロボット制御装置は、正当な設定行為がなされない状況における先進機能の不正利用を効果的に抑止できるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、本発明の実施の形態１にかかるロボット制御装置の概略構成を示すブロック図である。
【図２】図２は、いずれのＨＷドングルも装着されていない場合におけるクロックの接続を説明する図である。
【図３】図３は、ＨＷドングルが装着された場合におけるクロックの接続を説明する図である。
【図４】図４は、実施の形態１の比較例にかかるロボット制御装置の概略構成を示すブロック図である。
【図５】図５は、本発明の実施の形態２にかかるロボット制御装置の概略構成を示すブロック図である。
【図６】図６は、いずれのＨＷドングルも装着されていない場合におけるＥＥＰＲＯＭの接続を説明する図である。
【図７】図７は、ＨＷドングルが装着された場合におけるＥＥＰＲＯＭの接続を説明する図である。
【図８】図８は、本発明の実施の形態３にかかるロボット制御装置の概略構成を示すブロック図である。
【発明を実施するための形態】
【００１０】
以下に、本発明にかかるロボット制御装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１１】
実施の形態１．
図１は、本発明の実施の形態１にかかるロボット制御装置の概略構成を示すブロック図である。ロボット制御装置１は、被制御機器であるロボット（図示省略）の駆動を制御する。ロボット制御装置１は、メモリ１０、ＣＰＵ（Central  Processing  Unit）１１、セレクタ１２、クロック１３および条件回路１４を有する。
【００１２】
メモリ１０は、ロボットを制御するための基本機能と、基本機能に追加可能な先進機能とを含むソフトウェアが格納されている。メモリ１０は、ソフトウェア格納部として機能する。基本機能は、例えばロボット制御装置１の出荷当初から有効に実施可能と設定されている標準的な機能とする。先進機能は、ロボットを制御する機能や性能を向上させるためのオプション機能とする。先進機能は、例えば、ロボット制御装置１の提供者によるライセンス認証をユーザが受けることにより、個別に実施可能と設定される。以下、ロボット制御装置１において追加の対象とされる先進機能を、ソフトウェア（ＳＷ）先進機能と称する。
【００１３】
ＣＰＵ１１は、要求に応じた機能をメモリ１０から読み出し、実行する。ＣＰＵ１１は、演算部として機能する。クロック１３は、セレクタ１２を介してＣＰＵ１１へクロック信号を送出する。クロック１３は、基本機能によるＣＰＵ１１の動作に適用される駆動周波数で発振し、クロック信号を生成する基本発振器である。
【００１４】
クロック１３は、基本機能による動作のためのハードウェア性能を実現するために、所定の駆動周波数による同期タイミングをＣＰＵ１１に付与する。クロック１３は、基本性能付与部として機能する。クロック１３としては、例えば、水晶発振器を使用する。水晶発振器は、水晶発振子および発振回路を内蔵する。
【００１５】
セレクタ１２は、クロック１３からのクロック信号と、後述のクロック１５−１、１５−２および１５−３からのクロック信号のいずれかを選択し、ＣＰＵ１１へ出力する。条件回路１４は、後述のハードウェア（ＨＷ）ドングル２−１または２−２または２−３のいずれかが装着部へ装着されたときに、セレクタ１２へ条件信号１７を出力する。
【００１６】
ロボット制御装置１は、ＨＷドングル２−１、２−２および２−３を装着するための装着部（図示省略）を有する。ＨＷドングル２−１、２−２および２−３は、ＳＷ先進機能を使用可能とするための設定において、ロボット制御装置１の装着部に装着される。ＨＷドングル２−１、２−２および２−３は、ロボット制御装置１にＳＷ先進機能を追加するために、ＳＷ先進機能を識別する用途で使用される。ロボット制御装置１の提供者は、ロボット制御の一部の機能であるＳＷ先進機能を所望とするユーザに対し、ライセンスの認証として、そのＳＷ先進機能に対応するＨＷドングル２−１、２−２および２−３を提供する。
【００１７】
なお、ロボット制御装置１は、装着可能なＨＷドングルの個数は３つである場合に限られず、いくつであっても良いものとする。ロボット制御装置１は、装着可能なＨＷドングルの個数を、追加可能なＳＷ先進機能の数に応じて適宜設定可能である。
【００１８】
ＨＷドングル２−１、２−２および２−３は、それぞれクロック１５−１、１５−２および１５−３を有する。クロック１５−１、１５−２および１５−３は、セレクタ１２を介してＣＰＵ１１へクロック信号を送出する。クロック１５−１、１５−２および１５−３は、ＳＷ先進機能によるＣＰＵ１１の動作に適用される駆動周波数で発振し、クロック信号を生成する追加用発振器である。
【００１９】
クロック１５−１、１５−２および１５−３は、ＳＷ先進機能による動作のためのハードウェア性能として、所定の駆動周波数による同期タイミングをＣＰＵ１１に付与する。クロック１５−１、１５−２および１５−３は、追加性能付与部として機能する。クロック１５−１、１５−２および１５−３としては、例えば、水晶発振器を使用する。
【００２０】
クロック１５−１、１５−２および１５−３が発振する駆動周波数は、それぞれ、対応するＳＷ先進機能による動作内容に応じて適宜設定されているものとする。さらに、クロック１５−１、１５−２および１５−３が発振する駆動周波数は、いずれも、クロック１３が発振する駆動周波数より高いものとする。
【００２１】
ＨＷドングル２−１、２−２および２−３は、それぞれ、対応するＳＷ先進機能を識別するための条件１６−１、１６−２および１６−３を保持する。ＨＷドングル２−１、２−２および２−３は、装着部に装着されると、条件回路１４へ条件１６−１または１６−２または１６−３を出力する。条件回路１４は、入力された条件１６−１または１６−２または１６−３に応じた条件信号１７を出力する。
【００２２】
図２は、いずれのＨＷドングルも装着されていない場合におけるクロックの接続を説明する図である。ＨＷドングル２−１、２−２および２−３のいずれも装着されていない場合、セレクタ１２は、クロック１３からのクロック信号である入力、例えば選択肢「１」を選択する。ＣＰＵ１１は、クロック１３からのクロック信号を使用して、基本機能による動作を実行する。
【００２３】
図３は、ＨＷドングルが装着された場合におけるクロックの接続を説明する図である。例えば、ＨＷドングル２−１が装着されたとき、ＨＷドングル２−１は、条件１６−１を条件回路１４へ出力する。条件回路１４は、入力された条件１６−１に応じた条件信号１７を出力する。
【００２４】
セレクタ１２は、条件信号１７を選択入力制御信号として、クロック１５−１からのクロック信号である入力、例えば選択肢「２」を選択する。ＣＰＵ１１は、ＨＷドングル２−１に対応するＳＷ先進機能をメモリ１０から読み出す。ＣＰＵ１１は、クロック１５−１からのクロック信号を使用して、ＨＷドングル２−１に対応するＳＷ先進機能による動作を実行する。
【００２５】
セレクタ１２は、ＨＷドングル２−１または２−２または２−３のいずれかが装着されたとき、条件回路１４からの条件信号１７を選択制御入力信号として、クロック１５−１または１５−２または１５−３からのクロック信号のいずれかを選択する。ＣＰＵ１１は、装着されたＨＷドングルに対応するＳＷ先進機能をメモリ１０から読み出す。ＣＰＵ１１は、セレクタ１２にて選択されたクロック信号を使用して、当該ＨＷドングルに対応するＳＷ先進機能による動作を実行する。
【００２６】
図４は、実施の形態１の比較例にかかるロボット制御装置の概略構成を示すブロック図である。比較例にかかるロボット制御装置３は、メモリ１０、ＣＰＵ１１、バッファ１８およびクロック１９を有する。ＨＷドングル４−１、４−２および４−３は、ＳＷ先進機能を識別するための識別ＩＤ５−１、５−２および５−３を有する。バッファ１８は、装着されたＨＷドングル４−１または４−２または４−３から識別ＩＤ５−１または５−２または５−３を読み出す。
【００２７】
ＨＷドングル４−１または４−２または４−３のいずれかが装着され、バッファ１８にて識別ＩＤが読み出されると、ＣＰＵ１１は、バッファ１８から入力された識別ＩＤに対応するＳＷ先進機能をメモリ１０から読み出す。クロック１９は、読み出されたＳＷ先進機能による動作に応じた駆動周波数で発振し、ＣＰＵ１１へクロック信号を出力する。ＨＷドングル４−１、４−２および４−３の装着がない場合、クロック１９は、基本機能による動作に応じた駆動周波数で発振し、ＣＰＵ１１へクロック信号を出力する。
【００２８】
図１に示す実施の形態１にかかるロボット制御装置１は、クロック１３に対して高い周波数で発振可能なクロック１５−１、１５−２および１５−３をそれぞれＨＷドングル２−１、２−２および２−３に搭載する。ロボット制御装置１は、ＨＷドングル２−１、２−２および２−３の装着により、装着されたＨＷドングル内のクロックによる高い駆動周波数をＣＰＵ１１に適用する。ロボット制御装置１は、その基本機能による動作の場合に比べて、ＳＷ先進機能による動作において、ＣＰＵ１１の処理性能（ハードウェア性能）を向上可能とする。この場合、例えば上述の衝突検知機能においては、ロボットが動作中に周辺との衝突を検知して可及的すみやかに停止させるために、衝突を検知する感度を高める制御が必要となる。そのため、この機能を実現させるためにはロボット制御装置１のＣＰＵ１１の処理性能を向上させる必要がある。
【００２９】
ロボット制御装置１は、ＳＷ先進機能を追加する場合に、メモリ１０上でのソフトウェアの設定のみならず、ＨＷドングル２−１または２−２または２−３内のクロック１５−１または１５−２または１５−３によってＣＰＵ１１の処理性能も向上させる必要がある。先進機能の識別ＩＤやソフトウェア内における設定が解読されたとしても、ロボット制御装置１の提供者が発行するライセンス認証として提供されるＨＷドングル２−１または２−２または２−３を装着しない限り、ＳＷ先進機能を十分に発揮するためにはＣＰＵ１１の処理性能は不十分なままとなる。例えば、上述の衝突検知機能においては、衝突を検知する感度が十分でなく、衝突機能などの先進機能を処理する能力に欠ける結果となる。
【００３０】
これにより、ロボット制御装置１は、ＨＷドングル２−１または２−２または２−３が装着されない場合に、ＳＷ先進機能へのアクセスを阻止する。ロボット制御装置１は、正当な設定行為がなされない状況におけるＳＷ先進機能の不正利用を厳重に防ぐことができる。ロボット制御装置１は、ＳＷ先進機能をオプションとすることで、ユーザごとの要望に応じたＳＷ先進機能を提供することができる。ロボット制御装置１は、出荷当初から全てのＳＷ先進機能を盛り込む場合に比べ、基本構成の簡素化および生産工程の簡易化を図り得る。
【００３１】
実施の形態２．
図５は、本発明の実施の形態２にかかるロボット制御装置の概略構成を示すブロック図である。実施の形態１と同一の部分には同一の符号を付し、重複する説明を適宜省略する。
【００３２】
実施の形態２にかかるロボット制御装置２０は、メモリ１０、ＣＰＵ１１、セレクタ１２、条件回路１４、ＥＥＰＲＯＭ（Electrically  Erasable  and  Programmable  Read  Only  Memory）２１およびクロック２２を有する。
【００３３】
クロック２２は、所定の駆動周波数で発振し、ＣＰＵ１１へクロック信号を出力する。ＥＥＰＲＯＭ２１は、基本機能におけるＣＰＵ１１の動作モードを設定する。ＥＥＰＲＯＭ２１は、基本機能による動作のためのハードウェア性能として、ＣＰＵ１１の動作に適用される設定事項（動作モード）を保持する不揮発性メモリである。ＥＥＰＲＯＭ２１は、ロボット制御装置２０の基本性能を付与するもの（基本性能付与部）として機能する。
【００３４】
セレクタ１２は、ＥＥＰＲＯＭ２１と、後述のＥＥＰＲＯＭ２４−１、２４−２および２４−３とに設定された各動作モードのいずれかを選択し、ＣＰＵ１１へ出力する。なお、ロボット制御装置２０は、ＣＰＵ１１の動作モードを保持する不揮発性メモリとして、ＥＥＰＲＯＭ２１以外のものを適用しても良い。
【００３５】
ロボット制御装置２０は、ＨＷドングル２３−１、２３−２および２３−３を装着するための装着部（図示省略）を有する。ＨＷドングル２３−１、２３−２および２３−３は、ＳＷ先進機能を使用可能とするための設定において、ロボット制御装置２０の装着部に装着される。
【００３６】
ＨＷドングル２３−１、２３−２および２３−３は、ロボット制御装置２０にＳＷ先進機能を追加するために、ＳＷ先進機能を識別する用途で使用される。ロボット制御装置２０の提供者は、ロボット制御の一部の機能であるＳＷ先進機能を所望とするユーザに対し、ライセンスの認証として、そのＳＷ先進機能に対応するＨＷドングル２３−１または２３−２または２３−３を提供する。
【００３７】
なお、ロボット制御装置２０は、装着可能なＨＷドングルの個数は３つである場合に限られず、いくつであっても良いものとする。ロボット制御装置２０は、装着可能なＨＷドングルの個数を、追加可能なＳＷ先進機能の数に応じて適宜設定可能である。
【００３８】
ＨＷドングル２３−１、２３−２および２３−３は、それぞれＥＥＰＲＯＭ２４−１または２４−２または２４−３を有する。ＥＥＰＲＯＭ２４−１、２４−２および２４−３は、セレクタ１２を介してＣＰＵ１１へ動作モードを送出する。ＥＥＰＲＯＭ２４−１、２４−２および２４−３は、ＳＷ先進機能によるＣＰＵ１１の動作に適用される設定事項を保持するＳＷ先進機能追加用不揮発性メモリである。
【００３９】
ＥＥＰＲＯＭ２４−１、２４−２および２４−３は、ＳＷ先進機能による動作のためのハードウェア性能として、所定の動作モードをＣＰＵ１１に付与する。ＥＥＰＲＯＭ２４−１、２４−２および２４−３は、追加性能付与部として機能する。
【００４０】
ＥＥＰＲＯＭ２４−１、２４−２および２４−３が保持する動作モードは、それぞれ、対応するＳＷ先進機能による動作内容に応じて適宜設定されているものとする。さらに、ＥＥＰＲＯＭ２４−１、２４−２および２４−３の動作モードによる動作は、いずれも、ＥＥＰＲＯＭ２１の動作モードによる動作よりも高速であるものとする。ＣＰＵ１１は、ＣＰＵ１１の外部のクロック２２からのクロック信号に対し、ＥＥＰＲＯＭ２１、２３−１、２３−２および２３−３によりＣＰＵ１１内部の動作周波数を可変とするブートモード設定を適用する。
【００４１】
ＨＷドングル２３−１、２３−２および２３−３は、それぞれ、対応するＳＷ先進機能を識別するための条件１６−１または１６−２または１６−３を保持する。ＨＷドングル２３−１、２３−２および２３−３は、装着部に装着されると、それぞれ条件回路１４へ条件１６−１または１６−２または１６−３を出力する。なお、ＨＷドングル２３−１、２３−２および２３−３は、ＣＰＵ１１の動作モードを保持する不揮発性メモリとして、ＥＥＰＲＯＭ２４−１、２４−２および２４−３以外のものを適用しても良い。
【００４２】
図６は、いずれのＨＷドングルも装着されていない場合におけるＥＥＰＲＯＭの接続を説明する図である。ＨＷドングル２３−１、２３−２および２３−３のいずれも装着されていない場合、セレクタ１２は、ＥＥＰＲＯＭ２１から入力された動作モード、例えば選択肢「１」を選択する。ＣＰＵ１１は、ＥＥＰＲＯＭ２１からの動作モードを使用して、基本機能による動作を実行する。
【００４３】
図７は、ＨＷドングルが装着された場合におけるＥＥＰＲＯＭの接続を説明する図である。例えば、ＨＷドングル２３−１が装着されたとき、ＨＷドングル２３−１は、条件１６−１を条件回路１４へ出力する。条件回路１４は、入力された条件１６−１に応じた条件信号１７を出力する。
【００４４】
セレクタ１２は、条件信号１７を選択入力制御信号として、ＥＥＰＲＯＭ２４−１から入力された動作モード、例えば選択肢「２」を選択する。ＣＰＵ１１は、ＨＷドングル２３−１に対応するＳＷ先進機能をメモリ１０から読み出す。ＣＰＵ１１は、ＥＥＰＲＯＭ２４−１からの動作モードを使用して、ＨＷドングル２３−１に対応するＳＷ先進機能による動作を実行する。
【００４５】
セレクタ１２は、ＨＷドングル２３−１または２３−２または２３−３のいずれかが装着されたとき、条件回路１４からの条件信号１７を選択制御入力信号として、ＥＥＰＲＯＭ２４−１または２４−２または２４−３からの動作モードのいずれかを選択する。ＣＰＵ１１は、装着されたＨＷドングルに対応するＳＷ先進機能をメモリ１０から読み出す。ＣＰＵ１１は、セレクタ１２にて選択された動作モードを使用して、当該ＨＷドングルに対応するＳＷ先進機能による動作を実行する。
【００４６】
ＥＥＰＲＯＭ２１による動作モードよりも動作が高速化された動作モードがＥＥＰＲＯＭ２４−１、２４−２および２４−３のそれぞれに設定され、ＥＥＰＲＯＭ２４−１、２４−２および２４−３がそれぞれＨＷドングル２３−１、２３−２および２３−３に搭載される。実施の形態２にかかるロボット制御装置２０は、ＨＷドングル２３−１または２３−２または２３−３の装着により、装着されたＨＷドングル内の高速な動作モードをＣＰＵ１１に適用する。ロボット制御装置２０は、基本機能による動作の場合よりも、ＳＷ先進機能により、ＣＰＵ１１の処理性能（ハードウェア性能）を向上可能とする。
【００４７】
ロボット制御装置２０は、ＳＷ先進機能を追加する場合に、メモリ１０上でのソフトウェアの設定のみならず、ＨＷドングル２３−１または２３−２または２３−３内のＥＥＰＲＯＭ２４−１または２４−２または２４−３によってＣＰＵ１１の処理性能も向上させる。先進機能の識別ＩＤやソフトウェア内における設定が解読されたとしても、ロボット制御装置２０の提供者が発行するライセンス認証として提供されるＨＷドングル２３−１または２３−２または２３−３を装着しない限り、ＳＷ先進機能を十分に発揮するにはＣＰＵ１１の処理性能は不十分なままとなる。この結果生じる問題は、例えば実施の形態１で述べた事例と同じである。
【００４８】
これにより、ロボット制御装置２０は、実施の形態１と同様に、ＨＷドングル２３−１または２３−２または２３−３が装着されない場合に、ＳＷ先進機能へのアクセスを阻止する。ロボット制御装置２０は、正当な設定行為がなされない状況におけるＳＷ先進機能の不正利用を厳重に防ぐことができる。ロボット制御装置２０は、ＳＷ先進機能をオプションとすることで、ユーザごとの要望に応じたＳＷ先進機能を提供することができる。ロボット制御装置２０は、出荷当初から全てのＳＷ先進機能を盛り込む場合に比べ、基本構成の簡素化および生産工程の簡易化を図り得る。
【００４９】
実施の形態３．
図８は、本発明の実施の形態３にかかるロボット制御装置の概略構成を示すブロック図である。実施の形態１および２と同一の部分には同一の符号を付し、重複する説明を適宜省略する。
【００５０】
実施の形態３にかかるロボット制御装置３０は、メモリ１０、ＣＰＵ１１、クロック２２およびバッファ３１を有する。ロボット制御装置３０は、ＨＷドングル３２−１、３２−２および３２−３を装着するための装着部（図示省略）を有する。ＨＷドングル３２−１、３２−２および３２−３は、ＳＷ先進機能を使用可能とするための設定において、ロボット制御装置３０の装着部に装着される。
【００５１】
ＨＷドングル３２−１、３２−２および３２−３は、ロボット制御装置３０にＳＷ先進機能を追加するために、ＳＷ先進機能を識別する用途で使用される。ロボット制御装置３０の提供者は、ロボット制御の一部の機能であるＳＷ先進機能を所望とするユーザに対し、ライセンスの認証として、そのＳＷ先進機能に対応するＨＷドングル３２−１、３２−２および３２−３を提供する。
【００５２】
なお、ロボット制御装置３０は、装着可能なＨＷドングルの個数は３つである場合に限られず、いくつであっても良いものとする。ロボット制御装置３０は、装着可能なＨＷドングルの個数を、追加可能なＳＷ先進機能の数に応じて適宜設定可能である。
【００５３】
ＨＷドングル３２−１、３２−２および３２−３は、それぞれ装着部からバスを介してバッファ３１に接続可能とされている。バッファ３１は、ＨＷドングル３２−１、３２−２および３２−３に対し、接続するバスを適宜切り換える。
【００５４】
メモリ１０は、基本機能におけるＣＰＵ１１の動作において必要とされるメモリ容量を充足可能とする。メモリ１０は、基本機能の動作に応じたメモリ容量を持つロボット制御装置３０の基本性能を付与するもの（基本性能付与部）として機能する。
【００５５】
ＨＷドングル３２−１、３２−２および３２−３は、それぞれメモリ３３−１または３３−２または３３−３を有する。メモリ３３−１、３３−２および３３−３は、ＳＷ先進機能によるＣＰＵ１１の動作においてメモリ容量を拡張させる拡張用メモリである。メモリ３３−１、３３−２および３３−３は、ロボット制御装置３０がＳＷ先進機能により動作可能とするために、メモリ１０に所定のメモリ容量を上乗せさせ、ＣＰＵ１１を駆動するのに用いる。メモリ３３−１、３３−２および３３−３は、ロボット制御装置３０に追加性能を付与するもの（追加性能付与部）として機能する。
【００５６】
ロボット制御装置３０は、ＳＷ先進機能の各動作において必要とされるメモリ容量が、基本機能の動作において必要とされるメモリ容量に比べて大きいものとする。メモリ３３−１、３３−２および３３−３のメモリ容量は、それぞれ、ロボット制御装置３０が、対応するＳＷ先進機能による動作をするために必要なメモリ容量が十分に確保されているものとする。
【００５７】
バッファ３１は、ＨＷドングル３２−１または３２−２または３２−３のいずれかが装着されたとき、装着されたＨＷドングルとの間のバスを接続状態とする。ＣＰＵ１１は、装着されたＨＷドングルに対応するＳＷ先進機能をメモリ１０から読み出す。ロボット制御装置３０は、メモリ１０と、装着されたＨＷドングルのメモリとを使用して、当該ＨＷドングルに対応するＳＷ先進機能による動作を実行する。
【００５８】
実施の形態３にかかるロボット制御装置３０は、メモリ１０のメモリ容量に、ＨＷドングル３２−１または３２−２または３２−３のそれぞれに搭載されたメモリ３３−１または３３−２または３３−３のメモリ容量を追加可能とする。ロボット制御装置３０は、ＨＷドングル３２−１または３２−２または３２−３の装着により増大させたメモリ容量を、ＣＰＵ１１の処理に適用する。ロボット制御装置３０は、基本機能による動作の場合に対し、ＳＷ先進機能による動作において、ＣＰＵ１１の処理性能（ハードウェア性能）を向上可能とする。
【００５９】
ロボット制御装置３０は、ＳＷ先進機能を追加する場合に、メモリ１０上でのソフトウェアの設定をするのみならず、ロボット制御装置３０の全体としてのメモリ容量も増大させる。先進機能の識別ＩＤやソフトウェア内における設定が解読されたとしても、ロボット制御装置３０の提供者が発行するライセンス認証として提供されるＨＷドングル３２−１または３２−２または３２−３を装着しない限り、ロボット制御装置３０がＳＷ先進機能を実行するにはメモリ容量が不十分なままとなる。
【００６０】
これにより、ロボット制御装置３０は、実施の形態１および２と同様に、ＨＷドングル３２−１または３２−２または３２−３が装着されない場合に、ＳＷ先進機能へのアクセスを阻止する。ロボット制御装置３０は、正当な設定行為がなされない状況におけるＳＷ先進機能の不正利用を厳重に防ぐことができる。ロボット制御装置３０は、ＳＷ先進機能をオプションとすることで、ユーザごとの要望に応じたＳＷ先進機能を提供することができる。ロボット制御装置３０は、出荷当初から全てのＳＷ先進機能を盛り込む場合に比べ、基本構成の簡素化および生産工程の簡易化を図り得る。
【符号の説明】
【００６１】
１、２０、３０  ロボット制御装置
２−１〜２−３、２３−１〜２３−３、３２−１〜３２−３  ＨＷドングル
１０  メモリ
１１  ＣＰＵ
１２  セレクタ
１３、２２  クロック
１４  条件回路
１５−１〜１５−３  クロック
１６−１〜１６−３  条件
１７  条件信号
２１  ＥＥＰＲＯＭ
２３−１〜２３−３  ＥＥＰＲＯＭ
３１  バッファ
３３−１〜３３−３  メモリ
【図１】
2013183149.tif 000003
【図２】
2013183149.tif 000004
【図３】
2013183149.tif 000005
【図４】
2013183149.tif 000006
【図５】
2013183149.tif 000007
【図６】
2013183149.tif 000008
【図７】
2013183149.tif 000009
【図８】
2013183149.tif 000010
【手続補正書】
【提出日】平成25年2月26日(2013.2.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
（削除）
【請求項２】
ロボットを制御するための基本機能と、前記基本機能に追加可能で、前記ロボットを制御する機能や性能を向上させるための先進機能とを含むソフトウェアが格納されたソフトウェア格納部と、
要求に応じた機能を前記ソフトウェア格納部から読み出し、実行する演算部と、
前記基本機能による動作のためのハードウェア性能を前記演算部に付与する基本性能付与部と、を有し、
前記先進機能を使用可能とするための設定において、ライセンスの認証のためのハードウェアであるハードウェアドングルが装着され、
前記ハードウェアドングルは、前記先進機能による動作のためのハードウェア性能を前記演算部に付与する追加性能付与部を有し、
前記基本性能付与部は、前記基本機能による前記演算部の動作に適用される駆動周波数で発振する基本発振器であって、
前記追加性能付与部は、前記先進機能による前記演算部の動作に適用される駆動周波数で発振する追加用発振器であることを特徴とするロボット制御装置。
【請求項３】
ロボットを制御するための基本機能と、前記基本機能に追加可能で、前記ロボットを制御する機能や性能を向上させるための先進機能とを含むソフトウェアが格納されたソフトウェア格納部と、
要求に応じた機能を前記ソフトウェア格納部から読み出し、実行する演算部と、
前記基本機能による動作のためのハードウェア性能を前記演算部に付与する基本性能付与部と、を有し、
前記先進機能を使用可能とするための設定において、ライセンスの認証のためのハードウェアであるハードウェアドングルが装着され、
前記ハードウェアドングルは、前記先進機能による動作のためのハードウェア性能を前記演算部に付与する追加性能付与部を有し、
前記基本性能付与部は、前記基本機能による動作のためのハードウェア性能として前記演算部の動作に適用される設定事項を保持し、
前記追加性能付与部は、前記先進機能による動作のためのハードウェア性能として前記演算部の動作に適用される設定事項を前記演算部へ送出することを特徴とするロボット制御装置。
【国際調査報告】
2013183149.tif 000011
2013183149.tif 000012
2013183149.tif 000013
2013183149.tif 000014