 Librairies

Les librairies ISaGRAF constituent l'interface entre le développement des applications et les ressources logicielles et matérielles du système cible ISaGRAF. Il y a une librairie pour chaque type d'interface. Le gestionnaire de librairies d'ISaGRAF est dédié au constructeur de matériel ou à l'ingénieur informaticien. Il est utilisé pour la description des interfaces des ressources qu'il ajoute à l'automate.

Gestion des éléments

Configurations d'E/S

Equipements complexes d'E/S

Cartes d'E/S

Fonctions et blocs fonctionnels en langage IEC

Fonctions et blocs fonctionnels en C

Fonctions de conversion

Archiver les éléments de librairie

Le gestionnaire de librairies d'ISaGRAF montre les éléments d'une des librairies ISaGRAF. Dans la partie gauche de la fenêtre apparaît la liste des éléments de la librairie sélectionnée. Dans la partie droite est affichée la fiche technique (guide d'utilisation) de l'élément sélectionné dans la liste. Les menus du gestionnaire de librairies regroupent les commandes permettant de créer, définir et modifier les éléments de la librairie sélectionnée. La commande "Autre librairie" permet d'ouvrir une autre librairie. La boîte de sélection à gauche de la barre d'outil peut également être utilisée pour sélectionner une librairie:


Gestion des éléments

Utilisez les commandes du menu "Fichier" pour créer et manipuler les élémernts de la librairie sélectionnée.

Créer un nouvel élément

Manipuler les éléments existants

Mots de passe

Compilation des fonctions et blocs fonctionnels

Fiches techniques

Paramètres

Code source


Créer un nouvel élément

Utilisez la commande "Nouveau" du menu "Fichier" pour créer un nouvel élément dans la librairie sélectionnée. Entrez le nom du nouvel élément en respectant les règles de nomenclature suivantes :

•	la longueur du nom ne doit pas excéder 8 caractères,

•	le premier caractère doit être une lettre,

•	les caractères suivants doivent être des lettres, des chiffres ou '_'.

•	Les majuscules et les minuscules ne sont pas différenciées.

Un commentaire est associé à chaque élément de librairie. Le texte de ce commentaire est saisi à la création de l'élément. Quand le nouvel élément est créé, vous devez saisir :

•	ses paramètres pour une carte d'E/S,

•	sa définition pour une configuration d'E/S

•	son interface pour une fonction ou un bloc fonctionnel.

Quand une conversion, une fonction "C" ou un bloc fonctionnel "C" est créé, la trame complète de son code source "C" est automatiquement générée.


Manipuler les éléments existants

La commande "Fichier / Renommer" vous permet de changer le nom et le commentaire de l'élément sélectionné dans la liste. La commande "Fichier / Copier" vous permet de copier l'élément sélectionné de la librairie active dans un autre élément de la même librairie. Si l'élément de destination existe déjà, tout son contenu sera écrasé par la copie. S'il n'existe pas encore, il sera automatiquement créé. La commande "Fichier / Supprimer" détruit l'élément sélectionné et le retire de la librairie. Tous les composants de l'élément sont détruits. Les composants suivants sont manipulés par les commandes "Renommer", "Copier" et "Supprimer":

•	fiche technique

•	définition complète pour une configuration d'E/S

•	paramètres d'une carte ou d'un équipement complexe d'E/S

•	interface pour une fonction ou d'un bloc fonctionnel

•	code source d'une fonction écrite en langage IEC

•	code source C des fontions, blocs fonctionnels et fonctions de conversion

si l'élément est une conversion, une fonction ou un bloc fonctionnel, son nom n'est pas automatiquement remis à jour dans son code source "C" par les commandes "Copier" et "Renommer".

si l'élément est une fonction en langage IEC, le nom du paramètre de retour n'est pas mis à jour par les commandes "Renommer" ou "Copier".


Mots de passe

La commande "Fichier / Mot de passe"permet de protéger l'élément de librairie sélectionné à l'aide de mots de passe. Consultez la section "Protection par mots de passe" à la fin de la première partie de ce document pour plus de détails sur le système de protection et les niveaux d'accès. La protection est dédié à l'élément sélectionné et n'influe pas sur les autres éléments ni les autres librairies ISaGRAF.


Compilation des fonctions et blocs fonctionnels

Quand la librairie des fonctions ou blocs fonctionnels écrits en langage IEC est sélectionnée, la commande "Vérifier/compiler" du menu "Fichiers" permet de vérifier la syntaxe de la fonction ou du bloc et de générer son code objet. Les fonctions et les blocs doivent être compilés avant d'être utilisés dans les projets ISaGRAF. Cette commande est sans effet si une autre librairie est sélectionnée.


Fiches techniques

La commande "Edition / Fiche technique" lance l'édition de la fiche technique de l'élément sélectionné dans la librairie. L'édition se fait à l'aide de l'éditeur de texte d'ISaGRAF. La fiche technique d'un élément est son guide d'utilisation. Elle sera consultée par le programmeur automaticien lors de l'intégration de l'élément dans une application ISaGRAF. La fiche technique doit en particulier présenter la description générale de la fonction de l'élément, la description détaillée de son interface de programmation ou de ses paramètres, son contexte et ses limites d'utilisation., et des exemples d'utilisation ou cas typiques.

La commande "Outils / Format de fiche technique" vous permet de définir un format standard pour tous les éléments de la librairie sélectionnée. Cette trame sera reprise pour initialiser la fiche technique de chaque nouvel élément créé dans la librairie. Cette fonction permet de réduire le travail de saisie des fiches, et d'assurer un aspect cohérent pour tous les éléments d'une même librairie.


Paramètres

Les paramètres d'un élément décrivent l'interface entre son implémentation logicielle et son utilisation dans une application ISaGRAF.

Les paramètres ont une signification différente pour chaque type de librairie. Les paramètres d'une configuration d'E/S définissent un ensemble de cartes d'E/S et des noms par défaut pour chacune des voies. Les paramètres d'une carte ou d'un équipement complexe d'E/S définissent la configuration matérielle et logicielle de la carte. Les paramètres d'une fonction ou d'un bloc fonctionnel décrivent son interface, selon les règles sémantiques d'appel de fonction du langage ST. Il n'y a pas de paramètre pour une fonction de conversion, car elle utilise une interface prédéfinie, et non modifiable.


Code source

L'atelier ISaGRAF permet à l'informaticien de gérer le code source des conversions, fonctions et blocs fonctionnels de la librairie. Le code source d'une fonction ou d'un bloc en langage IEC est un texte ou un diagramme correspondant au langage choisi pour la fonction. Le code source d'un élément "C" est divisé en deux fichiers: un fichier de définitions qui contient la description exacte de son interface, conformément à la définition des paramètres de l'élément, et un fichier de code source qui contient l'implémentation de la fonction "C" réalisée pour l'élément.

Le gestionnaire de librairie d'ISaGRAF génère automatiquement la trame du code source quand un nouvel élément est créé. Il crée également, et tient à jour, le fichier de définitions, à chaque fois que les paramètres de l'élément sont modifiés. L'informaticien peut utiliser l'éditeur de texte d'ISaGRAF pour compléter le fichier de code source.


Configurations d'E/S

La librairie de configurations d'E/S d'ISaGRAF offre un moyen facile et rapide pour initialiser les nouveaux projets ISaGRAF avec une configuration d'E/S pré-établie. Une configuration définit:

•	un ensemble de cartes et d'équipements complexes

•	des valeurs par défaut pour les paramètres des cartes

•	des noms par défaut pour les voies des cartes

Quand un nouveau projet ISaGRAF est créé avec une configuration d'E/S, le câblage des E/S correspondant est automatiquement réalisé, et les variables d'E/S associées aux voies des cartes sont directement déclarées dans le dictionnaire du projet créé.

 La définition d'une configuration d'E/S est réalisée à l'aide de l'éditeur de câblage d'E/S d'ISaGRAF (le même outil utilisé pour les projets). Référez-vous à la section "Câblage des E/S" dans ce document pour une description complète de cet outil. Quand une carte est insérée dans une configuration, toutes ses voies sont nommées avec des libellés standard. Le nom standard d'une voie d'E/S respecte le format suivant:

<direction><type><emplacement>_<voie>

Le premier caractère indique la direction du canal d'E/S:

"I"	en entrée

"Q"	en sortie

Le second caractère indique le type de donnée associée:

"X"	booléen

"D"	analogique

"M"	message

Voici des exemples de noms standards pour des voies d'E/S:

IX0_7	entrée booléenne - carte #0 - voie #7

QD2_4	sortie analogique - carte #2 - voie #4

La commande de câblage des voies de l'éditeur de câblage peut être utilisée pour modifier le nom par défaut proposé par ISaGRAF. Les noms associés aux voies peuvent être librement modifiés, ou supprimés.


Equipements complexes d'E/S

ISaGRAF impose que toutes les voies d'une carte d'E/S simple aient le même type (booléen, analogique ou message) et la même direction (entrée  ou sortie). Un équipement d'E/S complexe représente un dispositif d'E/S mélant des canaux de type et de direction différents. Un équipement complexe est représenté comme une liste de cartes élémentaires, et n'utilise qu'un emplacement dans le rack de câblage de l'application.

 Pour définir un équipement complexe, il faut définir chacun de ses composants comme une carte élémentaire. Chaque carte élémentaire doit être nommée. Il faut ensuite entrer les paramètres de chacune des cartes composant l'équipement. Les composants d'un équipement complexe sont définis dans une boîte de dialogue.

Le bouton "Ajoute" permet d'ajouter une nouvelle carte élémentaire à la fin de la liste existante. Le bouton "Insère" permet d'insérer une carte à la position sélectionnée. Le bouton "Supprime" retire la carte élémentaire sélectionnée de la liste. Les bouton "Renomme" et "Paramètres" permettent de définir le nom et les paramètres de la carte élémentaire sélectionnée dans la liste.Consultez la section suivante de ce chapitre pour une description complète des paramètres d'une carte. Un équipement complexe peut grouper jusqu'à 16 cartes élémentaires. Le nom d'une carte (dans l'équipement), ne peut pas excéder 8 caractères.


Cartes d''E/S

La librairie ISaGRAF des cartes d'E/S fournit une interface standard entre les applications développées et leur implémentation sur un matériel. Pendant la programmation de l'application, toutes les variables d'E/S seront câblées sur les voies des cartes d'E/S implantées dans l'automate. Une carte d'E/S ISaGRAF est définie par un nom et une "Clé OEM" qui identifie son constructeur. Les autres paramètres de la carte d'E/S décrivent la topologie de la carte (nombre de voies, direction et type des voies), et sa configuration logicielle ou matérielle.

Paramètres généraux

Paramètres OEM


Paramètres généraux

On distingue deux types de paramètres pour une carte d'E/S. Les paramètres communs sont définis pour toutes les cartes de la librairie ISaGRAF. Les paramètres OEM sont spécifiques à l'implémentation de la carte, et sont définis par son constructeur. Les paramètres communs sont saisis dans la partie supérieure de la boîte de dialogue pour la saisie des paramètres. Ces paramètres (en plus du nom de la carte d'E/S) constituent l'interface ISaGRAF standard pour une carte d'E/S.

Le "Code clé OEM" est un nombre qui identifie le constructeur de la carte. Toutes les cartes définies par le même constructeur ont la même clé OEM. La clé OEM est un nombre non signé de 16 bits, saisie dans un format hexadécimal. La clé OEM réservée pour CJ International est "1".

Les paramètres principaux définissent la topologie de la carte. Le nombre de voies définit le nombre de canaux d'E/S disponibles sur la carte. Le type de la carte indique le type des variables qui peuvent être câblées sur la carte. La direction définit si les variables câblées sur la carte sont des variables d'entrée ou de sortie.

Note: ISaGRAF ne permet pas de grouper des variables de type ou de direction différents sur une même carte d'E/S.


Paramètres OEM

Les paramètres OEM sont saisis dans la partie inférieure de la boîte de dialogue. Ces paramètres sont choisis par le constructeur de la carte. Ils sont spécifiques pour chaque carte. Il y a au maximum 16 paramètres OEM pour une carte. Une carte peut ne pas avoir de paramètre OEM. Le gestionnaire de librairies d'ISaGRAF permet au concepteur de la carte de définir l'identification et le format de chacun de ces paramètres, et la façon dont ils seront renseignés par l'automaticien.

La partie gauche de la boîte de dialogue contient la liste des paramètres OEM. Chaque paramètre est identifié par un nom et un numéro logique, entre 0 et 15. La partie droite de la boîte de dialogue contient la description détaillée du paramètre sélectionné dans la liste. Sélectionnez un paramètre dans la liste pour accéder à sa description. Pressez le bouton "Effacer" pour effacer la description du paramètre OEM sélectionné, et le retirer de la liste des paramètres. Attention: cette commande ne peut pas être annulée.

Le nom d'un paramètre OEM est le nom utilisé pour identifier le paramètre pendant le câblage des E/S, si le champ doit être renseigné par l'automaticien. Le nom d'un paramètre doit respecter les règles suivantes :

•	la longueur du nom ne doit pas excéder 16 caractères

•	le premier caractère doit être une lettre

•	les caractères suivants doivent être des lettres, des chiffres ou '_'

•	les majuscules et les minuscules ne sont pas différenciées

Le type d'un paramètre définit son format interne, et son format de saisie pendant le câblage des E/S. Voici la liste des différents formats internes:

word	mot non signé de 16 bits

long	mot non signé de 32 bits

word hexa	mot non signé de 16 bits

long hexa	mot non signé de 32 bits

boolean	mot non signé de 16 bits (bit 0 seul représentatif)

character	mot non signé de 16 bits (octet poids faible seul représentatif)

string	table de 16 octets contenant une chaine terminée par 0

float	nombre signé flottant sur 32 bits en simple précision

Voici la liste des différents formats de saisie:

word	mot décimal non signé

long	mot décimal long

word hexa	mot hexadécimal non signé

long hexa	mot hexadécimal long

boolean	"true" ou "false"

character	caractère unique

string	chaîne ascii (15 caractères max)

float	nombre signé flottant en simple précision

Le champ "accès" permet de dfinir le niveau d'acessibilité du paramètre pour l'utilisateur final. Si l'option "Modifiable" est sélectionnée, le paramètre est visible et peut être modifié pendant le câblage des E/S. La valeur du paramètre est présentée par défaut pour la saisie. Si l'option "Caché" est sélectionnée, la paramètre n'est pas visible pendant le câblage, et sa valeur est une constante. Le choix "Lecture seule" indique que le paramètre ne peut pas être modifié (valeur constante), mais qu'il reste visible pendant le câblage.


Fonctions et blocs fonctionnels en langage IEC

ISaGRAF gère une librairie de fonctions et de blocs fonctionnels écrits en langages IEC. Les langages disponibles pour décrire une fonction ou un bloc sont le FBD (Function Block Diagram ou logigramme), le LD (Ladder Diagram ou schéma à contact), le ST (Structured Text) et le IL (Instruction list). Notez que le LD et le FBD peuvent être mêlés dans le même diagramme. Le langage SFC (Sequential Function Chart ou Grafcet) ne peut pas être utilisé pour écrire une fonction ou un bloc de la librairie. Le langage associé à une fonction ou un bloc est choisi quand la fonction est créée, et ne peut pas être changé par la suite.

Compiler

Editer le code source

Déclarer des variables locales

Définir l'interface


Compiler

Les fonctions et blocs de la librairie doivent être compilés (vérifiés) avant de pouvoir être intégrés dans des projets ISaGRAF. Aucune autre opération n'est requise pour la gestion de la librairie. Les fonctions et blocs ainsi créés apparaîtront automatiquement dans les menus de sélection de l'éditeur graphique LD/FBD.

Une fonction définie en librairie peut appeler d'autres fonctions de la librairie, mais le système ISaGRAF ne supporte pas la récursivité dans l'appel des fonctions.

Un bloc fonctionnel écrit en langage IEC ne peut pas appeler d'autres blocs fonctionnels (décrits en "C" ou en langage IEC).


Editer le code source

Le code source d'une fonction ou d'un bloc fonctionnel de la librairie est entré à l'aide des outils standards d'ISaGRAF: l'éditeur graphique pour les fonctions et blocs en LD ou FBD, et l'éditeur de texte pour les fonctions et blocs en ST ou IL. Référez-vous aux sections correspondantes dans ce document pour une description détaillée de ces outils. Le générateur de code d'ISaGRAF peut être directement appelé depuis les éditeurs pour compiler les fonctions ou les blocs fonctionnels de la librairie.


Déclarer des variables locales

On peut associer à une fonction ou un bloc fonctionnel de la librairie des variables et définitions de mots équivalents locales. Pour accéder à la déclarartion des objets locaux, utilisez les commandes du menu "Dictionnaire" dans la fenêtre d'édition de la fonction ou du bloc.

Une fonction ou un bloc ne peut pas accéder à une variable globale ou une instance de bloc fonctionnel. Les variables locales d'une fonction doivent être initialisées dans le corps de la fonction.

Les variables locales d'un bloc fonctionnel en langage IEC sont copiées (instanciées) pour chaque utilisation du bloc dans un projet. La valeur des variables locales pour une instance est mémorisée d'un appel à l'autre.


Définir l'interface

Les fonctions et les blocs fonctionnels peuvent avoir jusqu'à 32 paramètres (entrées ou sorties). Une fonction a toujours un paramètre de retour et un seul, qui doit porter le même nom que la fonction, selon les conventions d'écriture du langage ST.

La liste dans la partie supérieure de la fenêtre montre les paramètres de la fonction ou du bloc, dans l'ordre défini par son prototype d'appel: d'abord les paramètres d'appel, et finalement les paramètres de retour. La partie inférieure de la fenêtre montre la description détaillée du paramètre sélectionné dans la liste. Tous les types de données d'ISaGRAF peuvent être utilisés pour un paramètre. Les paramètres de retour doivent être les derniers de la liste. La nomenclature des paramètres doit respecter les règles suivantes:

•	la longueur du nom ne peut pas excéder 16 caractères

•	le premier caractère doit être une lettre

•	les suivants doivent être des lettres, des chiffres ou le souligné

•	les majuscules et les minuscules ne sont pas différenciées

La commande "Insère" permet d'insérer un nouveau paramètre avant le paramètre sélectionné dans la liste. La commande "Supprime" efface le paramètre sélectionné. La commande "Arrange" trie automatiquement les paramètres, et positionne les paramètres de retour en fin de liste.


Fonctions et blocs fonctionnels en C

Les fonctions et blocs fonctionnels "C" sont des fonctions informatiques appelables depuis une application ISaGRAF, conformément aux conventions d'appel définies par les langages ST et FBD.

Les fonctions sont des traitements synchrones. Le cycle d'exécution ISaGRAF est suspendu pendant l'exécution d'une fonction. Les blocs fonctionnels associent des opérations et des données mémorisées cachées. Par exemple, un bloc de comptage regroupe l'opération de comptage et l'état courant du compteur. Les fonctions et les blocs fonctionnels sont généralement utilisées pour étendre les possibilités du langage, accéder aux ressources du système.

 La boîte de dialogue pour la définition des paramètres d'une fonction ou d'un bloc fonctionnel est utilisée pour définir chaque paramètre d'appel ou de retour de l'élément. Utilisez les commandes du menu "Edition" pour définir ou modifier les paramètres de la fonction ou du bloc fonctionnel. Une fonction peut avoir jusqu'à 31 paramètres d'appel, et a toujours un seul paramètre de retour. Un bloc fonctionnel peut avoir jusqu'à 32 paramètres, librement répartis en paramètres d'appel ou de retour. Voici la correspondance entre les types ISaGRAF et les types du langage C:

BOOLEEN	unsigned long	mot de 32 bits non signé : 1=true / 0=false

ANALOGIQUE	long	mot signé de 32 bits

REEL	float	valeur flottante en simple précision (32 bits)

TEMPOR	unsigned long	mot non signé de 32 bits (unité = 1ms)

MESSAGE	char *	chaîne de caractères

Quand un message est passé à une fonction ou un bloc fonctionnel "C", il ne peut pas contenir de caractère nul (code ASCII 00).

Référez-vous au manuel d'utilisation de la cible ISaGRAF pour plus d'information sur la gestion du code "C" d'une fonction ou d'un bloc fonctionnel, et sur la procédure d'intégration avec le système cible ISaGRAF.


Fonctions de conversion

Une fonction de conversion est une fonction "C" appelée par le gestionnaire d'E/S d'ISaGRAF à chaque fois qu'une E/S analogique caractérisée par cette conversion est acquise ou mise à jour.

La fonction donne la relation entre la valeur électrique de la variable (lue sur le capteur ou envoyée vers l'actionneur) et sa valeur physique (utilisée dans les programmes de l'application). Le gestionnaire de librairie d'ISaGRAF permet la gestion du code source "C" d'une fonction de conversion.

Une conversion peut être utilisée pour des variables analogiques entières ou réelles. Pour cette raison, les valeurs passées dans l'interface de la fonction sont des valeurs flottantes. L'interface est la même pour toutes les fonctions de conversion. Sa définition en langage "C" est décrite dans le fichier "TACN0DEF".

Référez-vous au manuel d'utilisation de la cible ISaGRAF pour plus d'information sur la gestion du code "C" d'une fonction de conversion, et sur la procédure d'intégration avec le système cible ISaGRAF.


Archiver les éléments de librairie

Utilisez la commande "Outils / Archiver" pour lancer le gestionnaire d'archivage d'ISaGRAF, qui vous permet de sauvegarder ou de restituer des éléments de la librairie sélectionnée. L'archiveur ne permet pas de gérer les élements des autres librairies. Pour celà, il vous faut tout d'abord sélectionner le type de librairie dans le Gestionnaire de Librairie.