Warning: require(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-settings.php on line 235 Warning: require(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-settings.php on line 237 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-settings.php on line 305 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/wp-contact-form-7.php on line 66 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 3 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 4 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 5 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 7 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 8 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 9 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 10 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 11 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 12 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 13 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 14 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 15 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 16 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 17 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 18 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 19 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 24 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-settings.php on line 305 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/wp-dbase-cache/wp-cache.php on line 37 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/wp-dbase-cache/wp-cache.php on line 41 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-settings.php on line 305 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/wp-multibyte-patch/wp-multibyte-patch.php on line 536 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-settings.php on line 305 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/wp-social-bookmarking-light/wp-social-bookmarking-light.php on line 43 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/wp-social-bookmarking-light/wp-social-bookmarking-light.php on line 44 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/wp-social-bookmarking-light/wp-social-bookmarking-light.php on line 45 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/wp-social-bookmarking-light/wp-social-bookmarking-light.php on line 46 Warning: require(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-settings.php on line 310 Warning: require(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-settings.php on line 311 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/functions.php on line 3746 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 11 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 14 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 17 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 20 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 23 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 26 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 29 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 32 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 35 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 38 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 41 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 44 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 47 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 50 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 53 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 56 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 59 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 62 Warning: require_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/default-widgets.php on line 65 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include_once(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/plugins/contact-form-7/settings.php on line 60 Warning: include(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-settings.php on line 424 Warning: include(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-settings.php on line 426 Warning: require(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/themes/bizvektor-global-edition/functions.php on line 207 Warning: require(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-includes/template.php on line 690 Warning: require(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/themes/bizvektor-global-edition/functions.php on line 212 Warning: require(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/themes/bizvektor-global-edition/functions.php on line 213 Warning: require(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/themes/bizvektor-global-edition/functions.php on line 214 Warning: require(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/themes/bizvektor-global-edition/bizvektor_themes/003/003_custom.php on line 37 Warning: require(): Unable to allocate memory for pool. in /virtual/htdocs/ikou_www/wordpress/wp-content/themes/bizvektor-global-edition/functions.php on line 219 ロボットアプリケーション(RSNPクライアント)の作成 | RSNPとは | ロボットサービスイニシアチブ -Robot Services initiative-
ロボットサービスの標準化を目指して

ロボットアプリケーション(RSNPクライアント)の作成

ここでは、サンプルロボットアプリケ-ションのRobotMimamoriSample(ロボット見守りサービス)を実行します。

構築するロボットアプリケーションの概要と機能、システム構成

準備するもの

  • ノートPC
  • USBカメラ(Webカメラ)

ロボットアプリケーションの機能

  • ロボットの状態を定期的にサーバへ通知します。
  • 撮影したカメラ画像を定期的にサーバに送信します。
  • 撮影した画像は、ロボットサービス(RSNPサーバ上)に実装されたRSiロボットマップからの参照が可能です。
    ロボットアプリケーション(RSNPクライアント)の作成

開発環境の設定

ロボットアプリケーションを開発するためにはロボットアプリケーションの開発環境を構築してください。ロボットアプリケーションの開発環境は、ロボットアプリケーションの環境構築から設定できます。

Webカメラの接続(認識の確認)

Webカメラを使って画像を認識できることを確認します。(※WebカメラをPC上で認識するために、専用のデバイスドライバのインストールが必要な場合があります。)

Eclipseの起動と環境設定

ロボットアプリケーションのダウンロードとインポート

  1. プロジェクトのダウンロード

    RobotMimamoriSample.zipをダウンロードして、任意のフォルダに解凍します。

  2. プロジェクトのEclipseへのインポート

    • Eclipseを起動し、「ファイル」-「インポート」から「インポート」ダイアログを開き、「一般」-「既存のプロジェクトをワークスペースへ」を選択し、「次へ」ボタンをクリックします。
    • インポートするプロジェクトを選択するウィンドウが表示されます。「ルート・ディレクトリーの選択」にチェックを行い、右側にある「参照」ボタンを押します。インポートするプロジェクトが含まれるディレクトリを指定して「OK」ボタンをクリックします。
      ロボットアプリケーション(RSNPクライアント)の作成
    • インポート可能なプロジェクトの一覧が表示されます。インポートしたいプロジェクトの左側のチェックボックスにチェックを行った後で「終了」ボタンをクリックします。
      ロボットアプリケーション(RSNPクライアント)の作成
    • パッケージ・エクスプローラーの中にインポートしたプロジェクトが追加されて表示されます。

Java Media Framework(JMF)のインストールとビルドパスの設定

本アプリケーションではWebカメラから画像を取得して、利用します。そのために、音声や動画など時系列で変化するメディアをJavaアプリケーションやアプレットに追加するためのJavaライブラリーであるJMFをインストールします。その後に、EclipseのJavaのビルド・パスにJMFを追加します。

JMFのインストール

ORACLEのJMFダウンロードサイト (http://www.oracle.com/technetwork/java/javase/download-142937.html) より、”JMF”をダウンロードし、インストールします。

EclipseへのJMFのビルド・パス設定

インストールしたJMFへのビルド・パスをEclipseへ設定します。

  • インストールしたJMFのlibフォルダ配下にある以下のライブラリーを、”RobotMimamoriSample”プロジェクトのlibフォルダにコピーします。
    • jmf.jar
  • 『パッケージ・エクスプローラー』ビューで”RobotMimamoriSample”プロジェクトを選択し、右クリックでポップアップメニューを表示し、「プロパティー」を選択して『プロパティー』ダイアログを開き、左ペインのツリーで「Java のビルド・パス」を選択し、右ペインで「ライブラリー」タグを開きます。
  • 「JARの追加…」ボタンを押し、『JAR の選択』ダイアログを開き、先ほど追加したlibフォルダ配下のライブラリファイルを選択し、「OK」ボタンを押します。
  • ビルド・パス上のJARおよびクラス・フォルダーの内容を確認し「OK」ボタンを押します。

ロボットアプリケーションの実行、動作確認

ロボットアプリケーションを実行し、その動作を確認します。ソースコードの変更を行わない場合には、Webカメラの画像ではなく、単色画像がロボットアプリケーションからの画像としてロボットサービスに送られます。まず、この状態で動作確認を行います。

  1. アカウント設定

    アカウント情報は、ロボットアプリケーションはロボットサービスと接続するための、ロボットアカウントと、Webブラウザからサービスへログインし、ロボットの動作確認を行うための管理者アカウントがあります。アカウント情報を下記に記述します。

    ロボットアカウント(ロボットからのロボットサービスへの接続に使用)

    • ユーザID:robot030
    • パスワード:robot030_pass

    ロボット管理者アカウント(Webブラウザからの動作確認に使用)

    • ユーザID:rssr030
    • パスワード:rssr030_pass

    ロボットアカウントについては、ロボットアプリケーションにあらかじめ引数を設定します。Eclipseを起動し、RobotMimamoriSampleプロジェクトを右クリックしてポップアップメニューを表示します。「実行」を選択して『実行の構成』ダイアログを開き、左ペインのツリーで「Java アプリケーション」-「RobotMimamoriMain」を選択します。「引数」タグに、上記で示したロボットアカウントをユーザID、パスワードの順で記述します。
    ロボットアプリケーション(RSNPクライアント)の作成

  2. ロボットアプリケーションの実行

    RobotMimamoriMain.javaを選択し、プログラムを実行してください。

  3. ロボットアプリケーションの動作確認

    Webブラウザから以下のURLへアクセスし、ロボットサービス上でロボットアプリケーションがどのように動作しているのかを確認してみましょう。

    • RSiロボットマップ(http://rsi.aiit.ac.jp/

      RSiロボットマップ上にロボットが点在しています。一時間以上アクセスしていないロボットは灰色、アクセス一時間未満のロボットは緑色に表示されます。StateNotificator.javaのrunメソッドは、緯度・経度の引数を持ちます。マップ上では、この経度・緯度の位置にロボットが表示されます。表示のロボットをクリックすると、ロボットの詳細情報を確認できます。

      public void run() {
      if (statusParams != null && inp != null) {
      synchronized (this) {
      // XML作成
      buff.append(“<latitude>35.423936</latitude>”
      + “<longitude>136.760750</longitude>”
      + “<location>岐阜</location>”
      + “<comment>RSNPチュートリアル@日本</comment>”);
      buff.append(“</status></mimamori>”);

              ・

      ロボットアプリケーション(RSNPクライアント)の作成

    • ロボットみまもりサービス

      ロボットみまもりサービス(http://rsi.aiit.ac.jp/rsnpServer/mimamori/login/)に行くと、Login画面が表示されます。「アカウント設定」で示したロボット管理者アカウントでLoginします。Login後ロボットアプリケーションからの情報(ロボットの位置・現在の接続状態・ロボット周辺の画像)を確認できます。
      ロボットアプリケーション(RSNPクライアント)の作成

    • ロボットアプリケーションの停止操作

      http://localhost:9000/ にアクセスすることによってロボットアプリケーションからロボットサービスへの接続が切断されます。

実際のカメラ画像表示、動作確認

単色画像ではなく、実際のWebカメラ画像をロボットアプリケーションからロボットサービスに配信するソースコードに書き換えます。下記のように、CameraImage.javaのcreateImageメソッドの一部を変更します。“byte[] bytes = out.toByteArray();”はコメントアウトします。

private byte[] createImage(String type) {
// 画像を取得
BufferedImage im;
im = new BufferedImage(240, 180, BufferedImage.TYPE_INT_RGB);

        ・
        }
        // 単色画像を取得する場合のロジック   
//byte[] bytes = out.toByteArray();

// カメラ画像を取得する場合のロジック
byte[] bytes = ImgCapture.getInstance().getImg();

return bytes;

ロボットアプリケーション(RSNPクライアント)の作成

アレンジ(ソースコードを変更し、表示位置・コメント等が変更されたことを確認)

StateNotificator.javaのrunメソッドの一部を改変することでロボットアプリケーションがロボットサービスに送る位置情報を変更することができます。下記ソースコードの位置情報(緯度・経度・場所)を変更して、RSiロボットマップでどのように変更が反映されるか確認します。RSiロボットマップ上のロボットの表示位置が異なることを確認します。

public void run() {
if (statusParams != null && inp != null) {
synchronized (this) {
// XML作成
buff.append(“<latitude>33.83752</latitude>”
+ “<longitude>132.798969</longitude>”
+ “<location>松山</location>”
+ “<comment>RSNPチュートリアル@日本</comment>”);
buff.append(“</status></mimamori>”);

        ・

ロボットアプリケーション(RSNPクライアント)の作成


PAGETOP