Hallo zusammen,
ich muss für eine Projektarbeit zwei KUKA KRC2 über Profibus miteinander verbinden. Dabei soll es auch möglich sein beide Roboter getrennt voneinander laufen zu lassen. Deshalb sollen beide Roboter Master sein und der eine Roboter gleichzeitig Slave vom anderen. Für die Konfiguration verwende ich den Simatic Manager Step 7.
Nun zu meinem Problem:
Wenn ich die erzeugten LDB's in die pfbms.ini einbinde bringt der Roboter (Master und Slave) die Fehlermeldungen "6503 Fehler Konfiguration E/A-Treiber CP561DRV", "1034 Fehler beim Schreiben, Treiber: CP561DRV" und "Profibus: Fehlerhafte Angaben in der iosys.ini, siehe LOG-Datei". Der andere Roboter (nur Master) bringt keine Fehlermeldung.
Wenn ich in der iosys.ini die E/A auskommentiere bringt keiner der Roboter eine Fehlermeldung.
Ein/Ausgänge habe ich in der iosys.ini so geschrieben:
OUTW80=22,0
Liegt der Fehler in der Profibus-Konfiguration oder in der iosys.ini bzw. pfbms.ini oder ganz wo anders?
Über jede Hilfe freue ich mich.
Beste Grüße
dani971w
Zwei KUKA KRC2 über Profibus verbinden
- dani971w
- Erledigt
-
-
Hier noch die Bilder
-
Servus,
Bsp. sollte Licht ins dunkel bringen
;*****************************
; ** SLAVE **
;*****************************;** INPUTS **
INB0=127,0,X4 ;$IN[1-32] ;4 Byte AutoExt
INB4=127,4,X28 ;$IN[33-256] ;28 Byte Alg. Komunikation
Erklärung:
INB0 => ab dem 0ten Byte(Eingang 1)
127 => Slaveadresse der Roboterprofibuskarte nur für Intern => für extern hat Sie die Profibusadresse die
du Ihr in der PFBMS.ini gegeben hast(z.B. MODUL_ADDRESS=120)
,0, => die "0" für den Offset => also keinen Offset
x4 für die Länge => also 4 Byteman hätte aber auch INB0=127,0,x32 Schreiben können, dann wären es auch 32 Byte
War halt bei uns so vorgegeben, damals.;** OUTPUTS **
OUTB0=127,0,X4 ;$OUT[1-32] ;4 Byte AutoExt
OUTB4=127,4,X28 ;$OUT[33-256] ;28 Byte Alg. Komunikation;==========================================================
;Modul 1 Achse 3 (PB Adresse 10)
;MURR IMPACT67 P Art.Nr.: 55346 (DI8, DO8);** INPUTS **
INB32=10,0,x1 ;$IN[257-264]
INB32 => ab dem 32ten Byte(Eingang 257)
10 => Slaveadresse des angeschlossenen Slavemoduls am Roboter
,0, => die "0" für den Offset => also keinen Offset
x1 für die Länge => also 1 Byte;** OUTPUTS **
OUTB32=10,0,x1 ;$OUT[257-264]
;Modul 1 Achse 3
Grüße
Martl -
Hallo Martl,
danke für dein Beispiel.
Wir haben gestern noch etwas rumprobiert und die Adresse dann auch schon auf 127 abgeändert:
OUTW82=127,0,x1 => Ausgang vom Roboter-Slave
INW82=22,0,x1 => Eingang vom anderen Roboter (Master)
Inzwischen kommen keine Fehlermeldungen mehr, aber der austausch des Wortes funktioniert immer noch nicht.
Also wenn ich den Ausgang 657 auf True setze verändert sich nichts bei den Eingängen des anderen Roboters. -
Auf dem Roboter, der Slave ist:
Inw82=127,0,x1
Outw82=127,0,x1
Auf dem anderen dann
Inw82=22,0,x1
Outw82=22,0,x1 -
-
Servus,
funktionieren denn deine anderen Teilnehmer im Masterkreis des Roboters.
Würde einfach mal klein beginnen und nur einen Teilnehmer (was einfaches) Masterseitig einbinden und schauen ob du das zum Laufen bringst.
Profibus an der KRC2 ist etwas tricki, da du nur wenig möglichkeiten hast das Ganze zu prüfen und eine Fehlersuche zu machen.
Grüße
Martl -
Also die Datenübertragung der E/A funktioniert jetzt.
Wir hatten einfach nur die Ein- bzw. Ausgänge in der iosys.ini doppelt belegt und diese waren deshalb dauerhaft False.
Danke für Eure Hilfsbereitschaft.
Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren
Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können