2016年10月26日水曜日

【備忘録】rostopic pub でマイナスの値を送ろうとしたら失敗したメモ

こんにちは。

やらかした系二連投になるんですが、またやらかしそうなのでメモ。

ロボットを動かすプログラムを書いて、動作確認をする際に、geometry_msgs/Pose2D型のトピック(/hoge)を投げようとして、以下のコマンドをコマンドラインから送ってました。

$ rostopic pub /hoge geometry_msgs/Pose2D 1 1 1


(geometry_msgs/Pose2D型はx, y, theta (すべてfloat))

よし、マイナス方向に動かして戻そう、と思い、以下のコマンドを打ったところ、

$ rostopic pub /hoge geometry_msgs/Pose2D -1 1 1


マイナスとか送れない的なエラーメッセージが出て、あれー?と思って色々とググってみました。

色々とググったり本を読んだ(みんな大好き例の英語の本のP.371が参考になった)結果、どうやら以下のコマンドで送れそうとわかって試してみた。

$ rostopic pub /hoge geometry_msgs/Pose2D "{x: -0.5, y: -1.5, theta:0}"


すると意外なところで以下のエラーがでた。

found unexpected ':'
Please check http://pyyaml.org/wiki/YAMLColonInFlowContext for detail

もう一回例の本をみて、じーっとみてみると。。。ありました、thetaのコロンの後にスペースが入ってませんでした。スペース入れるとか知らんがな。

ということで、以下のコマンドでやりたいことができました。めでたしめでたし。
$ rostopic pub /hoge geometry_msgs/Pose2D "{x: -0.5, y: -1.5, theta: 0}"




0 件のコメント:

コメントを投稿