Configuration
The ROS2 CLIPS-Executive node configuration is depending on the environments and plugins it manages.
Example
clips_manager:
ros__parameters:
environments: ["main"]
autostart_node: false
bond_heartbeat_period: 0.0
main:
plugins: ["executive","files"]
log_clips_to_file: true
watch: ["rules", "facts"]
# plugin parameters
# ...
Node Parameters
- autostart_node:
Type
Default
bool
false
- Description
If set to true, automatically activate the lifecycle node on startup.
- bond_heartbeat_period:
Type
Default
float
0.0
- Description
Heartbeat rate when used to bond with other nodes. A period of 0.0 disables bond usage.
- environments:
Type
Default
string vector
[]
- Description
Each entry should be a unique name for an environment. Each environment is then further configured.
Environment Parameters
Given an environment env, these are the configuration options:
- env.log_clips_to_file:
Type
Default
bool
true
- Description
If set to true, each environment creates a log file <env-name>_<timestamp>.log in the ROS log directory containing all CLIPS output.
- env.watch:
Type
Default
string vector
[]
- Description
Watch items to define verbosity of the environment. Possible values: [“all”, “facts”, “instances”, “slots”, “rules”, “activations”, “messages”, “message_handlers”, “generic_functions”, “methods”, “deffunctions”, “compilations”, “statistics”, “globals”, “focus”]
- env.plugins:
Type
Default
string vector
[]
- Description
List of unique plugin names. Each plugin is further specified with parameters depending on its type.
- env.redirect_stdout_to_debug:
Type
Default
bool
false
- Description
If set to true, all CLIPS output that logs to the
clips::STDOUT="stdout"
router is logged in ROS viaRCLCPP_DEBUG
instead ofRCLCPP_INFO
. This is useful when the (often rather verbose) default CLIPS output should be captured in the log file but should not spam the main terminal. CLIPS programs that use other routers (such asinfo
ort
) to print output still appear usingRCLCPP_INFO
.
Plugin Parameters
Given a plugin p (as specified in an environments plugin list), each needs to specify the type of the plugin:
- p.plugin:
Type
Default
string
“”
- Description
The specifier of the pluginlib plugin.
Each plugin may also have additional configuration options, which are documented in the CLIPS Plugins section.