(57)【要約】【課題】適用対象となるシステムにおけるセキュリティを確保しつつ、簡単にＲＰＡを実現すること。【解決手段】情報処理システムは、操作の対象となる被操作装置に対する、入力デバイス信号に基づく自動操作を管理する管理装置を含み、前記管理装置は、前記被操作装置の表示画面の画像を取得する画像取得手段と、前記被操作装置に実行させる操作内容を管理する実行管理手段と、前記被操作装置に操作内容に基づいた入力デバイス信号を入力する信号入力手段と、を備える。【選択図】図１
2019032719.tif 000002
【特許請求の範囲】
【請求項１】
操作の対象となる被操作装置に対する、入力デバイス信号に基づく自動操作を管理する管理装置を含み、
前記管理装置は、
前記被操作装置の表示画面の画像を取得する画像取得手段と、
前記被操作装置に実行させる操作内容を管理する実行管理手段と、
前記被操作装置に前記操作内容に基づいた入力デバイス信号を入力する信号入力手段と、
を備えることを特徴とする情報処理システム。
【請求項２】
前記管理装置は、
前記被操作装置の表示画面の画像に基づいて、前記被操作装置において行われた操作内容を取得する操作内容取得手段と、
前記操作内容取得手段によって取得された前記操作内容を記録する記録制御手段と、
を備えることを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記管理装置は、
前記記録制御手段によって記録された前記操作内容の編集を受け付ける編集管理手段を備えることを特徴とする請求項２に記載の情報処理システム。
【請求項４】
前記管理装置は、
記録されている前記操作内容に基づいて、前記被操作装置に対する操作を実行する実行管理手段を備えることを特徴とする請求項２または３に記載の情報処理システム。
【請求項５】
前記操作内容取得手段は、マウスによる前記操作内容を取得する場合に、表示画面における操作が行われた位置周辺の画像を前記操作内容として取得し、
前記実行管理手段は、前記操作内容を前記被操作装置で実行する際に、前記操作が行われた位置周辺の画像において、マウスポインターを除外した画像を基に、前記被操作装置の表示画面を探索し、前記被操作装置の表示画面において探索された画像に、前記マウスポインターの画像を付加した画像と、記録されている前記操作が行われた位置周辺の画像とが合致するか否かを判定することを特徴とする請求項４に記載の情報処理システム。
【請求項６】
前記画像取得手段は、前記被操作装置から出力される画面出力信号を取得することを特徴とする請求項１から５のいずれか１項に記載の情報処理システム。
【請求項７】
前記画像取得手段は、前記被操作装置の表示画面を撮像した撮像画像を取得することを特徴とする請求項１から５のいずれか１項に記載の情報処理システム。
【請求項８】
前記信号入力手段は、前記被操作装置に対する入力デバイス信号を生成して入力することを特徴とする請求項１から７のいずれか１項に記載の情報処理システム。
【請求項９】
前記信号入力手段は、前記被操作装置に接続された入力デバイスを操作して入力デバイス信号を入力することを特徴とする請求項１から７のいずれか１項に記載の情報処理システム。
【請求項１０】
前記管理装置は、身振り、音または光の少なくともいずれかによる挙動を行うロボットに内蔵された装置として構成され、
前記管理装置は、実行する処理に応じて、前記ロボットに所定の挙動を行わせることを特徴とする請求項１から９のいずれか１項に記載の情報処理システム。
【請求項１１】
前記管理装置とは別体として構成され、身振り、音または光の少なくともいずれかによる挙動を行うロボットを含み、
前記管理装置は、実行する処理に応じて、前記ロボットに所定の挙動を行わせることを特徴とする請求項１から９のいずれか１項に記載の情報処理システム。
【請求項１２】
操作の対象となる被操作装置に対する、入力デバイス信号に基づく自動操作を管理する管理装置が実行する情報処理方法であって、
前記被操作装置の表示画面の画像を取得する画像取得ステップと、
前記被操作装置に実行させる操作内容を管理する実行管理ステップと、
前記被操作装置に入力デバイス信号を入力する信号入力ステップと、
を含むことを特徴とする情報処理方法。
【請求項１３】
コンピュータに、
操作の対象となる被操作装置の表示画面の画像を取得する画像取得機能と、
前記被操作装置に実行させる操作内容を管理する実行管理機能と、
前記被操作装置に前記操作内容に基づいた入力デバイス信号を入力する信号入力機能と、
を実現させることを特徴とするプログラム。
【請求項１４】
コンピュータに、
操作の対象となる被操作装置の表示画面の画像に基づいて、前記被操作装置において行われた操作内容を取得する操作内容取得機能と、
前記操作内容取得機能によって取得された前記操作内容を記録する記録制御機能と
を実現させることを特徴とするプログラム。
【請求項１５】
コンピュータに、
操作の対象となる被操作装置の表示画面の画像に基づいて取得された、前記被操作装置において行われた操作内容の編集を受け付ける編集管理機能を実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操作対象となる装置の自動的な操作を可能とする情報処理システム、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、業務処理を自動化するＲＰＡ（Ｒｏｂｏｔｉｃ  Ｐｒｏｃｅｓｓ  Ａｕｔｏｍａｔｉｏｎ）が利用されている。
ＲＰＡが利用される場合、操作対象となる装置にＲＰＡを実行するためのアプリケーションをインストールし、インストールされたアプリケーションによって、オペレータの操作を記録する。そして、オペレータの操作が記録された後は、ＲＰＡを実行するためのアプリケーションが、記録された操作を再現することにより、操作対象となる装置における業務処理の自動化が実現される。
なお、ＲＰＡに関する技術は、例えば、特許文献１に記載されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“日本ＲＰＡ協会ホームページ”、［online］、日本ＲＰＡ協会、［平成２９年６月３０日検索］、インターネット＜URL:http://rpa-japan.com/＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術においては、ＲＰＡが利用される場合、操作対象となる装置にＲＰＡを実行するためのアプリケーションをインストールする必要がある。ところが、例えば、金融機関の社内で利用されている端末装置等においては、セキュリティの問題から、アプリケーションのインストールが許可されないことがある。また、一般に、企業内で利用されている端末装置に、新たなアプリケーションのインストールを行う場合には、管理者に申請し、インストールの許可を得る必要がある。そのため、外部の業者が企業内の端末装置においてＲＰＡを利用しようとしても、直ちにはＲＰＡを利用できず、作業効率の低下を招く可能性がある。
このように、従来の技術においては、ＲＰＡの適用対象となるシステムにおけるセキュリティを確保しつつ、簡単にＲＰＡを実現することが困難であった。
【０００５】
本発明は、適用対象となるシステムにおけるセキュリティを確保しつつ、簡単にＲＰＡを実現することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様に係る情報処理システムは、
操作の対象となる被操作装置に対する、入力デバイス信号に基づく自動操作を管理する管理装置を含み、
前記管理装置は、
前記被操作装置の表示画面の画像を取得する画像取得手段と、
前記被操作装置に実行させる操作内容を管理する実行管理手段と、
前記被操作装置に前記操作内容に基づいた入力デバイス信号を入力する信号入力手段と、
を備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、適用対象となるシステムにおけるセキュリティを確保しつつ、簡単にＲＰＡを実現することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施形態に係るＲＰＡシステムのシステム構成を示す模式図である。
【図２】管理装置のハードウェア構成を示すブロック図である。
【図３】管理装置の機能的構成を示すブロック図である。
【図４Ａ】実行管理部が表示画面における操作位置を特定する方法を示す模式図である。
【図４Ｂ】実行管理部が表示画面における操作位置を特定する方法を示す模式図である。
【図４Ｃ】実行管理部が表示画面における操作位置を特定する方法を示す模式図である。
【図４Ｄ】実行管理部が表示画面における操作位置を特定する方法を示す模式図である。
【図５】管理装置が実行する記録処理の流れを説明するフローチャートである。
【図６】管理装置が実行する編集処理の流れを説明するフローチャートである。
【図７】管理装置が実行する実行処理の流れを説明するフローチャートである。
【図８】ロボットと管理装置１とを分離したＲＰＡシステムＳのシステム構成を示す模式図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について、図面を参照して説明する。
［システム構成］
図１は、本発明の一実施形態に係るＲＰＡシステムＳのシステム構成を示す模式図である。
図１に示すように、ＲＰＡシステムＳは、管理装置１と、ロボット２と、被操作装置３と、を含んで構成される。また、ロボット２には、ディスプレイ２Ａと、マウス２Ｂと、キーボード２Ｃとが接続される。なお、以下の説明において、被操作装置３の操作者をオペレータと称し、管理装置１の操作者をユーザと称する。
【００１０】
本実施形態に係るＲＰＡシステムＳでは、ＲＰＡを管理する管理装置１が内蔵されたロボット２を、被操作装置３に外付けする形態で、管理装置１によって被操作装置３の表示内容を認識すると共に、被操作装置３に対する操作を実行する。
具体的には、ＲＰＡシステムＳでは、管理装置１に被操作装置３から画面出力信号を出力すると共に、管理装置１から被操作装置３に入力デバイス信号を入力する接続形態としている。そして、ＲＰＡシステムＳでは、ロボット２に内蔵された管理装置１によって、被操作装置３に対するオペレータの操作を記録し、記録された操作内容の編集を受け付けると共に、被操作装置３に対する所定の操作を実行することが可能となっている。
【００１１】
そのため、ＲＰＡシステムＳでは、被操作装置３にＲＰＡのためのアプリケーションをインストールすることなく、被操作装置３におけるＲＰＡを実現することができる。
したがって、ＲＰＡシステムＳによれば、適用対象となるシステムにおけるセキュリティを確保しつつ、簡単にＲＰＡを実現することができる。
【００１２】
なお、本実施形態におけるＲＰＡシステムＳでは、種々の操作をＲＰＡによって実行することが可能であるが、以下の説明では、被操作装置３において、文書作成ソフトウェア（あるいは表計算ソフトウェア等）におけるテキストをコピーし、電子メールソフトウェアにペーストして送信するという作業が行われる例を想定するものとする。
【００１３】
図１において、管理装置１は、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等の情報処理装置によって構成され、ＲＰＡシステムＳにおけるＲＰＡ全体を管理する。例えば、管理装置１は、被操作装置３に対するオペレータの操作を記録するモード（記録モード）、記録された操作内容の編集を受け付けるモード（編集モード）あるいはＲＰＡにより被操作装置３に対する所定の操作を実行するモード（実行モード）に基づく処理を実行する。なお、管理装置１については、構成の詳細を後述する。
【００１４】
ロボット２は、管理装置１を内蔵した人型のロボットであり、管理装置１における処理の状態を、身振りや音声等の振る舞いによって外部に報知する。本実施形態において、ロボット２は、頭部を上下に動かす機能及び腕を肩回りに動かす機能を備えており、管理装置１における処理の状態に応じて、例えば、頷くような動作や手振りをするような動作を実行する。また、ロボット２は、管理装置１における処理の状態に応じて（例えば、記録モード、編集モード及び実行モード等のモードの別に応じたり、さらに、実行モードの場合には、実行前、実行中または実行終了の別に応じたりして）、予め設定された音声（アラーム音やメッセージ等）を発する。なお、ロボット２は、頭部や腕を動かす動作や音声の出力の他、ＬＥＤを発光させることにより、外部に対する各種の報知を行うことも可能である。
【００１５】
また、本実施形態において、ロボット２には、被操作装置３に対する入力デバイス信号の出力ポート及びディスプレイ２Ａに対する画面出力信号の出力ポート以外が備えられている一方、汎用のデータ出力ポートは備えられていないようにすることが望ましい。このような構成により、外部ストレージデバイス等を介して、被操作装置３内のデータが外部に漏洩することを抑制できる。
【００１６】
ディスプレイ２Ａは、管理装置１における各種処理の内容を表示する。例えば、ディスプレイ２Ａは、記録モード及び実行モードにおいて、被操作装置３の表示画面をモニタして表示したり、編集モードにおいて、記録された操作内容の編集を行うためのユーザインターフェース画面（ＵＩ画面）を表示したりする。
【００１７】
マウス２Ｂは、管理装置１の入力デバイスとして備えられ、管理装置１を操作するための信号を入力する。
キーボード２Ｃは、管理装置１の入力デバイスとして備えられ、各種キーに対応する信号を管理装置１に入力する。
【００１８】
被操作装置３は、ＰＣ等の情報処理装置によって構成され、ＲＰＡの対象となる装置である。例えば、被操作装置３として、特定の社内システム（金融システム等）に接続された端末装置等が想定され、被操作装置３には、外部からのアクセスに対するセキュリティが設定されている。本実施形態において、管理装置１と被操作装置３とは、管理装置１に被操作装置３からディスプレイ信号ケーブルを介して画面出力信号が出力されると共に、管理装置１から被操作装置３にマウス／キーボード信号ケーブルを介して入力デバイス信号が入力される接続形態であり、これら以外にデータの授受が行われない構成となっている。したがって、被操作装置３から出力されるデータは、画面出力信号（即ち、ビットマップ化された表示画面のデータを表す信号）のみであるため、ＲＰＡシステムＳを介して被操作装置３内のデータ（セキュリティの対象となるデータ）が漏洩することが抑制される。
なお、被操作装置３における汎用のデータ出力ポートは、セキュリティ対策のために使用できない状態とされることが望ましい。
【００１９】
［管理装置１のハードウェア構成］
図２は、管理装置１のハードウェア構成を示すブロック図である。
図２に示すように、管理装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１と、ＲＯＭ１２と、ＲＡＭ１３と、記憶部１４と、ビデオ入力部１５と、マウス信号出力部１６と、キーボード信号出力部１７と、ＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）制御部１８と、モータ制御部１９と、グラフィック表示部２０と、入力インターフェース部２１と、音声合成・出力部２２と、Ａ／Ｄ（Ａｎａｌｏｇ／Ｇｉｇｉｔａｌ）変換部２３と、を備えている。
【００２０】
ＣＰＵ１１は、記憶部１４に記憶された各種プログラムを実行することにより、管理装置１全体を制御する。例えば、ＣＰＵ１１は、記録モードに対応する処理（記録処理）のためのプログラム、編集モードに対応する処理（編集処理）のためのプログラムあるいは実行モードに対応する処理（実行処理）のためのプログラムを実行する。
ＲＯＭ１２には、管理装置１を制御するための各種システムプログラムが予め書き込まれている。
【００２１】
ＲＡＭ１３は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の半導体メモリによって構成され、ＣＰＵ１１が各種処理を実行する際に生成されるデータを記憶する。例えば、ＲＡＭ１３には、被操作装置３の表示画面のデータ（ここでは、動画データとする）を一時的に記憶するフレームバッファが形成される。本実施形態において、フレームバッファはリングバッファとして形成され、フレームバッファには、最新の所定フレーム分（例えば、２４フレーム分）の表示画面のデータが順次記憶される。
【００２２】
記憶部１４は、ハードディスクあるいはフラッシュメモリ等の不揮発性の記憶装置によって構成され、記録処理のためのプログラム、編集処理のためのプログラム及び実行処理のためのプログラム等を記憶する。
ビデオ入力部１５は、所定時間毎に被操作装置３の画面出力信号（例えば、ＨＤＭＩ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）（登録商標）信号等）を取得する。本実施形態において、ビデオ入力部１５は、例えば、２４フレーム／秒のレートで、被操作装置３の画面出力信号が表す表示画面のデータを動画データとして取得する。画面出力信号が表す表示画面のデータは、ＣＰＵ１１の指示に従って、ＲＡＭ１３の所定領域（フレームバッファ）に順次記憶される。
【００２３】
マウス信号出力部１６は、管理装置１が被操作装置３を操作する際に、ＣＰＵ１１の指示に従って、マウスによる操作を入力するための入力デバイス信号（例えば、ＰＳ／２信号あるいはＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）信号等）を被操作装置３に出力する。
【００２４】
キーボード信号出力部１７は、管理装置１が被操作装置３を操作する際に、ＣＰＵ１１の指示に従って、キーボードによるキー入力を行うための入力デバイス信号（例えば、ＰＳ／２信号あるいはＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）信号等）を被操作装置３に出力する。
【００２５】
ＬＥＤ制御部１８は、ＣＰＵ１１の指示に従って、ＬＥＤを点灯させるための制御信号をＬＥＤに出力する。
モータ制御部１９は、ＣＰＵ１１の指示に従って、ロボット２の可動部（ここでは頭部及び両腕）を動作させる各モータを駆動するための制御信号を出力する。
グラフィック表示部２０は、ＣＰＵ１１の指示に従って、ディスプレイ２Ａに画面を表示するための処理を実行する。
【００２６】
入力インターフェース部２１は、マウス２Ｂ及びキーボード２Ｃから入力された入力デバイス信号を所定形式に変換（シリアル−パラレル変換等）し、ＣＰＵ１１に出力する。
音声合成・出力部２２は、ＣＰＵ１１の指示に従って、ロボット２が発する音声を合成し、スピーカを介して出力する。
Ａ／Ｄ変換部２３は、マイクを介して入力された音声信号をアナログ−デジタル変換し、音声を表すデジタル信号として、ＣＰＵ１１に出力する。このとき、Ａ／Ｄ変換部２３は、音声のレベルが所定のレベルとなるように調整するためのゲインを適宜加えてＡ／Ｄ変換を行う。
【００２７】
［管理装置１の機能的構成］
次に、管理装置１に形成される機能的構成について説明する。
図３は、管理装置１の機能的構成を示すブロック図である。
図３に示すように、記録処理のためのプログラム、編集処理のためのプログラム及び実行処理のためのプログラムを実行することにより、ＣＰＵ１１には、機能的構成として、ロボット制御部１１ａと、画面キャプチャ部１１ｂと、画面認識部１１ｃと、イベント取得部１１ｄと、記録制御部１１ｅと、編集管理部１１ｆと、実行管理部１１ｇと、が形成される。
【００２８】
ロボット制御部１１ａは、記録処理、編集処理及び実行処理の状態に応じて、予め設定されているロボット２の振る舞いのパターンを選択し、ロボット２の可動部の動作、音声出力あるいはＬＥＤの点灯を制御する。
画面キャプチャ部１１ｂは、ビデオ入力部１５によって受信された被操作装置３の画面出力信号が表す表示画面のデータを動画データとして取得し、ＲＡＭ１３の所定領域（フレームバッファ）に順次記憶する。また、画面キャプチャ部１１ｂは、フレームバッファに記憶された表示画面のデータ（動画データ）から、１画面分ずつの所定形式の画像ファイル（例えば、ビットマップ形式等）を生成し、記憶部１４に記憶する。
【００２９】
画面認識部１１ｃは、記憶部１４に記憶された１画面分の表示画面のデータにおいて、マウスポインターの位置及び形状、ウィンドウ、実行中のアプリケーション、ボタン及びオブジェクト等の表示内容を認識する。このとき、画面認識部１１ｃは、文字認識処理を実行することが可能であり、例えば、ウィンドウ上部に表示されているアプリケーション名や、ボタンに表示されている操作種別等を認識することができる。なお、マウスポインターについては、マウスポインターとして使用される可能性がある種々の形状が管理装置１に予め登録されており、これらの形状を表示画面内の各部の画像と照合することにより、マウスポインターの認識が行われる。マウスポインターが認識された以降のフレームでは、認識されたマウスポインターの位置付近において、認識されたマウスポインターの形状が探索されることによって、より効率的にマウスポインターの認識が行われる。
なお、マウスポインターの形状を探索する場合、オブジェクトマッチングあるいはＦＡＳＴ（Ｆｅａｔｕｒｅｓ  ｆｒｏｍ  Ａｃｃｅｌｅｒａｔｅｄ  Ｓｅｇｍｅｎｔ  Ｔｅｓｔ）アルゴリズム等の特徴点抽出技術といった手法を用いることができる。
【００３０】
イベント取得部１１ｄは、表示画面のデータに基づいて、被操作装置３において発生したイベントを取得する。例えば、イベント取得部１１ｄは、マウスによる操作が行われた場合に、操作の種類（左クリック、右クリックあるいはドラッグ等）、操作された位置及び付近の画像、操作されたオブジェクトの種類（「ＯＫボタン」等）を取得する。なお、マウスによる操作は、１画面分の表示画面内の変化あるいは前後の複数画面分の表示画面における変化から検出することができる。
【００３１】
記録制御部１１ｅは、イベント取得部１１ｄによって取得されたイベントを操作の手順を表すデータとして、所定のファイル（以下、適宜「手順書ファイル」と称する。）に記録する。例えば、マウスによる操作が行われた場合、記録制御部１１ｅは、マウスポインターの位置と、マウス操作によるイベントの内容と、マウスポインター付近の画像のデータとを対応付けて、手順書ファイルに記録する。
【００３２】
編集管理部１１ｆは、管理装置１のユーザによって、記録された操作内容の編集が指示された場合に、記録された操作内容の編集を行うためのユーザインターフェース画面（ＵＩ画面）をディスプレイ２Ａに表示する。また、編集管理部１１ｆは、編集の対象となる操作内容が記録された手順書ファイルを読み出し、ＵＩ画面において、編集対象として表示する。本実施形態において、編集管理部１１ｆは、ビジュアルプログラミングに基づくＵＩ画面を表示し、操作内容を表すモジュールの視覚的な配置の変更等によって、操作内容の編集を受け付ける。
【００３３】
実行管理部１１ｇは、手順書ファイルに記録された操作手順の実行が指示された場合に、操作手順の実行を管理する。例えば、実行管理部１１ｇは、操作手順に従って、被操作装置３に入力デバイス信号を順次出力し、入力デバイス信号による操作の結果が操作手順に記録されている操作の結果と一致するか否かを判定する。このとき、実行管理部１１ｇは、被操作装置３における処理時間のばらつき等の影響を抑制するため、被操作装置３の現在の状況を逐次取得し、待機時間を適宜挿入しつつ、操作の結果を判定する。そして、実行管理部１１ｇは、入力デバイス信号による操作の結果が、所定時間経過した後も操作手順に記録されている操作の結果と一致しない場合には、ロボット２によって、操作の結果がエラーであることを報知する。
【００３４】
また、実行管理部１１ｇは、手順書ファイルに記録されている手順を実行する場合、被操作装置３から取得される表示画面のデータにおいて、手順書ファイルに記録されているイベント発生時のマウスポインター付近の画像を探索することにより、実行すべき１手順の対象となる操作の位置を特定する。
【００３５】
図４Ａ〜図４Ｄは、実行管理部１１ｇが表示画面における操作位置を特定する方法を示す模式図である。
図４Ａは、記録処理において、マウス操作によるイベントが発生した際に記録されたマウスポインター付近の画像を示す模式図である。
図４Ａにおいては、「送信ボタン」にマウスポインターが重ねられて左クリックされた状態が記録されている。なお、「送信ボタン」における「送信」の文字は、マウスポインターに一部が隠された状態となっている。
【００３６】
図４Ｂは、図４Ａに示す画像から、マウスポインターの画像が除外された画像を示す模式図である。
図４Ｂにおいては、図４Ａに示す画像のうち、マウスポインターの画像が除外され、操作される側の表示画面の情報に限定された状態が示されている。実行管理部１１ｇは、被操作装置３から取得される表示画面のデータにおいて、図４Ｂに示される状態の画像と合致する部分を探索する。これにより、マウスポインターの影響を抑制して、実行すべき１手順の対象となる操作の位置を適切に探索することができる。
【００３７】
図４Ｃは、実行管理部１１ｇによって探索された表示画面のデータの一部を示す模式図である。
図４Ｃにおいては、図４Ｂに示す画像と合致する可能性が高い部分が特定されている。
図４Ｄは、探索された表示画面のデータの一部に、マウスポインターが重ねられた状態を示す模式図である。
図４Ｄに示すように、実行管理部１１ｇは、探索された表示画面のデータの一部にマウスポインターの画像を重ねることにより、手順書ファイルに記録されているマウスポインター付近の画像と合致するか否かを判定し、実行すべき１手順の対象となる操作の位置を最終的に特定する。
【００３８】
また、実行すべき１手順の対象となる操作の位置が特定された場合、実行管理部１１ｇは、マウス信号出力部１６を介して、マウスによる操作を入力するための入力デバイス信号（ＰＳ／２信号あるいはＵＳＢ信号等）を被操作装置３に出力する。具体的には、実行管理部１１ｇは、現在のマウスポインターの位置（画面認識部１１ｃで認識される位置または１つ前に実行された手順における操作の位置等）から、特定された操作の位置にマウスポインターを移動させるためのマウスカウントの値を入力デバイス信号として被操作装置３に出力する。即ち、本実施形態において、管理装置１には、表示画面における位置の差分（座標を示すピクセルデータの差分等）をマウスカウントの値に換算する関数ｆが記憶されており、実行管理部１１ｇは、マウスカウント＝ｆ（表示画面における位置の差分）として、被操作装置３に出力すべきマウスカウントの値を出力する。この関数ｆは、個別の被操作装置３に対応するものであり、操作される被操作装置３が決定した場合に予め管理装置１に設定することができる。あるいは、実行管理部１１ｇが特定のマウスカウントを被操作装置３に出力した場合のマウスポインターの位置の変化を画面認識部１１ｃで認識することで、関数ｆを設定することとしてもよい。
【００３９】
マウスカウントを被操作装置３に出力することで、被操作装置３においては、マウスポインターが、実行すべき１手順の対象となる操作の位置付近に移動する。
ここで、本実施形態においては、マウスポインターによる操作の位置をより正確に特定するため、マウスカウントの入力によって移動したマウスポインターの位置がさらに微調整される。具体的には、マウスカウントの入力によって、実行すべき１手順の対象となる操作の位置付近にマウスポインターが移動された後の画像を、画面認識部１１ｃによって認識し、実行管理部１１ｇが、認識された画像を手順書ファイルに記録されているイベント発生時のマウスポインター付近の画像と比較することにより、マウスポインターの位置の差分を取得する。そして、実行管理部１１ｇは、取得したマウスポインターの位置の差分を解消するように、さらにマウスカウントを被操作装置３に入力する。
【００４０】
このような手順により、表示画面のデータによって操作内容を認識し、入力デバイス信号によって、認識された操作内容を自動的に実行するシステム形態において、より正確にＲＰＡによる操作を行うことができる。
【００４１】
［動作］
次に、ＲＰＡシステムＳの動作を説明する。
［記録処理］
図５は、管理装置１が実行する記録処理の流れを説明するフローチャートである。
記録処理は、管理装置１のユーザが記録モードを選択することに対応して開始される。
ステップＳ１において、ロボット制御部１１ａは、記録処理の状態に応じたロボット２の振る舞いの実行を開始する。
【００４２】
ステップＳ２において、ＲＡＭ１３の所定領域（フレームバッファ）に記憶された動画データから、被操作装置３の表示画面における１画面分のデータ（即ち、１フレーム分のデータ）を抽出する。
ステップＳ３において、画面キャプチャ部１１ｂは、抽出した１画面分の表示画面のデータを、所定形式の画像ファイル（例えば、ビットマップ形式等）に変換し、記憶部１４に記憶する。
【００４３】
ステップＳ４において、画面認識部１１ｃは、記憶部１４に記憶された１画面分の表示画面のデータにおいて、マウスポインターの認識を実行する。このとき、画面認識部１１ｃは、先行するフレームにおいてマウスポインターが認識されていない場合には、マウスポインターとして使用される可能性がある種々の形状を、１フレーム内の全領域について各部の画像と照合することにより、マウスポインターの位置及び形状の認識を実行する。また、画面認識部１１ｃは、先行するフレームにおいてマウスポインターが認識されている場合には、認識されたマウスポインターの位置付近において、認識されたマウスポインターの形状を探索することにより、マウスポインターの位置及び形状の認識を実行する。
【００４４】
ステップＳ５において、画面認識部１１ｃは、マウスポインターが認識されたか否かの判定を行う。
マウスポインターが認識されていない場合、ステップＳ５においてＮＯと判定されて、処理はステップＳ２に移行する。
一方、マウスポインターが認識されている場合、ステップＳ５においてＹＥＳと判定されて、処理はステップＳ６に移行する。
【００４５】
ステップＳ６において、イベント取得部１１ｄは、被操作装置３において発生したイベントを取得する。具体的には、イベント取得部１１ｄは、ユーザによって発生されたマウス操作によるイベントの内容（左クリック、右クリックあるいはドラッグ等）を取得する。
ステップＳ７において、記録制御部１１ｅは、イベント取得部１１ｄによって取得されたイベントを操作の手順を表すデータとして、手順書ファイルに記録する。具体的には、記録制御部１１ｅは、マウスポインターの位置と、マウス操作によるイベントの内容と、マウスポインター付近の画像のデータとを対応付けて、手順書ファイルに記録する。
【００４６】
ステップＳ８において、記録制御部１１ｅは、記録モードを終了させる指示（記録終了ボタンのクリック等）が行われたか否かの判定を行う。
記録モードを終了させる指示が行われていない場合、ステップＳ８においてＮＯと判定されて、処理はステップＳ２に移行する。
一方、記録モードを終了させる指示が行われた場合、ステップＳ８においてＹＥＳと判定されて、処理はステップＳ９に移行する。
【００４７】
ステップＳ９において、ロボット制御部１１ａは、記録処理の状態に応じたロボット２の振る舞いの実行を終了する。
ステップＳ１０において、記録制御部１１ｅは、記録モードにより記録された時系列の操作内容（操作手順）を表すデータとして、手順書ファイルを記憶部１４に記憶する。
ステップＳ１０の後、記録処理は終了となる。
【００４８】
［編集処理］
図６は、管理装置１が実行する編集処理の流れを説明するフローチャートである。
編集処理は、管理装置１のユーザが編集モードを選択することに対応して開始される。
ステップＳ２１において、編集管理部１１ｆは、ユーザの指示に応じて、編集の対象となる操作内容が記録された手順書ファイルを選択する。
ステップＳ２２において、ロボット制御部１１ａは、編集処理の状態に応じたロボット２の振る舞いの実行を開始する。
【００４９】
ステップＳ２３において、編集管理部１１ｆは、編集のためのＵＩ画面をディスプレイ２Ａに表示する。ステップＳ２３において表示されるＵＩ画面では、ユーザは、手順書ファイルに記録されている操作内容に関連して、条件分岐やループ処理等の追加、変更あるいは削除といった編集を行うことができる。また、このとき表示されるＵＩ画面は、ビジュアルプログラミングに基づくＵＩ画面であり、ユーザは、操作内容を表すモジュールの視覚的な配置の変更等によって、操作内容を編集することができる。
【００５０】
ステップＳ２４において、編集管理部１１ｆは、手順書ファイルに記録されている操作内容に編集内容を反映させる。
ステップＳ２５において、編集管理部１１ｆは、手順書ファイルが更新されたことをユーザに通知する確認画面を表示する。
ステップＳ２６において、ロボット制御部１１ａは、編集処理の状態に応じたロボット２の振る舞いの実行を終了する。
ステップＳ２７において、編集管理部１１ｆは、編集モードにより編集された操作手順を表すデータとして、手順書ファイルを更新する。
ステップＳ２７の後、編集処理は終了となる。
【００５１】
［実行処理］
図７は、管理装置１が実行する実行処理の流れを説明するフローチャートである。
実行処理は、管理装置１のユーザが実行モードを選択することに対応して開始される。
ステップＳ３１において、実行管理部１１ｇは、ユーザの指示に応じて、実行の対象となる操作内容が記録された手順書ファイルを選択する。
ステップＳ３２において、実行管理部１１ｇは、選択した手順書ファイルに記録されている操作内容の実行指示を受け付ける。
【００５２】
ステップＳ３３において、ロボット制御部１１ａは、実行処理の状態に応じたロボット２の振る舞いの実行を開始する。
ステップＳ３４において、実行管理部１１ｇは、手順書ファイルに記録されている操作内容の１手順を読み出す。
ステップＳ３５において、画面キャプチャ部１１ｂは、ビデオ入力部１５によって受信された被操作装置３の画面出力信号が表す表示画面のデータを動画データとして取得し、ＲＡＭ１３の所定領域（フレームバッファ）に順次記憶する。
ステップＳ３６において、画面認識部１１ｃは、記憶部１４に記憶された１画面分の表示画面のデータにおいて、マウスポインターの位置及び形状、ウィンドウ、実行中のアプリケーション、ボタン及びオブジェクト等の表示内容を認識する。
【００５３】
ステップＳ３７において、実行管理部１１ｇは、認識された表示内容に基づいて、入力デバイス信号によって被操作装置３の現在の状況を取得する。このとき、実行管理部１１ｇは、例えば、マウスポインターの位置やウィンドウの変化等を被操作装置３の現在の状況として取得する。
ステップＳ３８において、実行管理部１１ｇは、取得した被操作装置３の現在の状況と、手順書ファイルに記録されている操作内容とを照合する。例えば、実行管理部１１ｇは、被操作装置３の現在の状況が処理の待機中であり、手順書ファイルに記録されたウィンドウが表示されていない場合には、取得した被操作装置３の現在の状況と、手順書ファイルに記録されている操作内容とが合致しないものと判定する。これにより、記録処理と実行処理とでは被操作装置３の処理負荷が異なるところ、被操作装置３の現在の状況が、手順書ファイルに記録されている操作内容が実行された状況と合致するまで、次の処理の実行を待機することができる。
【００５４】
ステップＳ３９において、実行管理部１１ｇは、マウス信号出力部１６あるいはキーボード信号出力部１７を介して、手順書ファイルから読み出した１手順を実行させる入力デバイス信号を被操作装置３に出力する。このとき、実行管理部１１ｇは、被操作装置３から取得される表示画面のデータにおいて、手順書ファイルに記録されているイベント発生時のマウスポインター付近の画像を探索することにより、実行すべき１手順の対象となる操作の位置を特定する。これにより、被操作装置３において、手順書ファイルに記録されている１手順が実行される。
【００５５】
ステップＳ４０において、実行管理部１１ｇは、手順書ファイルに記録されている操作内容が被操作装置３において全て実行されたか否かの判定を行う。
手順書ファイルに記録されている操作内容が被操作装置３において全て実行されてはいない場合、ステップＳ４０においてＮＯと判定されて、処理はステップＳ３４に移行する。
一方、手順書ファイルに記録されている操作内容が被操作装置３において全て実行された場合、ステップＳ４０においてＹＥＳと判定されて、処理はステップＳ４１に移行する。
【００５６】
ステップＳ４１において、ロボット制御部１１ａは、実行処理の状態に応じたロボット２の振る舞いの実行を終了する。
ステップＳ４２において、実行管理部１１ｇは、手順書ファイルに記録されている操作内容の実行が終了したことを示すダイアログ（実行終了ダイアログ）を表示する。
ステップＳ４２の後、実行処理は終了となる。
【００５７】
以上のように、本実施形態に係るＰＲＡシステムＳでは、管理装置１が被操作装置３から画面出力信号を取得すると共に、管理装置１から被操作装置３に入力デバイス信号を入力する。そして、管理装置１は、被操作装置３の画面出力信号から被操作装置３で行われた操作を認識し、被操作装置３に対する所定の操作を入力デバイス信号によって実行する。
したがって、被操作装置３にＲＰＡのためのアプリケーションをインストールすることなく、被操作装置３におけるＲＰＡを実現することができる。
したがって、ＲＰＡシステムＳによれば、適用対象となるシステムにおけるセキュリティを確保しつつ、簡単にＲＰＡを実現することができる。
【００５８】
また、管理装置１の画面認識部１１ｃが被操作装置３の表示画面における表示内容を認識し、イベント取得部１１ｄが、表示画面のデータに基づいて、被操作装置３において発生したイベントを取得する。
したがって、ＲＰＡのためのアプリケーションをインストールすることなく、被操作装置３からの画面出力信号によって、被操作装置３で行われた操作内容を取得することができる。
【００５９】
また、管理装置１では、記録処理が実行されることにより、被操作装置３で行われた操作内容を記録することができる。
したがって、被操作装置３のオペレータが行った操作を管理装置１において記録することができる。
【００６０】
また、管理装置１では、編集処理が実行されることにより、被操作装置３で行われた操作内容を編集することができる。
したがって、被操作装置３オペレータが行った操作を目的に応じて拡充させることができる。
【００６１】
また、管理装置１では、実行処理が実行されることにより、記録されている操作内容を被操作装置３に自動的に実行させることができる。
したがって、被操作装置３に管理装置１を外付けする形態で、ＲＰＡを実現することができる。
【００６２】
［変形例１］
上述の実施形態において、管理装置１は、ロボット２に内蔵されているものとして説明したが、これに限られない。即ち、ＲＰＡシステムＳは、ロボット２と管理装置１とを分離したシステム構成とすることができる。
図８は、ロボット２と管理装置１とを分離したＲＰＡシステムＳのシステム構成を示す模式図である。
図８に示すように、管理装置１をロボット２とは別体の情報処理装置として構成し、ロボット２は、頭部や腕を動かす機能、音声の出力機能及びＬＥＤを発光させる機能を有するものとできる。
なお、図８に示すシステム構成では、被操作装置３の画面出力信号をビデオキャプチャするビデオキャプチャ装置４及び被操作装置３に対する入力デバイス信号を生成するエミュレート処理装置５がさらに備えられている。ビデオキャプチャ装置４は、図２におけるビデオ入力部１５の機能を有し、エミュレート処理装置５は、図２におけるマウス信号出力部１６及びキーボード信号出力部１７の機能を有するものである。
このような構成とすることにより、ロボット２の機能がより限定されたものとなり、ロボット２を小型化しつつ、上記実施形態のＲＰＡシステムＳと同様の機能を実現することができる。
【００６３】
［変形例２］
上述の実施形態において、記録モードでオペレータの操作内容を記録する際に、ロボット２を介して、オペレータに対して操作内容について質問し、ロボット２による質問及びオペレータの回答を記録することができる。これにより、条件分岐やループ等の複数の選択肢が存在する操作等について、オペレータが行った操作内容自体の記録に留まらず、操作の意図にまで拡張して記録することが可能となる。
例えば、オペレータによって表示画面上で電子メールを開く操作が行われた場合に、ロボット２が「どうしてこのメールを開いたのですか？一番上にあるからですか？」と質問し、オペレータが「ＮＯ」と回答した場合に、ロボット２が「タイトルが太字だからですか？」とさらに質問し、オペレータが「ＮＯ」と回答した場合に、ロボット２が「未読だからですか？」とさらに質問し、オペレータが「ＹＥＳ」と回答した場合に、「わかりました。では、次回から、未読のメールを開きますね。」と、オペレータの操作の意図を把握することができる。そして、管理装置１は、これら質問及び回答を記録すると共に、把握されたオペレータの意図（「未読のメールを開く操作」等）を操作内容として記録することができる。
これにより、編集モードにおいて操作内容を編集する手間を省略し、より簡単にＲＰＡを実現することが可能となる。
なお、オペレータに対する質問は、ロボット２を介して音声として出力することや、被操作装置３のディスプレイにテキストデータとして出力すること等が可能である。また、オペレータによる回答は、管理装置１、ロボット２あるいは被操作装置３に音声として入力することや、被操作装置３の表示画面においてマウスやキーボードの操作によって入力すること等が可能である。
【００６４】
［変形例３］
上述の実施形態において、ＲＰＡシステムＳの適用対象として、ＲＰＡにより所定の処理（業務上の作業等）を自動的に実行する場合を例に挙げて説明したが、ＲＰＡシステムＳは、種々の目的に用いることができる。
例えば、本発明を適用したＲＰＡシステムＳは、操作対象となる装置のＯＳ（オペレーティングシステム）やプラットフォーム等に依存しないことから、種々の装置における操作のテストツールとして用いることができる。
即ち、管理装置１が、テストの対象となる装置においてオペレータが入力したテスト操作パターンを記録処理で記録し、編集処理によって、テスト操作のバリエーション等を適宜追加・変更した上で、実行処理によって、テスト操作の内容を自動的に入力して、操作のテストを行うことができる。
この場合、テストの対象となる装置の性能等によって、待機時間が発生した場合にも、ＲＰＡシステムＳは適切に待機し、人間が操作する場合とほぼ同様のテスト操作を行うことができる。
比較例として、テストの対象となる装置にインストールしたテストツールを用いてテスト操作を実行する場合、実際のＵＩ画面の表示及びユーザの操作を経ることなく、ユーザによって操作されたものとして処理が進行することから、実際の操作とは異なるテスト結果となる場合がある。
これに対し、本発明を適用したＲＰＡシステムＳを用いることで、より正確なテスト結果を得ることができる。
【００６５】
［変形例４］
上述の実施形態において、管理装置１は、被操作装置３の画面出力信号を取得するものとしたが、これに限られない。即ち、被操作装置３における表示内容が取得できるものであれば、種々の技術的手段を用いることができる。
例えば、カメラによって被操作装置３の表示画面を撮像し、撮像された画像に基づいて、管理装置１が、被操作装置３の表示内容を認識することとしてもよい。
この場合、被操作装置３の出力ポートから信号やデータを出力することなく、被操作装置３に対するＲＰＡを実行することができる。
そのため、被操作装置３におけるセキュリティをより高めつつ、簡単にＲＰＡを実現することができる。
【００６６】
［変形例５］
上述の実施形態において、管理装置１から被操作装置３に入力デバイス信号を入力することにより、被操作装置３の操作を行うものとしたが、これに限られない。即ち、被操作装置３を操作できるものであれば、種々の技術的手段を用いることができる。
例えば、ロボット２に手あるいは指の機能を有するマニピュレータを備え、管理装置１（ロボット制御部１１ａ）がマニピュレータの動きを制御することによって、被操作装置３のキーボードやマウスを操作することが可能である。この場合、マニピュレータが操作するキーボードやマウスをカメラで撮像し、オブジェクト認識を行うことで、キーボードやマウスを適切に操作することができる。
このような構成とした場合、キーボードやマウス以外であっても、各種機器の操作インターフェースを操作することが可能となる。そのため、情報処理装置以外の被操作装置３に対しても、ＲＰＡによる自動的な操作を行うことができる。
例えば、介護機器や医療機器等の特殊な装置に対して、医療従事者等が行った操作を管理装置１で記録し、記録された操作内容を適宜編集する。そして、以後、管理装置１が、ＲＰＡにより自動的に介護機器や医療機器等の操作を行うことができる。
これにより、日常的に繰り返される特定の介護作業や医療行為等について、人為的なミスが発生することを抑制しつつ、効率的に対応することが可能となる。
【００６７】
なお、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
例えば、上述の実施形態においては、管理装置１が記録処理、編集処理及び実行処理を行う場合を例に挙げて説明したが、これに限られない。即ち、記録処理、編集処理及び実行処理は、異なる装置で実行することとしてもよい。この場合、処理結果を他の装置に受け渡すことにより、全体として、上述の実施形態と同様の機能を実現することができる。
【００６８】
また、上述の実施形態において、記録処理が行われる場合、オペレータによって操作された際のマウスポインターの位置をオペレータの操作の通りに逐次記録することや、マウス操作によるイベントが発生した際のマウスポインターの位置のみを記録することのいずれも可能である。
また、上述の実施形態において、管理装置１をマウス／キーボード信号ケーブルを介して被操作装置３に接続する場合に、被操作装置３において新たなデバイスとして認識されない設定とすることが望ましい。例えば、管理装置１をマウス／キーボード信号ケーブルを介して被操作装置３に接続した場合に、被操作装置３に標準でドライバが内蔵されたデバイスとして管理装置１が認識されることが望ましい。ただし、管理装置１を被操作装置３に接続した際に、ドライバがインストールされるのみであれば、被操作装置３内のデータが漏洩することを抑制する観点では実質的に影響はないため、ＲＰＡシステムＳの適用対象によっては、ドライバのインストールを許容することも可能である。
【００６９】
また、上述の実施形態において、被操作装置３の入力デバイスとして、マウス及びキーボードを例に挙げて説明したが、これに限られない。即ち、被操作装置３の入力デバイスとしては、種々のものが想定され、例えば、被操作装置３がタッチパネルやタッチペン等の入力デバイスを備える場合にも、本発明を適用することが可能である。
【００７０】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
換言すると、図３の機能的構成は例示に過ぎず、特に限定されない。即ち、上述した一連の処理を全体として実行できる機能が管理装置１に備えられていれば足り、この機能を実現するためにどのような機能ブロックを用いるのかは特に図３の例に限定されない。
また、１つの機能ブロックは、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
本実施形態における機能的構成は、演算処理を実行するプロセッサによって実現され、本実施形態に用いることが可能なプロセッサには、シングルプロセッサ、マルチプロセッサ及びマルチコアプロセッサ等の各種処理装置単体によって構成されるものの他、これら各種処理装置と、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）やＦＰＧＡ（Ｆｉｅｌｄ‐Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の処理回路とが組み合わせられたものを含む。
【００７１】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。
コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えば汎用のパーソナルコンピュータであってもよい。
【００７２】
このようなプログラムを含む記録媒体は、ユーザにプログラムを提供するために装置本体とは別に配布されるリムーバブルメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される記録媒体等で構成される。リムーバブルメディアは、例えば、磁気ディスク（フロッピディスクを含む）、光ディスク、または光磁気ディスク等により構成される。光ディスクは、例えば、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ），ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ），Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ（ブルーレイディスク）等により構成される。光磁気ディスクは、ＭＤ（Ｍｉｎｉ−Ｄｉｓｋ）等により構成される。また、装置本体に予め組み込まれた状態でユーザに提供される記録媒体は、例えば、プログラムが記録されている図２のＲＯＭ１２や、図２の記憶部１４に含まれるハードディスク等で構成される。
【００７３】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【００７４】
以上、本発明のいくつかの実施形態について説明したが、これらの実施形態は、例示に過ぎず、本発明の技術的範囲を限定するものではない。本発明はその他の様々な実施形態を取ることが可能であり、さらに、本発明の要旨を逸脱しない範囲で、省略や置換等種々の変更を行うことができる。これら実施形態やその変形は、本明細書等に記載された発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７５】
Ｓ  ＲＰＡシステム、１  管理装置、２  ロボット、２Ａ  ディスプレイ、２Ｂ  マウス、２Ｃ  キーボード、３  被操作装置、４  ビデオキャプチャ装置、５  エミュレート処理装置、１１  ＣＰＵ、１２  ＲＯＭ、１３  ＲＡＭ、１４  記憶部、１５  ビデオ入力部、１６  マウス信号出力部、１７  キーボード信号出力部、１８  ＬＥＤ制御部、１９  モータ制御部、２０  グラフィック表示部、２１  入力インターフェース部、２２  音声合成・出力部、２３  Ａ／Ｄ変換部、１１ａ  ロボット制御部、１１ｂ  画面キャプチャ部、１１ｃ  画面認識部、１１ｄ  イベント取得部、１１ｅ  記録制御部、１１ｆ  編集管理部、１１ｇ  実行管理部
【図１】
2019032719.tif 000003
【図２】
2019032719.tif 000004
【図３】
2019032719.tif 000005
【図４Ａ】
2019032719.tif 000006
【図４Ｂ】
2019032719.tif 000007
【図４Ｃ】
2019032719.tif 000008
【図４Ｄ】
2019032719.tif 000009
【図５】
2019032719.tif 000010
【図６】
2019032719.tif 000011
【図７】
2019032719.tif 000012
【図８】
2019032719.tif 000013