Page 1 sur 1

SFB14 SFB15 COM API

Posté : 16 nov. 2016, 21:57
par lolodu013
Bonjour,

Quand deux API s7 - 400 communique sur un profibus. Et que la programmation est faite avec la méthode PUT et GET:

CALL #GET1
REQ :=#COM[1]
ID :=W#16#2
NDR :=#GET1.NDR
ERROR :=#GET1.ERROR
STATUS:=#GET1.STATUS
ADDR_1:=P#DB104.DBX0.0 BYTE 19 // ADRESSE DANS esclave
ADDR_2:=P#DB174.DBX0.0 BYTE 100
ADDR_3:=
ADDR_4:=
RD_1 :=P#DB104.DBX0.0 BYTE 19 // ADRESSE DANS API maitre
RD_2 :=P#DB174.DBX0.0 BYTE 100
RD_3 :=
RD_4 :=


et

U "TS_BAC34".MaP004
= "TC_BAC2".MaP004

CALL #PUT1
REQ :=#COM[2]
ID :=W#16#2
DONE :=#PUT1.DONE
ERROR :=#PUT1.ERROR
STATUS:=#PUT1.STATUS
ADDR_1:=P#DB105.DBX0.0 BYTE 5 // ADRESSE DANS API esclave
ADDR_2:=P#DB175.DBX0.0 BYTE 30
ADDR_3:=
ADDR_4:=
SD_1 :=P#DB105.DBX0.0 BYTE 5 // ADRESSE DANS API maitre
SD_2 :=P#DB175.DBX0.0 BYTE 30
SD_3 :=
SD_4 :=

Si je souhaite modifier les volumes de DB 175 et/ou 105, je suis bien limité à 244 BYTES???

Et si je souhaite modifié ces volumes, dois je recharger les SFB14 et 15???


Quel galère la com...mais quel galère..... :roll:

Re: SFB14 SFB15 COM API

Posté : 17 nov. 2016, 12:09
par dehell
Bonjour,
Normalement les blocs SFB sont des bloc inclus dans la CPU, pas besoin de les recharger.
Pour la longueur maxi, je sais pas : dans l'aide il n'y a rien?

Re: SFB14 SFB15 COM API

Posté : 18 nov. 2016, 13:10
par Damall
Salut,

je confirme ce que dit Dehell, les SFB14 et SFB15 sont déjà dans la CPU, tu n'as pas besoin de les charger.

Pour ce qui est la longueur des DB d’échange, cela dépend du réseau que tu utilise, je les utilise régulièrement en ETHERNET, et la limite c'est aux alentour de 1024 octets (je ne me souviens plus exactement), et tu as raison, pour le PROFIBUS c'est aux alentour de 244 octets. Je ne sais plus ou je l'ai lu, mais je l'ai lu.

@+

Re: SFB14 SFB15 COM API

Posté : 18 nov. 2016, 20:38
par lolodu013
bonsoir,

effectivement ce type de bloc est déjà inclus selon les modeles CPU.Mon soucis était plus simple.... oublié de chargé un DB..... :roll: .... en tout cas merci pour votre aide