start-jsk / rtmros_common

OpenRTM - ROS interoperability packages
http://wiki.ros.org/rtmros_common
12 stars 52 forks source link

制御周期に関するパラメータを統一する #1109

Closed Naoki-Hiraoka closed 2 years ago

Naoki-Hiraoka commented 3 years ago

現在、制御周期に関するパラメータは、4箇所に2種類の変数名で記述されています.

(choreonoidやgazeboやhrpsys-simulator等のシミュレーターの設定や実機との通信といった、iobより先のコードまで考えるとさらに増えますが、ここでは考えないことにします。)

バラバラに管理されている結果、https://github.com/start-jsk/rtmros_common/issues/408 やhttps://github.com/start-jsk/rtmros_tutorials/issues/542#issue-297757344 やhttps://github.com/start-jsk/rtmros_common/pull/1107#issuecomment-864540075 やhttps://github.com/start-jsk/rtmros_tutorials/pull/588#issuecomment-846389972 などで混乱が発生しています。そのため、https://github.com/start-jsk/rtmros_tutorials/issues/542 で提案されているように、制御周期に関するパラメータを1箇所に1種類の変数名で表現するように統一していこうと思います。

具体的には、以下のように統一することを考えています.

問題がありましたら指摘いただけますと幸いです。

Naoki-Hiraoka commented 2 years ago

https://github.com/jsk-ros-pkg/trans_system/pull/780#issuecomment-1256850356

なお、 PeriodicExecutionContextやその子クラスを使っている場合、dtはonExecute(RTC::UniqueId ec_id)中で

double dt = 1.0 / this->get_context(ec_id)->get_rate();

とすることで取得可能です.