anyKode Marilou
ContentsIndexHome
PreviousUpNext
Démarrer Exec (v4 et V5)

Démarrer le simulateur Marilou-Exec.

Marilou-Exec peut être démarré de différentes manières: 

 

Automatiquement depuis l'éditeur Marilou: 

Chargez un projet de simulation dans l'éditeur (depuis le répertoire samples par exemple) et cliquez sur l'icone Execute Simulation

 

 

 

Cette commande est également accessible depuis le menu Project. La configuration exécutée est celle indiquée dans la liste à coté du bouton "Execute Simulation" (c'est la configuration active). Si EXECV5 BETA est installé, il est possible de choisir le simulateur à démarrer. Le simulateur par défaut est EXEC V4.X. 

 

A partir d'un raccourci:

Exec peut être démarré depuis un raccourci (sur le bureau par exemple). Les différents paramètres sont ceux de la ligne de commande: ce raccourci peut être généré automatiquement depuis le bouton Create shortcut d'un document de configuration. 

 

En ligne de commande: 

Ouvrez une console DOS, puis placer vous dans le répertoire Bin de Marilou (dépend de votre installation): 

cd %MARILOU_INSTALL_DIR% 

 

 

 

A partir du répertoire %MARILOU_INSTALL_DIR%\Bin:

  • Exec.exe /p:"c:\marilou\v2.0.0\samples\devices\servomotor\servomotor.mdsp"
  • Exec.exe /p:"%MARILOU_INSTALL_DIR%\samples\devices\servomotor\servomotor.mdsp"

 

Depuis du code C++:
#include "ModaCpp.h"
#include "conio.h"

int main(int argc, char* argv[])
{
ModaCPP::Connection *connection=new ModaCPP::Connection(true);

STARTUPINFO ProcessStartupInfo;
PROCESS_INFORMATION ProcessInformation;

memset(&ProcessStartupInfo,0,sizeof(ProcessStartupInfo));
memset(&ProcessInformation,0,sizeof(ProcessInformation));
ProcessStartupInfo.cb=sizeof(ProcessStartupInfo);

//creates the Exec process
if(CreateProcess(    L"%MARILOU_INSTALL_DIR%\\bin\\Exec.exe",
                    L" /p:%MARILOU_INSTALL_DIR%\\samples\\devices\\servomotor\\ServoMotor.mdsp",
                    NULL,
                    NULL,
                    TRUE,
                    NORMAL_PRIORITY_CLASS,
                    NULL,
                    L"c:\\Marilou\\v2.0.0\\bin",
                    &ProcessStartupInfo,
                    &ProcessInformation
            ))
    {
    //EXEC process is started, wait for complete engine startup during 5s (max).
    if(connection->WaitMODAServerIsRunningOnLocalhost(5000))
        {
        //Ok, all the engine is running, then connect MODA to moda server.
        if(connection->Connect("127.0.0.1"))
            {
            //you can do your program here, read sensors etc.
            //...

            connection->Disconnect();
            }

        }

    //Kill Exec
    TerminateProcess(ProcessInformation.hProcess,0);
    CloseHandle (ProcessInformation.hProcess);
    CloseHandle (ProcessInformation.hThread);

    //Wait for EXEC complete stop
    ModaCPP::Connection::WaitForEXECCompleteStopOnLocalhost(10000);
    }
}

en ligne de commande, les paramètres sont les suivants: 

 

Paramètre 
Syntaxe 
Description 
/p 
/p:"PROJECT_PATH" 
Sélectionne le projet à démarrer. PROJECT_PATH représente le chemin du projet. Ce paramètre est obligatoire. A noter que le commutateur /p: n'est plus obligatoire à partir de Marilou 2010. 
/c 
/c:"CONFIG" 
Permet de spécifier la configuration à executer dans le projet sélectionné. Ce paramètre est optionnel : si il est manquant, Exec propose de choisir une configuration dans la liste des configurations disponibles. 
/run 
/run 
Force le démarrage de la simulation en RUN. 
/pause 
/pause 
Force le démarrage de la simulation en PAUSE. 
/noload 
/noload 
Interdit le démarrage des applications référencées dans l'onglet "Execute" de la Configuration. 
/port 
/port:TCPPORT 
Fixe le port TCP du serveur MODA (13000 par défaut). Lorsque Exec démarre une application (Configuration->Execute Panel->Application list), la définition de ce port est ajouté à la ligne de commande de l'application avec la syntaxe suivante:/modaport:TCPPORT 
/instance 
/instance;INSTANCE NUMBER 
Numéro de l'instance d'Exec lors d'un fonctionnement en instances multiples (0 based). Ne pas utiliser ce flag si Exec fonctionne en mono-instance, ou utiliser/instance:-1

 

Exemple :

Exec.exe /p:"c:\marilou\v4.7.0\samples\devices\servomotor\servomotor.mdsp" /c:"fast" /run 

Exec.exe c:\marilou\v4.7.0\samples\devices\servomotor\servomotor.mdsp /port:40000 

 

Multi instances:

Exec.exe c:\marilou\v4.7.0\samples\devices\servomotor\servomotor.mdsp /port:40000 /instance:0 

Exec.exe c:\marilou\v4.7.0\samples\devices\servomotor\servomotor.mdsp /port:40001 /instance:1

Documentation v4.7 (18/01/2015), Copyright (c) 2015 anyKode. All rights reserved.
What do you think about this topic? Send feedback!