stepjam / RLBench

A large-scale benchmark and learning environment.
https://sites.google.com/corp/view/rlbench
Other
1.11k stars 226 forks source link

Prevent the panda robot from lowering itself step by step #154

Open Marcelbgit opened 2 years ago

Marcelbgit commented 2 years ago

Dear developer,

right now I am working with RLBench as a framework to collect demonstrations for a DRL-algortihm. Instead of going straight from waypoint to waypoint I am using a "teleoperation tool" to create user flexible demonstrations (control every movement step based on the endeffector). After creating my specific tasks via the task_buliding tool I open the files and the Panda robot starts to lowering itself step by step without any settings in the ttt file or in the ObservationConfig class. It also aims no specific point as the waypoint, it just folds on itself. I can see the joint_targets change every step although I haven't assigned any command. How can I prevent the Robot from lowering itself? I need to have the control about every movement via the teleoperation otherwise the robot need to be static.

About your quick help I would be very happy! This is a problem that I could not solve despite the search of all PyRep and RLBench files.

Cheers, Marcel

stepjam commented 2 years ago

Hi, Thanks for the question. I'll need a little more information to be able to help. Please post a minimal reproducible example. Thanks!

Marcelbgit commented 2 years ago

Hey Stephen,

thanks for your reply. I created a folder for the important files and information, including a video where I show you the lowering of the robot and the overwriting of the target position of the joints. Don't get distracted from the movements between the lowering, because I change the position via teleoperation. In general I am using CEILing (also available in github) approach with the RLBench task "CloseMicrowave" by calling teleoperation_env.py. The environment is setup with custom_env.py in the src folder, so I guess the lines from line 69 to 151 should be the important for the lowering. I could not refer the lines or any configuration in RLBench to the lowering problem. Just opening the scene and play it does not produce the lowering, that's why I am confused. Also the author of the algorithm (CEILing) leads the lowering back to RLBench but without any guess. Also as you can see in the custom_env file I changed the imports and usages of the action_mode module. Another question, did I come up with the right solution for RLBench 1.2 to exchange

action_mode = MoveArmThenGripper( arm_action_mode=EndEffectorPoseViaIK(False, 'end effector'), gripper_action_mode=Discrete()) with the old action_mode = ActionMode(ArmActionMode.EE_POSE_EE_FRAME) I just want to get back the Change in the endeffector as EE_POSE_EE_FRAME is used before.

Find the data attached via:

https://we.tl/t-lyqWwcDYEn

renewed link because of the run out.

https://we.tl/t-4StuoZTyQc

Cheers and thank you so much for your help, Marcel

Marcelbgit commented 2 years ago

Hey Stephen,

have you had a change to have a look on my prob? Thank you so far!

Cheers Marcel

siilats commented 2 years ago

Can you upload the file as Pull request or a branch in your repo? Can you show video as a youtube link? the we transfer expires

zwbx commented 5 months ago

Same problems like me, which refers to https://github.com/stepjam/PyRep/issues/370