Sciences Pour l’Environnement

Nos tutelles

CNRS

Rechercher




Accueil > Projets de recherche > SISU (Simulation Informatique et Systèmes Ubiquitaires) > DEVSimPy > Utilisation

Fonctionnalités Générales : Création, importation et sauvegarde des modèles

par campana - publié le

Dans ce chapitre, le lecteur pourra trouver une description détaillée des fonctionnalités générales de DEVSimPy. Nous traiterons par exemple de la création des modèles et de leur stockage dans des librairies, de l´utilisation des plugins et de la configuration générale du logiciel.

Du fait que DEVSimPy constitue une couche graphique améliorée du logiciel PyDEVS, l´utilisateur peut créer des modèles de deux façons différentes :
- par l´importation de fichier PyDEVS
- par la création de modèles propres à DEVSimPy.
Cette distinction repose sur un concept central dans DEVSimPy : la séparation entre le comportement et la représentation graphique des modèles.

Création des modèles par importation de fichiers PyDEVS

Lorsque l´utilisateur choisit d´implémenter le comportement de ces modèles PyDEVS dans son logiciel de programmation il a la possibilité ensuite d´importer ceux-ci dans DEVSimPy pour mieux les manipuler. Pour ce faire il suffit d´un glisser/déposer des fichiers .py directement sur le "Canvas" à partir :
- d´un explorateur de fichiers classique
- du panel de contrôle "Library" si les fichiers ont été préalablement importés auparavant.

L´utilisateur dispose ensuite d´une représentation graphique automatique de ces modèles avec un port d´entrée, un port de sortie et une couleur par défaut. L´utilisateur peut alors modifier les propriétés des modèles et les connecter entre eux pour former un diagramme qu´il pourra sauvegarder ou simuler. Si l´utilisateur veut sauvegarder le modèle avec ces caractéristiques graphique, il doit alors l´exporter dans un modèle DEVSimPy par un clic-droit.

Création des modèles DEVSimPy

Lorsque l´utilisateur choisit de construire ces modèles en utilisant DEVSimPy il lui suffit de faire un clic droit dans un diagramme, un menu contextuel s’affichera il devra alors cliquer sur "Nouveau" une fenêtre s’ouvrira (image 1), l´utilisateur se laissera alors guider par le gestionnaire en renseignant les champs indispensables à la création des modèles (image 2 et 3). Deux types de modèles peuvent être crée :
- les modèles atomiques (.amd),
- les modèles couplés (.cmd).

Si l´on détail la création d´un modèle atomique (images ci-joint), l´utilisateur doit choisir dans la première fenêtre du gestionnaire le premier bouton radio. Ensuite, une deuxième fenêtre propose la définition du nom, le comportement par défaut, le nombre de ports d´entrées et de sorties, le comportement spécifique stocké dans un fichier pyDEVS, et si on lui y attache un plugin. Si l´utilisateur veut attribuer un comportement identique à celui d´un modèle déjà construit, il pourra le renseigner en décochant la dernière case puis en allant chercher le fichier python spécifique. Enfin, la dernière fenêtre propose un nom de fichier .amd par défaut mais l´utilisateur peut changer ce nom ainsi que la localisation du fichier. Si l´utilisateur sauvegarde le fichier dans un répertoire d´une librairie déjà chargée dans DEVSimPy, ce dernier sera rafraîchit et le modèle directement accessible par un glisser/déposer.

La procédure est identique pour la création de modèles couplés (.cmd). Par contre, la création de ports d´entrées ou de sorties à l´intérieur des modèles couplés repose seulement sur une étape de configuration qui consiste à renseigner le nom et éventuellement un identifiant (un entier) particulier des ports.

Lorsque les modèles sont crées ils apparaissent directement dans le canvas sur lequel à eu lieu le clic-droit qui a fait apparaître le gestionnaire de création. L´utilisateur doit maintenant décrire le comportement DEVS dans un fichier python qui est invoqué en cliquant sur le menu contextuel `Edit´.

Sauvegarde des modèles DEVSimPy

Si les modèles sont modifiés par la suite et que l´utilisateur veut sauvegarder les modifications il devra alors exporter les modèles par un clic-droit sur ceux-ci (image 4 et 5).

Les modèles couplés peuvent être exportés en CMD ou JS ou en XML. Par contre les modèles atomiques ne sont exportables qu´en AMD. Les ports ne sont pas exportables puisqu´ils sont embarqués dans les modèles couplés.

Si les modèles sont déjà stockés dans une librairie visible dans le panel "Library" et qu´ils sont sauvegardés après modification, la mise à jour de la librairie est automatique. L´utilisateur peut forcer la mise à jour en invoquant le menu contextuel du panel de contrôle `Library´ (image 6).

Portfolio