ericchen321 / ros_x_habitat

A bridge betwwen the ROS ecosystem and AI Habitat.
100 stars 20 forks source link

TypeError: (): incompatible function arguments. The following argument types are supported: #28

Open SepMJ opened 1 year ago

SepMJ commented 1 year ago

when I try Navigating ROS Agent in Habitat Sim,Some issues arise: The command is as follows: python src/scripts/roam_with_joy.py --hab-env-config-path configs/roam_configs/pointnav_rgbd_roam_mp3d_test_scenes.yaml --scene-id data/scene_datasets/YFuZgdQ5vWj/YFuZgdQ5vWj.glb

The error is as follows: Traceback (most recent call last): File "src/nodes/habitat_env_node.py", line 709, in main() File "src/nodes/habitat_env_node.py", line 705, in main env_node.simulate() File "src/nodes/habitat_env_node.py", line 645, in simulate self.publish_and_step_for_roam() File "src/nodes/habitat_env_node.py", line 597, in publish_and_step_for_roam self.step() File "src/nodes/habitat_env_node.py", line 525, in step self.env.set_agent_velocities(self.linear_vel, self.angular_vel) File "/home/soon/catkin_ws/src/ros_x_habitat/src/envs/habitat_rlenv.py", line 154, in set_agent_velocities self._env.set_agent_velocities(linear_vel, angular_vel) File "/home/soon/catkin_ws/src/ros_x_habitat/src/envs/physics_env.py", line 195, in set_agent_velocities vel_control.linear_velocity = linear_vel TypeError: (): incompatible function arguments. The following argument types are supported:

  1. (self: habitat_sim._ext.habitat_sim_bindings.VelocityControl, arg0: _magnum.Vector3) -> None

Invoked with: <habitat_sim._ext.habitat_sim_bindings.VelocityControl object at 0x7f81402d0fb0>, None

May I ask if there is any solution? Thank you

ericchen321 commented 1 year ago

Hi @SepMJ I think the error's probably due to a racing condition with command setting/reading (such that linear velocity is a NULL object when passed to the velocity control structure). I just updated the code and hopefully that'll fix it.