Page 3 sur 15

Re: questions diverses

Posté : 22 nov. 2018, 08:11
par djé
Salut,

Oui les données locales estampillées "L" correspondent à la zone de déclarations temporaires (TEMP). Dans les FC OB et FB.

Donc dans ton cas tu as une zone de déclaration en TEMP avec notamment DW_DUMMY_1 qui est un WORD à l'adresse absolue 0.0 soit LW0.
Donc quand dans le programme on teste L0.3 cela revient à tester le bit 12 du mot DW_DUMMY_1.
(ou n'importe quoi d'autre si DW_DUMMY_1 n'a pas été affecté avant)

Il faut bien garder à l'esrprit que les données locales ne sont valables que si elles sont affectées dans le programme. Sinon elles contiennent des valeurs complètement aléatoires.

Re: questions diverses

Posté : 22 nov. 2018, 16:43
par hdseraf
hdseraf a écrit : 21 nov. 2018, 17:59 Bonjour à tous,
Je viens vous demander de l'aide sur la compréhension du langage List.
Ma première question:
A l'ouverture d'un bloc FB avec un DB instance quelle est la valeur par défaut de AR1 et AR2?

Merci par avance
Bonjour,
je pense avoir compris que AR1 est null ou sans valeur, et AR2 contient l'adresse instance du bloc ouvert en format inter zone.
AR2=84000000=1000 0100 0000 0000 0000 0000 0000 0000=DB0.0

Re: questions diverses

Posté : 22 nov. 2018, 20:33
par Mick1903
Merci Djé Merci pours vos explications précise

Bien cordialement

Mickael

Re: questions diverses

Posté : 01 déc. 2018, 15:21
par Mick1903
Bonjour à tous,

Comment ça se fait que dans la bibliothèque step7 que tous les bloc soient protégés?

Il est possible de "déverrouiller" pour consulter le contenu.

Bon week end a tous

Cordialement,

Mickael

Re: questions diverses

Posté : 02 déc. 2018, 18:37
par djé
Les blocs siemens sont protégés en savoir faire (know how).
Il est possible de les déverrouiller avec un petit utilitaire mais dans la majorité des cas, sans la source (SCL) c'est assez indigeste.

Re: questions diverses

Posté : 09 déc. 2018, 13:24
par Mick1903
Bonjour à tous,
Pour les blocs sources , y-a-t-il une bibliothèque pour les récupérer dans dans un nouveau programme . C'est-à-dire lorsque je crée un nouveau projet est-ce que je peux récupérer un bloc source pour une fonction bien définie dans mon nouveau programme . Est-ce qu'il existe dans SIMATIC une "bibliothèque" avec toutes mes sources créer ultérieurement . Deuxième question est-ce qu'un fichier source peux être retranscrit on a bloc FB ou FC? Merci pour vos réponses bonne journée cordialement Mickael

Re: questions diverses

Posté : 10 déc. 2018, 00:24
par djé
Bonsoir,

Une source SCL peut être à l'origine d'un OB, d'un DB, d'un FC ou d'un FB.
Tu peux créer une bibliothèque perso dans laquelle tu mets les blocs que tu développes et que tu souhaites réutiliser plus tard.

Re: questions diverses

Posté : 12 déc. 2018, 22:04
par Mick1903
Merci Djé pour tes réponses.

Bien cordialement

Re: questions diverses

Posté : 17 déc. 2018, 14:33
par Mick1903
Bonjour à tous,

Quelqu'un pourrait il m'expliquer le rôle et l'utilité des paramètre ANY?

Dans quel but l'utilisé?

Bonne journée à tous

Cordialement,

Merci

Re: questions diverses

Posté : 17 déc. 2018, 15:53
par djé
Salut,

Disons que le type ANY permet de manipuler n'importe quelle Type (-> longueur) de données.
Par exemple si tu dois transférer une zone de mémoire dans un autre zone de mémoire mais que tu ignores la taille, et bien le type ANY te permet de gérer çà.
C'est pas évident à expliquer comme çà car assez pointu.
ANY : s'utilise lorsque le type de données du paramètre effectif est inconnu ou lorsqu'on peut faire appel à un type de données quelconque. Vous trouverez de plus amples informations sur le paramètre ANY dans les paragraphes Format du type de données Paramètre ANY ou Utilisation du type de données Paramètre ANY.
Utilisation du type de données Paramètre ANY
Vous pouvez définir, pour un bloc, des paramètres formels acceptant des paramètres effectifs de n'importe quel type de données. Cela s'avère surtout utile lorsque le type de données du paramètre effectif fourni lors de l'appel du bloc est inconnu ou peut varier (et lorsque tout type de données est acceptable). Dans la déclaration des variables du bloc, vous déclarez le paramètre comme type de données ANY. Vous pourrez ainsi lui affecter un paramètre effectif d'un type de données quelconque dans STEP 7.

STEP 7 réserve 80 bits de mémoire à une variable de type ANY. Lorsque vous affectez un paramètre effectif à un tel paramètre formel, STEP 7 code l'adresse de départ, le type de données et la longueur du paramètre effectif dans ces 80 bits. Le bloc appelé analysera ces 80 bits de données sauvegardées pour le paramètre ANY afin d'obtenir les renseignements nécessaires pour le traitement supplémentaire.

Transmission d'un paramètre effectif à un paramètre ANY

En déclarant un paramètre formel de type de données ANY, vous pouvez lui affecter un paramètre effectif de n'importe quel type de données. Vous pouvez indiquer des paramètres effectifs de types de données suivants dans STEP 7 :

Types de données simples : vous indiquez l'adresse absolue ou le mnémonique du paramètre effectif.

Types de données complexes : vous entrez le mnémonique correspondant (par exemple, tableaux ou structures).

Temporisations, compteurs et blocs : vous précisez leur numéro (par exemple, T1, Z20 ou FB6).