API Student3L Auto
API Student3L Auto
API Student3L Auto
:
I.1- Introduction
I.1.1- L’Automatisme :
Les machines de productions modernes sont pratiquement toutes commandées par des systèmes programmables.
Cela signifie que le fonctionnement de ce type de machine est complètement régi par un programme constitué d'une
suite d'instructions stockées dans une mémoire. Ces instructions sont exécutées séquentiellement par un processeur
central unique qui a accès à tous les capteurs et actuateurs de la machine.
Définition :
Un Automate Programmable Industriel (API) est une machine électronique programmable par un
personnel non informaticien et destiné à piloter en ambiance industrielle et en temps réel des procédés
industriels. Un automate programmable est adaptable à un maximum d'application, d'un point de vue
traitement, composants, langage.
Les API se caractérisent par rapport aux ordinateurs par leur fiabilité et leur facilité de maintenance. Les
modules peuvent être changés très facilement et le redémarrage des API est très rapide.
o Compact ou modulaire
o Tension d'alimentation
o Taille mémoire
o Sauvegarde (EPROM, EEPROM, pile, …)
o Nombre d'entrées / sorties
o Modules complémentaires (analogique, communication,..)
o Langage de programmation
Siemens S7-300
Il existe des modèles d’API en boîtier étanche qu’on utilise dans des endroits où les ambiances sont
difficiles (température, poussière, risque de projection ...).
Il y a quelques règles qu’il faut respecter pour monter les modules sur ce qu’on appelle le Rack (le
profilé-support) donc des emplacements d’enfichage destinés pour chaque module et qu’on retrouve aussi
sur le simulateur Simatic300 qui nous l’impose.
Bien sure le tout est monté sur un châssis profilé-support ou Rack qui doit être lui aussi choisi au niveau du logiciel SIMATIC
300 dans la partie matériel (Hardware)
Rq1 : Le bus est bouclé entre les racks par les modules de connexion (IM 361). La connexion IMS
représente l’expéditeur, et l’IMR le récepteur. Les modules de connexion doivent être mis en place aux
emplacements d’enfichage donnés.
Rq2 : Dans le cas où on n’utilise pas d’extension, l’emplacement 3 est laissé libre.
Rq3 : Dans les racks d’extension, il faut aussi prévoir une alimentation courant supplémentaire.
Comme variante pour une conception biligne, on trouve le module de connexion IM 365 câblé de manière fixe avec lequel il
n’y a pas besoin d’alimentation courant supplémentaire.
Les modules de fonction, par ex. SINUMERIK FM NC, peuvent être attribués à quelques périphéries.
De cette manière, un module FM a son propre domaine de périphérie et peut y accéder rapidement. On
appelle ce domaine de périphérie un segment local.
Il existe un segment local par rack. Il n’est donc plus possible d’accéder à ces périphéries par la CPU lorsque
le système est en marche.
La structure interne d'un automate programmable industriel (API) est assez voisine de celle d'un système
informatique simple, L'unité centrale est le regroupement du processeur et de la mémoire centrale. Elle
commande l'interprétation et l'exécution des instructions programme. Les instructions sont effectuées les
unes après les autres, séquencées par une horloge.
- Bus informatique
Un bus informatique est un dispositif de transmission de données partagé entre plusieurs composants d'un
système numérique.
Les données doivent s'accompagner d'une identification du composant auquel elles sont destinées, l’adresse
de destination, et d'une commande indiquant le type du transfert, notamment pour indiquer si ce composant
doit recevoir les données ou les transmettre(R/W). On peut ainsi décomposer le bus en trois sous-ensembles
logiques :
Ces trois groupes sont communément appelés bus (bus d'adresse, bus de données, bus de contrôle).
Physiquement, ils peuvent être des bus au sens électronique du terme, c'est-à-dire être portés par des
conducteurs indépendants, ou être réalisés d'une autre manière, par exemple par multiplexage temporel sur
un seul conducteur ; un bus informatique les combine en un seul dispositif pour transférer des données entre
plusieurs composants.
En plus de l'aspect physique permettant de faire transiter les informations, un bus informatique est constitué
des circuits d'interface, et du protocole qui définit la manière dont les signaux doivent se comporter pour
réaliser ce transfert. Les caractéristiques du matériel conditionnent en partie le type de communication et le
protocole peut parfois imposer le type de matériel.
.
Lorsque deux composants seulement sont impliqués, le problème de l'adresse ne se pose pas. On parle plutôt
de liaison point à point. Un système de transfert de donnée prévu pour plusieurs composants peut effectuer
le transfert, mais le traitement inutile de l'information d'adresse pèse sur sa performance.
Lorsque le dispositif de communication comprend plus d'une voie de transmission, permettant plusieurs
communications simultanées, la notion de réseau informatique est plus appropriée.
Les trois approches, liaison de point à point, bus informatique, réseau informatique, partagent la même
fonction de communication, avec une complexité croissante. Elles correspondent à des optimisations
particulières à chacun de leurs domaines.
Mode de transmission
Un bus parallèle transmet simultanément chaque bit constituant le message sur un canal particulier,
tandis qu'un bus série les transmet les uns après les autres sur le même canal.
Synchronisation
La transmission peut être synchrone, avec un signal d'horloge, ou asynchrone, quand chaque
transmission comporte une information de synchronisation. Si la transmission est synchrone, il faut
que les différences de temps de transmission dues à la distance entre composants ne dépassent pas la
limite permise par le signal d'horloge.
I.5 - Fonctionnement :
L'automate programmable reçoit les informations relatives à l'état du système et puis commande les pré-
actionneurs suivant le programme inscrit dans sa mémoire.
Généralement les automates programmables industriels ont un fonctionnement cyclique comme il est
représenté sur l’organigramme suivant. Le microprocesseur réalise toutes les fonctions logiques ET, OU,
les fonctions de temporisation, de comptage, de calcul... Il est connecté aux autres éléments (mémoire et
interface E/S) par des liaisons parallèles appelées ' BUS ' qui véhiculent les informations sous forme
binaire. Lorsque le fonctionnement est dit synchrone par rapport aux entrées et aux sorties, le cycle de
traitement commence par la prise en compte des entrées qui sont figées en mémoire pour tout le cycle.
Le processeur exécute alors le programme instruction par instruction en rangeant à chaque fois les résultats
en mémoire. En fin de cycle les sorties sont affectées d’un état binaire, par mise en communication avec les
mémoires correspondantes. Dans ce cas, le temps de réponse à une variation d’état d’une entrée peut être
compris entre un ou deux temps de cycle (durée moyenne d’un temps de cycle est de 5 à 15 ms) et est
protégé par un chien de garde (informatique). Le temps d'un cycle d'API varie selon la taille du programme,
la complexité des calculs et de la puissance de l'API.
- FC (Fonction) : Une FC ne possède pas un espace mémoire attribué. Les données locales d’une
fonction sont perdues après le traitement de la fonction. D’autres FB et FC peuvent être appelés dans
une fonction par des commandes d’appel de blocs.
- DB (Bloc de données) : Les DB sont employés afin de tenir à disposition de l’espace mémoire pour
les variables de données. Il y a deux catégories de blocs de données. Les DB globaux où tous les OB,
FB et FC peuvent lire des données enregistrées et écrire eux-mêmes des données dans le DB. Les
instances DB sont attribuées à un FB défini.
I.5.3 - BLOCS SYSTEME POUR LES FONCTIONS STANDARDS ET LES
FONCTIONS SYSTEMES
Dans les blocs système, il s’agit de fonctions déjà prêtes, enregistrées dans la CPU.
Ces blocs peuvent être appelés par l’utilisateur et être utilisés dans le programme.
STEP 7 offre les blocs système suivants :
- SFB (Bloc de fonctions système) : Enregistré dans le système d’exploitation de la CPU et bloc de
fonction appelable par l’utilisateur.
- SFC (Fonction système): Enregistrée dans le système d’exploitation de la CPU et fonction appelable
par l’utilisateur.
- SDB (Données système): Espace mémoire dans le programme qui est créé par plusieurs outils STEP
7 (par ex. : Configuration matérielle, NetPro ... ), afin d’enregistrer des données pour le système
d’automatisation.
Elle est conçue pour recevoir, gérer, stocker des informations issues des différents secteurs du système que
sont le terminal de programmation (PC ou console) et le processeur, qui lui gère et exécute le programme.
Elle reçoit également des informations en provenance des capteurs.
La mémoire
Il existe dans les API deux types de mémoires qui remplissent des fonctions différentes :
- La mémoire Langage où est stocké le langage de programmation. Elle est en général figée, c'est à
dire en lecture seulement. (ROM : mémoire morte)
- La mémoire Travail utilisable en lecture-écriture pendant le fonctionnement c'est la RAM (mémoire
vive). Elle s'efface automatiquement à l'arrêt de l'automate (nécessite une batterie de sauvegarde).
I.6.2- Le processeur :
Son rôle consiste d’une part à organiser les différentes relations entre la zone mémoire et les interfaces
d’entrées et de sorties et d’autre part à exécuter les instructions du programme.
L’interface d’entrée comporte des adresses d’entrée. Chaque capteur est relié à une de ces adresses.
L’interface de sortie comporte de la même façon des adresses de sortie. Chaque pré-actionneur est relié à
une de ces adresses. Le nombre de ces entrées est sorties varie suivant le type d’automate. Les cartes d'E/S
ont une modularité´e de 8, 16 ou 32 voies. Les tensions
disponibles sont normalisées (24, 48, 110 ou 230V continu ou alternatif ...)
Les interfaces d'entrées/sorties
Les entrées reçoivent des informations en provenance des éléments de détection (capteurs) et du pupitre opérateur
(BP).
Les sorties transmettent des informations aux pré-actionneurs (relais, électrovannes …) et aux éléments de
signalisation (voyants) du pupitre.
Elles sont destinées à recevoir l'information en provenance des capteurs et adapter le signal en le mettant en
forme, en éliminant les parasites et en isolant électriquement l'unité de commande de la partie opérative.
L’électronique de traitement de l’API fonctionne sous une tension de 5V. Le capteur fournissant une tension de 24V,
la carte des entrées doit adapter le signal.
Fonctionnement de l’interface d’entrée :
Lors de la fermeture du capteur ;
• LED1 signal que l’entrée automate est actionnée.
• La led D’ d’optocoupleur s’éclaire.
• Le photo transistor T’ de l’optocoupleur devient passant, donc La tension Vs=0V
Donc lors de l’activation d’une entrée automate, l’interface d’entrée envoie un 0 logique à l’unité de traitement et un 1
logique lors de l’ouverture du contact du capteur (entrée non actionnée).
- Cartes de comptage rapide : elles permettent d'acquérir des informations de fréquences élevées
incompatibles avec le temps de traitement de l'automate. (signal issu d'un codeur de position).
- Cartes de commande d'axe : Elles permettent d'assurer le positionnement avec précision d'élément
mécanique selon un ou plusieurs axes. La carte permet par exemple de piloter un servomoteur et de recevoir
les informations de positionnement par un codeur. L'asservissement de position pouvant être réalisé en
boucle fermée.
- Cartes d'entrées / sorties analogiques : Elles permettent de réaliser l'acquisition d'un signal analogique et
sa conversion numérique (CAN) indispensable pour assurer un traitement par le microprocesseur. La
fonction inverse (sortie analogique) est également réalisée. Les grandeurs analogiques sont normalisées : 0-
10V ou 4-20mA.
Tous les automates actuels sont équipés d'une alimentation 240 V 50/60 Hz, 24 V DC. Les entrées sont en
24 V DC et une mise à la terre doit également être prévue.
I.7- Jeu d'instructions et langages de programmation:
Le processeur peut exécuter un certain nombre d’opérations logiques; l’ensemble des instructions
booléennes des instructions complémentaires de gestion de programme (saut, mémorisation, adressage ...)
constitue un jeu d’instructions.
Chaque automate possède son propre jeux d'instructions. Mais par contre, les constructeurs proposent tous
une interface logicielle de programmation répondant à la norme CEI1131-3. Cette norme définit cinq
langages de programmation utilisables, qui sont :
Le langage à relais Ladder est basé sur des symboles simples et compréhensibles par les techniciens qui ont
l’habitude de manipuler les schémas de câblage classiques. Les symboles les plus utilisés dans step7 sont
donnés au tableau suivant :
Chapitre II :
ADRESSAGE
Dans cette partie nous allons voir comment adresser les différentes voies des modules.
A savoir STEP 7 attribue à chaque numéro d’emplacement une adresse initiale définie pour les modules. L’adressage axé
sur les emplacements est l’adressage par défaut,
Adressage libre
Dans le cas de l’adressage libre, vous pouvez attribuer à chaque module une adresse quelconque à l’intérieur de la plage
d’adresses gérée par la CPU.
L’adressage libre n’est possible que pour des S7-300 comportant les CPU 315, 315-2 DP, 316-2 DP et 318-2 DP.
Introduction
Lors de l’adressage axé sur les emplacements (adressage par défaut), une adresse initiale de module est
affectée à chaque numéro d’emplacement. Selon le type de module, il s’agit d’une adresse numérique ou
analogique, ça dépend du module qu’on va mettre en première position par rapport bien sure au modules de
signaux SM.
Dans ce chapitre, nous vous présentons quelle adresse initiale de module est affectée à quel numéro d’emplacement.
Vous aurez besoin par la suite de ces informations pour déterminer les adresses initiales des modules utilisés.
La figure suivante présente à titre d’exemple les adresses par défaut créées lorsqu’un module TOR est placé
sur l’emplacement 4, à savoir lorsque l’adresse initiale des modules est 0.
Si par exemple l’adresse initiale attribuée au module est 4 comme c’est toujours le cas dans la configuration
matériel relative à ce que nous avons entre les mains comme CPU (La 314 de siemens) que nous utiliserons
dans nos TD et TP, nous aurons les adresses suivantes
De adresse 4.0 jusqu’à l’adresse 4.7 (le premier octet)
Et les adresses de l’octet suivant : de l’adresse 5.0 jusqu’à l’adresse 5.7, c'est-à-dire 16 adresses en tout.
Nous remarquons dans cet exemple que l’emplacement 3 n’a pas été affecté car on n’utilise pas de coupleur.
ATTENTION A LA NUMEROTATION.
MD 10 comprend les mots MW 10 et MW 12 soit les octets MB 10, MB 11, MB12, MB13
Les doubles mots sont donc adressés de 4 en 4 dans la mémoire, les mots de 2 en 2.
Exemple :
MD 10 = AABB CCDD en hexadécimal.
alors en hexadécimal :
MW10 = AABB
MW12 = CCDD
MB 10 = AA
MB 11 = BB
MB 12 = CC
MB 13 = DD
Si MB 10 = 1000 0011 en binaire
Les Bits M 10.2 à M 10.6 valent 0, les bits M10.0, M10.1 et M10.7 valent 1.
Ce type de numérotation s’applique à tous les types de variables (A.., E..,P..., DB..,L..)
Exemple d'organisation et de numérotation
La lettre M peut être remplacée par E pour les entrées (I en IEC) ,A pour les sorties (Q en IEC), etc.
MOT X MOT X DOUBLE MOT DOUBLE MOT DOUBLE MOT DOUBLE MOT
BIT X,0 BIT X,1 BIT X,2 BIT X,3 BIT X,4 BIT X,5 BIT X,6 BIT X,7 BYTE X
modulo 2 modulo 2 Modulo 4 Modulo 4 Modulo 4 Modulo 4
M0.0 M0.1 M0.2 M0.3 M0.4 M0.5 M0.6 M0.7 MB0
MW0
M1.0 M1.1 M1.2 M1.3 M1.4 M1.5 M1.6 M1.7 MB1
MW1 MD0
M2.0 M2.1 M2.2 M2.3 M2.4 M2.5 M2.6 M2.7 MB2
MW2 MD1
M3.0 M3.1 M3.2 M3.3 M3.4 M3.5 M3.6 M3.7 MB3
MW3 MD2
M4.0 M4.1 M4.2 M4.3 M4.4 M4.5 M4.6 M4.7 MB4
MW4 MD3
M5.0 M5.1 M5.2 M5.3 M5.4 M5.5 M5.6 M5.7 MB5
MW5 MD4
M6.0 M6.1 M6.2 M6.3 M6.4 M6.5 M6.6 M6.7 MB6
MW6 MD5
M7.0 M7.1 M7.2 M7.3 M7.4 M7.5 M7.6 M7.7 MB7
MW7 MD6
M8.0 M8.1 M8.2 M8.3 M8.4 M8.5 M8.6 M8.7 MB8
MW8 MD7
M9.0 M9.1 M9.2 M9.3 M9.4 M9.5 M9.6 M9.7 MB9
MW9 MD8
M10.0 M10.1 M10.2 M10.3 M10.4 M10.5 M10.6 M10.7 MB10
MW10 MD9
M11.0 M11.1 M11.2 M11.3 M11.4 M11.5 M11.6 M11.7 MB11
MW11 MD10
M12.0 M12.1 M12.2 M12.3 M12.4 M12.5 M12.6 M12.7 MB12
MW12 MD11
M13.0 M13.1 M13.2 M13.3 M13.4 M13.5 M13.6 M13.7 MB13
MW13 MD12
M14.0 M14.1 M14.2 M14.3 M14.4 M14.5 M14.6 M14.7 MB14
MW14 MD13
M15.0 M15.1 M15.2 M15.3 M15.4 M15.5 M15.6 M15.7 MB15
MW15 MD14
M16.0 M16.1 M16.2 M16.3 M16.4 M16.5 M16.6 M16.7 MB16
MW16 MD15
M17.0 M17.1 M17.2 M17.3 M17.4 M17.5 M17.6 M17.7 MB17
MW17 MD16
M18.0 M18.1 M18.2 M18.3 M18.4 M18.5 M18.6 M18.7 MB18
MW18 MD17
M19.0 M19.1 M19.2 M19.3 M19.4 M19.5 M19.6 M19.7 MB19
MW19 MD18
M20.0 M20.1 M20.2 M20.3 M20.4 M20.5 M20.6 M20.7 MB20
MW20 MD19
M21.0 M21.1 M21.2 M21.3 M21.4 M21.5 M21.6 M21.7 MB21
MW21
M22.0 M22.1 M22.2 M22.3 M22.4 M22.5 M22.6 M22.7 MB22
Dans la fenêtre « en ligne », en entrant dans le programme (OB1 ou autres blocs), on peut directement
visualiser l'état des variables dans le programme. On choisit pour cela « test -> visualiser ». En CONT, les
schémas deviennent en pointillés au endroits où « le courant n'arrive pas ». En LIST, un tableau est affiché à
coté du programme, spécifiant les valeurs (0 ou 1) des opérandes, en LOG des 0 ou 1 sont écrits sur les
liaisons. En Grafcet, les étapes actives sont en vert, les transitions validées sont montrées comme dans le
langage correspondant, les valeurs des tempos, compteurs... sont notées à côté du schéma.
On peut également lister l'état de toutes les variables, voire les modifier. Pour cela, se placer sur les blocs
(fenêtre gauche du projet), puis dans la fenêtre droite (il s'y trouve au moins OB1) cliquer avec le bouton
droit et insérer une table des variables (VAT).
PLCSIM est un logiciel de simulation d'automates livré avec STEP7. On peut donc tester un programme sur
un PC non relié aux automates (mais avec STEP7 installé, évidemment). Pour tester un programme, il n'est
pas nécessaire d'avoir défini de matériel. Sinon, enregistrez-sous, puis supprimez la description du matériel
(cliquez dessus avec le bouton de droite par exemple), et répondez NON quand il vous demande s'il faut
également supprimer le programme. Démarrez le simulateur (outils -> simulation de modules ou l'icône
représentant l'automate virtuel dans un nuage), affichez les E/S (insertion ->entrées ou sorties). Transférez le
programme (par exemple par « système cible ->partenaires accessibles » et un copier-coller). Vous pouvez
désormais tester (en mode RUN).