17. Robot Execution Pipeline - m-marini/wheellyj GitHub Wiki
Robot Execution Pipeline
This batch script automates the Wheelly robot execution workflow, from configuration loading to robot execution and inference data generation.
Overview
The pipeline performs the following stages:
- Load the execution configuration.
- Clean previous temporary execution data.
- Run the robot executor application.
- Generate inference data and execution artifacts.
The workflow starts from a clean temporary environment by removing previous temporary data before launching a new robot execution.
Prerequisites
Before running the script, ensure that:
- The project has been built.
- Java is installed and available.
- The Wheelly application dependencies are available.
- The configuration script
bin/setConfig.cmdis correctly configured. - All required environment variables are defined.
Configuration Variables
The pipeline uses the following configuration variables, initialized by:
bin\setConfig.cmd
| Variable | Description |
|---|---|
TEMP |
Temporary workspace used during robot execution. |
INFERENCE |
Output directory containing inference data generated by the robot executor. |
Pipeline Stages
1. Load Configuration
The script starts by loading all required configuration variables.
call bin\setConfig.cmd
2. Clean Previous Temporary Data
Before starting a new execution, previous temporary data is removed.
rmdir /S /Q %TEMP%
This ensures that the execution starts with a clean working directory.
3. Run Robot Executor
The robot execution application is started using:
org.mmarini.wheelly.apps.RobotExecutor
Command:
call bin\runnit.cmd org.mmarini.wheelly.apps.RobotExecutor ^
-w ^
-d %INFERENCE% ^
%*
Parameters:
| Option | Description |
|---|---|
-w |
Enable multi-window panels. |
-d |
Output directory where inference data is generated. |
%* |
Additional command-line arguments forwarded to the application. |
The executor runs the robot workflow and generates inference data in the directory referenced by INFERENCE.
Generated Artifacts
After a successful execution, the following artifacts are available:
- Generated inference data (
INFERENCE) - Temporary execution workspace (
TEMP) - Application-specific outputs generated by
RobotExecutor
Execution Flow
The following diagram illustrates the sequence of operations performed by the pipeline.
flowchart TD
START([Start])
CFG["Load Configuration"]
CLEAN["Remove Temporary Data"]
EXEC["Run RobotExecutor"]
END([End])
START --> CFG
CFG --> CLEAN
CLEAN --> EXEC
EXEC --> END
Data Flow
The following diagram illustrates how data moves through the pipeline.
flowchart LR
ROBOT["RobotExecutor"]
TEMP[(Temporary Workspace)]
INF[(Generated Inference Data)]
OUT[(Execution Output)]
ROBOT --> INF
ROBOT --> OUT
ROBOT -.-> TEMP
Release
Current release: 0.26.0