wiki:RAMSESInstallationStandalone
close Warning: Can't synchronize with repository "(default)" (Couldn't open Subversion repository /var/repositories/svn/aadl: SubversionException: ("Failed to load module for FS type 'fsfs'", 160033)). Look in the Trac log for more information.

Download the latest stable version of RAMSES

  • Sources and binaries of the latest stable version are available 'here'.

Download under development version of RAMSES

Install RAMSES

1) unzip the archive; let's call "path_to_resulting_directory" the path to the resulting directory.
2) export the ramses install directory by executing the command:

$export RAMSES_DIR=path_to_resulting_directory
$export PATH=$RAMSES_DIR:$PATH

to have a stable installation, consider writing these lines of code in your $HOME/.bashrc file.

Generate code

To run ramses, simply execute the script provided with the binary release.

$ramses.sh --help will print the list of available options:

General Configuration Usage:

[-h|--help] [--parse] [(-l|--log) <logging>] (-m|--model) source_models1,source_models2,...,source_modelsN  [(-i|--include) include_directories1,include_directories2,...,include_directoriesN ] [--analysis] [-a[:analysis_list1,analysis_list2,...,analysis_listN ]] [(-s|--system) <system_to_instantiate>] [(-o|--output) <output_directory>] [(-t|--transformation)[:superimposition_files1,superimposition_files2,...,superimposition_filesN ]] [(-x|--post-transformation) post_transformation_files1,post_transformation_files2,...,post_transformation_filesN ] [(-g|--generation) <target_platform>] [(-r|--runtime-path) <runtime_path>] [--workflow <workflow_path>] [(-p|--parameter) key=value1,key=value2,...,key=valueN ]

  [-h|--help]
        Print help for usage

  [--parse]
        Only parse input models

  [(-l|--log) <logging>]
        enable the logging file and set the level (all | trace | debug | info |
        warn | error | fatal

  (-m|--model) source_models1,source_models2,...,source_modelsN 
        List of input aadl files

  [(-i|--include) include_directories1,include_directories2,...,include_directoriesN ]
        List of path to find input models

  [--analysis]
        Parse, instantiate and analyze the instance model

  [-a[:analysis_list1,analysis_list2,...,analysis_listN ]]
        List of analysis to be performed on instance model; available analysis
        identifiers are: 

  [(-s|--system) <system_to_instantiate>]
        Name of the system to instantiate in input aadl files

  [(-o|--output) <output_directory>]
        Directory where files will be generated

  [(-t|--transformation)[:superimposition_files1,superimposition_files2,...,superimposition_filesN ]]
        Determines whether model transformation is performed or not:
        -t or --transformation only launch the uninstanciate.atl model
        transformation-t:MyFile.asm launch the superimposition of
        uninstanciate.atl with MyFile.atl

  [(-x|--post-transformation) post_transformation_files1,post_transformation_files2,...,post_transformation_filesN ]
        ASM file names used to refine the result of the superimposed
        uninstanciate model transformation

  [(-g|--generation) <target_platform>]
        Targeted platform for code generation (pok, etc.).

  [(-r|--runtime-path) <runtime_path>]
        Path to the targeted platform runtime

  [--workflow <workflow_path>]
        The specified ecore file contains the workflow

  [(-p|--parameter) key=value1,key=value2,...,key=valueN ]
        additional parameters given as key=value format

$ramses.sh -m $RAMSES_DIR/examples/arinc653/arinc653-blackboard/input/test_blackboard.aadl2 -g pok -s root.impl -o ./results/arinc653-blackboard/

note that this execution will produce a refined-models and generated-code folder in your ./results/arinc653-blackboard/ folder. The first one will contain intermediate aadl models and the second one will contain the generated code itself.

Run the Generated Code

Generated code for POK (ARINC653)

To run the generated code for POK, you must have POK installed. See http://pok.safety-critical.net/ to download and install POK.

1) compile the generated code

  1. To build the generated code, go to the generated code folder and execute “make all”:
$ cd <EXAMPLE_DIR>/generated-code
$ make all

2) To run the produced executable, execute “make run”

$ make run

Generated code for Trampoline (OSEK/NXT)

To run the generated code for Trampoline, you must have Trampoline installed. See http://trampoline.rts-software.org/ to download and install Trampoline.

  1. To build the generated code, go to the generated code folder which name is the name of the process subcomponent (in the AADL model) for which you want to create end execute an executable file.
    $cd <EXAMPLE_DIR>/generated-code/<processor_name>/<process_name>/ 
    $./refine_oil.sh <process_name>_specification.oil 
    $./preparemake.sh <process_name>_specification.oil 
    $ make -o Makefile
    
  1. To execute the produced code, execute download the executable file on the robot and launch it from the robot HMI.
Last modified 3 years ago Last modified on 04/18/14 15:53:53