"NO RESET" Problem While Getting Shadow_Robot OpenAI_ROS to run.
Hi,
I'm trying to get openai_ros setup in a docker container with Ubuntu 16.04
+ Gazebo 7.0
+ OpenAI Gym
+ ROS Kinetic
. I've been having a lot of difficulties. My current setup has,
ros@48f4246dc605:~/simulation_ws/src$ ls
CMakeLists.txt openai_ros pysdf shadow_robot_smart_grasping_sandbox
ros@48f4246dc605:~/catkin_ws/src$ ls
CMakeLists.txt my_shadow_bot
Myshadowbot has all the same files as from the shadowbot q-learning example from openaiross. When I type in,
roslaunch my_shadow_bot start_training.launch
I end up with an error. Any help to solve this issue would be greatly appreciated. Thanks!
Edit: Removing pyassimp, which seems to be the source of the error, and reinstalling gives a new error.
Removing ros-kinetic-moveit (0.9.17-1xenial-20190710-003134+0000) ...
Removing ros-kinetic-moveit-commander (0.9.17-1xenial-20190709-235240+0000) ...
Removing python-pyassimp (3.2~dfsg-3) ...
ros@48f4246dc605:~/catkin_ws/src$ pip2 install --user pyassimp
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/__init__.py:83: RequestsDependencyWarning: Old version of cryptography ([1, 2, 3]) may cause slowdown.
warnings.warn(warning, RequestsDependencyWarning)
Collecting pyassimp
Downloading https://files.pythonhosted.org/packages/60/49/95560c2e694fa5bcbe885bdd4656948d083d67ee2adb0378e7d15637df4f/pyassimp-4.1.4.tar.gz (98kB)
100% |████████████████████████████████| 102kB 6.3MB/s
Installing collected packages: pyassimp
Running setup.py install for pyassimp ... done
Successfully installed pyassimp-4.1.4
...
Traceback (most recent call last):
File "/home/ros/catkin_ws/src/my_shadow_bot/scripts/start_qlearning_v2.py", line 22, in <module>
task_and_robot_environment_name)
File "/home/ros/simulation_ws/src/openai_ros/openai_ros/src/openai_ros/openai_ros_common.py", line 26, in StartOpenAI_ROS_Environment
timestep_limit_per_episode=10000)
File "/home/ros/simulation_ws/src/openai_ros/openai_ros/src/openai_ros/task_envs/task_envs_list.py", line 146, in RegisterOpenAI_Ros_Env
from openai_ros.task_envs.shadow_tc import learn_to_pick_ball
File "/home/ros/simulation_ws/src/openai_ros/openai_ros/src/openai_ros/task_envs/shadow_tc/learn_to_pick_ball.py", line 4, in <module>
from openai_ros.robot_envs import shadow_tc_env
File "/home/ros/simulation_ws/src/openai_ros/openai_ros/src/openai_ros/robot_envs/shadow_tc_env.py", line 8, in <module>
from smart_grasping_sandbox.smart_grasper import SmartGrasper
File "/home/ros/simulation_ws/src/shadow_robot_smart_grasping_sandbox/smart_grasping_sandbox/smart_grasping_sandbox/src/smart_grasping_sandbox/smart_grasper.py", line 9, in <module>
from moveit_commander import MoveGroupCommander
ImportError: No module named moveit_commander
I'm still rather confused. The original error was from the below.
... logging to /home/ros/.ros/log/ce66aa76-ba1d-11e9-bc4a-0242ac110002/roslaunch-48f4246dc605-29211.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://48f4246dc605:40073/
SUMMARY
========
PARAMETERS
* /rosdistro: kinetic
* /rosversion: 1.12.13
* /shadow_tc/alpha: 0.1
* /shadow_tc/epsilon: 0.9
* /shadow_tc/epsilon_discount: 0.999
* /shadow_tc/gamma: 0.7
* /shadow_tc/nepisodes: 500
* /shadow_tc/nsteps: 10000
* /shadow_tc/ros_ws_abspath: /home/ros/simulat...
* /shadow_tc/task_and_robot_environment_name: ShadowTcGetBall-v0
NODES
/
shadow_tc_learn_to_pick_ball_qlearn (my_shadow_bot/start_qlearning_v2.py)
ROS_MASTER_URI=http://localhost:11311
process[shadow_tc_learn_to_pick_ball_qlearn-1]: started with pid [29240]
[WARN] [1565314533.335220, 0.000000]: Env: ShadowTcGetBall-v0 will be imported
Failed to import pyassimp, see https://github.com/ros-planning/moveit/issues/86 for more info
[WARN] [1565314534.127100, 0.000000]: Register of Task Env went OK, lets make the env...ShadowTcGetBall-v0
[WARN] [1565314534.171720, 0.000000]:
path_launch_file_name==/home/ros/simulation_ws/src/shadow_robot_smart_grasping_sandbox/shadow_gazebo/launch/start_world.launch
... logging to /home/ros/.ros/log/ce66aa76-ba1d-11e9-bc4a-0242ac110002/roslaunch-48f4246dc605-29240.log
started roslaunch server http://48f4246dc605:32817/
NODES
/
arm_controller_spawner (controller_manager/controller_manager)
fake_joint_calibration (rostopic/rostopic)
gazebo2moveit (gazebo2rviz/gazebo2moveit_collision_node.py)
joint_state_controller_spawner (controller_manager/controller_manager)
kinect_base_link (tf/static_transform_publisher)
move_group (moveit_ros_move_group/move_group)
robot_state_publisher (robot_state_publisher/robot_state_publisher)
spawn_gazebo_model (gazebo_ros/spawn_model)
spawn_hand_controller (controller_manager/spawner)
world_to_arm_base (tf/static_transform_publisher)
ROS_MASTER_URI=http://localhost:11311
process[kinect_base_link-2]: started with pid [29468]
process[spawn_gazebo_model-3]: started with pid [29469]
process[world_to_arm_base-4]: started with pid [29483]
process[robot_state_publisher-5]: started with pid [29488]
process[fake_joint_calibration-6]: started with pid [29497]
process[joint_state_controller_spawner-7]: started with pid [29512]
process[arm_controller_spawner-8]: started with pid [29519]
process[spawn_hand_controller-9]: started with pid [29528]
process[move_group-10]: started with pid [29538]
process[gazebo2moveit-11]: started with pid [29543]
[INFO] [1565314535.450982, 0.000000]: >>>>>>>>>STARTED Roslaunch-->put_shadow_in_world.launch
[ERROR] [1565314535.473193, 0.000000]: NO RESET SIMULATION SELECTED
[ERROR] [1565314535.473630, 0.000000]: NOT Initialising Simulation Physics Parameters
[WARN] [1565314535.496051, 0.000000]: Start Init ControllersConnection
[WARN] [1565314535.497069, 0.000000]: END Init ControllersConnection
[move_group-10] process has died [pid 29538, exit code -11, cmd /opt/ros/kinetic/lib/moveit_ros_move_group/move_group __name:=move_group __log:=/home/ros/.ros/log/ce66aa76-ba1d-11e9-bc4a-0242ac110002/move_group-10.log].
log file: /home/ros/.ros/log/ce66aa76-ba1d-11e9-bc4a-0242ac110002/move_group-10*.log
[WARN] [1565314535.914672, 0.000000]: DEPRECATION warning: --shutdown-timeout has no effect.
[INFO] [1565314535.915856, 0.000000]: Controller Spawner: Waiting for service controller_manager/load_controller
SpawnModel script started
Traceback (most recent call last):
File "/home/ros/simulation_ws/src/shadow_robot_smart_grasping_sandbox/gazebo2rviz/src/gazebo2rviz/gazebo2moveit_collision_node.py", line 12, in <module>
from sdf2moveit_collision_node import Sdf2moveit
File "/home/ros/simulation_ws/src/shadow_robot_smart_grasping_sandbox/gazebo2rviz/src/gazebo2rviz/sdf2moveit_collision_node.py", line 7, in <module>
import pyassimp
File "/usr/lib/python2.7/dist-packages/pyassimp/__init__.py", line 1, in <module>
from .core import *
File "/usr/lib/python2.7/dist-packages/pyassimp/core.py", line 29, in <module>
class AssimpLib(object):
File "/usr/lib/python2.7/dist-packages/pyassimp/core.py", line 33, in AssimpLib
load, load_mem, release, dll = helper.search_library()
ValueError: need more than 3 values to unpack
[INFO] [1565314536.662554, 0.000000]: Loading model XML from ros parameter
[INFO] [1565314536.676739, 0.000000]: Waiting for service /gazebo/spawn_urdf_model
[INFO] [1565314536.681075, 0.000000]: Calling service /gazebo/spawn_urdf_model
[gazebo2moveit-11] process has died [pid 29543, exit code 1, cmd /home/ros/simulation_ws/src/shadow_robot_smart_grasping_sandbox/gazebo2rviz/src/gazebo2rviz/gazebo2moveit_collision_node.py -f 2 __name:=gazebo2moveit __log:=/home/ros/.ros/log/ce66aa76-ba1d-11e9-bc4a-0242ac110002/gazebo2moveit-11.log].
log file: /home/ros/.ros/log/ce66aa76-ba1d-11e9-bc4a-0242ac110002/gazebo2moveit-11*.log
Service call failed: transport error completing service call: unable to receive data from sender, check sender's logs for details
Segmentation fault (core dumped)
[gazebo-1] process has died [pid 29300, exit code 139, cmd /opt/ros/kinetic/lib/gazebo_ros/gzserver -e ode /home/ros/simulation_ws/src/shadow_robot_smart_grasping_sandbox/smart_grasping_sandbox/smart_grasping_sandbox/world/smart_grasping.world __name:=gazebo __log:=/home/ros/.ros/log/ce66aa76-ba1d-11e9-bc4a-0242ac110002/gazebo-1.log].
log file: /home/ros/.ros/log/ce66aa76-ba1d-11e9-bc4a-0242ac110002/gazebo-1*.log
all processes on machine have died, roslaunch will exit
[spawn_gazebo_model-3] process has finished cleanly
log file: /home/ros/.ros/log/ce66aa76-ba1d-11e9-bc4a-0242ac110002/spawn_gazebo_model-3*.log
[ERROR] [1565314540.533832, 0.000000]: Current /imu/data not ready yet, retrying for getting imu
Asked by zrobertson on 2019-08-08 20:48:50 UTC
Answers
The problem seems to be pyassimp
. Other people have it, too: https://github.com/ros-planning/moveit/issues/86
Probably the ubuntu version is bugged. (Assuming thats the one you installed currently) Run:
apt remove python-pyassimp
pip install --user pyassimp
Asked by ct2034 on 2019-08-09 11:08:38 UTC
Comments
Hi, thanks for the response! I tried removing the package and reinstalling as you suggested. However, now it says that
ImportError: No module named moveit_commander
Trying to fix that leads back to the same problem as before. I originally had tried rosdep install
and I also tried to target specific versions of pyassimp. Neither seemed to work. There seem to be options to install from the source and/or to patch the library itself. Any quick fixes you know of? (Full detail in question edit)
Asked by zrobertson on 2019-08-09 14:02:24 UTC
Can you verify which version of pyassimp you have installed? Did you install it from apt or pip? At moveit everyone seems to be happy about this: https://github.com/ros-planning/moveit/issues/86#issuecomment-272818055 indicating that 3.3 is required.
Asked by ct2034 on 2019-08-09 14:31:45 UTC
I ran this command. I don't remember how I originally installed pyassimp. It's possible I did apt. However, when I recently tried this approach I made sure to do pip.
ros@48f4246dc605:~/catkin_ws$ pip2 show pyassimp | grep Version
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/__init__.py:83:
RequestsDependencyWarning: Old version of cryptography ([1, 2, 3]) may cause slowdown.
warnings.warn(warning, RequestsDependencyWarning)
Version: 3.3
You are using pip version 18.0, however version 19.2.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Asked by zrobertson on 2019-08-09 15:04:40 UTC
Comments