WordRTCのチュートリアル

全体の手順

まず、RTCを起動する前にネームサービス、RTシステムエディタの起動を行います。その後RTCを起動します。次にサンプルコンポーネントによる文字の入力を行い、最後にOpenHRIを用いた簡単なRTシステムの作成を行います。

前準備

このページの手順に従ってネームサーバー、RTSystemEditorの起動を行ってください。

WordRTCの起動

WordControlpy.py(もしくはdistフォルダ内のWordControlpy.exe)を実行してください。
するとWordが起動します。既にWordを起動している場合は新規にファイルを作成します。

テスト用RTCの起動

WordRTCがどのような動作をするか確認するためにWordRTCpy\TestCompフォルダのTestComp.pyを実行してください。するとConsoleIn0というRTCが起動します。このRTCはコンソールからエンターキーを押すたびに文字を出力するRTCです。

簡単な動作確認

先ほど起動したConsoleIn0outWordControl0wordを接続してください。

コンフィギュレーションの編集画面が開くのでCodeutf-8にしてください。

次にRT System Editorのアクティブ化ボタンを押してください。

この状態でテスト用RTCのコンソールからエンターキーを押すと文字が出力されてWordに文字が書き込まれます。

一旦、非アクティブボタンを押して書き込みを止めてください。この際、なかなか操作が完了しないことがありますが、テスト用RTCのコンソールからエンターキーを押せば完了します。

OpenHRIを使う例

あらかじめOpenHRIをインストールしていてください。
まず、portaudiooutputとopenjtalkrtcを起動してください。

全てのプログラムから

OpenHRI

を起動してください。

次にSEATコンポーネントを立ち上げます。その際WordRTC付属のtest.seatmlを読み込ませる必要があります。


"C:\Program Files\SEATSAT\SEAT" test.seatml

といった内容のパッチファイルを作成して実行するのが簡単だと思います。

ちなみにSEATのスクリプトtest.seatmlの内容は


  
    
    
    
  
  
    
      これは
      0
      これは
    
    
      Word
      1
      Word
    
    
      を操作するRTCです
      0
      を操作するRTCです
    
  

となっており、Wordという文字列が入力された時のみcommandoutからTrueを出力して、それ以外ではFalseを出力するようにしています。

以下は動作のシーケンス図です。

起動したらRT System Editorより以下のデータポートの接続を行ってください。

RTC1 DataOutPort RTC2 DataInPort 
ConsoleIn0 out SEAT0 speechin
SEAT0 speechout OpenJTalkRTC0 text
SEAT0 speechout WordControl0 word
SEAT0 commandout WordControl0 Bold
OpenJTalkRTC0 result PortAudioOutput0 AudioDataIn

これでアクティブ化ボタンを押してテスト用RTCのコンソールからエンターキーを入力してください。音声が流れると同時にWordに文字が書き込まれます。それから、WordControl0に"Word"という文字が入力されたときのみBoldにTrueが入力されるため"Word"だけ太字になります。

自動化スクリプト

rtshellによりOpenHRIを利用したデモシステムの起動を自動化するスクリプトを付属してあります。
Start.batを起動すれば必要なRTCが起動します。
次にrtshellScript.batを起動すればデータポートの接続、RTCのアクティブ化までを行います※。終了する際はrtshellScript.batで起動したウィンドウでキーを入力すれば終了します。

※rtshellScript.batのset host=".host_cxt"の部分を環境に合わせて変更しておいてください。

これでチュートリアルは終わりです。より詳細な情報は使用方法のページに載せます。