FR2793912A1 - Outil universel de compilation de graphes - Google Patents

Outil universel de compilation de graphes Download PDF

Info

Publication number
FR2793912A1
FR2793912A1 FR9906511A FR9906511A FR2793912A1 FR 2793912 A1 FR2793912 A1 FR 2793912A1 FR 9906511 A FR9906511 A FR 9906511A FR 9906511 A FR9906511 A FR 9906511A FR 2793912 A1 FR2793912 A1 FR 2793912A1
Authority
FR
France
Prior art keywords
symbols
microcomputer
graph
graphs
component
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR9906511A
Other languages
English (en)
Other versions
FR2793912B1 (fr
Inventor
Andre Chovin
Alain Chatenay
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Crouzet Automatismes SAS
Original Assignee
Crouzet Automatismes SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Crouzet Automatismes SAS filed Critical Crouzet Automatismes SAS
Priority to FR9906511A priority Critical patent/FR2793912B1/fr
Priority to AU45765/00A priority patent/AU4576500A/en
Priority to US09/764,986 priority patent/US6883161B1/en
Priority to PCT/FR2000/001308 priority patent/WO2000072111A2/fr
Publication of FR2793912A1 publication Critical patent/FR2793912A1/fr
Application granted granted Critical
Publication of FR2793912B1 publication Critical patent/FR2793912B1/fr
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)

Abstract

L'outil de l'invention, implémenté sur un micro-ordinateur (23), comporte essentiellement un tableur (24) associé à une bibliothèque de symboles graphiques (25) et un compilateur (29). Le code compilé est transmis via le système d'exploitation (32) du micro-ordinateur à son port de sortie (33) auquel on relie les mémoires programmables (34) des composants (35) qui doivent être pilotés par les commandes élaborées à partir des graphes réalisés sur le tableur.

Description

<B>OUTIL UNIVERSEL DE COMPILATION DE</B> GRAPHES La présente invention se rapporte<B>à</B> un outil universel de compilation de graphe, <B>De</B> plus en plus souvent,<B>la</B> conception et<B>la</B> programmation de logiciels se traduisent directement par une présentation sous forme d'un graphe reliant des fonctions. Par exemple, le langage "SAO" utilisé par les constructeurs aéronautiques européens, permet de représenter tout algorithme de commande sous l'aspect d'un réseau orienté de blocs-diagrammes, La norme IEC <B>1131-3</B> définit trois langages graphiques de même nature:"SFC" (Sequential Flow Chart ), 11D" ( Ladder Diagram ) et "FBD" ( Function Block Diagram ) qui permettent de représenter graphiquement tout programme d'automatisme, Toutes ces représentations graphiques connues doivent être saisies informatiquement, analysées syntaxiquement et sémantiquement, traduites dans un langage informatique<B>(C,</B> ADA, Assembleur, Basic, Fortran,<B>...)</B> qui, lui-même, est compilé et édité pour fournir un programme binaire exécutable par un processeur ou directement traduit dans un programme binaire directement exécutable dans un processeur. L'exécution de ce programme binaire permet de mettre en #uvre les algorithmes décrits dans<B>la</B> représentation graphique initiale, Les outils qui assurent la saisie, l'analyse et<B>la</B> traduction des représentations graphiques seront dénommés par<B>la</B> suite compilateurs de graphes.
Les compilateurs de graphes connus présentent cependant les inconvénients suivants: <B>-</B> la saisie des graphes nécessite<B>la</B> programmation d'une interface homme-machine graphique souvent coûteuse, complexe, difficilement portable d'une version de système informatique<B>à</B> l'autre, et parfois peu ergonomique car demandant un doigté très précis pour relier entre eux les divers composants du graphe. l'analyse syntaxique et sémantique des graphes est propre<B>à</B> chaque type de représentation graphique et<B>à</B> chaque sémantique associée, <B>la</B> génération ou la traduction des représentations graphiques en langage informatique est très spécifique du langage et des optimisations de génération.
La présente invention<B>a</B> pour objet un compilateur de graphes qui soit universel, paramétrable, dont les processus d'analyse, de génération et d'optimisation soient indépendants de la syntaxe du graphe initial, de sa sémantique et du langage final dans lequel le graphe est traduit. En outre, ce compilateur doit présenter une phase de saisie de graphes qui soit simple et rapide.
Le compilateur de graphes conforme<B>à</B> l'invention comporte une interface homme-machine implémentée sur un micro-ordinateur où elle est reliée<B>à</B> un compilateur lui-même relié via le système d'exploitation du micro-ordinateur<B>à</B> des moyens d'inscription sur au moins une mémoire d'au moins un composant sur lequel doit être mise en oeuvre la commande correspondant au graphe, l'interface homme-machine comportant un tableur associé<B>à</B> une bibliothèque de deux types de symboles graphiques correspondant chacun, pour le premier type,<B>à</B> une fonction élémentaire de composant, et pour le second type,<B>à</B> une liaison relative aux symboles du premier type, les symboles sélectionnés dans<B>la</B> bibliothèque étant placés dans le tableur<B>à</B> raison d'un symbole par cellule ou par groupe de cellules et assemblés de façon<B>à</B> constituer un graphe.
De façon avantageuse, les symboles graphiques sont contenus chacun dans un ou plusieurs carrés, et leurs entrées et sorties aboutissent toutes aux milieux des côtés correspondants de ces carrés.
La présente invention sera mieux comprise<B>à la</B> lecture de la description détaillée d'un mode de réalisation, puis<B>à</B> titre d'exemple non limitatif et illustré par les dessins annexé, sur lequel<B>:</B> <B>- la</B> figure<B>1</B> est un exemple<B>de</B> composant pouvant être utilisé par l'invention, et constitué de trois carrés élémentaires <B>la</B> figure 2 est un ensemble d'exemples de symboles de liaisons telles qu'utilisées par l'invention, la figure<B>3</B> est un exemple simplifié de graphe conforme<B>à</B> l'invention, et <B>la</B> figure 4 est un bloc-diagramme d'un compilateur de graphes conforme<B>à</B> l'invention.
Les composants auxquels s'adresse l'invention sont, en particulier, des automates.
Sous ce terme d'automates on désigne ici des composants d'automatisme "intelligents", c'est-à-dire munis au moins de moyens leur permettant de communiquer avec un micro-ordinateur via une ligne de communication, au moins dans un sens, pour en recevoir des ordres et/ou des données et /ou pour lui transmettre des données (telles que des grandeurs physiques mesurées s'il s'agit de capteurs, ou des positions s'il s'agit de composants mobiles, ou des états s'il s'agit de commutateurs, par exemple). De façon avantageuse, ces composants comportent une mémoire dans laquelle peuvent être mémorisées des données concernant leurs caractéristiques ou leur fonctionnement et élaborées par le compilateur de l'invention. Des exemples de tels composants sont des actionneurs, des senseurs, des servo-valves, des relais, des automates programmables,<B>...</B> ou bien des ensembles d'entrées/sorties déportées, c'est-à-dire des ensembles distincts du micro-ordinateur et des composants d'automatisme, comportant au moins un convertisseur analogique-numérique et/ou un convertisseur numérique-analogique, ainsi qu'un multiplexeur et/ou un démultiplexeur, ou bien encore des automates programmables qui comportent les mêmes fonctions que les ensembles d'entré es/so dies déportées, avec en sus<B>la</B> capacité d'exécuter par eux-mêmes des séquences d'automatismes.
On<B>a</B> représenté en figure<B>1</B> un exemple de composant<B>1</B> (un compteur dans le cas présent) réalisé<B>à</B> partir de trois carrés élémentaires, respectivement référencés 2<B>à</B> 4, alignés verticalement, de façon<B>à</B> obtenir un graphisme similaire<B>à</B> celui généralement utilisé pour les graphes. Pour pouvoir établir facilement des liaisons entre ce composant et d'autres composants, l'invention prévoit que les entrées et sorties (au maximum quatre au total) des composants soient toutes situées au milieu des côtés des carrés élémentaires qui les composent, comme c'est le cas pour l'exemple de<B>la</B> figure<B>1.</B>
On<B>a</B> représenté en figure 2 quelques exemples de portions de connexion, chacune disposée dans un carré élémentaire. De même que pour les composants, les extrémités des portions de connexions aboutissent<B>à</B> chaque fois au milieu du côté correspondant du carré élémentaire. <B>A la</B> première ligne de<B>la</B> figure 2, on<B>a</B> représenté des connexions droites<B>à</B> savoir une portion de connexion horizontale, et une de connexion verticale.
<B>A la</B> deuxième ligne de<B>la</B> figure 2, on a représenté quatre connexions en coin faisant face chacune<B>à</B> un coin différent du carré élémentaire. <B>A la</B> troisième ligne de<B>la</B> figure 2, on<B>a</B> représenté quatre connexions en dérivation (en 'T5 selon quatre orientations différentes, Enfin,<B>à la</B> quatrième ligne, on<B>a</B> représenté une intersection orthogonale de deux portions de conducteurs, en contact mutuel, et une autre intersection orthogonale, mais sans contact entre les conducteurs, En figure<B>3,</B> on<B>a</B> représenté une partie<B>5</B> de tableur telle que vue sur l'écran d'un micro-ordinateur. Sur cette partie<B>5,</B> on<B>a</B> représenté une grille<B>6</B> dont chaque carré (ou rectangle) élémentaire correspond<B>à</B> une cellule du tableur, Sur cette grille, on a disposé les composants d'une partie de circuit<B>7</B> dont le graphisme est conforme <B>à</B> la norme utilisée dans le domaine technique se rapportant au circuit en question. Ces composants sont constitués<B>à</B> chacun d'un ou de plusieurs symboles élémentaires, chacun de ces symboles étant contenu dans un carré élémentaire, comme représenté en figures<B>1</B> et 2. Ces symboles sont mémorisés dans une bibliothèque (voir figure 4) dont ils sont extraits au fur et<B>à</B> mesure de leur placement sur<B>la</B> grille<B>6,</B> et ce, de façon connue en soi.
La partie de circuit<B>7</B> comporte, pour l'exemple représenté, de gauche<B>à</B> droite sur le dessin, un premier symbole<B>8</B> d'un relais<B>9</B> aboutissant<B>à</B> une barre de potentiel<B>10.</B> Ce relais<B>9</B> est, par exemple numéroté<B>"000l",</B> car on suppose que le circuit complet comporte un grand nombre de tels relais.<B>A</B> droite du symbole<B>8,</B> on dispose, sur<B>la</B> même ligne de<B>la</B> grille, deux symboles<B>11, 1</B>2 de jonction horizontale aboutissant<B>à</B> l'entrée R d'une bascule<B>13</B> de type RS. Cette bascule<B>13</B> se compose de deux carrés élémentaires 14,15, le carré<B>15</B> (entrée<B>S)</B> étant disposé sous le carré 14 (entrée R). L'entrée<B>S</B> de<B>la</B> bascule<B>13</B> est reliée<B>à</B> la sortie d'un dispositif, référencé<B>`</B> K0001` forçant cette entrée<B>à</B> une voleur déterminée C'O" ou<B>"] "</B> logique), ce dispositif étant constitué d'un seul carré élémentaire<B>16,</B> disposé juste<B>à</B> gauche du carré<B>15.</B> La sortie de<B>la</B> bascule<B>13,</B> située en face de son entrée R est reliée par une liaison horizontale, composée de trois symboles identiques<B>à</B> ceux des carrés<B>11</B> et 12, et occupant les carrés<B>17,18</B> et <B>19.</B> Cette liaison aboutit<B>à</B> un composant 20 (qui est par exemple une source de tension référencée<B>"000025,</B> représenté dans un carré 21,<B>à</B> l'intérieur duquel il est relié<B>à</B> une barre de potentiel 22, Bien entendu, l'exemple de la figure<B>3</B> n'a qu'un but didactique et n'est que partiel. On notera que les éléments du graphisme de la figure<B>3</B> suivent les mêmes règles de déplacement que tous les éléments (en particulier graphiques) que l'on met généralement dans les cellules d'un tableur, c'est<B>à</B> dire qu'ils peuvent être translatés horizontalement et verticalement, mais ne peuvent en aucun cas pivoter. On<B>a</B> représenté en figure 4 le bloc-diagramme fonctionnel de l'outil compilateur de graphes de l'invention. Ce compilateur comporte, dans un micro-ordinateur<B>23,</B> un tableur 24. Ce tableur est relié<B>à</B> une bibliothèque<B>25</B> dans laquelle sont mémorisés tous les symboles nécessaires<B>à la</B> réalisation de tous les graphes que l'on veut pouvoir tracer, On<B>y</B> mémorise non seulement les symboles graphiques, mais aussi les codes générés correspondants avec des parties paramétrables (codes qui permettent d'effectuer tous les traitements envisageables<B>à</B> partir des graphes). Ces symboles sont affectés de références qui apparaissent, par exemple dans une fenêtre de l'écran du micro-ordinateur dès que l'utilisateur désire utiliser des symboles en cliquant sur l'icône de la bibliothèque.<B>Il</B> fait défiler<B>la</B> liste de ces références, et dès qu'il trouve celle recherchée,<B>il</B> clique dessus, et le symbole correspondant est affiché dans<B>la</B> fenêtre du tableur.<B>Il</B> n'y<B>a</B> plus qu'à déplacer (par exemple<B>à</B> l'aide d'une souris, selon<B>la</B> technique bien connue du "glisser-lâcher" ou "drag- and-drop" en anglais) le symbole ainsi affiché vers<B>la</B> cellule désirée du tableur. Lorsque le graphe du circuit ainsi constitué (on au moins une partie de ce circuit) est réalisé, un vérificateur topologique de réseau <B>26</B> vérifie que les règles topologiques des graphes ont été respectées par le graphe affiché dans le tableur 24. Cette première vérification de consistance du graphique saisi pa r l'utilisateur permet de lui signaler pour correction<B>:</B> -tout carré élémentaire occupé par un composant ou une connexion qui ne fait pas partie du dictionnaire des composants et connexions correspondant au type de graphe saisi<B>;</B> -tout carré élémentaire dans lequel se superposent deux ou plusieurs composants ou portions de connexion<B>:</B> -tout raccordement d'un carré élémentaire qui ne serait pas aligné avec un raccord du carré élémentaire adjacent.
Cette vérification et cette représentation sont universels pour tout graphe ou réseau dessiné dans un plan. Pour un réseau ou un graphe dessiné dans l'espace, cette représentation et toutes les procédures de traitement subséquentes sont extensibles<B>à</B> une construction des composants<B>à</B> l'aide de cubes élémentaires ou de tout volume élémentaire régulier permettant de remplir par adjacence tout l'espace (par exemple des trièdres<B>à</B> faces équilatérales_). Les raccords sont alors placés au centre des faces du <B>volume.</B>
Après cette première vérification, un vérificateur<B>27</B> vérifie,<B>à</B> l'aide des codes provenant de<B>la</B> bibliothèque<B>25</B> et correspondant aux différents composants du graphe réalisé, que les règles syntaxiques et sémantiques des graphes ont été respectées par le graphe affiché dans le tableur 24. Ces codes se rapportent: <B>à</B> des paramètres spécifiques des composants, par exemple leur rang et leur nom dans le graphe saisi, la voleur de certaines constantes (par exemple,<B>la</B> durée d'une temporisation),<B>...</B>
<B>à la</B> liste paramétrable des instructions de langage informatique<B>à</B> générer lors de<B>la</B> phase ultime de traduction, Ces instructions possèdent les chaînes alphanumériques modifiables en fonction des parcmètres cités ci-dessus et des informations transitant par les point de raccordement du composant, La caractérisation sémantique des données de chaque point de raccordement du composant: entrée ou sortie pour un graphe orienté, ou neutre pour un graphe non orienté; type de l'information qui transite par le raccordement (booléenne, numérique<B>à</B> précision absolue, numérique<B>à</B> précision relative, chaîne de caractères, tableau,état d'automate,<B>...</B>
Lorsque ces vérifications sont terminées, les éventuelles erreurs ayant été corrigées, un générateur<B>28</B> génère un code optimisé. Les étapes<B>26 à 28</B> constituent l'équivalent de l'outil propriétaire connu de programmation. Elles sont mises<B>à</B> l'oeuvre <B>à</B> l'aide de programmes faciles<B>à</B> réaliser par l'homme de l'art<B>à</B> la lecture de la présente description.
Le code, optimisé en<B>28,</B> est envoyé<B>à</B> un compilateur et éditeur de liens<B>29.</B> Le code compilé est chargé en<B>30</B> pour produire' un programme de pilotage exécutable. Selon une variante, comme représenté par une flèche<B>31</B> en trait interrompu, le code optimisé en <B>28</B> est directement chargé en<B>30.</B> Le programme de pilotage est transmis par l'intermédiaire du système d'exploitation<B>32</B> du micro- ordinateur <B>23 à</B> son port de sortie<B>33</B> (série, parallèle, bus<B>... ).</B>
On peut directement relier au port<B>33</B> du micro-ordinateur<B>23</B> une mémoire 34 programmable (par exemple du type EEPROM) fixée sur un support approprié, et lui transmettre le programme exécutable correspondant disponible en<B>30,</B> Lorsque<B>la</B> programmation de<B>la</B> mémoire 34 est effectuée, cette dernière est enlevée de son support est insérée dans le composant d'automatisme correspondant<B>(35A)</B> faisant partie de l'ensemble des composants<B>à</B> programmer<B>(35).</B> Cette opération est répétée pour les mémoires programmables de tous les autres composants d'automatisme. Bien entendu, le micro-ordinateur<B>23</B> peut avantageusement piloter et superviser les composants de l'ensemble<B>35,</B> comme indiqué par les flèches<B>36</B> en traits interrompus, Selon une variante de l'invention, représentée en traits interrompus, les mémoires programmables (34) sont fixées sur les composants d'automatismes (35') qui sont reliés au port<B>33</B> par une liaison<B>37</B> (qui peut être semblable<B>à</B> la liaison<B>36),</B> et<B>la</B> programmation de ces mémoires se fait via cette liaison<B>37</B>

Claims (1)

  1. <B>REVENDICATIONS</B> <B>1 -</B> Système universel de compilation de graphes comportant un micro-ordinateur<B>(23)</B> relié<B>à</B> au moins un composant <B>(35)</B> sur lequel doit être mise en ceuvre <B>la</B> commande correspondant <B>à</B> un graphe, caractérisé en ce que pour simplifier<B>la</B> saisie des graphes, ce système comporte une interface homme- machine (24) implémentée sur le micro-ordinateur<B>(23)</B> où elle est reliée<B>à</B> un compilateur<B>(29)</B> lui-même relié via le système d'exploitation du micro- ordinateur <B>(32) à</B> des moyens d'inscription sur au moins une mémoire (34) du composant<B>(35),</B> l'interface homme-machine comportant un tableur (24) associé<B>à</B> une bibliothèque<B>(25)</B> de deux types de symboles graphiques correspondant chacun, pour le premier type<B>, à</B> une fonction élémentaire de composant, et pour le second type,<B>à</B> une liaison relative aux symboles du premier type, les symboles sélectionnés dans<B>la</B> bibliothèque étant placés dans le tableur<B>à</B> raison d'un symbole par cellule ou par groupe de cellules et assemblés de façon<B>à</B> constituer un graphe, les symboles graphiques étant représentés chacun dans un groupe de carrés élémentaires adjacents, et leurs connexions aboutissant au milieu des côtés correspondants de chaque carré élémentaire. 2<B>-</B> Système selon<B>la</B> revendication<B>1,</B> caractérisé en ce que les mémoires dans lesquelles sont inscrites les commandes sont directement reliées au micro-ordinateur (33-34). <B>3 -</B> Système selon l'une des revendications précédentes, caractérisé en ce que les mémoires (M) dans lesquelles doivent être inscrites les commandes sont fixées sur les composants correspondants (35') et que ces commandes sont téléchargées <B>(37).</B> <I>4</I><B>-</B> Système selon l'une des revendications précédentes, caractérisé en ce que l'interface homme-machine comporte un vérificateur topologique<B>(26)</B> et un vérificateur syntaxique ei sémantique<B>(27).</B>
FR9906511A 1999-05-21 1999-05-21 Outil universel de compilation de graphes Expired - Lifetime FR2793912B1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
FR9906511A FR2793912B1 (fr) 1999-05-21 1999-05-21 Outil universel de compilation de graphes
AU45765/00A AU4576500A (en) 1999-05-21 2000-05-16 Universal graph compilation tool
US09/764,986 US6883161B1 (en) 1999-05-21 2000-05-16 Universal graph compilation tool
PCT/FR2000/001308 WO2000072111A2 (fr) 1999-05-21 2000-05-16 Outil universel de compilation de graphes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9906511A FR2793912B1 (fr) 1999-05-21 1999-05-21 Outil universel de compilation de graphes

Publications (2)

Publication Number Publication Date
FR2793912A1 true FR2793912A1 (fr) 2000-11-24
FR2793912B1 FR2793912B1 (fr) 2001-08-10

Family

ID=9545895

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9906511A Expired - Lifetime FR2793912B1 (fr) 1999-05-21 1999-05-21 Outil universel de compilation de graphes

Country Status (4)

Country Link
US (1) US6883161B1 (fr)
AU (1) AU4576500A (fr)
FR (1) FR2793912B1 (fr)
WO (1) WO2000072111A2 (fr)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2685250T3 (es) * 2006-05-11 2018-10-08 Abb Schweiz Ag Sincronización de un programa gráfico y un programa de robot
US8577652B2 (en) 2010-08-30 2013-11-05 Xldyn, Llc Spreadsheet-based graphical user interface for dynamic system modeling and simulation
US8626477B2 (en) 2011-03-04 2014-01-07 Xldyn, Llc Spreadsheet-based graphical user interface for modeling of products using the systems engineering process
US8744821B2 (en) * 2011-07-07 2014-06-03 Xldyn, Llc Spreadsheet-based templates for supporting the systems engineering process
US9417890B2 (en) * 2013-04-12 2016-08-16 Microsoft Technology Licensing, Llc Compilation of transformation in recalculation user interface
WO2015129645A1 (fr) * 2014-02-27 2015-09-03 石田 祐介 Procédé de sélection d'objet, programme et support d'enregistrement
US10133827B2 (en) 2015-05-12 2018-11-20 Oracle International Corporation Automatic generation of multi-source breadth-first search from high-level graph language
US10614126B2 (en) 2015-05-21 2020-04-07 Oracle International Corporation Textual query editor for graph databases that performs semantic analysis using extracted information
US9575736B2 (en) * 2015-07-22 2017-02-21 Oracle International Corporation Advanced interactive command-line front-end for graph analysis systems
US10127025B2 (en) 2015-07-22 2018-11-13 Oracle International Corporation Optimization techniques for high-level graph language compilers
US10810257B2 (en) 2015-08-27 2020-10-20 Oracle International Corporation Fast processing of path-finding queries in large graph databases
US9971570B2 (en) 2015-12-15 2018-05-15 Oracle International Corporation Automated generation of memory consumption aware code
US10540398B2 (en) 2017-04-24 2020-01-21 Oracle International Corporation Multi-source breadth-first search (MS-BFS) technique and graph processing system that applies it
US10585945B2 (en) 2017-08-01 2020-03-10 Oracle International Corporation Methods of graph-type specialization and optimization in graph algorithm DSL compilation
US10795672B2 (en) 2018-10-31 2020-10-06 Oracle International Corporation Automatic generation of multi-source breadth-first search from high-level graph language for distributed graph processing systems

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5301336A (en) * 1986-10-24 1994-04-05 National Instruments, Inc. Graphical method for programming a virtual instrument

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4831580A (en) * 1985-07-12 1989-05-16 Nippon Electric Industry Co., Ltd. Program generator
US5040131A (en) * 1987-12-23 1991-08-13 International Business Machines Corporation Graphical processing
US5255363A (en) * 1990-06-19 1993-10-19 Mentor Graphics Corporation Graph-based programming system and associated method
FR2708746B1 (fr) 1993-08-06 1995-09-01 Thomson Csf Procédé d'évaluation de la charge restante dans une batterie d'accumulateurs.
FR2708747B1 (fr) 1993-08-06 1995-09-01 Thomson Csf Procédé de recalibrage d'un processeur de gestion d'énergie de batteries.
FR2713019B1 (fr) 1993-11-23 1995-12-22 Thomson Csf Procédé et dispositif de surveillance et d'équilibrage dynamique d'un pack de batteries d'accumulateurs.
EP0772823A4 (fr) * 1994-07-22 1997-10-29 Erik P Debenedictis Procede et appareil de commande d'ordinateurs connectes sans programmation
EP0811193B1 (fr) * 1995-02-22 1998-10-14 Agust S. Egilsson Environnement graphique de gestion et de developpement d'applications
JPH10177473A (ja) * 1996-12-18 1998-06-30 Japan Airlines Co Ltd コンピュータ・プログラムのインストール方法及びシステム
US6243858B1 (en) * 1997-07-24 2001-06-05 Casio Computer Co., Ltd. Program construction assisting system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5301336A (en) * 1986-10-24 1994-04-05 National Instruments, Inc. Graphical method for programming a virtual instrument

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MAYR: "Programmieren: einfacher geht's nicht", TR - TECHNISCHE RUNDSCHAU, no. 10, 7 March 1997 (1997-03-07), pages 22 - 26, XP000691506 *
YOUNG ET AL: "Cantata: Visual Programming Environment for the Khoros System", COMPUTER GRAPHICS, vol. 29, no. 2, May 1995 (1995-05-01), New York, NY, US, pages 22 - 24, XP000520212 *

Also Published As

Publication number Publication date
US6883161B1 (en) 2005-04-19
AU4576500A (en) 2000-12-12
WO2000072111A3 (fr) 2001-04-05
WO2000072111A2 (fr) 2000-11-30
FR2793912B1 (fr) 2001-08-10

Similar Documents

Publication Publication Date Title
FR2793912A1 (fr) Outil universel de compilation de graphes
O'Kane A gentle introduction to ROS
US5504902A (en) Multi-language generation of control program for an industrial controller
EP1227393B1 (fr) Procédé de programmation d&#39;une application d&#39;automatisme
EP0133397B1 (fr) Terminal pour l&#39;élaboration de programmes utilisables par un automate programmable
US20080126956A1 (en) Asynchronous Wires for Graphical Programming
US20040060032A1 (en) Automated system for designing and developing field programmable gate arrays
CN108345265B (zh) 硬件设备的编程方法、可视化编程平台、存储器和处理器
EP1763804A2 (fr) Variants dans des environnements de modelisation graphique
CN105608258A (zh) 一种基于模型的系统设计及信息流可视化仿真系统及方法
FR2843213A1 (fr) Procede et systeme d&#39;etablissement automatique d&#39;un modele global de simulation d&#39;une architecture
EP1197853A1 (fr) Générateur universel de code informatique
EP0283382A1 (fr) Procédé pour valider le fonctionnement d&#39;un automatisme et dispositif pour sa mise en oeuvre
Bardaro et al. AADL for robotics: a general approach for system architecture modeling and code generation
EP0469507A1 (fr) Circuit intégré comprenant une cellule standard, une cellule d&#39;application et une cellule de test
EP0375487B1 (fr) Procédé et dispositif pour tester le programme d&#39;un automate programmable
Harbo et al. A diagram-centric modeling tool for systems of systems
FR2627873A1 (fr) Automate programmable par langage structure
WO2012007955A1 (fr) Procédé de mise en oeuvre de spécification de commande iec 61131-3 par l&#39;intermédiaire d&#39;une description hdl verilog pour modélisation, simulation et synthèse de configuration de logique de commande pour mise en oeuvre de circuit intégré
FR2826746A1 (fr) Procede et dispositif d&#39;elaboration de programmes d&#39;automatismes
Gauhar et al. Formal verification of Matrix based MATLAB models using interactive theorem proving
FR2864285A1 (fr) Procede de remontee automatique des exigences de modeles uml et de leur mise a jour
Silva et al. Methodology to implement logic controllers with both reconfigurable and programmable hardware
Theorin et al. On extending jgrafchart with support for FMI for co-simulation
KR100423742B1 (ko) 순차기능챠트에 의한 전용 제어 시스템

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 18

PLFP Fee payment

Year of fee payment: 19

PLFP Fee payment

Year of fee payment: 20