move_baseを使っていると、障害物が無いのにコストマップで障害物判定されてしまうことがあります。そのようなときは、コストマップを一度クリアしましょう。

コマンドから

 

move_baseノードには、コストマップをクリアする方法があります。このためには、move_baseノードに対してclear_costmapsサービスを送信する必要があります。

下記のコマンドを実行することでコストマップをクリアできます。

$ rosservice call /move_base/clear_costmaps

 

コード(Python)から

Pythonからもclear_costmapsサービスを呼び出すことができます。

以下は、Pythonスクリプトからclear_costmapsサービスを呼び出す例です。

#!/usr/bin/env python
import rospy
from std_srvs.srv import Empty

rospy.init_node('clear_costmaps_client')

# サービスが提供されるまで待機
rospy.wait_for_service('/move_base/clear_costmaps')

try:
    # clear_costmapsサービスを呼び出す
    clear_costmaps = rospy.ServiceProxy('/move_base/clear_costmaps', Empty)
    clear_costmaps()
    rospy.loginfo("Clear costmaps service called successfully.")
except rospy.ServiceException as e:
    rospy.logerr("Failed to call clear costmaps service: %s" % e)

 このスクリプトでは、rospyを使用してclear_costmapsサービスを呼び出しています。std_srvsパッケージのEmptyクラスをインポートして、clear_costmapsサービスに対するクライアントを作成し、clear_costmaps関数を実行することでコストマップをクリアしています。

Move_baseRos

Related Posts

Arduino Nano互換ボードで書き込めない時はプロセッサを確認
Arduino Nano互換ボードで書き込めない時はプロセッサを確認
概要 安価なArduino Nano互換ボードを使っていると、Arduino IDEで書き込みができずにエラーになってしまうことがあります。本記事ではその対処法について解説をします。 対処法 書き込み時にエラーが出る原因はさまざまな...
Read More
ブレッドボードに5V/3.3Vの電源をMB102で供給する
ブレッドボードに5V/3.3Vの電源をMB102で供給する
概要 ブレッドボードには電源を流すことに主に用いられる、両脇の赤と青のラインがあります。Arduinoなどのマイコンから5Vや3.3Vの電源を供給することもできますが、色々な用途に使っていると電流が足りなくなってしまったりするので、別...
Read More
積載重量2kg / 4輪駆動小型DCモータ メカナムホイールロボット台車・カーシャーシの組み立てマニュアル
積載重量2kg / 4輪駆動小型DCモータ メカナムホイールロボット台車・カーシャーシの組み立てマニュアル
概要 積載重量2kg / 4輪駆動小型DCモータ メカナムホイールロボット台車・カーシャーシの組み立て方について解説をします。 商品リンクは下記になります。 https://rb-station.com/products/%E7%A9...
Read More