-
Notifications
You must be signed in to change notification settings - Fork 6
head behavior: add collision checking module #85
Conversation
NFiedler
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When compiling, I get the following warning:
Warnings << bitbots_head_behavior:check /home/nfiedler/documents/Bit-Bots/catkin_ws/logs/bitbots_head_behavior/build.check.004.log
CMake Warning at /usr/share/cmake-3.10/Modules/FindBoost.cmake:1626 (message):
No header defined for python3; skipping header check
Call Stack (most recent call first):
CMakeLists.txt:7 (find_package)
When testing it on my machine in RViz, it seems like the robot is stuck in one position... so I get:
[WARN] [1605262043.620775]: Colliding head position: 1.1254772796251122, -1.2. Not moving.
continuously... The only way to break out of it is to move the ball into the field of view again and moving it slowly out of it. What I want to say is that returning to looking for the boll doesn't seem to work once the robot is stuck.
Additionally I'd like to see some comments in the C part, but it is so straightforward that I wouldn't know where exactly...
|
Oh, and the package version of the blackboard is not updated. |
can confirm that the robot gets the same warning during compiling. Could not test it on the robot, since the vision sees no ball, would need the help of some vision people, @johagge @Flova @jaagut |
|
Some comments from my side. Correct me if I am wrong (I'm still in bed and tired af) but the head also collided some times even if it looked okay in rviz. This happened maybe due to the sea and definitely due to the head beeing stuck in der cables over the shoulder that are not part of the collision model. But thanks @timonegk for this cool implementation! |
|
included small config change to solve bit-bots/bitbots_main#278 for now |
the cables are no problem when they are correctly fixed. |
|
I can confirm the bug that @NFiedler described. when the ball is lost and the next search pattern position would be invalid, the head behavior is stuck until it sees a ball again. this definitely needs to be fixed |
…bots_behavior into feature/collision_detection
During pattern search, the head behavior now turns to the next position in the pattern when the goal is not reachable
SammyRamone
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
did not test it. looks okay. there are more sophisticated methods than just skipping one search position, but I guess it will be sufficient and not worth the extra work
|
This is ready to re-review and test now. It now takes all joint positions into account (especially the arms are crucial, as @SammyRamone pointed out). I also used an existing helper function for roscpp initialization because otherwise, the node did not terminate properly. |
|
@timonegk did you test it in simulation? If yes I think you can merge this, as we will not be able to test anything on the robot in the next time. |
|
By the way, the cmake warning seems to be a known problem for bionic and can be ignored. |
|
I just tested in simulation and it works fine with the changes in bit-bots/wolfgang_robot#89. |
|
@timonegk Do you want @SammyRamone to re-review it or do you wait on @NFiedler feedback? |
bitbots_head_behavior/src/bitbots_head_behavior/actions/search_recent_ball.py
Show resolved
Hide resolved
bitbots_head_behavior/src/bitbots_head_behavior/actions/search_pattern.py
Show resolved
Hide resolved
|
Users of packages.bit-bots.de might need to execute |
|
I get this warning and the robot does nothing: |
|
@Flova you need to pull wolfgang_robot |
jgueldenstein
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tested and working in simulation
|
I was on the newest version. Timon checked the hash. |
Proposed changes
This pull request introduces a cpp python module that can check for collisions using MoveIt. When a collision occurs, the head stops moving. In general, it works very well. There are still two issues:
/joint_states.The PR is ready to be tested on the robot (I tested it in rViz).
Related issues
The pull request closes #55.
Necessary checks
catkin build