メインコンテンツ

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

Current Time

R2026a

現在の ROS 時間またはシステム時間の取得

  • Current Time block

ライブラリ:
ROS Toolbox / ROS

説明

Current Time ブロックは、現在の ROS 時間またはシステム時間を出力します。ROS 時間は、コンピューターのシステム クロック、または ROS ノードでパブリッシュされる /clock トピックに基づきます。

このブロックを使用して、接続している ROS ノードとシミュレーション時間を同期させます。

ROS パラメーター use_sim_time が true に設定されている場合、このブロックは /clock トピックでパブリッシュされているシミュレーション時間を返します。それ以外の場合、このブロックはマシンのシステム時間を返します。

Current time block workflow. Step 1. Node start. Step 2. Check whether /use_sim_time ROS parameter is true. Step 3. If true, subscribe to /clock topic and wait to receive time. If false, get system time. Step 4. Output the received time as the current time.

例

端子

出力

すべて展開する

ROS 時間。バス信号またはスカラーとして返されます。バスは、Sec および NSec 要素をもつ rosgraph_msgs/Clock ROS メッセージを表します。スカラーは ROS 時間を秒単位で表します。/clock トピックで時間を受信しなかった場合、このブロックは 0 を出力します。

データ型: bus | double

パラメーター

すべて展開する

ROS Time の出力形式。bus または double として指定します。

出力の間隔。数値スカラーとして指定します。

詳細については、サンプル時間の指定 (Simulink)を参照してください。

ヒント

  • use_sim_time パラメーターを設定し、/clock トピックから時間を取得するには、以下の手順に従います。

    ROS ネットワークに接続し、その後 Set Parameter ブロックを使用するか、MATLAB® コマンド ウィンドウでパラメーターを設定します。

    ptree = rosparam;
    set(ptree,'/use_sim_time',true)

    通常、/clock トピックでパブリッシュする ROS ノードがパラメーターを設定します。

拡張機能

すべて展開する

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2019b で導入

参考

ブロック

関数

外部の Web サイト