Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Results 1 to 8 of 8

Thread: Mehrere Profibusslaves mit SFC12 passievieren

  1. #1
    Join Date
    30.10.2008
    Posts
    77
    Danke
    5
    Erhielt 2 Danke für 2 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo erstmal!

    Ich möchte 3 Profibusslaves mit dem SFC12 passivieren oder auch aktivieren.

    Kann ich die 3 SFC12 Aufrufe einfach nacheinander programmieren und die laufen parallel ab, oder muss ich einen Aufrufen und dann warten bis sein Busy-Signal eine negative Flanke aufweißt, und ich dann den 2. Aufruf des SFC12 starte (den 3. Aufruf nach Beendigung des 2. SFC12-Aufrufes entsprechend)?
    Reply With Quote Reply With Quote Mehrere Profibusslaves mit SFC12 passievieren  

  2. #2
    Join Date
    08.04.2008
    Location
    Köln
    Posts
    846
    Danke
    39
    Erhielt 244 Danke für 199 Beiträge

    Default

    Hallo Fenix,

    wenn ich die S7-Hilfe richtig gelesen habe, kann man den SFC 12 mehrfach aufrufen:

    So lange ein oder meherere SFC 12-Aufträge aktiv sind, können Sie keine geänderte Konfiguration vom PG in die CPU laden ...


    Grüße
    Gebs

  3. #3
    Join Date
    15.10.2007
    Location
    St.Pölten
    Posts
    875
    Danke
    98
    Erhielt 200 Danke für 188 Beiträge

    Default

    das kannst du ruhig so machen
    hier ein codeausschnit aus einem programm
    Code:
      
          CALL  "D_ACT_DP"                  // Slave 12 "Maschinen-SFG box 2"
           REQ    :="RCDB SYS".Anlage_ohne_Slave_12    
           MODE   :=B#16#2
           LADDR  :=W#16#3F4                // 1012 = W#16#3F4
           RET_VAL:=#_RET_VAL_SFC12
           BUSY   :=#_BUSY
          L     #_RET_VAL_SFC12
          U     #_BUSY
          SPB   SDAe
     
          CALL  "D_ACT_DP"                  // Slave 11 "Maschinen-SFG box 1"
           REQ    :="RCDB SYS".Anlage_ohne_Slave_11     
           MODE   :=B#16#2
           LADDR  :=W#16#3F3                // 1011 = W#16#3F3
           RET_VAL:=#_RET_VAL_SFC12
           BUSY   :=#_BUSY
          L     #_RET_VAL_SFC12
          U     #_BUSY
          SPB   SDAe
          CALL  "D_ACT_DP"                  // Slave 6 "Trichter H113 bis H116"
           REQ    :="RCDB SYS".Anlage_ohne_Slave_06    
           MODE   :=B#16#2
           LADDR  :=W#16#3EE                // 1006 = W#16#3EE
           RET_VAL:=#_RET_VAL_SFC12
           BUSY   :=#_BUSY
          L     #_RET_VAL_SFC12
          U     #_BUSY
          SPB   SDAe
    
          CALL  "D_ACT_DP"                  // Slave 5 "Trichter H109 bis H112"
           REQ    :="RCDB SYS".Anlage_ohne_Slave_05    
           MODE   :=B#16#2
           LADDR  :=W#16#3ED                // 1005 = W#16#3ED
           RET_VAL:=#_RET_VAL_SFC12
           BUSY   :=#_BUSY
          L     #_RET_VAL_SFC12
          U     #_BUSY
          SPB   SDAe
          CALL  "D_ACT_DP"                  // Slave 4 "Trichter H105 bis H108"
           REQ    :="RCDB SYS".Anlage_ohne_Slave_04             
           MODE   :=B#16#2
           LADDR  :=W#16#3EC                // 1004 = W#16#3EC
           RET_VAL:=#_RET_VAL_SFC12
           BUSY   :=#_BUSY
          L     #_RET_VAL_SFC12
          U     #_BUSY
          SPB   SDAe
    SDAe: NOP   0
    Beginne jeden Tag mit einem lächeln,es kann dir nämlich während des Tages sehr schnell vergehen.

  4. #4
    Join Date
    30.10.2008
    Posts
    77
    Danke
    5
    Erhielt 2 Danke für 2 Beiträge

    Default

    Quote Originally Posted by Gebs View Post
    Hallo Fenix,

    wenn ich die S7-Hilfe richtig gelesen habe, kann man den SFC 12 mehrfach aufrufen:



    Grüße
    Gebs
    Na das wäre ja prima. Da muss man ja dann garnichts weiter denken...

  5. #5
    Join Date
    30.10.2008
    Posts
    77
    Danke
    5
    Erhielt 2 Danke für 2 Beiträge

    Default

    Quote Originally Posted by Gerhard K View Post
    das kannst du ruhig so machen
    hier ein codeausschnit aus einem programm
    Code:
      
          CALL  "D_ACT_DP"                  // Slave 12 "Maschinen-SFG box 2"
           REQ    :="RCDB SYS".Anlage_ohne_Slave_12    
           MODE   :=B#16#2
           LADDR  :=W#16#3F4                // 1012 = W#16#3F4
           RET_VAL:=#_RET_VAL_SFC12
           BUSY   :=#_BUSY
          L     #_RET_VAL_SFC12
          U     #_BUSY
          SPB   SDAe
     
          CALL  "D_ACT_DP"                  // Slave 11 "Maschinen-SFG box 1"
           REQ    :="RCDB SYS".Anlage_ohne_Slave_11     
           MODE   :=B#16#2
           LADDR  :=W#16#3F3                // 1011 = W#16#3F3
           RET_VAL:=#_RET_VAL_SFC12
           BUSY   :=#_BUSY
          L     #_RET_VAL_SFC12
          U     #_BUSY
          SPB   SDAe
          CALL  "D_ACT_DP"                  // Slave 6 "Trichter H113 bis H116"
           REQ    :="RCDB SYS".Anlage_ohne_Slave_06    
           MODE   :=B#16#2
           LADDR  :=W#16#3EE                // 1006 = W#16#3EE
           RET_VAL:=#_RET_VAL_SFC12
           BUSY   :=#_BUSY
          L     #_RET_VAL_SFC12
          U     #_BUSY
          SPB   SDAe
     
          CALL  "D_ACT_DP"                  // Slave 5 "Trichter H109 bis H112"
           REQ    :="RCDB SYS".Anlage_ohne_Slave_05    
           MODE   :=B#16#2
           LADDR  :=W#16#3ED                // 1005 = W#16#3ED
           RET_VAL:=#_RET_VAL_SFC12
           BUSY   :=#_BUSY
          L     #_RET_VAL_SFC12
          U     #_BUSY
          SPB   SDAe
          CALL  "D_ACT_DP"                  // Slave 4 "Trichter H105 bis H108"
           REQ    :="RCDB SYS".Anlage_ohne_Slave_04             
           MODE   :=B#16#2
           LADDR  :=W#16#3EC                // 1004 = W#16#3EC
           RET_VAL:=#_RET_VAL_SFC12
           BUSY   :=#_BUSY
          L     #_RET_VAL_SFC12
          U     #_BUSY
          SPB   SDAe
    SDAe: NOP   0
    Aber wenn er den Slave 12 passiviert ist ja Busy auf true und er springt zu SDAe. Im nächsten durchlauf fängt er dann denn nicht wieder bei Slave 12 an und versucht den nochmals zu passivieren und setzt Busy wieder für eine gewisse Zeit auf true? Werden dann Slave 11, 6, 5 und 4 denn überhaupt passiviert? Weil ja Busy dann wieder true ist und er zur Sprungmarke SDAe springt???

  6. #6
    Join Date
    15.10.2007
    Location
    St.Pölten
    Posts
    875
    Danke
    98
    Erhielt 200 Danke für 188 Beiträge

    Default

    BUSY OUTPUT BOOL E, A, M, D, L Aktivkennung:· BUSY=1: Der Auftrag ist noch aktiv.· BUSY=0: Der Auftrag wurde beendet.
    Last edited by Gerhard K; 09.01.2009 at 14:27.
    Beginne jeden Tag mit einem lächeln,es kann dir nämlich während des Tages sehr schnell vergehen.

  7. #7
    Join Date
    30.10.2008
    Posts
    77
    Danke
    5
    Erhielt 2 Danke für 2 Beiträge

    Default

    Quote Originally Posted by Gerhard K View Post
    ausserdem werden hier die slaves aktiviert.
    MODE :=B#16#2
    Danke, dann hab ichs verstanden.

    Bis Du sicher?
    Ich würde fast behaupten:

    Mode = 1 für aktivieren
    Mode = 2 für deaktivieren

  8. #8
    Join Date
    15.10.2007
    Location
    St.Pölten
    Posts
    875
    Danke
    98
    Erhielt 200 Danke für 188 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    ja hast recht.ich schreib heute lauter blödsinn
    Beginne jeden Tag mit einem lächeln,es kann dir nämlich während des Tages sehr schnell vergehen.

Similar Threads

  1. Profinet, mit SFC12 deaktivieren und aktivieren
    By mschilliger in forum Feldbusse
    Replies: 6
    Last Post: 11.06.2019, 10:57
  2. Step 7 SFC12 bei PN mit I-Device
    By HannesIVA in forum Simatic
    Replies: 1
    Last Post: 08.09.2016, 11:07
  3. DP-Slave deaktivieren mit SFC12
    By beavis in forum Simatic
    Replies: 1
    Last Post: 30.10.2010, 13:25
  4. Datentypen bei Profibusslaves
    By Howie in forum Feldbusse
    Replies: 1
    Last Post: 12.01.2010, 17:09
  5. Profibus mit dem SFC12
    By Mujo in forum Simatic
    Replies: 12
    Last Post: 10.07.2007, 07:40

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •