Installation
Docker
In the root folder of the repository, pull the necessary docker image:
$ docker compose pull
...
Then verify that the correct versions are installed
$ docker compose run --remove-orphans base smc_storm --version
[+] Creating 1/1
...
0.1.2
Local installation
Requirements
The scripts have been tested with Python 3.10 and pip version 24.0.
You need to install ROS. We currently support the following distributions:
Don’t forget to source ROS, e.g.:
$ source /opt/ros/humble/setup.bash
Install SMC Storm by downloading the latest release and executing the installation script. Verify your installation:
$ smc_storm --version
0.1.2
AS2FM Python Package
Warning
Before proceeding with the installation, make sure that pip’s version is at least 24.0.
To check pip’s version: python3 -m pip –version -m pip –version
To upgrade pip: python3 -m pip install –upgrade pip
Note
Since we switched from a multi-package to a mono-package setup, make sure to uninstall the previous version of the AS2FM tools. It can be done using the following instructions:
python3 -m pip uninstall as2fm_common
python3 -m pip uninstall jani_generator
python3 -m pip uninstall scxml_converter
python3 -m pip uninstall jani_visualizer
python3 -m pip uninstall trace_visualizer
AS2FM can be installed using pip:
# Non-editable mode
python3 -m pip install AS2FM/
# Editable mode
python3 -m pip install -e AS2FM/
Verify your installation by sourcing your ROS distribution (i.e. running source /opt/ros/<ros-distro>/setup.bash) and then running:
$ as2fm_scxml_to_jani --help
usage: as2fm_scxml_to_jani [-h] [--generated-scxml-dir GENERATED_SCXML_DIR]
[--jani-out-file JANI_OUT_FILE]
main_xml
Convert SCXML robot system models to JANI model.
positional arguments:
main_xml The path to the main XML file to interpret.
options:
-h, --help show this help message and exit
--generated-scxml-dir GENERATED_SCXML_DIR
Path to the folder containing the generated plain-
SCXML files.
--jani-out-file JANI_OUT_FILE
Path to the generated jani file.