サービスとクライアントを実行
Simple Wiki Based Contents Management System
関心分野 >> Ros4Winのインストール >> サービスとクライアントを実行

シンプルなサービスとクライアントを実行

このページでは、先ほど作成したROSサービスサーバーとクライアントを実行して、その動作を確認します。
ROSサービスの場合にも、roscoreを起動しておく必要がありますので、起動していない場合には、
 > start roscore
で実行しておきます。

C++版のadd_two_ints_serverとadd_two_ints_clientの実行

最初にC++版のサーバーとクライアントを実行しましょう。
  • サーバーの起動
ROSサーバーの起動もrosrunコマンドで下のように実行します。
 > rosrun --start mytut add_two_ints_server
このコマンドを実行すると新たにターミナルが現れ、下のように表示され待ち状態になります。
 [ INFO] [1549860239.037692400]: Ready to add two ints.
  • クライアントの起動
サーバーの起動確認ができたら、add_two_ints_clientを実行します。
AddTowIntsサービスのための2つの整数は、コマンドラインから引数で指定します。
下記のようにコマンド入力すると、サーバーで2つの整数の和を計算して、レスポンスが返ってきます。
 > rosrun mytut add_two_ints_client 3 7
[ INFO] [1549860456.806409400]: Sum: 10
この時、サーバー側の画面は、下のようなメッセージが出ていると思います。
[ INFO] [1549860239.037692400]: Ready to add two ints.
[ INFO] [1549860456.302431152]: request: x=3, y=7
[ INFO] [1549860456.302711312]: sending back response: [10]
以上で、C++版のサーバーとクライアントの実行確認ができました。add_two_ints_serverを Ctrl+C で終了してください。

Python版のadd_two_ints_serverとadd_two_ints_clientの実行

次に、Pythonで実装したROSサービスサーバーとクライアントの動作を確認します。
  • サーバーの起動
ROSサーバーの起動もrosrunコマンドで下のように実行します。
 > rosrun --start mytut add_two_ints_server.py
このコマンドを実行すると新たにターミナルが現れ、下のように表示され待ち状態になります。
Ready to add two ints.
  • クライアントの起動
サーバーの起動確認ができたら、add_two_ints_client.pyを実行します。
AddTowIntsサービスのための2つの整数は、コマンドラインから引数で指定します。
下記のようにコマンド入力すると、サーバーで2つの整数の和を計算して、レスポンスが返ってきます。
 > rosrun mytut add_two_ints_client.py 3 7
Requesting 3+7
3 + 7 = 10
この時、サーバー側の画面は、下のようなメッセージが出ていると思います。
Ready to add two ints.
Returning [3 + 7 = 10]
以上で、Python版のサーバーとクライアントの実行確認ができました。add_two_ints_server.pyを Ctrl+C で終了してください。
以上で、ROSサービスのサーバーとクライアントの実行確認は終了です。
次は、rosbagコマンドを使ったROSシステムの実行と再生に進んでください。