遠隔操作ロボットのための狭路走行RTコンポーネント

遠隔操作ロボットのための狭路走行RTコンポーネント

投稿者: 
root

概要・特徴

  • 遠隔操作ロボットが狭路走行を行うためのRTC
  • GamePadの前進入力のみで自動的に壁を回避することが可能 http://www.openrtm.org/openrtm/sites/default/files/RT%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0_0.jpg

仕様

  • 言語:C#
  • OS: Windows10
  • RTミドルウェア:OpenRTM-aist-1.1.0

ソースコードおよびマニュアル

概要スライド

ライセンス

修正BSDライセンス

動画

問合先(メールアドレス): 
ab14105<at>shibaura-it.ac.jp
Project Information
OS: 
Windows
言語: 
C++
OpenRTM ver.: 
1.0
Average: 
3.5
Average: 3.5 (2 votes)
最終更新日時: 
月, 2017-12-04 14:10

コメント

投稿者: 

TimedVelocity2D型に格納する値が入力角度[mm]、速度量[mm/s]とマニュアルに記載されているのですが、速度と角度を指定したい場合はTimedSpeedHeading2Dというデータ型があります。 TimedVelocity2D型は並進速度、回転速度を格納するデータ型なので、TimedSpeedHeading2D型を使う方がいいと思います。

投稿者: 

ご意見ありがとうございます.入力角度,速度量という書き方は適切ではありませんでした. 実際は並進速度,回転速度として利用していました.内部で回転速度を角度として変換して利用していたため角度という表記をしてしまいました.現在のマニュアルは,変更いたします. TimedSpeedHeading2D型についても,検討いたします.ご提案ありがとうございました.

投稿者: 

ソースコードを読む限り、以下の部分で角度と思われる変数に回転速度をそのまま足しているように見えるのですが、これはどういう計算をしているのでしょうか?

 input_theta = ex_theta + v2d.Data.VelocityYaw;

投稿者: 

何度も申し訳ありません. 正しくは,v2d.Data.VelocityYawは回転速度ではなく回転角度が格納されていました.

 input_theta = ex_theta + v2d.Data.VelocityYaw;
上記の計算は角度同士の計算のため問題ありませんでした. こちらの確認不足で大変ご迷惑をおかけいたしました.

投稿者: 
産総研の高橋です.更新ありがとうございます.
内容を確認させていただきました.
狭路走行用のRTCを挟むことで性能向上が出来るというコンポーネント化の特長を利用した良い作品だと感じました.
また,C#を使っている点も面白いチャレンジだと感じました.今後GUI等を簡単に追加できそうです.
何点かコメント&質問させていただきます.
  • 狭路走行RTCのロジックですが,再利用性の面でLRFやロボット特性に合わせて柔軟に変更できる方が良いと感じました.どのようなコンフィグレーションを追加するのかが設計のキモになると思います.
  • コードの複雑さの割にコメントが極端に少ないようです.今後,ソースコードを育てていくためにも有効なコメントを追加した方が良いと思います.下記のページにコメント率を集計してありますので参考にしてください.
    https://takahasi.github.io/RTM_Contest/2017/report_20171215
投稿者: 

返信が遅れてしまい誠に申し訳ありません. ご質問ありがとうございます. コンフィグレーションパラメータは, ・ロボットのサイズ ・ロボットの回転中心 ・搭載されているLRFの計測範囲 について導入する検討を行っています. コメントについては,分かり辛いものになってしまい申し訳ありません. これから追加してまいります.

ダウンロード

最新バージョン : 2.0.1-RELESE

統計

Webサイト統計
ユーザ数:2195
プロジェクト統計
RTコンポーネント307
RTミドルウエア35
ツール22
文書・仕様書2

Choreonoid

モーションエディタ/シミュレータ

OpenHRP3

動力学シミュレータ

OpenRTP

統合開発プラットフォーム

産総研RTC集

産総研が提供するRTC集

TORK

東京オープンソースロボティクス協会

DAQ-Middleware

ネットワーク分散環境でデータ収集用ソフトウェアを容易に構築するためのソフトウェア・フレームワーク