ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I've found the problem, RViZ was causing these vibrations but I don't know why...

I've found the problem, RViZ this node in RViZ.launch file was causing these vibrations but I don't know why...this.

<node name="robot_state_publisher" pkg="robot_state_publisher" type="state_publisher"/>

Any suggestions why it could cause vibrations ?

I've found the problem, this node in RViZ.launch file was causing this.

<node name="robot_state_publisher" pkg="robot_state_publisher" type="state_publisher"/>

Any suggestions why it could cause vibrations ?

I've found the problem, this node in RViZ.launch file was causing this.

<node name="robot_state_publisher" pkg="robot_state_publisher" type="state_publisher"/>

Any suggestions why could it could cause vibrations ?

I've found the problem, this The problem was that both /gazebo and /robot_state_publisher were publishing /tf and my callback for /tf subscribing node in RViZ.launch file was causing this.looked like this

<node name="robot_state_publisher" pkg="robot_state_publisher" type="state_publisher"/>
def transformCallback(self, msg):
    self.transform = msg.transforms[0]
    self.compute_new_pcl()

Any suggestions why could This is how looks /tf from /gazebo

transforms: 
  - 
    header: 
      seq: 0
      stamp: 
        secs: 1842
        nsecs: 696000000
      frame_id: "odom"
    child_frame_id: "chassis"
    transform: 
      translation: 
        x: 0.150801946695
        y: -0.766858491599
        z: 0.100001299784
      rotation: 
        x: 2.87981408951e-06
        y: -3.24224228361e-06
        z: 0.691690448705
        w: 0.722194103515

/robot_state_publisher publishes also other transformations like from the chassis to the wheel and that's the reason that it cause has fixed values which caused vibrations. When you subscribe a topic from python a node which has 2 publishers, once it loads from /gazebo and other time from /robot_state_publisher so I've updated /tf callback a little bit

    if (msg.transforms[0].header.frame_id == 'odom' and 
        msg.transforms[0].child_frame_id=='chassis'):
        self.transform = msg.transforms[0]
        self.compute_new_pcl()

The bigger vibrations are now smaller than earlier but still it is showing some noise and displacement. Does do_transform_cloud(self.point_cloud, self.transform) make this kind of noise or there is some other problem issue ?

The problem was that both /gazebo and /robot_state_publisher were publishing /tf and my callback for /tf subscribing node looked like this

def transformCallback(self, msg):
    self.transform = msg.transforms[0]
    self.compute_new_pcl()

This is how looks /tf from /gazebo

transforms: 
  - 
    header: 
      seq: 0
      stamp: 
        secs: 1842
        nsecs: 696000000
      frame_id: "odom"
    child_frame_id: "chassis"
    transform: 
      translation: 
        x: 0.150801946695
        y: -0.766858491599
        z: 0.100001299784
      rotation: 
        x: 2.87981408951e-06
        y: -3.24224228361e-06
        z: 0.691690448705
        w: 0.722194103515

/robot_state_publisher publishes also other transformations like from the chassis to the wheel and that's the reason that it has fixed values which caused vibrations. When you subscribe a topic from python a node which has 2 publishers, once it loads from /gazebo and other time from /robot_state_publisher so I've updated /tf callback a little bit

    if (msg.transforms[0].header.frame_id == 'odom' and 
        msg.transforms[0].child_frame_id=='chassis'):
        self.transform = msg.transforms[0]
        self.compute_new_pcl()

The bigger vibrations are now smaller than earlier but still it is showing some noise and displacement. Does do_transform_cloud(self.point_cloud, self.transform) make this kind of noise or there is some other problem issue ?

image description Blue is laser scan and red is transformed point cloud.

The problem was that both /gazebo and /robot_state_publisher were publishing /tf and my callback for /tf subscribing node looked like this

def transformCallback(self, msg):
    self.transform = msg.transforms[0]
    self.compute_new_pcl()

This is how looks /tf from /gazebo

transforms: 
  - 
    header: 
      seq: 0
      stamp: 
        secs: 1842
        nsecs: 696000000
      frame_id: "odom"
    child_frame_id: "chassis"
    transform: 
      translation: 
        x: 0.150801946695
        y: -0.766858491599
        z: 0.100001299784
      rotation: 
        x: 2.87981408951e-06
        y: -3.24224228361e-06
        z: 0.691690448705
        w: 0.722194103515

/robot_state_publisher publishes also other transformations like from the chassis to the wheel and that's the reason that it has fixed values which caused vibrations. When you subscribe a topic from python a node which has 2 publishers, once it loads from /gazebo and other time from /robot_state_publisher so I've updated /tf callback a little bit

    if (msg.transforms[0].header.frame_id == 'odom' and 
        msg.transforms[0].child_frame_id=='chassis'):
        self.transform = msg.transforms[0]
        self.compute_new_pcl()

The bigger vibrations are now smaller than earlier but still it is showing some noise and displacement. Does do_transform_cloud(self.point_cloud, self.transform) make this kind of noise or there is some other problem issue ?

image description Blue is laser scan and red is transformed point cloud.

The problem was that both /gazebo and /robot_state_publisher were publishing /tf and my callback for /tf subscribing node looked like this

def transformCallback(self, msg):
    self.transform = msg.transforms[0]
    self.compute_new_pcl()

This is how looks /tf from /gazebo

transforms: 
  - 
    header: 
      seq: 0
      stamp: 
        secs: 1842
        nsecs: 696000000
      frame_id: "odom"
    child_frame_id: "chassis"
    transform: 
      translation: 
        x: 0.150801946695
        y: -0.766858491599
        z: 0.100001299784
      rotation: 
        x: 2.87981408951e-06
        y: -3.24224228361e-06
        z: 0.691690448705
        w: 0.722194103515

/robot_state_publisher publishes also other transformations like from the chassis to the wheel and that's the reason that it has fixed values which caused vibrations. When you subscribe a topic from python a node which has 2 publishers, once it loads from /gazebo and other time from /robot_state_publisher so I've updated /tf callback a little bit

    if (msg.transforms[0].header.frame_id == 'odom' and 
        msg.transforms[0].child_frame_id=='chassis'):
        self.transform = msg.transforms[0]
        self.compute_new_pcl()

The bigger vibrations are now smaller than earlier but still it is showing some noise and displacement. Does do_transform_cloud(self.point_cloud, self.transform) make this kind of noise or there is some other problem issue ?? I think self.laserProj.projectLaser(data) might cause this small vibrations and displacement.

image description Blue is laser scan and red is transformed point cloud.

The problem was that both /gazebo and /robot_state_publisher were publishing /tf and my callback for /tf subscribing node looked like this

def transformCallback(self, msg):
    self.transform = msg.transforms[0]
    self.compute_new_pcl()

This is how looks /tf from /gazebo

transforms: 
  - 
    header: 
      seq: 0
      stamp: 
        secs: 1842
        nsecs: 696000000
      frame_id: "odom"
    child_frame_id: "chassis"
    transform: 
      translation: 
        x: 0.150801946695
        y: -0.766858491599
        z: 0.100001299784
      rotation: 
        x: 2.87981408951e-06
        y: -3.24224228361e-06
        z: 0.691690448705
        w: 0.722194103515

/robot_state_publisher publishes also other transformations like from the chassis to the wheel and that's the reason that it has fixed values which caused vibrations. When you subscribe a topic from python a node which has 2 publishers, once it loads from /gazebo and other time from /robot_state_publisher so I've updated /tf callback a little bit

    if (msg.transforms[0].header.frame_id == 'odom' and 
        msg.transforms[0].child_frame_id=='chassis'):
        self.transform = msg.transforms[0]
        self.compute_new_pcl()

The bigger vibrations are now smaller than earlier but still it is showing some noise and displacement. Does do_transform_cloud(self.point_cloud, self.transform) make this kind of noise or there is some other problem issue ? I think self.laserProj.projectLaser(data) might cause this small vibrations and displacement. ?

image description Blue is laser scan and red is transformed point cloud.

The problem was that both /gazebo and /robot_state_publisher were publishing /tf and my callback for /tf subscribing node looked like this

def transformCallback(self, msg):
    self.transform = msg.transforms[0]
    self.compute_new_pcl()

This is how looks /tf from /gazebo

transforms: 
  - 
    header: 
      seq: 0
      stamp: 
        secs: 1842
        nsecs: 696000000
      frame_id: "odom"
    child_frame_id: "chassis"
    transform: 
      translation: 
        x: 0.150801946695
        y: -0.766858491599
        z: 0.100001299784
      rotation: 
        x: 2.87981408951e-06
        y: -3.24224228361e-06
        z: 0.691690448705
        w: 0.722194103515

/robot_state_publisher publishes also other transformations like from the chassis to the wheel and that's the reason that it has fixed values which caused vibrations. When you subscribe a topic from python a node which has 2 publishers, once it loads from /gazebo and other time from /robot_state_publisher so I've updated /tf callback a little bit

    if (msg.transforms[0].header.frame_id == 'odom' and 
        msg.transforms[0].child_frame_id=='chassis'):
        self.transform = msg.transforms[0]
        self.compute_new_pcl()

The bigger vibrations are now smaller than earlier but still it is showing some noise and displacement. Does displacement.I thinkdo_transform_cloud(self.point_cloud, self.transform) make makes this kind of noise or there is some other problem issue ?maybe the need of two values from two subscribed nodes ?

image description Blue is laser scan and red is transformed point cloud.