[FEA] Allow configuring a subset of nodes in a certain mode.
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
Línea de trabajo
Comienza con la configuración YAML de system-modes del issue y reproduce el comportamiento usando las dos llamadas de servicio de ros2 para /actuation/change_state. Sigue cómo se aplican las asignaciones parciales de modos a los lifecycle nodes. Se considera terminado cuando un modo puede configurar únicamente el subconjunto de nodos que tiene listado, conservando los estados apropiados de los demás nodos, y el manipulador izquierdo alcanza el estado active en el ejemplo proporcionado.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Hi, first of all I want to say this is a great project to manage lifecycle nodes!
There'a a need to config the lifecycle state of only a subset of nodes in one mode, but config another subset of nodes in other modes.
Let's say, can the following config work? (Currently I don't need the extra parameter-based modes either)
SHM file
# system modes example
---
actuation:
ros__parameters:
type: system
parts:
drive_base
left/manipulator
right/manipulator
modes:
__DEFAULT__:
drive_base: active.__DEFAULT__
left/manipulator: inactive.__DEFAULT__
right/manipulator: inactive.__DEFAULT__
LEFT:
# drive_base: active.__DEFAULT__
left/manipulator: active.__DEFAULT__
# right/manipulsator: inactive.__DEFAULT__
RIGHT:
# drive_base: active.__DEFAULT__
# left/manipulator: inactive.__DEFAULT__
right/manipulator: active.__DEFAULT__
left/manipulator:
ros__parameters:
type: node
modes:
__DEFAULT__:
ros__parameters:
max_torque: 0.1
drive_base:
ros__parameters:
type: node
modes:
__DEFAULT__:
ros__parameters:
max_speed: 0.1
controller: PID
right/manipulator:
ros__parameters:
type: node
modes:
__DEFAULT__:
ros__parameters:
max_torque: 0.11
EDIT, the step of reproduce has been updated @ralph-lange
step to reproduce
time ros2 service call /actuation/change_state lifecycle_msgs/ChangeState "{transition: {id: 1, label: configure}}"
time ros2 service call /actuation/change_state lifecycle_msgs/ChangeState "{transition: {id: 3, label: activate}}"
expected
the lefe manipulator should be in active
actual

- Lenguaje dominante
- C++
- Estrellas
- 45
- Forks
- 13
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de micro-ROS/system_modes
-
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
micro-ROS/system_modes#101 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
micro-ROS/system_modes#99 · 3 comentarios ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
micro-ROS/system_modes#98 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
micro-ROS/system_modes#97 · 2 comentarios ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
micro-ROS/system_modes#96 · 2 comentarios ·
Todos los issues de micro-ROS/system_modes
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
google/libultrahdr#485 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
godotengine/godot#123776 ·
-
bug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 60/100
-
good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
-
good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
ros2/common_interfaces#344 ·