Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Robot Forum

    Un éditeur de réseau de places et transitions (Petri Net)
    Bonjour,

    Je vous propose un nouvel élément à utiliser : Un éditeur de réseau de places et transitions (Petri Net)

    Un réseau de places et transitions est un réseau de Petri (Petri Net ou RdP) généralisé et non coloré (sans extensions).

    L'application PTNET Editor permettra de dessiner graphiquement un tel réseau, de l'animer, de l'analyser en construisant et visualisant son graphe de couverture/accessibilité, de le convertir en fichier image et de le sauvegarder en tant que document PNML.



    L'application a été développée et testée sous GNU/Linux OpenSUSE 12.3 (KDE). Mais puisque tous les frameworks utilisés sont multiplateformes vous pouvez la compiler et exécuter sous Windows aussi.



    1.Compiler l'application



    L'application est basé sur le Framework Qt 4.8.4 et utilise aussi:

    • Boost Graph Library 1.49 (BGL) pour construire le graphe de couverture/accessibilité d'un RdP (classe graphgenerator.cpp)
    • la bibliothèque GraphViz 2.28 pour le visualiser le graphe convenablement (classe graphvisualize.cpp).


    Donc vous devez installer ces bibliothèques pour compiler le code source.



    2. PNML

    PNML (Petri Net Markup Language) est un format standard d'échange des réseaux de Petri. L'application utilise ce standard.



    Vous pouvez télécharger le grammaire (spécification) de ce language ici: http://www.pnml.org/grammar.php.



    Le grammaire PNML est décrit en langage RELAX NG (.rng). Celui ci est un langage de description

    de document XML alternative de XML Schema. RELAX NG n’est pas supporté par le module

    XML de la bibliothèque Qt. Donc on doit convertir les fichiers du format RNG eu format XSD.



    D'autre part notre application est un éditeur de RdP sans extensions. Donc nous somme pas besoin de tous les fichiers de grammaire téléchargés. On va juste utiliser 4:



        pnmlcoremodel.rng : Contient la définition de PNML Core Model.


        ptnet.rng : ptnet.xsd : Contient les déclarations des types ajoutées par les réseau de places et transitions : initialMarking (marquage initial d’une place) et inscription (poids d’un arc).



        anyElement.xsd : Utilisé pour définir une grammaire non fournie par le standard PNML.

        Dans notre cas ceux sont les éléments ToolInfo.



        conventions.rng: utilisé par ptnet.rng






    Trang est un outil libre permettant de convertir des schémas RELAX NG en XML Schema. Téléchargez le depuis cette page :http://code.google.com/p/jing-trang/downloads/list.



    Comment convertir des rng en xsd ?



    1. Dans le répertoire /home/~Download/Trang, créeez un dossier et le nommez rng.

    2. Créez un autre dossier dans le même répertoire /home/~Download/Trang et le nommez <B>xsd<B>.

    3. Copiez les 4 fichiers rng dans le dossier rng.

    4. Pour convertir les 4 fichiers en xsd, utilisez la commande : java -jar trang.jar -I rng -O xsd rng/ptnet.rng xsd/ptnet.xsd

    .

    5. les fichiers rng sans maintenant convertis en fichier xsd et copiés dans le dossier xsd.



    L'application va utiliser les 4 fichiers xsd pour valider un document PNML décrivant en RdP



    Donc, vous devez procéder comme suit:














    Qu'en pensez-vous ?

  2. #2
    Nouveau Candidat au Club
    Erreur symbol(s) not found for architecture x86_64
    Bonjour,
    J'ai télécharger l'éditeur de Petri Net que j'essai de compiler sur un mac. J'en viens à une erreur : symbol(s) not found for architecture x86_64
    Que faire dans ce cas. Merci

  3. #3
    Membre éprouvé
    Compilation du projet avec x86_64
    Vous pouvez maintenant compiler le projet pour une architecture 64-bit.

###raw>template_hook.ano_emploi###