xiaowenxiangros

Results 6 comments of xiaowenxiangros

想问下您解决了这个问题了吗,我也遇到和您相同的问题 ![J9TE_E7NZL~(L {V(~H9600](https://github.com/cartographer-project/cartographer_ros/assets/129568908/af1b2890-ddd8-4fcf-8cf0-36f34e373706)

> 你好: 我測試後發現問題在於在於odom的tf與topic分散在兩個地方發布,導致時間不同步,造成move_base收到odom topic後,卻找不到對應時間的tf。 > > * 第一個方式:不使用odom。 修改scout_small.启动 > > ``` > > ``` > > 將其刪去,使用CARTOGRAPHER內算出的odom,修改scout_2d.lua以下部分可以解決。 > > ``` > published_frame = "base_link", > provide_odom_frame = true, --use...

> > 您好,我的机器人实际情况是这样的,我的odom是由机器人提供的,并没有使用cartographer内算出的odom,.xacro文件我占时没有(小车模型还没有添加),我使用tf2将传感器连接起来的,我该怎么办呢,使用第二种方法吗?第二种方法我的odom哪里该注释掉,我可以给您提供我的lua,launch文件 > > 由於原問題的環境內,odom topic和tf分別是由xacro文件和odom_publisher發送,因此先刪除xacro部分,改成從odom_publiser共同發送topic和tf。 如果要使用第二種方法,你也需要先找到topic和tf分別是從哪個node發出,將兩個資料使用同一個node發送,以保證它們的時間同步。 您好,请问如何查找odom_publisher 的topic和tf从哪个node发出,这一点不是很理解,麻烦可以详细解释一下吗,我没有使用xacro文件,我的odmo由小车发出

> > 您好,请问如何查找odom_publisher 的topic和tf从哪个node发出,这一点不是很理解,麻烦可以详细解释一下吗,我没有使用xacro文件,我的odmo由小车发出 > > 查找你的odom資訊從小車裡的哪些程式發送出來,可以使用rqt內的tf_tree和node_graph功能,它們會告訴你這些資訊,些著修改它們,實際修改方式可以參考上面的gist寫法。 我查看了您给出的cpp文件,我有个疑问,我并无使用gazebo,我使用的实物,里面该怎么同步它们呢

> > 我查看了您给出的cpp文件,我有个疑问,我并无使用gazebo,我使用的实物,里面该怎么同步它们呢 > > 與是否使用實物無關,您需要做的就是在發送topic(gist62行)的同時,發送TF(gist45行)就能達到同步。 想问下创建这样一个时间同步的cpp文件之后,我需要额外的编写launch文件来运行它吗?

> > 想问下创建这样一个时间同步的CPP文件之后,我需要额外的编写launch文件来运行它吗? > > 不需要創建一個新的 CPP 文件,而是需要在原始的 odom topic 發佈程式中進行修改。 通常,在您的小車系統中,有一個特定的地方或程式負責計算電機的旋轉編碼器數據,並將其轉換為 odom topic 的消息,您需要修改這部分的程式碼。這個程式碼可能位於控制電機的 Arduino 或 OpenCR 板上,或者它可能集成在您的小車軟體中。 您好,我在调试过程中对于这两个 ros::Subscriber odomSub = node.subscribe