Question de methode programation

Ici on parle de tout et de rien entre automaticiens ...un cybercafé quoi !!
woueb
Code son premier grafcet
Code son premier grafcet
Messages : 45
Inscription : 21 juil. 2016, 13:58

Question de methode programation

Message par woueb »

Bonjour à tous, j'ai une question qui s'adresse aux pros du terrain.
Quel langage utilisez vous pour la programmation ou plutôt quel est le langage le plus rependu en automatisme en France.

Par exemple quel langage utilisez vous pour programmer un Algorigramme ou cette image par exemple
Sans titre.png
Je suis très Grafcet (SFC) et je souhaiterais élargir mes habitudes d’où cette question.

Merci
tuscaonline
Générateur de blocs fonctions
Générateur de blocs fonctions
Messages : 141
Inscription : 04 nov. 2015, 04:25

Re: Question de methode programation

Message par tuscaonline »

Langage a Contact - ladder
Ca suffit dans 98% des cas.
Francisco
Codeur fou
Codeur fou
Messages : 214
Inscription : 21 oct. 2015, 09:13
Localisation : LE MANS

Re: Question de methode programation

Message par Francisco »

Et les gars de la maintenance préfèrent.
La pile la plus utilisée: la pile GIGO. Bien plus souvent que les FIFO ou LIFO.

Garbage in, garbage out!
woueb
Code son premier grafcet
Code son premier grafcet
Messages : 45
Inscription : 21 juil. 2016, 13:58

Re: Question de methode programation

Message par woueb »

Merci pour votre contribution, je me douté un peu pour le ladder.
Par contre
Francisco a écrit : 16 avr. 2018, 10:43 Et les gars de la maintenance préfèrent.
Je suis un peu surpris, car j'étais convaincu que le dépannage sur grafcet était plus rapide puisque que l'on se retrouve au milieu de plein de ligne.
Le graphique du SFC permettant de voir dessuite au ça bloque.

Les gars de la maintenance prèfere le Ladder car il est ressamblant à un schéma electrique ou il y a d'autre raison ?
philou77
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 2076
Inscription : 21 oct. 2015, 10:00
Localisation : Ile de France

Re: Question de methode programation

Message par philou77 »

Slt,

Le ladder est plus facile car il ressemble à un schéma électrique.

Rien n'empêche de programmer un grafcet en ladder..
Mais le grafcet, tout le monde ne comprend pas forcément. Et dans certain cas, c'est pas indiqué en programmation.
Certaines entreprises le bannissent même (souvent question de réversibilité de fonctionnement, ou de reprise de cycle)

Bref, il y a de tout, rien n'est parole d'évangile, du moment que c'est bien fait, bien commenté, bien structuré.

amha.
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! :D
Avatar de l’utilisateur
djé
Dieu du process
Dieu du process
Messages : 776
Inscription : 20 oct. 2015, 09:55
Localisation : Bretagne, Pays de la Loire, Nantes

Re: Question de methode programation

Message par djé »

Bonjour,
Sur l'ancien Forum à l'époque j'avais écrit un truc concernant les différents langage: je le remets là histoire d'alimenter.

Le Ladder est la forme de langage graphique certainement la plus utilisée car il peut être compréhensible pour les néophytes, il s'apparente à un schéma élétrique (contacts, bobines...) et pour les gars de maintenance c'est plus facile à comprendre.
En débuggage c'est assez pratique car on voit vite fait ce qui coince.
Il s'écrit sous forme de réseau où la lecture se fait de gauche à droite et de haut en bas, enfin en général. Il faut vérifier auprès de chaque éditeur, car par exemple en Télémécanique, sur les vieille série de PL7 la scrutation s'effectuait colonne par colonne de gauche à droite. Ca peut paraître dérisoire mais ça peut avoir son importance en debug.
Ce langage est particulièrement adapté à la programmation de séquence logique combinatoire.

Le langage IL ou LIST est déjà plus hardu et on se rapproche du langage machine ou assembleur: c'est un langage dit de "bas niveau";on est au plus proche de la CPU, et nécessite de bien connaitre le fonctionnement des instructions et du processeur. Il faut savoir jouer avec les registres de la CPU. La programmation peut être plus longue et le débug plus difficile. Enfin avec du temps on si fait, et pour certain logiciel, je pense à STEP 7 de SIEMENS si on ne dispose pas de l'option pour le structuré (SCL) on peut difficilement y couper, notamment pour réaliser de l'indexage.
Il s'écrit ligne par ligne (une ligne une instruction) et convient pour effectuer des routines qui seraient plus compliquées voire impossible en Ladder (indexage, itérations..) tout programmer dans ce langage est à mon sens une aberration (du point de vue de l'automaticien) sauf si on aime se palucher à pisser du code ou si on est informaticien de base (ou les deux :lol: ) C'est à dire que la fée s'est penchée sur ton berceau et t'a offert un 8086.

En list on peut tout faire et surtout des boulettes mais le rendu est assez indigeste. Le code est néanmoins plus optimisé qu'en Ladder ou en LOG.


Le structuré ST ou SCL est un langage évolué qui reprend des fonctions type comme en programmation informatique genre "for i=.. to, while, If..then..else, case ..."
Il permet de faire des gros calcul de malade qui tiennent sur une ligne en imbriquant les instructions par exemple.Très puissant et assez compréhensible.
C'est un complément idéal au Ladder pour faire des fonctions de calcul élaborées ou de traitements de données.
Pareil que le list je vois mal réaliser un programme en utilisant exclusivement ce langage, mais certains l'utilise par habitude, ca doit être leur coté old school.

Le langage grafcet ou SFC est un langage graphique qui permet de programmer des ... grafcet.
L'avantage est de pouvoir traduire directement une séquence décrite sur papier et de la programmer simplement.
Bon je suis pas fan de ce type de programmation, ni de Grafcet d'ailleurs, mais il permet intrinsèquement de faire respecter les règles de base du grafcet et intègre tout un tas de fonctionnalités qui permettent de bien gérer ses séquences.
En général on l'utilise avec du Ladder ou autres pour écrire les conditions de transitions et les activation de sorties.

Parenthèse:
(Perso je trouve çà trop rigide, lourdingue et sujet à erreur car c'est pas vraiment temps réel: je n'ai que trop souvent vu ce genre de truc: l'activation d'un sortie est juste conditionnée par l'étape active en cours, sans aucune autre conditions, parce qu à un moment la succession de transition (conditions) a été vraie. Ben oui mais ptet qu'entre temps ces conditions successives qui on conduit à l'activation ont évoluées et notamment des conditions de sécurités et Bim! Machine Cassé.
Et je passe les détails sur les reprise de cycles et autre passage en manuel, bref j'aime pas çà et il faut vraiment bien faire attention quand on programme.)
Ce genre de truc aussi les gars de maintenance aiment bien car ça leur rappelle des trucs qu'ils ont vu à l'école et ça les rassure.
En terme d'optimisation de code, a mon avis ca ne doit pas être folichon .


Le LOG , Ach!... Sprechen Sie Deutsch?
Jamais vu ailleurs que dans des programmes de nos cousins germaniques.
Langage Graphique sous forme de boite fonctionnelle connectée entre elle qui permettent d'écrire des réseaux de combinaisons logiques.
Equivalent au LADDER et ca me rappelle trop en seconde au lycée technique quand on faisait du pneumatique avec des cellules AND/OR pour piloter chais pas quoi.
Bref si tu kiffes Mrs Boole et De Morgan ce langage est fait pour toi.


Dernier le CFC ou FDB qui lui se rapproche du LOG par son aspect graphique et ses boites fonctionnelles à la différence que tu choisis l'ordre d’exécution des blocs. C'est pas comme un réseau à proprement dit en terme de scrutation.
Ce genre de programmation est particulièrement adapté pour des process complexes avec des boucles de régulation types cascades en le représentant à l'identique du schéma de principe de fonctionnement.

Donc pour conclure chacun de ces langage a ses spécificités, ses codes, ses limites et peut être choisi en fonction du type d'application à réaliser mais aussi et surtout de la maîtrise que tu en as. Après dans certains cas, tu ne peux pas faire autrement soit parce qu'il t'es imposé ou parce qu'il est limité.
Le monde se divise en 10 catégories:les personnes qui comprennent le binaire,et les autres.

Dans tout ce que vous apprenez, seuls 10% vont vous servir,mais vous ne savez pas lesquels ...
Avatar de l’utilisateur
geronimo
Forcené des structures
Forcené des structures
Messages : 169
Inscription : 20 oct. 2015, 08:46

Re: Question de methode programation

Message par geronimo »

Tout dépends des personnes qui programment.
J'ai un client qui a tout un programme avec une vingtaine d'E/S en ladder qui est incompréhensible et à coté de ça un programme en ST avec 500 E/S qui est tout à fait compréhensible du premier coup d'oeil.
woueb
Code son premier grafcet
Code son premier grafcet
Messages : 45
Inscription : 21 juil. 2016, 13:58

Re: Question de methode programation

Message par woueb »

Merci Djé pour ce retour très complet, tu as très bien fait de le remettre, je sais que c'est ton ressenti mais c'est justement ce qu'il me faut un ressenti de terrain.

Merci philou77 et geronimo, je sais très bien qu'il n'y a pas de règle d'obligation, et que bien souvent se qui peut obliger un langage par rapport à un autre c'est le client ou le process.
Geronimo aurais tu des exemples de programme tout à fait compréhensible en ST ou ladder (surement bien commenté) à me montrer.

Merci pour vos retour à tous
Francisco
Codeur fou
Codeur fou
Messages : 214
Inscription : 21 oct. 2015, 09:13
Localisation : LE MANS

Re: Question de methode programation

Message par Francisco »

Et mis à part également que le Grafcet est franco-français.
La pile la plus utilisée: la pile GIGO. Bien plus souvent que les FIFO ou LIFO.

Garbage in, garbage out!
Avatar de l’utilisateur
JC87
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 1902
Inscription : 20 oct. 2015, 13:00
Localisation : Nouvelle Aquitaine

Re: Question de methode programation

Message par JC87 »

Francisco a écrit : 17 avr. 2018, 10:30 Et mis à part également que le Grafcet est franco-français.
Bonjour,

Çà c'était vrai avant mais maintenant le langage grafcet fait partie de la norme IEC sous le nom de SFC et il est donc fourni en standard sur tous les automates se référant à la dite norme.

JC
"On veut faire du zéro défaut mais on a zéro bonhomme et zéro budget, et bien à la fin on a zéro résultat..."
Répondre