Hallo!
Ich hänge mich hier mal ein, da ich das selbe Problem habe, wie der Themenersteller - und eine Problemlösung habe ich leider bisher nicht gefunden.
Zunächst der Hardware-Aufbau:
Code:
Rack: Subrack CR2 (6ES5 700-2LA12, E01)
PSU: PS 951 7A/15A (6ES5 951-7LD12, E5)
CPU: CPU 944B (6ES5 944-7UB21, E3, AG-Software Z05)
Slot 0: IBS S5 DSC/I-T (2752000, HW-V 14, FW-V 4.15)
Slot 1: CP 530 (6ES5 530-7LA12, E5)
Slot 2: SM 430 DI 32xDC 24V (6ES5 430-7LA12, E12)
Slot 3: SM 451 DO 32xDC 24V 0,5A (6ES5 451-7LA12, E02)
Slot 4: SM 451 DO 32xDC 24V 0,5A (6ES5 451-7LA12, E02)
Slot 5: ungenutzt
Slot 6: ungenutzt
IM: IM 306 (6ES5 306-7LA11, E4)
Die CPU 944B und der CP 530 haben keine Speichermodule drin, wobei der CP 530 derzeit komplett ungenutzt ist. Die Adresseinstellungen auf der IBS S5 DSC/I-T bzw. am IM 306 sind wie folgt:
Code:
IBS S5 DSC/I-T: P-Bereich, Adresse 128
Slot 0: 32 Bit, Adresse 0
Slot 1: 32 Bit, Adresse 0
Slot 2: 32 Bit, Adresse 4
Slot 3: 32 Bit, Adresse 8
Slot 4: 32 Bit, Adresse 12
Slot 5: 32 Bit, Adresse 0
Slot 6: 32 Bit, Adresse 0
Slot 7: 32 Bit, Adresse 0
Slot 8: 32 Bit, Adresse 0
An der Interbus-S-Anschaltbaugruppe angeschlossen sind der Reihe nach zwei IBS RT 24 DIO 16/16-T, ein IBS RT 24 DI 32-T und ein IBS RT 24 DO 32-T. Die Anschaltbaugruppe ist mittels IBS CMD parametriert, der Busaufbau wurde eingelesen und die Module der Reihe nach "ersetzt". Die einzelnen Register der Anschaltbaugruppe sind im IBS CMD wie folgt eingestellt:
Code:
Kommunikationsregister: P128
Diagnose Statusregister: P244
Diagnose Parameterregister: P246
Diagnose erw. Parameterregister: P248
Standardfunktion Startregister: P250
Standardfunktion Statusregister: P252
Standardfunktion Parameterregister: P254
Die Parametrierung wurde auch erfolgreich durchgeführt, der Parametrierspeicher ist geschrieben und der Bus läuft. Lt. den Prozessdaten der einzelnen Module sind die Adressen jeweils wie folgt im IBS CMD zugeordnet:
Code:
1. IBS RT 24 DIO 16/16-T, Eingänge: P0
1. IBS RT 24 DIO 16/16-T, Ausgänge: P0
2. IBS RT 24 DIO 16/16-T, Eingänge: P2
2. IBS RT 24 DIO 16/16-T, Ausgänge: P2
IBS RT 24 DI 32-T, Eingänge: P4
IBS RT 24 DO 32-T, Ausgänge: P4
Aus dem bei Phoenix Contact erhältlichen Treibersoftware-Paket (
ISFP43), Projekt
ISFP43ST.S5D, habe ich alle FBs (also: FB 0, 60-75, 78-87, 90, 92, 214, 215) in mein eigenes STEP5-Projekt transferiert. Dazu zusätzlich die im Beispielprojekt
MCADR@ST.S5D enthaltenen Bausteine PB 14, FB 14, DB 9 und DB 14, da diese nicht im
ISFP43ST.S5D enthalten waren.
Nun habe ich analog der Anleitung für die Treiber (
IBS S5 DSC SWD UM, Beispiel von Kapitel 3.1) einmal die OBs 20-22 und den FB 210 wie folgt angelegt:
Code:
OB 20/21/22
:SPA FB 210
Name :ANLAUF
:BE
Code:
FB 210
NAME :ANLAUF
:UN M 10.0
:S M 10.0
:R M 10.1
:UN M 100.0
:S M 100.0
:U M 10.0
:SPB FB 60
NAME :ISFPINI
IBDB : DB 9
ADR : KF +128
GET : FB 0
PUT : FB 0
BOOT : KF +0
MODE : KF +0
INT : KH 00FF
T : T 1
STEP : MB 9
BUSY : M 10.0
RET : M 10.1
:UN M 10.1
:BEB
:STS
:BE
Die Initialisierung funktioniert auch soweit. Allerdings weiß ich nun nicht, wie ich auf die E/A-Module vom Interbus zugreifen kann. Es gibt zwar wohl die Möglichkeit, die erweiterten Adressbereiche über die FBs 80 und 81 zu lesen bzw. zu schreiben, aber so, wie es jetzt parametriert ist, müsste ich doch über den normalen Adressbereich rankommen können. Nur wie? Leider passiert an den Interbus-Modulen nichts, wenn ich bspw. Ausgänge setze. Bei den S5-115U-Baugruppen, die auf dem Rack stecken hingegen funktioniert alles.
An diesem Punkt komme ich jetzt nicht weiter. Ich hab's auch schonmal mit dem Aufruf vom FB 66 (
GET-NOTI) bzw. FB 68 (
PUT-ACTV) am Anfang bzw. Ende vom OB 1 probiert, aber das ändert auch nichts. Genauso wenig die Angabe der FBs 62 (
GET-DATA) und 64 (
PUT-DATA) im FB 210 beim Aufruf vom FB 60 an den Stellen
GET und
PUT. Bei der S7-300-Anschaltung war das ja relativ einfach gelöst: Am Anfang vom OB 1 den Baustein
IB_READ aufrufen und am Ende den Baustein
IB_WRITE und gut. Aber hier ist das ja nicht so einfach.
Hat jemand eine zündende Idee, wie ich das Ganze bewerkstelligen kann?
Besten Dank!
Grüße, Xaar.