RussTedrake / manipulation

Course notes for MIT manipulation class
BSD 3-Clause "New" or "Revised" License
411 stars 121 forks source link

Exercise 7.3 Hybrid Force-Position Control: Robot behaves differently when run in deepnote and locally. #187

Closed CWEzio closed 2 years ago

CWEzio commented 2 years ago

Ubuntu 18.04 Drake version: 0.37.0, 0.39.0, 1.0.0 location exercises/force/hybrid_force_position.ipynb

I have completed exercise 7.3 Hybrid Force-Position Control in deepnote with setted up environment. The robot pushes the book successfully to goal location. Later I decide to modify this exercise to do something else. To make developement easier, I try to use local environment. I set up the environemnt follow the guidance in https://manipulation.csail.mit.edu/drake.html#section2. However, I encounter a strange problem when try to run my completed exercise 7.3 locally. The iiwa robot only closes its gripper, but it will not move. The version of drake that I used is 0.37.0. Later I have try different version of Drake like 0.39.0 and 1.0.0. However, the problem persists and the iiwa robot does not move. To make sure that my drake is installed corretly, I run some other examples, like intro.ipynb and manipulation_station.ipynb. Everything seems to be fine.

I have also tried to run this exercise in my friend's computer with his setted up drake environemnt and I got same behavior: the iiwa robot does not move, only the gripper is closed. This bug seems to be repeatable.

RussTedrake commented 2 years ago

You were absolutely right. There was a bad assumption in that notebook about the ordering of the joints in the configuration vector (and therefore in the Jacobian). The joint ordering in Drake changed, and broke the notebook. Thanks for reporting it!

(BTW - I have rolled out some new testing infrastructure this semester for underactuated, which would have caught this when I bring it back over to the manipulation repo this fall).