convertion grafcet => ladder
Répondre à la discussion
Affichage des résultats 1 à 23 sur 23

convertion grafcet => ladder



  1. #1
    NeoNavy

    convertion grafcet => ladder


    ------

    Bonjour,

    Voici une bonne vingtaine d'année que je n'ai plus pratiqué l'automatisme aussi j'ai voulut me "dérouiller un peu" en m'essayant à un petit exercice.

    Je suis amateur de tir et j'ai voulut faire une "machine pour afficher/masquer les cibles".

    Mon cahier des charges est le suivant:
    - 5 cibles devant s'afficher aléatoirement
    - le temps d'affichage des cibles ainsi que le nombre de fois qu'elles s'affichent (un cycle de 5 cible ou un cycle de 10 cibles) est réglable grâce à une roue codeuse 10 positions
    - position de la roue codeuse et action correspondante: 0 => 5 cibles 1s chacune; 1 => 5 cibles 1,5s chacune; 2 => 5 cibles 2s chacune; 3 => 5 cibles 2,5s chacune; 4 => 5 cibles 3s chacune; 5 => 10 cibles 1s chacune; 6 => 10 cibles 1,5s chacune; 7 => 10 cibles 2s chacune; 8 => 10 cibles 2,5s chacune; 9 => 10 cibles 3s chacune
    - au repos les cibles sont toutes affichée, elles s’effacent toutes pendant 4 secondes avant de commencer le cycle d'affichage

    Vous trouverez ci-joint mon programme en Grafcet, mais je m'aperçois que le ladder est cent fois plus répandu dans les logiciels de programmation.
    attribution est entrées, sorties, mots et bit interne:
    - o0 à o4 => actionneur des 5 cibles
    - i0 => départ de cycle
    - i1 à i4 => 4 bits à rentrer dans le mot m201 (indiquant la sélection du mode à utiliser)
    - le "set" des sorties effacent les cibles
    - m200 => affichage "pseudo-aléatoire"
    - m201 => sélection du programme à exécuter
    - u100 => bit de sélection du cycle 5 ou 10 cibles
    - C0 => compteur d'affichage

    Aussi ma question est double:
    - Auriez vous l'amabilité de vérifier mon programme grafcet pour me permettre de le corriger si vous voyez des erreurs.
    - Pourriez vous me dire comment convertir mon programme en ladder?

    Merci d'avance.

    -----
    Images attachées Images attachées

  2. #2
    adipie

    Re : convertion grafcet => ladder

    Bonjour,
    Pourquoi convertir en ladder, il existe des micro-automates (Zelio de Schneider ou M3 de Crouzet) que tu peux programmer en grafcet.
    Voir Ebay ou Le bon coin pour trouver ces automates à des prix abordables.
    Se programme avec logiciel gratuit à l'aide d'un PC, il y'a que le câble de programmation à acheter
    Pas besoin de roue codeuse il est possible d'utiliser le clavier écran de la face avant de l'automate et simuler le programme sans l'automate.
    Dernière modification par adipie ; 06/07/2014 à 19h41.

  3. #3
    NeoNavy

    Re : convertion grafcet => ladder

    C'est pour deux raisons:
    - La première est que j'essaye de me remettre en selle tant bien que mal
    - La deuxième est que je viens de faire une assez bonne affaire sur ebay avec un S7-1200, mais le SETP7 10.5 fournit avec se programme en ladder... et d'une manière générale, il semble que le ladder soit maintenant commun à tous les automates alors que le grafcet reste presque une exception.

    http://www.ebay.de/itm/SIEMENS-Simat...p2047675.l2557

  4. #4
    adipie

    Re : convertion grafcet => ladder

    Citation Envoyé par NeoNavy Voir le message
    il semble que le ladder soit maintenant commun à tous les automates alors que le grafcet reste presque une exception.
    Le ladder est aussi vieux que les premiers automates et est largement dépassé par des langages plus évolués.
    Pour te faire une idée, télécharge ce logiciel gratuit:
    http://www.crouzet.fr/produits/crouz...illenium-3.htm
    Si tu choisis le langage FDB tu peux mélanger des blocs fonction avec du grafcet et simuler ton programme sans la présence d'un automate.
    Si tu trouve quelqu'un qui est équipé du logiciel SoMachine de Schneider, il peut te traduire le grafcet en ladder.
    Je ne pense pas que tu trouvera beaucoup de gens prêt à traduire ton grafcet en ladder manuellement.

  5. A voir en vidéo sur Futura
  6. #5
    mgduc

    Re : convertion grafcet => ladder

    Citation Envoyé par adipie Voir le message
    Je ne pense pas que tu trouvera beaucoup de gens prêt à traduire ton grafcet en ladder manuellement.
    C'est très facile, suffi de suivre le grafcet et d'écrire le ladder en même temps... je vois pas ou est la complication. suffi d'avoir l'étape d'avant et de ne pas avoir l'étape d'après.
    Dernière modification par mgduc ; 07/07/2014 à 08h00.

  7. #6
    mgduc

    Re : convertion grafcet => ladder

    Désoler, je viens de voir ton grafcet, il manque beaucoup de symbole, d'indication et il n'y a aucune initialisation. Faut revoir les base

  8. #7
    NeoNavy

    Re : convertion grafcet => ladder

    Les étapes 30, 20, 50, 10 et 80 sont des étapes d'initialisation (un "double carré" => active dès le démarrage de l'automate), je ne vois pas de quoi vous me parlez...

  9. #8
    NeoNavy

    Re : convertion grafcet => ladder

    Citation Envoyé par adipie Voir le message
    Le ladder est aussi vieux que les premiers automates et est largement dépassé par des langages plus évolués.
    Pour te faire une idée, télécharge ce logiciel gratuit:
    http://www.crouzet.fr/produits/crouz...illenium-3.htm
    Si tu choisis le langage FDB tu peux mélanger des blocs fonction avec du grafcet et simuler ton programme sans la présence d'un automate.
    Si tu trouve quelqu'un qui est équipé du logiciel SoMachine de Schneider, il peut te traduire le grafcet en ladder.
    Je ne pense pas que tu trouvera beaucoup de gens prêt à traduire ton grafcet en ladder manuellement.
    Ok, merci pour les infos. Pour le logiciel Crouzet le hic c'est qu'il me faut un automate Crouzet (hors j'ai eu un Seimens).
    D'une manière générale, j'ai vut que (bien qu'il soit très vieux) le ladder était un langage qu'on retrouvait sur tous (ou presque) les logiciels des différentes marques.
    Je vais essayer de trouver SoMachine car il est vrai qu'il me dépannerait bien

    Citation Envoyé par mgduc Voir le message
    C'est très facile, suffi de suivre le grafcet et d'écrire le ladder en même temps... je vois pas ou est la complication. suffi d'avoir l'étape d'avant et de ne pas avoir l'étape d'après.
    De mémoire, le ladder ne se lit pas comme le grafcet: le grafcet se "lit" de haut en bas alors qu'il me semble que le ladder se "lit" de gauche à droite.
    Je m'explique: dans mes lointains souvenir, je crois que pour le ladder toutes les parties gauche de toutes les lignes sont lu simultanément puis l'automate passe à la partie suivante et ainsi de suite jusqu'à arriver aux actions. Alors que dans le grafcet pour activer une étape il faut que la condition ET que l'étape précédente soit active.

    Citation Envoyé par mgduc Voir le message
    Désoler, je viens de voir ton grafcet, il manque beaucoup de symbole, d'indication et il n'y a aucune initialisation. Faut revoir les base
    Les étapes 30, 20, 50, 10 et 80 sont des étapes d'initialisation (un "double carré" => active dès le démarrage de l'automate), je ne vois pas de quoi vous me parlez...

  10. #9
    adipie

    Re : convertion grafcet => ladder

    Dans ton logiciel Siemens il y'a peut être des blocs programmateurs à cames ?
    Si oui tu peux les utiliser à la place du grafcet.

  11. #10
    NeoNavy

    Re : convertion grafcet => ladder

    Je n'ai pas encore reçut le logiciel, mais il me semble avoir vu sur internet qu'il faisait effectivement de la programmation par bloc (FB... je ne sais plus exactement le nom), je n'ai encore jamais eu l'occasion d'utiliser cette forme de programmation, de ce que j'ai cru voir c'est entre le ladder et le grafcet, mais je ne connais pas les "nuances" d'utilisation.
    Cela dit, je pense qu'à force de tâtonner je pourrais bien finir par trouver, mais si (avec votre aide) je pouvais trouve plus rapidement cela m'arrangerait

  12. #11
    romulus123

    Re : convertion grafcet => ladder

    Bonjour,

    Citation Envoyé par adipie Voir le message
    Le ladder est aussi vieux que les premiers automates et est largement dépassé par des langages plus évolués.
    Pour te faire une idée, télécharge ce logiciel gratuit:
    http://www.crouzet.fr/produits/crouz...illenium-3.htm
    Un relais programmable de chez Crouzet ne se compare pas avec un automate S7-1200... Le ladder est TRES utilisé, même avec les gros S7-1500.

    Pour "convertir"un grafcet en ladder, il suffit de procéder comme sur la PJ.

    Pour programmer le S7-1200, il te faut le logiciel TIA Portal.

    Nom : ladder.jpg
Affichages : 8219
Taille : 27,4 Ko
    «Tout ce qui est susceptible de mal tourner, tournera nécessairement mal.»

  13. #12
    mgduc

    Re : convertion grafcet => ladder

    Citation Envoyé par NeoNavy Voir le message
    Alors que dans le grafcet pour activer une étape il faut que la condition ET que l'étape précédente soit active.
    Comme je t'est dit. Une étape est constituer de l'étape d'avant ---I I--- et ne pas avoir l'étape d'après ---I / I---. Pour passer à l'étape suivante il faut les condition. Donc en allant à l'étape suivante, l'étape d'avant ce désactive. De cette manière, On lit le grafcet et on écrit le ladder en conséquence...

  14. #13
    adipie

    Re : convertion grafcet => ladder

    Citation Envoyé par romulus123 Voir le message
    Un relais programmable de chez Crouzet ne se compare pas avec un automate S7-1200... Le ladder est TRES utilisé, même avec les gros S7-1500.
    Bonjour, il n'est pas interdit de faire compliqué quand on peut faire simple.
    D'après le cahier des charges un relais programmable Crouzet (comme tu l'appelles) est parfaitement capable de faire ce travail avec écran et clavier en prime.
    A chacun ses convictions.

  15. #14
    NeoNavy

    Re : convertion grafcet => ladder

    Citation Envoyé par mgduc Voir le message
    Comme je t'est dit. Une étape est constituer de l'étape d'avant ---I I--- et ne pas avoir l'étape d'après ---I / I---. Pour passer à l'étape suivante il faut les condition. Donc en allant à l'étape suivante, l'étape d'avant ce désactive. De cette manière, On lit le grafcet et on écrit le ladder en conséquence...
    Un exemple est souvent plus parlant qu'un long discours ( http://forums.futura-sciences.com/at...der-ladder.jpg ), merci Romulus
    Par contre, comment faire quand on a BEAUCOUP de conditions (si la ligne est trop courte ou qu'il n'y a pas assez de ligne par page)?
    Dernière modification par NeoNavy ; 07/07/2014 à 19h08.

  16. #15
    mkh.mourad

    Re : convertion grafcet => ladder

    Ça fais 15 ans que je n'ai pas touché au ladder ou grafcet.
    Ce n'est que des souvenirs
    Si je me souviens bien le grafcet c'est des etapes (associées a des actions) et de transitions.
    On ne passe a une etape que si la transition est vérifiée vrai sinon on reste sur la même étape.
    Alors que le langage ladder on lis de gauche à droites et de haut en bas tous le programme et a la fin du programme on mis a jours toutes les sorties. Et on boucle depuis le début.

  17. #16
    Yoruk

    Re : convertion grafcet => ladder

    J'ai eu le problème il y a quelques temps; un petit automate acheté pour une application au boulot ne se programmait qu'en LADDER.

    L'idée pour "convertir" un G7 en ladder est de gérer une variable contenant le numéro d'étape (en binaire pour mon automate 001 010 011 ). Pour les étapes, tu gères à grand coup de blocs "ET". Si etape=001 -> Sortie concernée à 1, tant que la condition de transition n'est pas active. Dès qu'elle l'est, tu incrémentes "Etape"...
    La robotique, c'est fantastique !

  18. #17
    mgduc

    Re : convertion grafcet => ladder

    Citation Envoyé par Yoruk Voir le message
    J'ai eu le problème il y a quelques temps; un petit automate acheté pour une application au boulot ne se programmait qu'en LADDER.

    L'idée pour "convertir" un G7 en ladder est de gérer une variable contenant le numéro d'étape (en binaire pour mon automate 001 010 011 ). Pour les étapes, tu gères à grand coup de blocs "ET". Si etape=001 -> Sortie concernée à 1, tant que la condition de transition n'est pas active. Dès qu'elle l'est, tu incrémentes "Etape"...
    J'ai l'impression que tu dit la même chose que nous mais en compliquant les chose. J'imagine que ma réponse devais ressembler à ça et c'est pourquoi je me le suis fais dire dans le poste #14
    Dernière modification par mgduc ; 08/07/2014 à 07h30.

  19. #18
    Yoruk

    Re : convertion grafcet => ladder

    Je n'avais pas relu tout les messages en détail, désolé

    Oui, c'est cette idée là, sauf que dans mon cas j'avais séparé les lignes gérant la variable "étape" des actions proprement dites.

    J'ai sorti un exemple (j'ai viré toute la partie un peu compliquée). Mon G7 était basé sur une temporisation (Etape1, attente, étape 2, ...). Les 4 première lignes gèrent le numéro d'étape ainsi que les transitions (avec retour au 1 après l'étape 4), tandis que les lignes 5 et + gèrent les actions proprement dites.

    Nom : ladder.jpg
Affichages : 4626
Taille : 138,2 Ko

    En gros
    La robotique, c'est fantastique !

  20. #19
    NeoNavy

    Re : convertion grafcet => ladder

    Citation Envoyé par mgduc Voir le message
    Citation Envoyé par Yoruk Voir le message
    J'ai eu le problème il y a quelques temps; un petit automate acheté pour une application au boulot ne se programmait qu'en LADDER.
    L'idée pour "convertir" un G7 en ladder est de gérer une variable contenant le numéro d'étape (en binaire pour mon automate 001 010 011 ). Pour les étapes, tu gères à grand coup de blocs "ET". Si etape=001 -> Sortie concernée à 1, tant que la condition de transition n'est pas active. Dès qu'elle l'est, tu incrémentes "Etape"...
    J'ai l'impression que tu dit la même chose que nous mais en compliquant les chose. J'imagine que ma réponse devais ressembler à ça et c'est pourquoi je me le suis fais dire dans le poste #14
    lol
    Je n'aurais pas mieux dit!

    Citation Envoyé par Yoruk Voir le message
    Je n'avais pas relu tout les messages en détail, désolé
    Oui, c'est cette idée là, sauf que dans mon cas j'avais séparé les lignes gérant la variable "étape" des actions proprement dites.
    J'ai sorti un exemple (j'ai viré toute la partie un peu compliquée). Mon G7 était basé sur une temporisation (Etape1, attente, étape 2, ...). Les 4 première lignes gèrent le numéro d'étape ainsi que les transitions (avec retour au 1 après l'étape 4), tandis que les lignes 5 et + gèrent les actions proprement dites.
    En gros
    C'est tout de suite beaucoup plus clair
    Je comprend donc que ce que tu appelles "étape 1/2..." sont des bit interne?!
    Comment détermine ton les "étapes initiales" (les seul étapes actives au démarrage de l'automate)? Comment s’assurer de l'état des étapes au démarrage (que les les étapes initiales soient bien active et que les autres soit bien inactive)?
    Je ne suis guère familiarisé avec ce mode de programmation par bloc, je comprend que le IN est l'entrée "normal", le PT le paramètre de temps (en ms?! le moins qu'on puisse dire c'est que c'est précis! > ), le Q est la sortie une fois la condition de temps remplie, mais le ET c'est pour quoi?
    Existe-t-il un site internet recensant tous les différents type de bloc avec leurs fonctions les fonctions de leurs entrées/sorties?

    Encore un GRAND merci à tous pour votre aide!!!

  21. #20
    Yoruk

    Re : convertion grafcet => ladder

    Citation Envoyé par NeoNavy Voir le message
    Je comprend donc que ce que tu appelles "étape 1/2..." sont des bit interne?!
    Oui c'est ça, Etape.1 c'est le premier bit de poids faible... R etape.1 le met à 0, (reset) tandis que S etape.1 le met à 1 (SET).

    Citation Envoyé par NeoNavy Voir le message
    Comment détermine ton les "étapes initiales" (les seul étapes actives au démarrage de l'automate)?
    Dans ma table de représentation des variables, j'ai possibilité d'indiquer les valeurs au démarrage. J'ai aussi une variable interne qui est mise à 0 au démarrage (et seulement au démarrage). Je détecte donc le front descendant de cette variable et j'en profite pour faire tout les SET et RESET qui vont bien.

    Concernant les blocs de tempo (qui sont effectivement en ms), le ET est une variable contenant le temps écoulé. Ci joint un screeenshot de sa doc :

    Nom : ton.jpg
Affichages : 3680
Taille : 195,9 Ko

    Regarde le chronogramme en bas, tu devrais tout comprendre

    PS : l'aide du soft que j'utilise est assez bien faite, je n'avais pas trop galéré lors de la programmation de mon automate...
    La robotique, c'est fantastique !

  22. #21
    NeoNavy

    Re : convertion grafcet => ladder

    Citation Envoyé par Yoruk Voir le message
    Dans ma table de représentation des variables, j'ai possibilité d'indiquer les valeurs au démarrage. J'ai aussi une variable interne qui est mise à 0 au démarrage (et seulement au démarrage). Je détecte donc le front descendant de cette variable et j'en profite pour faire tout les SET et RESET qui vont bien.
    Où doit on renseigner cette table de représentation? C'est propre à un logiciel/automate particulier? Idem pour cette variable interne qui est mis à 0 au démarrage, c'est propre à un logiciel/automate particulier? Comment se représente un front montant/déscendant en ladder (ou en programmation par bloc)?

    Citation Envoyé par Yoruk Voir le message
    Concernant les blocs de tempo (qui sont effectivement en ms), le ET est une variable contenant le temps écoulé. Ci joint un screeenshot de sa doc :
    Regarde le chronogramme en bas, tu devrais tout comprendre
    D'après le chronogramme (et si je l'ai bien compris), il faut le l'entrée IN reste à 1 pendant toutes la tempo si on veut voir la sortie Q à 1?! Si je reprend l'exemple de mon grafcet, le fait d'appuyer sur le départ de cycle efface les cibles pendant 4s, cela voudrait dire que l'utilisateur doit rester appuyer sur le bouton pendant 4s?!

    Citation Envoyé par Yoruk Voir le message
    PS : l'aide du soft que j'utilise est assez bien faite, je n'avais pas trop galéré lors de la programmation de mon automate...
    L'aide est effectivement TRES bien faite (et en français!), quel soft utilisez vous?

  23. #22
    Yoruk

    Re : convertion grafcet => ladder

    Citation Envoyé par NeoNavy Voir le message
    Où doit on renseigner cette table de représentation? C'est propre à un logiciel/automate particulier? Idem pour cette variable interne qui est mis à 0 au démarrage, c'est propre à un logiciel/automate particulier?
    Cette table, tout comme la variable, est dispo dans un onglet de configuration du projet:

    var.png

    Après je ne suis pas un pro dans ce domaine, donc je ne pourrais pas te dire comment ça fonctionne chez les autres.

    Les fronts montants et descendants sont représentés comme ceci:

    Code:
    ---|F|------  pour le front montant
    ---|N|------  pour le front descendant
    Citation Envoyé par NeoNavy Voir le message
    D'après le chronogramme (et si je l'ai bien compris), il faut le l'entrée IN reste à 1 pendant toutes la tempo si on veut voir la sortie Q à 1 ?
    Oui c'est ça. Après il existe différentes tempos (TON, TOF, TP) qui varient un peu (genre juste une impulsion sur IN fait démarrer, cf TOF, ou bien la sortie passe à 1 dès le début et retombe à zéro à la fin du temps).

    Pour ton G7, non l'utilisateur n'est pas obligé de maintenir son contact, après tout dépend de comment du travailles. TOF par exemple, est une tempo qui démarre juste avec une impulsion sur IN :

    tof.jpg

    Citation Envoyé par NeoNavy Voir le message
    L'aide est effectivement TRES bien faite (et en français!), quel soft utilisez vous?
    C'est Connected Components Workbench (pub gratuite), que j'ai utilisé avec un API De Rockwell Automation. J'ai pas d'actions chez eux hein, il y a surement plein d'autres softs qui vont tout aussi bien.
    La robotique, c'est fantastique !

  24. #23
    NeoNavy

    Re : convertion grafcet => ladder

    l'avantage du "langage commun" ladder ou FBD c'est que quelque soit le soft on fini toujours par s'y retrouver une fois qu'on en maitrise les subtilités
    Merci beaucoup de votre aide en tous cas

Discussions similaires

  1. Ladder 100 pb
    Par waymouch dans le forum Biologie
    Réponses: 2
    Dernier message: 14/05/2013, 14h47
  2. Transposer un grafcet en ladder
    Par inviteef5c8f87 dans le forum Électronique
    Réponses: 2
    Dernier message: 24/02/2011, 20h24
  3. Conversion grafcet ladder
    Par invite4b611015 dans le forum Électronique
    Réponses: 1
    Dernier message: 15/05/2010, 16h36
  4. Passage Grafcet -> Ladder
    Par invite8556373b dans le forum Électronique
    Réponses: 3
    Dernier message: 11/09/2009, 16h04
  5. ladder
    Par redtronic dans le forum Électronique
    Réponses: 0
    Dernier message: 12/03/2009, 16h04
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...