Open osrf-migration opened 9 years ago
Original comment by Nate Koenig (Bitbucket: Nathan Koenig).
Thanks. We are looking into this issue right now.
Original comment by Nate Koenig (Bitbucket: Nathan Koenig).
Issue #471 was marked as a duplicate of this issue.
Original comment by David Conner (Bitbucket: dcconner).
I think #471 was an explicit request to change to USER, where as this issue is that something internal to the robot is causing a change to USER.
Original comment by David Conner (Bitbucket: dcconner).
I can duplicate the effect by replaying this bag file after starting up Gazebo. It causes the robot to "jump", then fall over. I notice that the current_behavior seems to oscillate between 0 and 3 or 7 after it falls.
Original comment by Nate Koenig (Bitbucket: Nathan Koenig).
I'm trying to reproduce the problem, and so far I've been unsuccessful. I'm running:
#!c++
roslaunch drcsim_gazebo atlas.launch model_args:="_v5"
with libAtlasSimInterface 3.0.2.
I'm then using the code in this tutorial to walk in a circle.
Original comment by Nate Koenig (Bitbucket: Nathan Koenig).
Playing your bag file does cause it to fall over. It falls in a way that is suspiciously similar to issue #471.
Original comment by David Conner (Bitbucket: dcconner).
My set up works fine with the tutorial, but I can reproduce with the bag file attached above.
There's something going on when I publish the messages that is causing a hiccup, but I don't see anything wrong with the message contents, and since I'm asking to remain in STAND nothing should happen.
Original comment by Nate Koenig (Bitbucket: Nathan Koenig).
Yeah. I agree that something is strange. I'm looking a bit deeper into the code.
Original comment by Nate Koenig (Bitbucket: Nathan Koenig).
I'm now in a strange state. After switching from drcsim-prerelease to a source compile of drcsim_4.2_prerelease
, the bag file works fine.
Original comment by David Conner (Bitbucket: dcconner).
There were a couple of replays where it didn't seem to cause an issue, so I'd suggest a couple of tries.
Otherwise, are there differences in compiler options (e.g. DEBUG where something is internally initialized?)
Original comment by Nate Koenig (Bitbucket: Nathan Koenig).
Ignore my previous comment. I was in a terminal with incorrect environment.
Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).
@dcconner I noticed that the bag file you posted has the following topics:
$ rosbag info 2015-01-09-16-56-42.bag
...
topics: /atlas/atlas_command 1 msg : atlas_msgs/AtlasCommand
/atlas/atlas_sim_interface_command 1 msg : atlas_msgs/AtlasSimInterfaceCommand
/atlas/atlas_sim_interface_state 12970 msgs : atlas_msgs/AtlasSimInterfaceState
If I play it back, I do see the jump and fall over behavior.
I'm wondering why the /atlas/atlas_sim_interface_state
is included? I tried filtering that topic out of the bag file (see attached 2015-01-09-16-56-42_no_state.bag), and when I play that bag file, it doesn't fall over.
Original comment by David Conner (Bitbucket: dcconner).
I logged the state from Gazebo to verify what was going on. The controller interface is not publishing on that topic.
Not sure why publishing the extra topic would impact what Gazebo is doing during bag replay other than by impacting the internal timing due to CPU load.
Original comment by Nate Koenig (Bitbucket: Nathan Koenig).
I assume you have some chunk of code that still causes Atlas to fall over, and that chunk of code doesn't publish on the /atlas/atlas_sim_interface_state
topic, correct?
Based on the data in the bag file, it would seem that your code is entering User mode.
If those two assumptions are correct, then issue #471 is the correct place to address the User mode causes a fall problem.
We can leave this issue open to address the problem of falling when publishing on /atlas/atlas_sim_interface_state
. I would also downgrade the severity of this issue.
Original comment by David Conner (Bitbucket: dcconner).
Gah. Apparently I was publishing a control_mode ="User" once on start up. Was this used to switch from demo mode in past, and now is causing a BDI behavior mode change with the new library?
Original comment by Nate Koenig (Bitbucket: Nathan Koenig).
The switch to "User" mode causes a new set of PID controllers to become active. They should keep Atlas standing, but are obviously broken now.
Original comment by David Conner (Bitbucket: dcconner).
Changed title and description to avoid sending people down bunny trail.
Original report (archived issue) by David Conner (Bitbucket: dcconner).
The original report had attachments: 2015-01-09-16-56-42.bag.gz, 2015-01-09-16-56-42_no_state.bag
In trying to debug issue caused by old code that was publishing control_mode="User" once on startup (but didn't cause issues with atlas_v3 - see #471), we ran into issue with replaying bag file.
--- original description ------
Trying to run our interface with new library 4.2.4-1~trusty with BDI 3.0.2
Upon publishing the first message of AtlasSimInterfaceCommand and AtlasCommand, the robot changes to USER mode and falls over.
When I echo the data, the behavior request remains at 3 (STAND), but the current_behavior in AtlastSimInterfaceState changes to 7 (USER)