Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
e74145f
Forward correct image topics
ayin21 Jun 19, 2026
5c21291
Make robots black
ayin21 Jun 19, 2026
6cd3000
Add example script for formation calc
ayin21 Jun 19, 2026
1ced7f6
basic creation of positioning_capsule
cleWu03 Jun 21, 2026
61bf6e7
connect positioning capsule with behaviour (example for defender)
cleWu03 Jun 21, 2026
4fa2aed
fix some type errors and run format (now works in simulation for a si…
cleWu03 Jun 22, 2026
eca2b97
test integration of different roles in simulation (only normal behavi…
cleWu03 Jun 22, 2026
775da12
add x any pos slider to rqt data sim
cleWu03 Jun 22, 2026
842adfd
Use events executor for rviz markers
Flova Jun 29, 2026
43c6e31
Isolate placement test script
Flova Jun 29, 2026
49ed7aa
Delete redundant file
Flova Jun 29, 2026
6d616d6
Add freekick mode
Flova Jun 29, 2026
251a18d
Apply PR feedback
Flova Jun 29, 2026
9002998
Add typing
Flova Jun 29, 2026
49d519a
Apply format
Flova Jun 29, 2026
eaaf36d
improved dsd based on comments in PR (not testet for building)
cleWu03 Jun 30, 2026
bfbf3c7
integrate positioning capsule changes in main dsd
cleWu03 Jun 30, 2026
3fc4e2c
rqt add ball pose publish
cleWu03 Jun 30, 2026
28dbf2e
add @ in dsd go tos
cleWu03 Jun 30, 2026
ae03c94
Merge branch 'main' into feature/better_assignment to add double touch
cleWu03 Jun 30, 2026
d058eeb
fix positioning ready
cleWu03 Jun 30, 2026
b884405
fix hysteresis call
cleWu03 Jun 30, 2026
656f27f
fix closest to ball decision
cleWu03 Jun 30, 2026
e2c3c4a
no double toch integration with Strategy passiv
cleWu03 Jul 1, 2026
ab88f08
change freekick param name and add function to set it
cleWu03 Jul 1, 2026
2ef42fe
fixes sim errors
cleWu03 Jul 1, 2026
b9bfea2
this as well
cleWu03 Jul 1, 2026
104cea8
remove wrong log
cleWu03 Jul 1, 2026
b6b222d
add own action to get passive
cleWu03 Jul 1, 2026
ee12f90
some more dsd fixes
cleWu03 Jul 2, 2026
c09ac88
Merge main to get the newest simulator stuff for testing
cleWu03 Jul 2, 2026
1b03218
check for alingnement with goalPose to stop moving on place
cleWu03 Jul 2, 2026
5190a13
fix for communicated actions
cleWu03 Jul 2, 2026
09a1641
quick save continue in formation position
cleWu03 Jul 3, 2026
d86cc96
add reached goal logic to go to formation
cleWu03 Jul 3, 2026
e10883c
Fix small regressions
Jul 3, 2026
fa5e0ce
rewrite action
ayin21 Jul 3, 2026
9ddf72d
Fix various issues with GoToFormationPosition
Jul 3, 2026
bedf8e9
Merge branch 'main' into feature/better_assignment
Jul 3, 2026
5551f44
Remove Init Animation
Jul 3, 2026
94408f2
update passiv action for multiple players (Needs to be tested!)
cleWu03 Jul 3, 2026
85c0aaa
Remove old goto targets
Flova Jul 3, 2026
93cd9c4
Remove hysteresis and add set play formation
Flova Jul 3, 2026
7c664c7
Adapt and fix the behavior
Flova Jul 3, 2026
5cf3bab
Fix set play in gui
Flova Jul 3, 2026
eeed157
Fix seperation during complex / crowded set play situations
Flova Jul 3, 2026
a3f9344
Merge branch 'feature/better_assignment' of github.com:bit-bots/bitbo…
Flova Jul 3, 2026
8b63646
Apply format
Flova Jul 3, 2026
9a3099b
Fix passive robots
Flova Jul 3, 2026
bcfdbb2
Adapt gui to model passive robots during assignment
Flova Jul 3, 2026
426c857
Fix typing for positoning capsule
Jul 3, 2026
a093312
pixi format
Jul 3, 2026
33a0ff2
Fix formatting
Flova Jul 4, 2026
0e885e3
Remove unreachable code
Flova Jul 4, 2026
5904a09
Rework set play situation
Flova Jul 4, 2026
1b38e33
Add method to retrieve robot's own role and clean up role assignment …
Flova Jul 4, 2026
a99dc2c
Merge branch 'main' into feature/better_assignment
Flova Jul 4, 2026
6d3d637
Merge branch 'main' into feature/better_assignment
Jul 4, 2026
6acf08a
Merge remote-tracking branch 'origin/main' into feature/better_assign…
Jul 4, 2026
d35ad73
Correct unit of parameter
Jul 4, 2026
888ea17
remove latch
cleWu03 Jul 4, 2026
1ece6ee
dont reevaluate Forget Ball
cleWu03 Jul 4, 2026
3e11e17
Add deadband filter for with player number prio for striker assignment
Flova Jul 4, 2026
ad9f591
Merge branch 'feature/better_assignment' of github.com:bit-bots/bitbo…
Flova Jul 4, 2026
6e49a6c
Make supporter optional
Flova Jul 4, 2026
6818fa5
Add variable defender gap
Flova Jul 4, 2026
aaed253
Merge branch 'main' of github.com:bit-bots/bitbots_main into feature/…
Flova Jul 4, 2026
463144b
Add better defensive positions
Flova Jul 4, 2026
53874db
Merge origin/main into feature/better_assignment
jaagut Jul 18, 2026
bd8cb9c
publish absolut_ball from slider values to team_data
cleWu03 Jul 30, 2026
4867dce
small fixes from copilot, use rl_kick specific go_to_ball action, co…
cleWu03 Jul 31, 2026
bdae2ba
code style fix
cleWu03 Jul 31, 2026
7d52bbe
use float explicitly for ci
cleWu03 Jul 31, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
95 changes: 47 additions & 48 deletions pixi.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions src/bitbots_behavior/bitbots_blackboard/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@ if(BUILD_TESTING)
ament_mypy(CONFIG_FILE "${CMAKE_CURRENT_LIST_DIR}/mypy.ini")
endif()

install(DIRECTORY scripts/ USE_SOURCE_PERMISSIONS
DESTINATION lib/${PROJECT_NAME})

ament_python_install_package(${PROJECT_NAME})

ament_package()
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
from bitbots_blackboard.capsules.kick_capsule import KickCapsule
from bitbots_blackboard.capsules.misc_capsule import MiscCapsule
from bitbots_blackboard.capsules.pathfinding_capsule import PathfindingCapsule
from bitbots_blackboard.capsules.positioning_capsule import PositioningCapsule
from bitbots_blackboard.capsules.team_data_capsule import TeamDataCapsule
from bitbots_blackboard.capsules.world_model_capsule import WorldModelCapsule

Expand All @@ -34,6 +35,7 @@ def __init__(self, node: Node, tf_buffer: tf2.BufferInterface):
self.costmap = CostmapCapsule(self.node, self)
self.pathfinding = PathfindingCapsule(self.node, self)
self.team_data = TeamDataCapsule(self.node, self)
self.positioning = PositioningCapsule(self.node, self)

self.capsules = [
self.misc,
Expand All @@ -44,6 +46,7 @@ def __init__(self, node: Node, tf_buffer: tf2.BufferInterface):
self.costmap,
self.pathfinding,
self.team_data,
self.positioning,
]

def clear_cache(self):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ def __init__(self, node, blackboard):
self.goalie_falling_left_animation: str = self._node.get_parameter("Animations.Goalie.fallLeft").value
self.goalie_falling_center_animation: str = self._node.get_parameter("Animations.Goalie.fallCenter").value
self.cheering_animation: str = self._node.get_parameter("Animations.Misc.cheering").value
self.init_animation: str = self._node.get_parameter("Animations.Misc.init").value

self.animation_client = ActionClient(
self._node, PlayAnimation, "animation", callback_group=ReentrantCallbackGroup()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,9 @@ def received_gamestate(self) -> bool:
def get_team_id(self) -> int:
return self.team_id

def get_own_id(self) -> int:
return self.own_id

def gamestate_callback(self, gamestate_msg: GameState) -> None:
if self.gamestate.penalized and not gamestate_msg.penalized:
self.unpenalized_time = self._node.get_clock().now().nanoseconds / 1e9
Expand Down
Loading
Loading