elephantrobotics/mycobot_ros

can't spawn mycobot model on gazebo

graziegrazie opened this issue · 9 comments

I tested gazebo.launch on laptop host, not Docker. Mycobot model seems to be spawned, but it is interrupted by someone with signal_shutdown [atexit]. My environment is following.
Ubuntu 20.04
ROS noetic
Any suggestion is helpful for me.

console output

$ roslaunch mycobot_ros gazebo.launch
... logging to /home/yoshi/.ros/log/07e9e666-beed-11eb-8814-61c2beabc12d/roslaunch-carp-101041.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://carp:39985/

SUMMARY

PARAMETERS

  • /controller_list: [{'name': 'mycobo...
  • /gazebo/enable_ros_network: True
  • /generic_hw_control_loop/cycle_time_error_threshold: 0.01
  • /generic_hw_control_loop/loop_hz: 300
  • /hardware_interface/joints: ['joint2_to_joint...
  • /hardware_interface/sim_control_mode: 1
  • /joint_state_controller/publish_rate: 50
  • /joint_state_controller/type: joint_state_contr...
  • /moveit_sim_hw_interface/joint_model_group: mycobot_arm
  • /moveit_sim_hw_interface/joint_model_group_pose: init_pose
  • /robot_description: <?xml version="1....
  • /rosdistro: noetic
  • /rosversion: 1.15.11
  • /use_sim_time: True

NODES
/
controller_spawner (controller_manager/spawner)
gazebo (gazebo_ros/gzserver)
gazebo_gui (gazebo_ros/gzclient)
spawn_gazebo_model (gazebo_ros/spawn_model)

ROS_MASTER_URI=http://localhost:11311

process[gazebo-1]: started with pid [101055]
process[gazebo_gui-2]: started with pid [101060]
process[spawn_gazebo_model-3]: started with pid [101065]
process[controller_spawner-4]: started with pid [101066]
usage: spawner [-h] [--stopped] [--wait-for topic] [--namespace ns] [--timeout T] [--no-timeout]
[--shutdown-timeout SHUTDOWN_TIMEOUT]
controller [controller ...]
spawner: error: the following arguments are required: controller
[controller_spawner-4] process has died [pid 101066, exit code 2, cmd /opt/ros/noetic/lib/controller_manager/spawner __name:=controller_spawner __log:=/home/yoshi/.ros/log/07e9e666-beed-11eb-8814-61c2beabc12d/controller_spawner-4.log].
log file: /home/yoshi/.ros/log/07e9e666-beed-11eb-8814-61c2beabc12d/controller_spawner-4*.log
[INFO] [1622123823.927332, 0.000000]: Loading model XML from ros parameter robot_description
[INFO] [1622123823.930062, 0.000000]: Waiting for service /gazebo/spawn_urdf_model
[ INFO] [1622123824.082596111]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1622123824.083617142]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[ INFO] [1622123824.217451605]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1622123824.218573599]: waitForService: Service [/gazebo_gui/set_physics_properties] has not been advertised, waiting...
[ INFO] [1622123824.944414549]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[ INFO] [1622123824.987983233, 0.039000000]: Physics dynamic reconfigure ready.
[INFO] [1622123825.136705, 0.183000]: Calling service /gazebo/spawn_urdf_model
[INFO] [1622123825.346427, 0.368000]: Spawn status: SpawnModel: Successfully spawned entity
[spawn_gazebo_model-3] process has finished cleanly
log file: /home/yoshi/.ros/log/07e9e666-beed-11eb-8814-61c2beabc12d/spawn_gazebo_model-3*.log

spawn_gazebo_model-3.log

[rospy.client][INFO] 2021-05-27 22:50:05,347: init_node, name[/spawn_gazebo_model], pid[98985]
[xmlrpc][INFO] 2021-05-27 22:50:05,347: XML-RPC server binding to 0.0.0.0:0
[xmlrpc][INFO] 2021-05-27 22:50:05,348: Started XML-RPC server [http://carp:38075/]
[rospy.impl.masterslave][INFO] 2021-05-27 22:50:05,348: _ready: http://carp:38075/
[rospy.registration][INFO] 2021-05-27 22:50:05,348: Registering with master node http://localhost:11311
[rospy.init][INFO] 2021-05-27 22:50:05,348: ROS Slave URI: [http://carp:38075/]
[xmlrpc][INFO] 2021-05-27 22:50:05,349: xml rpc node: starting XML-RPC server
[rospy.init][INFO] 2021-05-27 22:50:05,349: registered with master
[rospy.rosout][INFO] 2021-05-27 22:50:05,349: initializing /rosout core topic
[rospy.rosout][INFO] 2021-05-27 22:50:05,352: connected to core topic /rosout
[rospy.simtime][INFO] 2021-05-27 22:50:05,352: initializing /clock core topic
[rospy.simtime][INFO] 2021-05-27 22:50:05,354: connected to core topic /clock
[rosout][INFO] 2021-05-27 22:50:05,356: Loading model XML from ros parameter robot_description
[rosout][INFO] 2021-05-27 22:50:05,360: Waiting for service /gazebo/spawn_urdf_model
[rospy.internal][INFO] 2021-05-27 22:50:05,558: topic[/rosout] adding connection to [/rosout], count 0
[rospy.internal][INFO] 2021-05-27 22:50:06,474: topic[/clock] adding connection to [http://carp:46557/], count 0
[rosout][INFO] 2021-05-27 22:50:06,566: Calling service /gazebo/spawn_urdf_model
[rosout][INFO] 2021-05-27 22:50:06,639: Spawn status: SpawnModel: Successfully spawned entity
[rospy.core][INFO] 2021-05-27 22:50:06,640: signal_shutdown [atexit]
[rospy.internal][INFO] 2021-05-27 22:50:06,641: topic[/rosout] removing connection to /rosout
[rospy.internal][INFO] 2021-05-27 22:50:06,642: topic[/clock] removing connection to http://carp:46557/
[rospy.impl.masterslave][INFO] 2021-05-27 22:50:06,642: atexit
[rospy.internal][WARNING] 2021-05-27 22:50:06,642: Unknown error initiating TCP/IP socket to carp:59469 (http://carp:46557/): Traceback (most recent call last):
File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_base.py", line 562, in connect
self.read_header()
File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_base.py", line 657, in read_header
self._validate_header(read_ros_handshake_header(sock, self.read_buff, self.protocol.buff_size))
AttributeError: 'NoneType' object has no attribute 'buff_size'

[rospy.client][INFO] 2021-05-27 22:51:42,712: init_node, name[/spawn_gazebo_model], pid[99915]
[xmlrpc][INFO] 2021-05-27 22:51:42,712: XML-RPC server binding to 0.0.0.0:0
[xmlrpc][INFO] 2021-05-27 22:51:42,713: Started XML-RPC server [http://carp:39517/]
[rospy.impl.masterslave][INFO] 2021-05-27 22:51:42,713: _ready: http://carp:39517/
[rospy.init][INFO] 2021-05-27 22:51:42,713: ROS Slave URI: [http://carp:39517/]
[rospy.registration][INFO] 2021-05-27 22:51:42,713: Registering with master node http://localhost:11311
[xmlrpc][INFO] 2021-05-27 22:51:42,714: xml rpc node: starting XML-RPC server
[rospy.init][INFO] 2021-05-27 22:51:42,814: registered with master
[rospy.rosout][INFO] 2021-05-27 22:51:42,814: initializing /rosout core topic
[rospy.rosout][INFO] 2021-05-27 22:51:42,817: connected to core topic /rosout
[rospy.simtime][INFO] 2021-05-27 22:51:42,818: initializing /clock core topic
[rospy.simtime][INFO] 2021-05-27 22:51:42,820: connected to core topic /clock
[rosout][INFO] 2021-05-27 22:51:42,822: Loading model XML from ros parameter robot_description
[rosout][INFO] 2021-05-27 22:51:42,826: Waiting for service /gazebo/spawn_urdf_model
[rospy.internal][INFO] 2021-05-27 22:51:43,078: topic[/rosout] adding connection to [/rosout], count 0
[rospy.internal][INFO] 2021-05-27 22:51:43,780: topic[/clock] adding connection to [http://carp:42945/], count 0
[rosout][INFO] 2021-05-27 22:51:44,032: Calling service /gazebo/spawn_urdf_model
[rosout][INFO] 2021-05-27 22:51:44,165: Spawn status: SpawnModel: Successfully spawned entity
[rospy.core][INFO] 2021-05-27 22:51:44,166: signal_shutdown [atexit]
[rospy.internal][INFO] 2021-05-27 22:51:44,168: topic[/rosout] removing connection to /rosout
[rospy.internal][INFO] 2021-05-27 22:51:44,168: topic[/clock] removing connection to http://carp:42945/
[rospy.impl.masterslave][INFO] 2021-05-27 22:51:44,168: atexit
[rospy.internal][WARNING] 2021-05-27 22:51:44,168: Unknown error initiating TCP/IP socket to carp:53017 (http://carp:42945/): Traceback (most recent call last):
File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_base.py", line 563, in connect
self.local_endpoint = self.socket.getsockname()
AttributeError: 'NoneType' object has no attribute 'getsockname'

[rospy.client][INFO] 2021-05-27 22:52:45,403: init_node, name[/spawn_gazebo_model], pid[100295]
[xmlrpc][INFO] 2021-05-27 22:52:45,404: XML-RPC server binding to 0.0.0.0:0
[xmlrpc][INFO] 2021-05-27 22:52:45,404: Started XML-RPC server [http://carp:45345/]
[rospy.impl.masterslave][INFO] 2021-05-27 22:52:45,404: _ready: http://carp:45345/
[rospy.init][INFO] 2021-05-27 22:52:45,404: ROS Slave URI: [http://carp:45345/]
[rospy.registration][INFO] 2021-05-27 22:52:45,405: Registering with master node http://localhost:11311
[xmlrpc][INFO] 2021-05-27 22:52:45,405: xml rpc node: starting XML-RPC server
[rospy.init][INFO] 2021-05-27 22:52:45,505: registered with master
[rospy.rosout][INFO] 2021-05-27 22:52:45,505: initializing /rosout core topic
[rospy.rosout][INFO] 2021-05-27 22:52:45,508: connected to core topic /rosout
[rospy.simtime][INFO] 2021-05-27 22:52:45,509: initializing /clock core topic
[rospy.simtime][INFO] 2021-05-27 22:52:45,511: connected to core topic /clock
[rosout][INFO] 2021-05-27 22:52:45,513: Loading model XML from ros parameter robot_description
[rosout][INFO] 2021-05-27 22:52:45,516: Waiting for service /gazebo/spawn_urdf_model
[rospy.internal][INFO] 2021-05-27 22:52:45,767: topic[/rosout] adding connection to [/rosout], count 0
[rospy.internal][INFO] 2021-05-27 22:52:46,551: topic[/clock] adding connection to [http://carp:39073/], count 0
[rosout][INFO] 2021-05-27 22:52:46,722: Calling service /gazebo/spawn_urdf_model
[rosout][INFO] 2021-05-27 22:52:46,914: Spawn status: SpawnModel: Successfully spawned entity
[rospy.core][INFO] 2021-05-27 22:52:46,915: signal_shutdown [atexit]
[rospy.internal][INFO] 2021-05-27 22:52:46,917: topic[/rosout] removing connection to /rosout
[rospy.internal][INFO] 2021-05-27 22:52:46,917: topic[/clock] removing connection to http://carp:39073/
[rospy.impl.masterslave][INFO] 2021-05-27 22:52:46,917: atexit
[rospy.client][INFO] 2021-05-27 22:56:17,586: init_node, name[/spawn_gazebo_model], pid[100734]
[xmlrpc][INFO] 2021-05-27 22:56:17,586: XML-RPC server binding to 0.0.0.0:0
[xmlrpc][INFO] 2021-05-27 22:56:17,586: Started XML-RPC server [http://carp:33663/]
[rospy.init][INFO] 2021-05-27 22:56:17,586: ROS Slave URI: [http://carp:33663/]
[rospy.impl.masterslave][INFO] 2021-05-27 22:56:17,587: _ready: http://carp:33663/
[rospy.registration][INFO] 2021-05-27 22:56:17,587: Registering with master node http://localhost:11311
[xmlrpc][INFO] 2021-05-27 22:56:17,587: xml rpc node: starting XML-RPC server
[rospy.init][INFO] 2021-05-27 22:56:17,687: registered with master
[rospy.rosout][INFO] 2021-05-27 22:56:17,687: initializing /rosout core topic
[rospy.rosout][INFO] 2021-05-27 22:56:17,691: connected to core topic /rosout
[rospy.simtime][INFO] 2021-05-27 22:56:17,693: initializing /clock core topic
[rospy.simtime][INFO] 2021-05-27 22:56:17,695: connected to core topic /clock
[rosout][INFO] 2021-05-27 22:56:17,698: Loading model XML from ros parameter robot_description
[rosout][INFO] 2021-05-27 22:56:17,701: Waiting for service /gazebo/spawn_urdf_model
[rospy.internal][INFO] 2021-05-27 22:56:17,931: topic[/rosout] adding connection to [/rosout], count 0
[rospy.internal][INFO] 2021-05-27 22:56:18,734: topic[/clock] adding connection to [http://carp:33613/], count 0
[rosout][INFO] 2021-05-27 22:56:18,908: Calling service /gazebo/spawn_urdf_model
[rosout][INFO] 2021-05-27 22:56:19,067: Spawn status: SpawnModel: Successfully spawned entity
[rospy.core][INFO] 2021-05-27 22:56:19,068: signal_shutdown [atexit]
[rospy.internal][INFO] 2021-05-27 22:56:19,070: topic[/rosout] removing connection to /rosout
[rospy.internal][INFO] 2021-05-27 22:56:19,070: topic[/clock] removing connection to http://carp:33613/
[rospy.impl.masterslave][INFO] 2021-05-27 22:56:19,070: atexit
[rospy.client][INFO] 2021-05-27 22:57:03,818: init_node, name[/spawn_gazebo_model], pid[101065]
[xmlrpc][INFO] 2021-05-27 22:57:03,818: XML-RPC server binding to 0.0.0.0:0
[xmlrpc][INFO] 2021-05-27 22:57:03,819: Started XML-RPC server [http://carp:41943/]
[rospy.init][INFO] 2021-05-27 22:57:03,819: ROS Slave URI: [http://carp:41943/]
[rospy.impl.masterslave][INFO] 2021-05-27 22:57:03,819: _ready: http://carp:41943/
[rospy.registration][INFO] 2021-05-27 22:57:03,820: Registering with master node http://localhost:11311
[xmlrpc][INFO] 2021-05-27 22:57:03,820: xml rpc node: starting XML-RPC server
[rospy.init][INFO] 2021-05-27 22:57:03,919: registered with master
[rospy.rosout][INFO] 2021-05-27 22:57:03,919: initializing /rosout core topic
[rospy.rosout][INFO] 2021-05-27 22:57:03,923: connected to core topic /rosout
[rospy.simtime][INFO] 2021-05-27 22:57:03,923: initializing /clock core topic
[rospy.simtime][INFO] 2021-05-27 22:57:03,925: connected to core topic /clock
[rosout][INFO] 2021-05-27 22:57:03,927: Loading model XML from ros parameter robot_description
[rosout][INFO] 2021-05-27 22:57:03,930: Waiting for service /gazebo/spawn_urdf_model
[rospy.internal][INFO] 2021-05-27 22:57:04,149: topic[/rosout] adding connection to [/rosout], count 0
[rospy.internal][INFO] 2021-05-27 22:57:04,952: topic[/clock] adding connection to [http://carp:37935/], count 0
[rosout][INFO] 2021-05-27 22:57:05,136: Calling service /gazebo/spawn_urdf_model
[rosout][INFO] 2021-05-27 22:57:05,346: Spawn status: SpawnModel: Successfully spawned entity
[rospy.core][INFO] 2021-05-27 22:57:05,347: signal_shutdown [atexit]
[rospy.internal][INFO] 2021-05-27 22:57:05,348: topic[/rosout] removing connection to /rosout
[rospy.internal][INFO] 2021-05-27 22:57:05,349: topic[/clock] removing connection to http://carp:37935/
[rospy.impl.masterslave][INFO] 2021-05-27 22:57:05,349: atexit

The reason why gozabo cannot be started may be due to URDF. The model lacks some parameters required by gozabo. I'm not sure if it will be fixed later, maybe gozabo is not needed.
BTW,This package doesn't seem to run directly on neotic.

The reason why gozabo cannot be started may be due to URDF. The model lacks some parameters required by gozabo. I'm not sure if it will be fixed later, maybe gozabo is not needed.
BTW,This package doesn't seem to run directly on neotic.

确实因为URDF,经过加入collision模块和惯性模块,我的gazebo除了第5部分已经可以显示。
而第五部分的dae文件有问题。

I also tried it, but it looks like the collision needs to be changed in the current URDF.
The package, which I made using the URDF released around December 2020, can run Gazebo's myCobot from MoveIt, so I'll share it for your reference.
https://github.com/Tiryoh/mycobot_ros#moveit--gazebo

Based on the work of @Tiryoh (https://github.com/Tiryoh/mycobot_ros), I have modified lots of files in this repository and finally I restored the gazebo simulation as explained in #47.

I hope some one help me to test this PR, especially in ros noetic env.

@tongtybj Great!
It looks a little dark in Gazebo. I'll add a review comment later.

I have released the repository under the MIT license, please embed the original repository copyright notice and MIT license text according to the MIT license.
For reference, here are some example of my work using other OSS.

https://github.com/Tiryoh/mycobot_ros/blob/main/README.md?plain=1#L62-L72
https://github.com/Tiryoh/actions-mkdocs/blob/main/README.md?plain=1#L73-L75

@Tiryoh

Thanks for your contribution! I have merged your PR.

For license issue, could you also send a PR to #47 if necessary?

Screenshot from 2021-07-20 09-18-45

Just wanted to see how you were able to get two cobots in the same enviorment.
Maybe this is a very simple question, but am having many issues trying to solve that.

You can spawn many times with various namespace or name by 'rosrun gazebo_ros spawn_model '

Help can be got by 'rosrun gazebo_ros spawn_model --help'