Modbus TCP Kommunikation von SENTRON PAC3200

Vassily

Level-1
Beiträge
40
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
Da ich es immernoch nich geschafft habe eine Kommunikation zwischen SENTRON und ET200S hoffe ich dass mir jemand von euch weiterhelfen kann.
Ich habe wie schon beschrieben eine ET200S und eine SENTRON PAC3200 und möchte eine Kommunikation herstellen. Da die Kommunikation über Profinet geht brauche ich einen Modbus TCP Treiber:
http://support.automation.siemens.c...busTCP.zip?func=cslib.csFetch&nodeid=40119030
Pdf dazu:
http://support.automation.siemens.c.../70131.pdf?func=cslib.csFetch&nodeid=40119023
Diesen Treiber habe ich bereits zu meinem Projekt hinzugefügt. Mein Problem ist dass ich nich genau weiß wie ich diesen Treiber Parametrieren muss. Ich hab mir die Pdf zum Treiber und die Hilfen zu den Bausteinen schon x male durchgelesen aber habs nich hinbekommen weil mir einige Parameter nix sagen und ich nich weiß welche ich ändern muss.
Würd mich sehr freuen wenn mir da jemand helfen kann
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Lars,

habe deine Bausteine zum PAC3200 eingebunden. Habe jedoch noch einige Fragen.

Mit dem Merker 10.0 wird eine Verbindung hergestellt? Und M10.1 ist ein Art Statusbit?

Wie können in diesem Fall die Energiezähler resetet werden? Sonst erfolgt dies über das Setzen von Bit 1 hier Auftrag_1.

Gruß Marcus
 
Mit steigender Flanke am Eingang Connect wird die Verbindung aufgebaut, mit fallender abgebaut. Der Ausgang Connected ist ein Statusbit, ja.
Energiezähler resetten ist nicht drin, dazu müsste das Kommandotelegramm angepasst werden.
 
Hi

Hat noch jemand zu den Links von oben das PDF? Bei Siemens scheint das nicht mehr zur Verfügung zu stehen (klar die wollen open TCP verkaufen)
 
Probier mal bitte :

Hier ist ein Fehler drin: (Vorher hatte ich für die Slave-Adresse 0 drin stehen)

Code:
(*********************************************************)    (*  Build the ModbusTCP Request                          *)
(*********************************************************)  


  KOMTEL : STRUCT     
    HEADER_TI  : WORD := 0;
    HEADER_PI  : WORD := 0;
    HEADER_LFL : BYTE := 0;
    HEADER_HFL : BYTE := 6;  
    SLAVE : BYTE := [COLOR=#ff0000]1[/COLOR]; [COLOR=#ff0000]// Standart Slave-Adresse Sentron[/COLOR]
    FUNCTIONCODE : BYTE := 3;
    STARTREG : INT := 1;
    NOOFREGS : INT := 120;
END_STRUCT;
     
END_VAR


BEGIN
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Oh Sorry. Haben hier zwei Programme vermischt.
Dachte direkt an das PMC_ModbusTCP Multipoint von Siemens das ja nicht mehr weitergeführt wird.
Weil sie ja jetzt vermutlich die Profinetmodule für die PACs verkaufen wollen.

mfG René
 
Moin,

versuche auch gerade ein Pac3200 via PN zu verbinden. Benötige ich nun den Open Modbus Baustein, oder kann ich es auch nur mit dem Baustein realisieren?

CALL "ModbusPAC3200" , "IDB_FB100"
CONNECT :="Connect"
ID :=W#16#2
DEV_ID :=B#16#2
IP_ADDR1 :=192
IP_ADDR2 :=168
IP_ADDR3 :=1
IP_ADDR4 :=2
CONNECTED:="Connected"
PAC_3200 :="RegsPAC3200".PAC

Gibt es eine Parameterbeschreibung des Bausteins ???? Wie werden die Inputparamter ID: und DEV_ID: belegt ???

Testaufbau ist eine 315-2PN/DP

Gruss und Danke
 
Moin,

versuche auch gerade ein Pac3200 via PN zu verbinden. Benötige ich nun den Open Modbus Baustein, oder kann ich es auch nur mit dem Baustein realisieren?

CALL "ModbusPAC3200" , "IDB_FB100"
CONNECT :="Connect"
ID :=W#16#2
DEV_ID :=B#16#2
IP_ADDR1 :=192
IP_ADDR2 :=168
IP_ADDR3 :=1
IP_ADDR4 :=2
CONNECTED:="Connected"
PAC_3200 :="RegsPAC3200".PAC

Gibt es eine Parameterbeschreibung des Bausteins ???? Wie werden die Inputparamter ID: und DEV_ID: belegt ???

Testaufbau ist eine 315-2PN/DP

Gruss und Danke

ID und DEV_ID sind Parameter für den Baustein TCON der in dem FB aufgerufen wird. ID ist die Verbindungsnummer die fortlaufend für jede Verbindung vergeben wird; DEV_ID sagt dem Baustein in was für einem Typ CPU er werkelt: http://support.automation.siemens.com/WW/llisapi.dll?func=cslib.csinfo&objId=51339682&objAction=csOpen&lang=de&siteid=cseus&aktprim=0&extranet=standard&viewreg=WW

 
Zuviel Werbung?
-> Hier kostenlos registrieren
OK ..... also beginne ich mit der ID:1 für meinen 1. Pac3200 und führe dies dann fortlaufend weiter...
Weiterhin belege ich die DEV_ID:2 da ich eine 315-2PN/DP nutze.....
IP_ADDR1-4 ist belege ich mit der IP des Pac3200 ....

Muss ich noch weitere Parameter vergeben..... Was ist mit dem UDT 65??? Müssen dort noch Einstellungen gemacht werden ???

Muss der Pac3200 nicht noch in der HW-Konfig angelegt werden ???? ... ist im Beispiel nicht vorhanden???

Gruss Handyman
 
kurze Info:

ich glaube es gibt noch einen kleinen Fehler:

(*********************************************************)
(* Send data over existing connection *)
(*********************************************************)

TSEND.LEN := 12;

IF TON_CON.Q THEN

TON_SEND(IN := NOT TON_SEND.Q AND NOT TRCV2.NDR,
PT := T#500ms);

FG_TSND := NOT TON_SEND.Q ;

CASE Count OF

1: KOMTEL.STARTREG := 1; // Hier wurde ab Riegister 0 gestartet. Das Startregister ist aber 1
KOMTEL.NOOFREGS := 120;

2: KOMTEL.STARTREG := 121; // Somit hier nicht 120 sondern 121
KOMTEL.NOOFREGS := 120;

3: KOMTEL.STARTREG := 241; // Somit hier nicht 240 sondern 241
KOMTEL.NOOFREGS := 62;

END_CASE;

TSEND(REQ := FG_TSND,
ID := TCON_PAR.id,
LEN := TSEND.LEN,
DATA := KOMTEL);
 
kurze Info:

ich glaube es gibt noch einen kleinen Fehler:

(*********************************************************)
(* Send data over existing connection *)
(*********************************************************)

TSEND.LEN := 12;

IF TON_CON.Q THEN

TON_SEND(IN := NOT TON_SEND.Q AND NOT TRCV2.NDR,
PT := T#500ms);

FG_TSND := NOT TON_SEND.Q ;

CASE Count OF

1: KOMTEL.STARTREG := 1; // Hier wurde ab Riegister 0 gestartet. Das Startregister ist aber 1
KOMTEL.NOOFREGS := 120;

2: KOMTEL.STARTREG := 121; // Somit hier nicht 120 sondern 121
KOMTEL.NOOFREGS := 120;

3: KOMTEL.STARTREG := 241; // Somit hier nicht 240 sondern 241
KOMTEL.NOOFREGS := 62;

END_CASE;

TSEND(REQ := FG_TSND,
ID := TCON_PAR.id,
LEN := TSEND.LEN,
DATA := KOMTEL);

Richtig! Habe ich bei mir auch drin stehen...komisch das es erst jetzt jemandem auffällt. Danke!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Lars,

ich bin zur Zeit auch ein bisschen mit Modbusseln beschäftigt. Es handelt sich nicht um einen PAC, sondern um Kältemaschinen und Lüftungsgeräte. Ich wollte einen möglichst universellen Client kreieren, wovon ich mich zunächst erst einmal verabschiedet habe. Ich werde mich mal an deinen Code orientieren. Er ist im Gegensatz zu anderen Beispielen, die ich gefunden habe sehr übersichtlich und durchschaubar.

Besten Dank dafür :s12:
 
Ist eigentlich auch nicht nötig. Ich tippe mir das immer so zusammen wie ich es brauche. Ein Ansatz für einen universellen Client wäre ein DB mit einer Jobliste die abgearbeitet wird. Wenn ein Client nur ausgelesen wird ist das ganz brauchbar, wenn gelesen und geschrieben werden soll muss das ganze schon sehr durchdacht sein.
 
SENTRON PAC3200 an ModbusTCP und S7300 SPS

Hallo liebe SPS-Freunde,

auch auf mich kommt das Thema "Sentron PAC3200 am ModbusTCP an S7 300 SPS nun zu. Der Sentron PAC ist nicht direkt an die S7 angeschlossen, sondern ueber einen Switch, spielt das eine Rolle?

Ich werde mir die Bausteine des Beispielprojektes, die hier vorgestellt wurden, nun zu Gemuete fuehren und die Anpassungen vorhehmen, die hier einige User gefunden haben und hoffe das es dann funzt!

Hoert sich ja recht vielversprechend an. Danke!
 
Zurück
Oben