@@ -4,15 +4,18 @@ metadata:
44 description : " manymove BT manipulator pipeline (xArm7 fake hardware) with medkit fault reporting"
55 version : " 0.1.0"
66
7+ # Hybrid discovery: pure ROS-side components (xarm7-arm, ufactory-driver,
8+ # move-group, object-manager, action-server, gateway, etc.) are picked up
9+ # at runtime from topic/node introspection. The manifest declares only
10+ # what the runtime can't infer:
11+ # - PLC-side entities (no ROS topics)
12+ # - script-bound logical components (conveyor-line, manymove-planning)
13+ # - apps the smoke test asserts on (bt-client-xarm7, fault-manager-app)
714config :
815 unmanifested_nodes : " warn"
916 inherit_runtime_resources : true
1017
1118areas :
12- - id : manipulation
13- name : " Manipulation"
14- description : " xArm7 cobot under fake_components hardware"
15- namespace : /
1619 - id : planning
1720 name : " Planning"
1821 description : " BehaviorTree.CPP orchestration and MoveIt motion planning"
@@ -29,16 +32,6 @@ areas:
2932 namespace : /plc
3033
3134components :
32- - id : xarm7-arm
33- name : " xArm 7 manipulator"
34- type : " manipulator"
35- description : " 7-DoF cobot, fake_components hardware"
36- area : manipulation
37- - id : ufactory-driver
38- name : " UFactory ROS 2 driver"
39- type : " driver"
40- description : " xarm_ros2 driver layer (fake mode)"
41- area : manipulation
4235 - id : manymove-bt
4336 name : " manymove BT client"
4437 type : " controller"
@@ -49,26 +42,6 @@ components:
4942 type : " controller"
5043 description : " Logical grouping for planning-side container scripts (collision inject, restore, self-test)"
5144 area : planning
52- - id : move-group
53- name : " MoveIt move_group"
54- type : " planner"
55- description : " OMPL motion planner"
56- area : planning
57- - id : object-manager
58- name : " manymove object_manager"
59- type : " service"
60- description : " Planning scene collision objects"
61- area : planning
62- - id : action-server
63- name : " manymove planner action_server"
64- type : " service"
65- description : " MoveManipulator / PlanManipulator action servers"
66- area : planning
67- - id : gateway
68- name : " ros2_medkit gateway"
69- type : " diagnostics"
70- description : " HTTP REST API for fault inspection"
71- area : diagnostics
7245 - id : fault-manager
7346 name : " ros2_medkit fault_manager"
7447 type : " diagnostics"
@@ -113,105 +86,10 @@ apps:
11386 ros_binding :
11487 namespace : /
11588 node_name : bt_client_xarm7
116- - id : hmi-service-node
117- name : " HMI service node"
118- category : " controller"
119- is_located_on : manymove-bt
120- ros_binding :
121- namespace : /
122- node_name : hmi_service_node
123- - id : move-group-app
124- name : " move_group"
125- category : " planner"
126- is_located_on : move-group
127- ros_binding :
128- namespace : /
129- node_name : move_group
130- - id : action-server-app
131- name : " action_server_node"
132- category : " service"
133- is_located_on : action-server
134- ros_binding :
135- namespace : /
136- node_name : action_server_node
137- - id : object-manager-app
138- name : " object_manager_node"
139- category : " service"
140- is_located_on : object-manager
141- ros_binding :
142- namespace : /
143- node_name : object_manager_node
144- - id : ufactory-driver-app
145- name : " ufactory_driver"
146- category : " driver"
147- is_located_on : ufactory-driver
148- ros_binding :
149- namespace : /
150- node_name : ufactory_driver
15189 - id : fault-manager-app
15290 name : " fault_manager"
15391 category : " diagnostics"
15492 is_located_on : fault-manager
15593 ros_binding :
15694 namespace : /
15795 node_name : fault_manager
158- - id : gateway-app
159- name : " ros2_medkit_gateway"
160- category : " diagnostics"
161- is_located_on : gateway
162- ros_binding :
163- namespace : /
164- node_name : ros2_medkit_gateway
165- - id : openplc-runtime
166- name : " OpenPLC runtime"
167- category : " controller"
168- is_located_on : openplc
169- ros_binding :
170- namespace : /plc
171- node_name : openplc_runtime
172- - id : opcua-bridge-app
173- name : " opcua_bridge"
174- category : " bridge"
175- is_located_on : opcua-bridge
176- ros_binding :
177- namespace : /plc
178- node_name : sensor_io
179-
180- functions :
181- - id : pick-and-place
182- name : " Pick and place"
183- category : " manipulation"
184- description : " BT-driven manipulation sequence on fake xArm7"
185- hosted_by :
186- - bt-client-xarm7
187- - move-group-app
188- - action-server-app
189- - object-manager-app
190- - id : hmi-control
191- name : " Operator control"
192- category : " interaction"
193- description : " Qt HMI panel for blackboard mutation and BT reset"
194- hosted_by :
195- - hmi-service-node
196- - bt-client-xarm7
197- - id : fault-management
198- name : " Fault management"
199- category : " diagnostics"
200- description : " Capture, persist, and surface BT runtime failures emitted by manymove_cpp_trees"
201- hosted_by :
202- - fault-manager-app
203- - gateway-app
204- - id : line-control
205- name : " Line control"
206- category : " controller"
207- description : " PLC-driven conveyor sequencing with safety interlocks"
208- hosted_by :
209- - openplc-runtime
210- - id : fault-aggregation
211- name : " Cross-source fault aggregation"
212- category : " diagnostics"
213- description : " Bridge PLC AlarmConditionType events into the same medkit FaultManager that aggregates ROS-side faults"
214- hosted_by :
215- - opcua-bridge-app
216- - fault-manager-app
217- - gateway-app
0 commit comments