Créer un programme automate sur SIEMENS TIA Portal

Statut
N'est pas ouverte pour d'autres réponses.

Kévin 🚀

Administrateur
Administrateur
Inscription
18 Décembre 2012
Messages
4 822
Réactions
5 531
Points
27 882
Bonjour à tous,

Aujourd'hui je vais vous montrer comment créer un programme automate sur la suite logicielle TIA Portal de SIEMENS, ce tutoriel aura plusieurs étapes :
  • Création du projet
  • Configuration matérielle
  • Création d'un bloc de fonction et d'un bloc de donnée.

Partie N°1 : Création du projet

Commencez par ouvrir votre logiciel TIA Portal V15, lorsque vous êtes sur la page d'accueil du logiciel, cliquez sur "Créer un projet" :

1.PNG


Il faut remplir les différents champs demandés :
  • Nom du projet : Vous devez mettre le nom de votre projet
  • Chemin : Très important, c'est le répertoire où sera créé le projet automate
  • Version : Laissez celle par défaut
  • Auteur : Mettez votre nom
  • Commentaire : Facultatif, selon votre humeur
Vous pouvez maintenant cliquer sur le bouton "Créer".



Partie N°2 : Mise en route du projet - Configuration matérielle :

Cette étape est la plus importante car elle doit être correctement réalisé pour garantir le bon fonctionnement du projet. Vous devez vous munir des références des pièces automates (CPU, Stations déportés, Cartes entrées, sorties, IHM etc ...).

Pour ce tutoriel, j'ai choisi les pièces suivantes :
  • Automate SIEMENS S7-1500 ET200SP (6ES7 510-1DJ01-0AB0 V2.1)
  • 2 Carte de 8 entrées TOR (6ES7 131-6BF01-0BA0)
  • 2 Carte de 8 sorties TOR (6ES7 132-6BF00-0BA0)
  • Carte de 4 entrées analogique (6ES7 134-6HD00-0BA1)
  • Carte de 4 sorties analogiques (6ES7 135-6HD00-0BA1)
On commence par ajouter la CPU en fonction de la référence choisie, pour ce faire il faut cliquer sur "Contrôleurs", une liste de CPU apparaît, j'ai un ET200SP donc je clique sur SIMATIC ET200 CPU -> ET 200SP CPU -> CPU 1510SP-1 PN et je sélectionne la bonne référence pièce.

Ne pas oublier de donner un nom à votre appareil ;)

2.PNG


Ensuite vous pouvez cliquer sur "Ajouter".
Après avoir ajouté la CPU, le logiciel va ouvrir la configuration matérielle pour ajouter les différentes cartes. Je commence par ajouter la carte d'entrée :

3.PNG


Dans le catalogue matériel je vais chercher la carte, puis pour l'ajouter vous pouvez glisser/déposer ou double cliquer sur la référence.

On fait de même pour les autres cartes, ce qui nous donne au final :

4.PNG


Notre configuration matérielle est terminée, nous allons effectuer la configuration réseau :

Pour l'exemple les paramètres sont :
  • Adresse IP : 192.168.10.1
  • Sous réseau : 255.255.254.0
  • Passerelle : 192.168.10.100
Pour configurer cette partie, double-cliquez sur la prise RJ45 en haut à gauche de la CPU, cela vous ouvrira un menu en bas de la fenêtre TIA Portal, en commence par ajouter un sous-réseau, donc cliquez sur "Ajouter un sous-réseau".

5.PNG


Ensuite dans la rubrique "Protocole IP" on ajoute les paramètres ci-dessus :

6.PNG


Pensez à enregistrer régulièrement le projet !

Maintenant connectez votre automate et votre ordinateur via un câble RJ45 pour effectuer l'affectation de l'adresse IP, pensez à mettre votre carte réseau ethernet sur les mêmes paramètres que le projet automate comme par exemple :
  • Adresse IP : 192.168.10.199
  • Sous réseau : 255.255.254.0
  • Passerelle : 192.168.10.100
Une fois la connexion effectuée rendez vous dans "En ligne et diagnostic" puis dans "Fonctions" -> "Affecter adresse IP".
Lancer la recherche du matériel via l'adresse MAC, une fenêtre va s'ouvrir, mettez les paramètres suivants :
  • Type d'interface PG/PC : PN/IE
  • Interface : Votre carte ethernet
Puis lancer la recherche du matériel via "Lancer la recherche".

7.PNG


Une fois l'abonné trouvé, il apparaîtra dans la liste, il vous reste plus qu'à sélectionner l'appareil et cliquer sur "Appliquer".
Et vous pourrez affecter l'adresse IP.

La configuration matérielle est désormais terminée :)



Partie N°3 : Création d'un bloc de fonction et d'un bloc de donnée :

Le bloc de fonction (FC) vous permettra d'écrire votre programme en LIST, Ladder par exemple, il est donc indispensable de créer des blocs sinon votre automate n'effectuera aucune action, c'est dommage ^^. Les blocs de données eux sont présents pour stocker des informations comme des mots, booléens, entier etc ..., nous reviendrons dessus après.

Pour ajouter un bloc de fonction rendez-vous dans "Bloc de programme" puis cliquez sur "Ajouter nouveau bloc", une fenêtre va s'ouvrir et vous demandera :
  • Nom : FC1 Lumières
  • Langage : CONT (Contact)
  • Numéro : 1 et choix positionné sur Manuel
8.PNG


Puis cliquez sur "OK" cela va ouvrir le bloc de fonction (FC1).
Nous avons notre bloc de fonction mais aucune entrée(s) / sortie(s) est configurée dans les tables de variables, donc on va configurer une entrée et une sortie pour créer un morceau de programme dans le FC1.

Allez dans "Variables API" puis cliquez sur "Insérer une nouvelle table de variables", cela va vous ajouter une table, renommez-la par "Entrées_TOR" puis ouvrez la table en double cliquant dessus.
Nous allons créer deux variables d'entrées correspondant à un bouton on et un bouton off :

9.PNG


Il nous faut aussi des sorties donc même mode opératoire mais cette fois la table de variable s'appellera "Sorties_TOR".
A l’intérieur de celle-ci j'ai créé la sortie "Voyant_vert" :

10.PNG



Maintenant que nous avons quelques entrées/sorties, nous allons créer un bloc de données DB, même principe que pour l'ajout du FC1 :

  • Nom : DB1 Lumières
  • Type : DB Global
  • Numéro : 1 et choix positionné sur Manuel

11.PNG


Cliquez sur "OK" pour l'ajouter.

Le bloc s'ouvre, par défaut sur cette page vous n'avez pas le décalage d'affiché cela correspond à l'adressage de la variable dans le DB, pour ce faire effectuez un clique droit sur le bloc -> Propriétés -> Attributs et décochez la case "Accès au bloc optimisé".

Valider la fenêtre :

12.PNG


Après validation la colonne décalage s'affiche dans le DB.

A l'intérieur de ce DB1, nous allons créer une variable permettant de sauvegarde l'état du voyant vert, c'est le même principe que pour l'ajout d'une entrée/sortie :

13.PNG


Ensuite faite un clique droit sur le bloc DB1 puis Compiler -> Logiciel afin de mettre à jour le décalage.

Maintenant nous pouvons créer un morceau de programme dans le FC1 afin d'allumer une lampe :

14.PNG



C'est très simpliste pour l'exemple, ça permet de comprendre comment on peut utiliser un DB dans FC ;)

La dernière étape pour que le FC1 fonctionne dans l'automate est d'indiquer qu'il existe dans le Main (OB1) donc ouvrez le bloc OB1

Sur le réseau 1 de l'OB1 ajoutez une boite vide puis taper le nom du FC concerné :

15.PNG


Sauvegardez le projet, la dernière action à effectuer et de charger le programme complet dans l'automate et tester ce petit fonctionnement ;)

J'espère que ce tutoriel vous aura plus, n'hésite pas à me contacter si vous avez des questions.
Bon courage aux automaticiens ;)

Kévin
 

Reality King

Premium
Inscription
23 Septembre 2011
Messages
4 181
Réactions
2 838
Points
22 958
Le code lader est trop complexe pour rien. D:

Avec 2 inputs et 1 output, tu peux tout faire en 1 seule ligne avec 2 contacts (1 NC et 1 NO) + ton output. :nerd:
 

Kévin 🚀

Administrateur
Administrateur
Inscription
18 Décembre 2012
Messages
4 822
Réactions
5 531
Points
27 882
Le code lader est trop complexe pour rien. D:

Avec 2 inputs et 1 output, tu peux tout faire en 1 seule ligne avec 2 contacts (1 NC et 1 NO) + ton output. :nerd:
Le but est de simplifier la lecture pour un tutoriel destiné au débutant, à savoir une ligne pour allumer, une autre pour éteindre afin de bien voir les deux événements.
Sinon niveau complexité ça reste très basique D:

Je conviens que dans un vrai programme machine, le code doit être optimisé.
 

Reality King

Premium
Inscription
23 Septembre 2011
Messages
4 181
Réactions
2 838
Points
22 958
Tu devrais aussi faire un petit tutoriel sur le ladder. :oui:
Qui explique les contacts NO/NC et quelques comparaisons.
Comme ça les gens pourront comprendre pourquoi le faire en 1 ligne simplifiée est mieux, et si ils ne sont pas trop stupides, je veux dire ils comprendront la logique d'avoir un contact NO et un contact NC sur la même ligne. :kappa:
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut