global_localization (std_srvs/empty):通過呼叫該服務將初始化全域性定位,將所有的粒子重新打散隨機的分散在地圖的空閒地方,可以通過以下命令來呼叫該服務,當呼叫後可以發現所有的粒子被重新打散隨機分布在地圖上,然後使用鍵盤遙控機械人旋轉,這樣可以自動重新對機械人進行定位
rosservice call /global_localization "{}"
request_nomotion_update (std_srvs/empty):該服務是手動的來更新粒子並發布新的粒子,可以使用如下命令來呼叫服務執行更新粒子的操作,該服務一般需要多次呼叫才能逐漸看到粒子收斂的效果:
rosservice call /request_nomotion_update "{}"
清理代價地圖
rosservice call / move_base / clear_costmaps「{}」
機械人再進行旋轉重定位
全域性定位失效時,執行
rosparam dump amcl.yaml /amcl/
修改amcl.yaml檔案,將引數"initial_pose_x"、「initial_pose_y」、「initia;_pose_a」注釋掉。
<!--param name="initial_pose_x" value="0.0"/-->
<!--param name="initial_pose_y" value="0.0"/-->
<!--param name="initial_pose_a" value="0.0"/-->
重新啟動機械人 git gitignore失效的解決辦法
在使用git這個多人協作的 版本控制工具時,為了避免每次提交修改 時,一些預期外的無用檔案的改動同時被提交並加入版本控制,需要將一些和 無關的無用檔案排除在版本控制外,此時也就需要使用.gitignore檔案來指定這些需要忽略的檔案資訊。不同型別的工程都有一些通用的.gitignore範本,一般在專...
git gitignore失效的解決辦法
在使用git這個多人協作的 版本控制工具時,為了避免每次提交修改 時,一些預期外的無用檔案的改動同時被提交並加入版本控制,需要將一些和 無關的無用檔案排除在版本控制外,此時也就需要使用.gitignore檔案來指定這些需要忽略的檔案資訊。不同型別的工程都有一些通用的.gitignore範本,一般在專...
gitignore失效的解決辦法
在vue專案中的vue.config.js下有devserver的配置,在這裡可以配置本地伺服器的host和port。由於我和同事對vue.config.js的配置不同,所以不想讓這個檔案被git提交到倉庫,不然每次從倉庫拉取 都需要 修改vue.config.js裡配置。我遇到的問題是,我明明已經...