You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+7-7
Original file line number
Diff line number
Diff line change
@@ -80,7 +80,7 @@ When the element is reevaluated, `perform` is called on the element.
80
80
If the result of `perform` is the same as the last time it was called, nothing happens and the next decision is reevaluated.
81
81
If the result of `perform` is different from the last time, everything above the reevaluated decision is discarded and a new element, depending on the result of `perform`, is pushed on the stack and executed.
82
82
83
-
An action can call `self.do_not_reevaluate()` to avoid reevaluation of the stack on the next call to `update`. Alternatively the parameters (see #Parameters) `r` or `reevaluate` can be used in the dsd file to enable or disable the reevaluation during a specific action.
83
+
An action can call `self.do_not_reevaluate()` to avoid reevaluation of the stack on the next call to `update`. Alternatively the parameters (see #Parameters) `r` or `reevaluate` can be used in the dsd file to enable or disable the reevaluation during a specific action.
84
84
85
85
## Sequence elements
86
86
@@ -96,7 +96,7 @@ The syntax is `@Action + parameter:value`, multiple parameters can be passed usi
96
96
The parameters to an element are passed to the element's constructor as a dictionary.
97
97
The value of the parameter is passed through `yaml.safe_load`.
98
98
Therefore, you can use integers, floats, booleans or strings as values.
99
-
It is also possible to load parameters from the ROS parameter server using `parameter:%rosparam`, where `rosparam` is the name of the parameter on the parameter server.
99
+
It is also possible to load parameters from the ROS parameter server using `parameter:%rosparam`, where `rosparam` is the name of the parameter on the parameter server.
100
100
101
101
Here is an example:
102
102
```
@@ -158,13 +158,13 @@ $Mode
158
158
159
159
## Interrupt
160
160
161
-
A stack element can call `self.interrupt()` to create an interrupt which removes all elements except for the start element from the stack (i.e., the DSD is restarted).
161
+
A stack element can call `self.interrupt()` to create an interrupt which removes all elements except for the start element from the stack (i.e., the DSD is restarted).
162
162
163
163
## Debugging
164
164
165
165
For debugging, the DSD visualization should be used.
166
-
It reads the locations of different DSDs from `config/locations.yaml` and can be launched in rqt.
167
-
The visualization shows the DSD tree with the currently active actions and decisions on the left and the current stack on the right.
166
+
It automatically discovers all running DSDs with a debug topic and visualizes them in RQT.
167
+
The visualization shows the DSD tree with the currently active actions and decisions as a tree on the left and the current stack on the right.
168
168
More information can be added to the right side by calling `self.publish_debug_data(label, data)` in any action or decision.
169
169
170
170
## DSD Development GUI
@@ -176,8 +176,8 @@ If you use VSCode, you can use the [DSD extension](https://marketplace.visualstu
176
176
## Examples
177
177
178
178
Here are a few projects that use the DSD and can be used for reference:
179
-
* The [Bit-Bots Body Behavior](https://github.com/bit-bots/bitbots_behavior/tree/master/bitbots_body_behavior/bitbots_body_behavior)
180
-
* The [Bit-Bots Humanoid Control Module](https://github.com/bit-bots/bitbots_motion/tree/master/bitbots_hcm/bitbots_hcm/hcm_dsd)
179
+
* The [Bit-Bots Behavior](https://github.com/bit-bots/bitbots_main/tree/main/bitbots_behavior)
180
+
* The [Bit-Bots Humanoid Control Module](https://github.com/bit-bots/bitbots_main/tree/main/bitbots_motion/bitbots_hcm/bitbots_hcm/hcm_dsd)
181
181
* The [Parser Test](https://github.com/bit-bots/dynamic_stack_decider/tree/master/dynamic_stack_decider/test) in this repository
0 commit comments