TIA Kommunikationsproblem mit ProfibusDP zwischen CPU313 <--> Bosch Rexroth (IndraDrive)

Schimanski

Level-1
Beiträge
5
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Kommunikationsproblem mit ProfibusDP zwischen CPU313 <--> Bosch Rexroth (IndraDrive)

Hallo Foren-Gemeinde.
Ich bin, was Bussysteme angeht, noch sehr grün hinter den Ohren und außerdem ganz frisch im Forum.
Dieses wurde mir von einem Kollegen empfohlen.

Zunächst zu den Grundvoraussetzungen:
Ich habe eine "Siemens SIMATIC CPU313C-2DP" und ein "Bosch Rexroth HCS 03.1 Modul" mit "CSH01.1 Reglereinschub".
Das ganze Programm ist auf "Siemens TIA-Portal V13" realisiert.

Ziel:
Ich möchte über einen entsprechenden Baustein bestimmte Bits setzten bzw. rücksetzen können.
Diese Bits können von mir über die Oberfläche der IndraWorks Software konfiguriert werden.

Bisher habe ich folgendes gemacht:
In der Hardwarekonfiguration habe ich die entsprechende GSD-Datei von Bosch Rexroth eingefügt und eine freie Teilnehmeradresse vergeben.
Aus dem vorhergehenden Programmteil weis ich, dass die Hardware soweit stimmen muss.
Die CPU ist als Master und der IndraDrive Teilnehmer als Slave deklariert.

Nach dem Hochfahren der Steuerung und des Reglers leuchtet die "Verbindungs LED" H30 am Regler auf. Eine Kommunikation besteht also scheinbar.

In den angehängten Screenshots sieht man die von mir für die Kommunikation gewählten Bausteine "SETIO" und "GETIO". Außerdem kann man sehen, wie ich die E-Adressen bzw. A-Adressen des Antriebs (Slave_1) eingestellt habe.

Meine Frage nun:
Ich versuche schon seit einigen Tagen über diese beiden Profibus-DP Bausteine aus der Siemens Bibliotek entsprechende Bits mit der Force-Tabelle zu setzen. Es tut sich aber garnichts.
Sind die beiden Bausteine SETIO bzw. GETIO für mein Vorhaben überhaupt die Richtigen?
Hat jemand von euch Erfahrung mit dieser Kombination aus TIA auf einer 300er in Verbindung mit einem Indramat IndraDrive Teilnehmer?

Danke schonmal im Vorraus.Grüße
Max
 

Anhänge

  • 4.jpg
    4.jpg
    156,7 KB · Aufrufe: 47
  • 3.jpg
    3.jpg
    67,5 KB · Aufrufe: 50
  • 2.jpg
    2.jpg
    429 KB · Aufrufe: 53
  • 1.jpg
    1.jpg
    497,1 KB · Aufrufe: 51
Hallo Max,
ich schieße jetzt mal aus der Hüfte da ich die Bausteine SETIO GETIO und auch die Boschbaugruppe nicht kenne.

Grundsätzlich, Wenn dein Prozessabbild der CPU groß genug ist kannst Du direkt auf die E/A- Ebene zugreifen.
Falls deine Signale nicht innerhalb des Prozesabbildes liegen kannst Du diese mit Hilfe von SFC14/15 umlagern.

Ich würde erst mal die Standards prüfen:
  • Ist die Richtige DP Adresse bei dem Bosch Regler eingestellt? (des weiteren Baudrate etc).
  • Was zeigt die HW Config an wenn Du Online bist? (Baugruppe erreichbar, Fehler?)
  • Abschlusswiderstände am Bus richtig?

Gruß Florian
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Morgen Florian,
vielen Dank für deine Antwort.

Die von Dir genannten Standards habe ich bereits geprüft.
  • Die CPU springt in den "RUN", wenn ich in der Hardware und am Regler selbst die selbe Adresse angebe. Habe es gerade auch nochmal überprüft: Ändere ich die Teilnehmernummer des Reglers in der HW Config, so bekomme ich einen Busfehler (BF) an der CPU. Am Regler leuchtet dann auch nicht die entsprechende LED auf. Stelle ich es danach wieder identisch ein, so leuchtet die LED wieder und der Busfehler erlischt. Also müsste die Kommunikation korrekt bestehen.
  • Im Diagnosepuffer der Steuerung wird ebenfalls kein Fehler gelistet.
  • Die Abschlusswiderstände wurden auch gecheckt und vom Kollegen nochmal gegengeprüft.

Du meinst also, dass ich garkeinen zusätzlichen Kommunikationsbaustein benötige wenn mit dem Regler kommunizieren möchte
oder verstehe ich das falsch?

Grüße
Max
 
das verstehst du nicht falsch. wenn du in der hardwarekonfig die bosch baugruppe angelegt hast (gsd-datei) dann solltest du da auch nen E/A-Bereich festlegen/ve3rgeben können, den du dann direkt ansprechen kannst.
ich kenn diese baugruppe auch nicht, aber denke, dass es so funktionieren könnte...

Grüße Sven
 
Servus Sven.
Genau so war mein ursprünglicher Plan. So hatte ich es bereits letzte Woche versucht. Der Regler besitzt ein Signal-Steuerwort sowie ein Signal-Statuswort.
Das Statuswort gibt Informationen aus, das Steuerwort lässt sich mittels einzelner Bits innerhalb des Words beeinflussen.
Am Regler kommt aber weder was an, noch kann ich was auslesen.

Grüße
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
so, wie ich es kenne , legst du beim Regler selbst (also in der IndraWorks-Software) erstmal fest, wie dein Regler kommuniziert und dann was ausgetauscht wird. Hast du das gemacht (von selber ist da nämlich erstmal nichts eingestellt) ? Wenn ja, dann stell doch mal davon einen Screenshot hier ein.
Diese Einstellungen geben dann die Größe deines Datenaustausch-Bereichs mit der SPS (in Worten) an, die du dann in den GSD-Einstellungen nachstellen mußt.
Hast du das korrekt gemacht, dann könntest du mit den richtigen Bits das gleiche bewirken, wie mit der IndraWorks-SW.

Gruß
Larry
 
Du meinst also, dass ich garkeinen zusätzlichen Kommunikationsbaustein benötige wenn mit dem Regler kommunizieren möchte
oder verstehe ich das falsch?

Das Prozessabbild muss groß genug sein,wenn man eine CPU neu anlegt setzt Step7 das Prozessabbild auf 128 Byte, damit
würde der direkte Zugriff nicht funktionieren.

Einzustellen ist dies unter Gerätekonfiguration, Allgemein, Zyklus.
 
@Larry: Oben im ersten Beitrag ist ein Screenshot mit den entsprechenden Einstellungen für die Profibus-Kommunikation im IndraWorks zu sehen.
Habe inzwischen die Länge des Istwert- und Sollwertdatenkanals wieder auf 2Byte gestellt. Keine Ahnung, ob das so richtig ist.

@Florian: Die größe des prozessabbilds kann ich bei mir im TIA unter dem von Dir angegebenen Pfad nicht finden.
Hier lassen sich lediglich Zyklusüberwachungszeit, Zyklusbelastung durch Kommunikation sowie die Einstellungen zu OB85 einsehen.

Bin ziemlich Ratlos.

Grüße
Max
 
Zuviel Werbung?
-> Hier kostenlos registrieren
OK ... mein Fehler ... ich habe die Frage nicht korrekt formuliert - also noch einmal :
Was hast du in der Führungskommunikation bei "Prozessdaten Ein" und "Prozessdaten Aus" eingestellt ?
Hast du ferner berücksichtigt, dass sich Ein und Aus auf den Regler beziehen ? (also Eingang beim Regler ist Ausgang von der SPS)
Achja ... und bei dem Steuerwort sind in der SPS dann High- und Low-Byte vertauscht ...
 
Hier zwei aktuelle Screenshots der "Prozessdaten Ein" und "Prozessdaten Aus".
Was im IndraWorks zu sehen ist, ist aus der Sicht des Reglers. Das ist mir klar.
Was meinst du mit Steuerwort an der SPS vertauscht? Komm nicht ganz mit.

Gruß
 

Anhänge

  • 6.jpg
    6.jpg
    136,4 KB · Aufrufe: 31
  • 5.jpg
    5.jpg
    134,1 KB · Aufrufe: 28
Ich meine damit das die Byte-Reihenfolge im Steuerwort / Statuswort u.U. vertauscht ist - also erst die Bits 8-15 kommen und dann die Bits 0-7.

Aber wie auch immer - hier mal als AWL-Quelle mein Bosch-Rexroth-FB (allerdings für Step7-Classic) als AWL-Quelle. Damit solltest du etwas anfangen können...
Code:
FUNCTION_BLOCK "FB307"
TITLE =UP Steuern Servo Bosch-Rexroth
AUTHOR : 'Larry'
FAMILY : LL_Std
VERSION : 0.1

VAR_INPUT
  Per_Handshake : INT ; //1. Perepherie-Adresse Handshake mit Servo
  Allgemein : BOOL ; //-------------------------------------------------------------------------------
  _Freigabe : BOOL ; //Freigabe Servo-Achse
  _Quit_Stoerung : BOOL ; //Quittierung Störung
  _Ref_Fahrt : BOOL ; //Fahr-Ablauf "Referenz-Fahrt"
  Steuer_Funktionen : BOOL ; //-------------------------------------------------------------------------------
  _Tippen_vor : BOOL ; //Fahren "Tippen vor"
  _Tippen_zur : BOOL ; //Fahren "Tippen zurück"
  _Geschwindigkeit_Tippen : REAL ; //Geschwindigkeit Tipp-Betrieb
  Fahr_Daten : BOOL ; //-------------------------------------------------------------------------------
  _Setze_Fahrdaten : BOOL ; //Fahrdaten übernehmen
  _Start_in_Position : BOOL ; //Fahre auf Position [Fahrdaten]
  _Ziel_Position : REAL ; //- Fahrauftrag : Ziel-Position
  _Geschwindigkeit : REAL ; //- Fahrauftrag : Geschwindigkeit
  _Drehmoment : REAL ; //- Fahrauftrag : Drehmoment
END_VAR
VAR_OUTPUT
  OUT_Servo_bereit : BOOL ; //Servo-Achse bereit
  OUT_Servo_DiagnoseFehler : BOOL ; //Servo-Achse Diagnose-Fehler
  OUT_Servo_Referenz_OK : BOOL ; //Servo-Achse in Referenz
  OUT_Servo_Arbeitsbereich : BOOL ; //Sewrvo-Achse im Arbeitsbereich
  OUT_Set_Daten_OK : BOOL ; //neue Fahr-Daten eingetragen
  OUT_Fahren_Ready : BOOL ; //Fahr-Programm beendet
  OUT_Ist_Position : REAL ; //akt. Position Servo-Achse
END_VAR
VAR
  Servo_Read_Daten : STRUCT  
   Status_Regler : STRUCT  //P-0-4078
    Ist_Betriebsart_1 : BOOL ; //00=Hauptbetriebsart / 01 - 11 = Nebenbetriebsarten
    Ist_Betriebsart_2 : BOOL ; 
    Sollwert_Quit : BOOL ; //1=Fahrbefehl ist übernommen
    Meldung_Zustand_1 : BOOL ; 
    Meldung_Zustand_2 : BOOL ; 
    Meldung_Zustand_3 : BOOL ; 
    betriebsbereit_1 : BOOL ; 
    betriebsbereit_2 : BOOL ; 
    Betriebsmodus_Quit_1 : BOOL ; //10 = Betriebs-Modus
    Betriebsmodus_Quit_2 : BOOL ; 
    Referenz_OK : BOOL ; 
    Stillstand_Achse : BOOL ; 
    Sollwert_erreicht : BOOL ; 
    Kommando_Aenderung : BOOL ; 
    Betriebsmodus_Fehler : BOOL ; 
    Status_Sollwert : BOOL ; //0=Antrieb folgt Vorgabe / 1=nicht
   END_STRUCT ; 
   Fahrbereichs_Endschalter : STRUCT  //P-0-0222
    x10 : BOOL ; 
    x11 : BOOL ; 
    x12 : BOOL ; 
    x13 : BOOL ; 
    x14 : BOOL ; 
    x15 : BOOL ; 
    x16 : BOOL ; 
    x17 : BOOL ; 
    Endschalter_1 : BOOL ; 
    Endschalter_2 : BOOL ; 
    x02 : BOOL ; 
    x03 : BOOL ; 
    x04 : BOOL ; 
    x05 : BOOL ; 
    x06 : BOOL ; 
    x07 : BOOL ; 
   END_STRUCT ; 
   dummi : WORD ; //S-0-0000
   Ist_Position : DINT ; //S-0-0386
   Drehmoment : INT ; //S-0-0084
   Diagnose_Nr : DINT ; //S-0-0390
  END_STRUCT ; 
  Servo_Write_Daten : STRUCT  
   Steuern_Regler : STRUCT  //P-0-4077
    Betriebsart_1 : BOOL ; //00=Hauptbetriebsart / 01 - 11 = Nebenbetriebsarten
    Betriebsart_2 : BOOL ; 
    Res_1 : BOOL ; 
    Res_2 : BOOL ; 
    IPos_Sync : BOOL ; 
    Antrieb_Halt : BOOL ; 
    Antriebs_Freigabe : BOOL ; 
    Regler_Freigabe : BOOL ; 
    Sollwert_Uebernahme : BOOL ; //Toggle
    Betriebsmodus : BOOL ; 
    Referenzfahrt : BOOL ; 
    Positioniermodus : BOOL ; //0=absolut / 1=relativ
    Satzwechsel_Modus : BOOL ; //0=letzte Pos. muss abgeschlossen sein / 1=egal
    Reset_Fehler : BOOL ; 
    Tippen_Pos : BOOL ; 
    Tippen_Neg : BOOL ; 
   END_STRUCT ; 
   Signal_Steuerwort : STRUCT  //S-0-0145
    x10 : BOOL ; 
    x11 : BOOL ; 
    x12 : BOOL ; 
    x13 : BOOL ; 
    x14 : BOOL ; 
    x15 : BOOL ; 
    x16 : BOOL ; 
    x17 : BOOL ; 
    Fahren_auf_Festanschlag : BOOL ; //S-0-0149
    Antrieb_referenzieren : BOOL ; //S-0-0148
    Referenzbezug_loeschen : BOOL ; //S-0-0191
    x03 : BOOL ; 
    x04 : BOOL ; 
    x05 : BOOL ; 
    x06 : BOOL ; 
    x07 : BOOL ; 
   END_STRUCT ; 
   dummi : WORD ; //S-0-0000
   Ziel_Position : DINT ; //S-0-0282   - 4 NK-Stellen
   Fahr_Geschwindigkeit : DINT ; //S-0-0259   - 4 NK-Stellen
   LR_Kraft_Grenzwert : INT  := 500; //S-0-0092   - 0 NK-Stellen
  END_STRUCT ; 
  Faktor_Anpassung : STRUCT  
   Position : REAL  := 1.000000e+004; 
   Geschwindigkeit : REAL  := 1.000000e+003; 
   Drehmoment : REAL  := 1.000000e+000; 
   FM_Quit_Strung : BOOL ; 
  END_STRUCT ; 
END_VAR
VAR_TEMP
  Word_Per_Handshake : WORD ; 
  R_Fehler : INT ; 
  W_Fehler : INT ; 
END_VAR
BEGIN
NETWORK
TITLE =Kopplung an Servo-Regler - Auslesen ----------------------------
      L     #Per_Handshake; 
      T     #Word_Per_Handshake; 
      CALL "DPRD_DAT" (
           LADDR                    := #Word_Per_Handshake,
           RET_VAL                  := #R_Fehler,
           RECORD                   := #Servo_Read_Daten);
NETWORK
TITLE =Ziel-Positionen setzen -----------------------------------------
      U     #_Setze_Fahrdaten; 
      UN    #OUT_Set_Daten_OK; 
      SPBN  nSet; 
      L     #_Ziel_Position; 
      L     #Faktor_Anpassung.Position; 
      *R    ; 
      RND+  ; 
      T     #Servo_Write_Daten.Ziel_Position; 
      L     #_Geschwindigkeit; 
      L     #Faktor_Anpassung.Geschwindigkeit; 
      *R    ; 
      RND+  ; 
      T     #Servo_Write_Daten.Fahr_Geschwindigkeit; 
      L     #_Drehmoment; 
      L     #Faktor_Anpassung.Drehmoment; 
      *R    ; 
      RND+  ; 
      T     #Servo_Write_Daten.LR_Kraft_Grenzwert; 
nSet: U     #_Setze_Fahrdaten; 
      =     #OUT_Set_Daten_OK; 
NETWORK
TITLE =Status-Informationen -------------------------------------------
      U     #Servo_Read_Daten.Status_Regler.betriebsbereit_1; 
      U     #Servo_Read_Daten.Status_Regler.betriebsbereit_2; 
      UN    #Servo_Read_Daten.Status_Regler.Betriebsmodus_Fehler; 
      =     #OUT_Servo_bereit; 
NETWORK
TITLE = 
      U     #Servo_Read_Daten.Status_Regler.Referenz_OK; 
      =     #OUT_Servo_Referenz_OK; 
      U     #_Start_in_Position; 
      U     #Servo_Write_Daten.Steuern_Regler.Sollwert_Uebernahme; 
      U     #Servo_Read_Daten.Status_Regler.Sollwert_Quit; 
      U     #Servo_Read_Daten.Status_Regler.Sollwert_erreicht; 
      U     #Servo_Read_Daten.Status_Regler.Stillstand_Achse; 
      =     #OUT_Fahren_Ready; 
NETWORK
TITLE = 
      U(    ; 
      L     #Servo_Read_Daten.Diagnose_Nr; 
      L     DW#16#A0160; 
      <>D   ; 
      )     ; 
      U(    ; 
      L     #Servo_Read_Daten.Diagnose_Nr; 
      L     DW#16#A0161; 
      <>D   ; 
      )     ; 
      U(    ; 
      L     #Servo_Read_Daten.Diagnose_Nr; 
      L     DW#16#A0012; 
      <>D   ; 
      )     ; 
      U(    ; 
      L     #Servo_Read_Daten.Diagnose_Nr; 
      L     DW#16#C1300; 
      <>D   ; 
      )     ; 
      U(    ; 
      L     #Servo_Read_Daten.Diagnose_Nr; 
      L     DW#16#E8260; 
      <>D   ; 
      )     ; 
      U(    ; 
      L     #Servo_Read_Daten.Diagnose_Nr; 
      L     DW#16#E2059; 
      <>D   ; 
      )     ; 
      U(    ; 
      L     #Servo_Read_Daten.Diagnose_Nr; 
      L     DW#16#E2070; 
      <>D   ; 
      )     ; 
      =     #OUT_Servo_DiagnoseFehler; 
NETWORK
TITLE = 
      L     #Servo_Read_Daten.Ist_Position; 
      DTR   ; 
      L     #Faktor_Anpassung.Position; 
      /R    ; 
      T     #OUT_Ist_Position; 
NETWORK
TITLE =Steuer-Funktionen ----------------------------------------------
      U     #_Freigabe; 
      UN    #_Quit_Stoerung; 
      =     #Servo_Write_Daten.Steuern_Regler.Antrieb_Halt; 
      =     #Servo_Write_Daten.Steuern_Regler.Antriebs_Freigabe; 
      =     #Servo_Write_Daten.Steuern_Regler.Regler_Freigabe; 
NETWORK
TITLE = 
      U     #_Quit_Stoerung; 
      FP    #Faktor_Anpassung.FM_Quit_Strung; 
      =     #Servo_Write_Daten.Steuern_Regler.Reset_Fehler; 
NETWORK
TITLE = 
      U     #_Ref_Fahrt; 
      U     #_Freigabe; 
//      =     #Servo_Write_Daten.Steuern_Regler.Referenzfahrt
      =     #Servo_Write_Daten.Signal_Steuerwort.Antrieb_referenzieren; 
NETWORK
TITLE = 
      U     #_Start_in_Position; 
      U     #_Freigabe; 
      =     #Servo_Write_Daten.Steuern_Regler.Sollwert_Uebernahme; 
NETWORK
TITLE = 
      CLR   ; 
      =     #Servo_Write_Daten.Steuern_Regler.Positioniermodus; 
      =     #Servo_Write_Daten.Steuern_Regler.Satzwechsel_Modus; 
NETWORK
TITLE = 
      U     #_Tippen_vor; 
      UN    #_Tippen_zur; 
      =     #Servo_Write_Daten.Steuern_Regler.Tippen_Pos; 
      UN    #_Tippen_vor; 
      U     #_Tippen_zur; 
      =     #Servo_Write_Daten.Steuern_Regler.Tippen_Neg; 
      O     #Servo_Write_Daten.Steuern_Regler.Tippen_Pos; 
      O     #Servo_Write_Daten.Steuern_Regler.Tippen_Neg; 
      SPBN  xTip; 
      L     #_Geschwindigkeit_Tippen; 
      L     #Faktor_Anpassung.Geschwindigkeit; 
      *R    ; 
      RND+  ; 
      T     #Servo_Write_Daten.Fahr_Geschwindigkeit; 
      L     #_Drehmoment; 
      L     #Faktor_Anpassung.Drehmoment; 
      *R    ; 
      RND+  ; 
      T     #Servo_Write_Daten.LR_Kraft_Grenzwert; 
xTip: NOP   0; 
NETWORK
TITLE =Kopplung an Servo-Regler - Rückschreiben -----------------------
      CALL "DPWR_DAT" (
           LADDR                    := #Word_Per_Handshake,
           RECORD                   := #Servo_Write_Daten,
           RET_VAL                  := #W_Fehler);
NETWORK
TITLE = 
 
END_FUNCTION_BLOCK
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin

Erst sollte mal geklärt sein was der Antrieb machen soll. Sprich Betriebsarten

Die Feldbuskommunikation kann dann eingestellt werden.
Es gibt fertige Bausteine für die verschiedenen Betriebsarten. Ich würde den zuständigen Vertriebspartner ansprechen.

Ansonsten schau mal in die Beschreibung unter Zustandsmaschine

Beschreibung z.B. R911332642_01 Seite 133

Gruß Herbert
 
Moin,

Problem 1 dass ich sehe, Du hast an deine SET_IO / GET_IO Bausteine jeweils am Eingang "ID" den Parameter aus dem jeweiligen Instanz-DB gehängt - das geht so nicht.
Drei Möglichkeiten, entweder Du legst einen Global-DB an in dem Du Variablen für die ID anlegst und diese dann hier verwendest, oder Du machst n Doppelklick auf das Eingabefeld und aus dem angebotenen Reiter wählst Du direkt dein "Input 7 Word_1" bzw. dein "Output 7 Word_1" aus. Dahinter verbirgt sich dann die korrekte HW-Kennung.
Wenn Dir die jeweilige HW-Kennung bekannt ist, kannst Du diese auch numerisch eintragen - wichtig, HW-Kennung - nicht die Anfangsadresse.



Deine Einstellungen im "HW-Manager" und auf Iworks-Seite waren soweit korrekt - die Kommunikation als solches war ja auch schon fehlerfrei wie Du berichtet hast.

Desweiteren musst Du noch einen Datenbereich angeben, von dem die Soll-Daten zur Achse bzw. die Ist-Daten von der Achse kopiert/geschrieben werden sollen.
Diese Datenbereiche müssen exakt so lang sein wie Du sie im hw-manager projektiert hast, also bei Dir jeweils 14 byte.

scs2.jpg scs.jpg

Der DB ist nur zur Veranschaulichung dargestellt. ich nutze für die Daten keine Arrays sondern Struct bzw. UDTs was insbesondere für P4077 und P4078 hilfreich ist.

Was ich mir noch nicht erklären kann, daß dein SET_IO Baustein zusätzlich den Eingang LEN hat. Beim GET_IO Baustein ist der ja vorhanden, aber lediglich zur Anzeige der gelesenen Daten-Länge.
Die Länge der zu übertragenden Daten wird ja durch die Wahl der HW-Kennung vorgegeben.

Alternativ zu SET_IO GET_IO kannst Du auch - wie oben schon angemerkt - DPWR_DAT bzw. DPRD_DAT (SFC14/SFC15) zum Übertragen der Daten verwenden.



Gruss Werner

info: ich verwende V13 SP1 Upd 9
 
Zuletzt bearbeitet:
Es kommt kein BF in der 313C-2DP ? In den Fall sind CPU und Rexroth grundsätzlich richtig verbunden und konfiguriert.

Nächste Schritt ist zu checken ob die Daten an die "Anwenderprogramme" richtig ankommen.
Ich wurde auch die SFC14/SFC15 verwenden, und dann die E/A Bytes 260..285/260..285 in ein passender DB ablegen.
Dann kannst du die Werte in der DB beobachten/steuern was einfacher ist als Forcen.
Kann man mit der Indraworx Software auch die angekommene und gesendete Daten beobachten ?
Wenn ja, dann kannst du gleichseitig in ein VAT in STEP7 und in Indraworx die Daten beobachten. Dann siehst du auch ob es vertauschte Bytes handelt, als LL es bemerkt hat. Wenn es vertauschte Bytes gibts, dann musst die "swappen", am einfachsten in das S7 Program.

Wenn endlich die Daten hin-und-her richtig kommen, musst du checken ob den Funktionalität passt.
Du musst den Rexroth über der VAT in STEP7 ansteuern können, und es soll sinnvolle Statusmeldungen von Rexroth kommen.

edit: Entschuldigung, aber ich hatte gar nicht bemerkt das es noch eine Seite mit Einträge war. Was ich geschrieben habe ist meistens schon erklärt von die andere Forum Mitglieder.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin
SFC 14 / 15 müssen verwendet werden.

Bei der Verwendung von Profinet können die Austausch Daten direkt angezeigt werden.

Von der Steuerung kommend ist das P-0-4077
zur Steuerung gehend ist das P-0-4078

Aber wie gesagt es gibt fertige Bausteine können bei Bosch Rexroth als Beispiel angefordert werden.

Gruß Herbert
 
Zurück
Oben