Programmation sous step7 : blocs des systèmes et contrôleur flou

Programmation sous step7 : blocs des systèmes et contrôleur flou

Chapitre IV: Programmation sous step7

IV.1 Création des blocs des systèmes du 1er, 2eme et 3eme ordre sous step7

IV.1.1 Introduction

Lorsqu’on veut régler les paramètres du contrôleur ; on procède alors à des simulations sur ordinateur en utilisant la fonction de transfert du système, ce qui évite des essais longs et coûteux.

Dans ce chapitre, nous présentons une méthodologie pour la conception du bloc du procédé à régulé à partir de sa fonction de transfert.

Le système est mis en œuvre sous la plateforme d’un bloc fonctionnelle (FB) avec son bloc de données (DB) associée afin que les résultats de tous les calculs soient préservés entre les appels de programme.

Le bloc de fonction est placé dans le bloc d’alarme cyclique OB35 avec une période d’échantillonnage 100ms.

Il existe de nombreuse façon d’obtenir l’équation discrète du système, les méthodes les plus courantes utilisées sont :

  • La méthode de différence avant.
  • La méthode de différence arrière.
  • Méthode Tustin.

Toutes ces méthodes utilisent une certaine forme d’approximation de la variable continue «s» (opérateur de Laplace) par la variable discrète «z», selon le tableau suivant :

Méthodes d’approximation

FigIV.1 Méthodes d’approximation

IV.1.2 Création du bloc du 1er ordre sous STEP7

image76

La fonction de transfert en continu d’un système du 1er ordre avec retard FOPDT est donnée sous la forme suivante :

Où, KP représente le gain de processus, Tp représente la constant de temps et Td représente le temps mort ou le retard.

En appliquant la règle de Tustin à la fonction de transfert FOPDT, la fonction de transfert peut être obtenue de la forme suivante :

image77

Ce qui donne l’équation récurrente suivante :

La figure IV.2 représente le bloc FB1 programmé en langage SCL de l’équation ci-dessus

La figure IV.2 représente le bloc FB1 programmé en langage SCL de l’équation ci-dessus. Le langage de programmation structuré SCL (Structured Control Language) est similaire au langage de programmation Pascal.

Schéma bloc du système du 1er ordre avec retard FOPDT

FigIV.2 Schéma bloc du système du 1er ordre avec retard FOPDT

IV.1.3 Création de bloc du 2eme ordre sous STEP7

La fonction de transfert en continu d’un système 2eme ordre avec retard SOPDT est donnée sous la forme suivante :

image82

En appliquant la méthode de différence arrière, Ce qui donne l’équation récurrente suivante :

𝑦(𝑛) = 𝐴 ∗ (𝐵 ∗ 𝑦𝑑[1] − 𝑦𝑑[2] + 𝐶 ∗ 𝑢𝑑)

Où les coefficients sont:

image83

La figure IV.3 représente le bloc FB1 programmé en langage SCL de l’équation ci-dessus.

Schéma bloc du système du 2eme ordre avec retard SOPDT

FigIV.3 Schéma bloc du système du 2eme ordre avec retard SOPDT

IV.1.4 Création de bloc du 3eme ordre sous STEP7

La fonction de transfert en continu d’un système 3eme ordre avec retard THOPDT est donnée sous la forme suivante

image86

La figure IV.4 représente le bloc FB1 programmé en langage SCL de l’équation ci-dessus.

Schéma bloc du système du 3eme ordre sans retard

FigIV.4 Schéma bloc du système du 3eme ordre sans retard

IV.2 Implementation du controleur flou sous step7

IV.2.1Introduction

En général, le modèle flou simple le plus implémenté est le Takagi-Sugeno parce que le calcul de la sortie présente un coût de calcul beaucoup plus petit que le modèle de signal Mamdani. Les étapes suivantes décrivent chaque étape nécessaire pour la programmation d’un PI flou.

Pour développer un contrôleur flou adaptatif dans lequel les paramètres sont réglés conformément à l’erreur, nous avons créé un bloc de fonction (le système flou), il nous a permet d’enregistrer et de conserver les valeurs dans chaque cycle d’exécution.

La conception du système flou est réalisée en SCL. Le système est mise en œuvre sous la forme (fig.IV.5) d’un bloc fonction (FC). Le bloc de fonction est placé dans le bloc d’alarme cyclique OB35 avec une période d’échantillonnage 100ms.

Schéma bloc du contrôleur FLOU sous step7

Fig.IV.5 Schéma bloc du contrôleur FLOU sous step7

IV.2.2 Programmation du contrôleur flou

Le step7 contient le PID classique (FB41) il suffit de le configurer, mais ne dispose pas le contrôleur flou, notre but et de programmer un PI flou et l’implémenter sous step7 et WinCC.

Variable d’entrée du contrôleur PI flou

Un contrôleur flou permet de déterminer la commande à appliquer à un processus à partir de la valeur de la variable de sortie de ce contrôleur ; celle-ci est elle-même déterminée à partir des valeurs des variables d’entrée e, e’… du contrôleur par des relations floues, ou règles floues.

Pour le contrôleur décrit ci-dessous, et comme le font la plupart des auteurs, nous n’avons fait intervenir que deux variables d’entrée : chacune avec trois fonctions d’appartenance et une sortie du système flou.

  • e(n) = C – y, écart entre le signal de sortie y(n) du processus et la consigne.
  • e’ (n) = e(n) – e (n – t), accroissement de cet écart pendant la période d’échantillonnage T choisie (e’ est appelé dérivée de l’écart).

Schéma bloc du contrôleur PI flou.

FigIV.6 Schéma bloc du contrôleur PI flou.

IV.2.3 Règles floues

Ces règles permettent de déterminer le signal de sortie S, du contrôleur en fonction des signaux d’entrée e. Elles relient s à e et e’ par des conditions linguistiques prenant en compte l’expérience ou le savoir-faire acquis par un opérateur humain, ou traduisant simplement des remarques de bon sens.

Par exemple, il est clair que, si l’écart est fortement négatif et la dérivé de l’écart aussi, le signal de commande doit l’être également. Au contraire, si l’écart est positif et sa dérivée aussi, il en sera de même de la commande.

Si l’écart est négatif mais sa dérivée est positif, ou si l’écart est positif mais sa dérivée est négatif, le signal de commande devra être nul.

Ces considérations nous ont conduits à adopter une table de décision résumant les règles choisies.

La table des règles donnée ci-dessous est associée au contrôleur flou et comporte 9 règles de commande floue. Le raisonnement utilisé pour l’inférence floue est celui de takagi-sugeno et pour la défuzzifiction, nous utilisons la méthode du centre de gravité pour calculer la variation de la consigne.

Table de décision

FigIV.7 Table de décision

IV.2.4 Définition et évaluation des fonctions d’appartenance

En général, les règles sont de la forme suivante :

SI (e est N) AND (e’ est N) OR (e est Z) AND (e’ est N) alors DU est S [1].

Ces fonctions d’appartenances sont obtenues à partir des paramètres µ(e ) et µ(e’ ) , en appliquant la convention introduite par Sugeno : à un et logique on fait correspondre un minimum, à un ou logique on fait correspondre un maximum.

Fonction d’appartenance des entrées e et e’

Les fonctions d’appartenance sont recommandées de type triangulaire et trapézoïdale, en raison de son faible coût de calcul.

Un exemple d’une fonction triangulaire et le programme correspondant sous SCL.

Exemple d’une fonction triangulaire et le programme correspondant sous SCL.

IV.2.5 Calcul de la sortie floue de contrôleur de type sugeno (Agrégation)

image101

Le programme de la sortie flou en SCL sous STEP7 :

image102

IV.3 Identification de système en boucle ouverte

IV. 3.1 Constitution du Système

Le système contient une vanne et FV-1401-1 et un transmetteur de débit FT-1400.

Schéma fonctionnel, définition des entrées sorites du procédé vanne + transmetteur.

FigIV.11 Schéma fonctionnel, définition des entrées sorites du procédé vanne + transmetteur.

IV.3.2 Problème d’identification

Déterminer les paramètres suivants :

  • 𝜏 : Temps de retard pur (sec.)
  • 𝜃 : Constante du temps (sec.)

IV. 3.3 Calcul de la fonction de transfert du procédé industrielle vanne + transmetteur à l’aide de BROIDA

On a injecté à l’entrée du système un échelon et configuré le PID en mode manuelle pour avoir une boucle ouverte et on a vu la mesure (PV) du procédé pour calculer la fonction de transfert du système.

Réponse du système (expérimentation)

FigIV.13 Réponse du système (expérimentation)

S0=1010.

∆𝑦 = 2300 − 1010 = 1290𝑚3/h.

∆𝑢 = 2000K=1290/2000=0.645 donc k=0.645

Calcul de t1=0.28*∆𝑦 = 361.2 ; 1010+361.2=1371.2 avec projection on trouve t1=14.9s Calcul de t2=0.4*∆𝑦 = 516 ; 1010+516=1526 avec projection on trouve t2=15.5s

IV.3.3.1 Calcul de constante de temps

𝜃 = 5.5 ∗ (𝑡2 − 𝑡1) = 5.5 ∗ 0.6 = 3.3𝑠

IV.3.3.2 Calcul du retard ou temps mort

𝜏 = 2.8 ∗ t1 − 1.8 ∗ t2 = 41.72 − 27.9 = 13.82s

IV.3.3.3 Fonction de transfert

image106

IV.3.4 Ajustement de paramétrage de PID avec la méthode de COHEN et COON

La méthode de COHEN et COON peut être utilisée sur des systèmes modélisables par un modèle de BROIDA dont l’équation est :

image107

Où K est le gain statique, t la constante de temps et Tr le retard.

La méthode ne s’applique que sur des systèmes stables car elle fait intervenir l’aspect statique du procède. Donne les réglages de COHEN et COON à partir des paramètres du

Modèle de Broïda et qui font intervenir le rapport image108

Tableau de COHEN et COON

FigIV.14 Tableau de COHEN et COON

image110

image111

IV.3.5 Système 1er ordre avec retard avec le PID classique sous MATLAB

Schéma bloc du système du 1er ordre avec retard avec PID classique sous Matlab.

FigIV.15 Schéma bloc du système du 1er ordre avec retard avec PID classique sous Matlab.

image113

FigIV.16 Réponse indicielle du système 1er ordre avec retard avec PID sous Matlab.

IV.3.6Système en boucle fermée avec retard de 13.82s sous STEP7

Réponse indicielle du système 1er ordre avec retard avec le PID sous STEP7.

FigVI.17 Réponse indicielle du système 1er ordre avec retard avec le PID sous STEP7.

Remarque

Les résultats de simulation sous MATLAB et STEP7 sont similaires.

IV.3.7 Système du 1er ordre avec retard avec le PI flou sous MATLAB

système du 1er ordre avec retard avec PI flou sous Matlab.

FigIV.18 système du 1er ordre avec retard avec PI flou sous Matlab.

Réponse indicielle du système 1er ordre avec le PI flou sous Matlab.

FigIV.19 Réponse indicielle du système 1er ordre avec le PI flou sous Matlab.

IV.3.8 Système du 1er ordre avec retard sous WINCC :

Réponse indicielle du Système 1er ordre avec le PI flou sous WinCC

FigIV.20 Réponse indicielle du Système 1er ordre avec le PI flou sous WinCC

Remarque :

Les résultats sous step7 et Matlab sont similaires.

IV.4 Conclusion

Dans ce chapitre nous avons présenté les différentes étapes de création des systèmes (1er, 2eme et 3eme ordre) et aussi l’implémentation du PI flou de type ‘’SUGENO’’ sous step7.

Et aussi nous avons vue comment identifier un système en FTBO et enfin les résultats de notre exemple industriel avec PID classique et PI flou sous MATALB, STEP7, WINCC.

Dans le chapitre suivant nous allons présenter les résultats de simulation des systèmes 1er, 2ème et 3ème ordre avec le PID classique sous step7 et WinCC.

Pour citer ce mémoire (mémoire de master, thèse, PFE,...) :
📌 La première page du mémoire (avec le fichier pdf) - Thème 📜:
Implémentation et simulation de Boucles de Régulation avec le PID et la logique floue sous Step7 et WinCC.
Université 🏫: Université des Sciences et de la Technologie d’Oran, Mohamed Boudiaf
Auteur·trice·s 🎓:
Mlle. Wafaà BENALI OUENZAR

Mlle. Wafaà BENALI OUENZAR
Année de soutenance 📅: Faculté de génie électrique département d’électronique - 2012/2013
Rechercher
Télécharger ce mémoire en ligne PDF (gratuit)

Laisser un commentaire

Votre adresse courriel ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Scroll to Top