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

Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 20 von 20

Thema: Meldenummernverfahren, aber wie?

  1. #11
    Registriert seit
    11.05.2005
    Ort
    Baden-Württemberg
    Beiträge
    669
    Danke
    113
    Erhielt 153 Danke für 124 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Code:
    FUNCTION_BLOCK "AL8D"
    TITLE =Meldungen
    AUTHOR : Micha
    FAMILY : ALARM
    VERSION : 1.0
     
    VAR_INPUT
      ENABLE : BOOL ; //Meldungen zulassen
      Meldung1 : BOOL ; //Meldeereignis
      Meldung2 : BOOL ; //Meldeereignis
      Meldung3 : BOOL ; //Meldeereignis
      Meldung4 : BOOL ; //Meldeereignis
      Meldung5 : BOOL ; //Meldeereignis
      Meldung6 : BOOL ; //Meldeereignis
      Meldung7 : BOOL ; //Meldeereignis
      Meldung8 : BOOL ; //Meldeereignis
      CMP_ID : DWORD  := DW#16#1; //Kennung zur Identifikation des Teilsystems für ALARM-D
      ID1 { S7_server := 'alarm_archiv'; S7_a_type := 'alarm_s' }: DWORD ; //Meldenummer für ALARM-D
      ID2 { S7_server := 'alarm_archiv'; S7_a_type := 'alarm_s' }: DWORD ; //Meldenummer für ALARM-D
      ID3 { S7_server := 'alarm_archiv'; S7_a_type := 'alarm_s' }: DWORD ; //Meldenummer für ALARM-D
      ID4 { S7_server := 'alarm_archiv'; S7_a_type := 'alarm_s' }: DWORD ; //Meldenummer für ALARM-D
      ID5 { S7_server := 'alarm_archiv'; S7_a_type := 'alarm_s' }: DWORD ; //Meldenummer für ALARM-D
      ID6 { S7_server := 'alarm_archiv'; S7_a_type := 'alarm_s' }: DWORD ; //Meldenummer für ALARM-D
      ID7 { S7_server := 'alarm_archiv'; S7_a_type := 'alarm_s' }: DWORD ; //Meldenummer für ALARM-D
      ID8 { S7_server := 'alarm_archiv'; S7_a_type := 'alarm_s' }: DWORD ; //Meldenummer für ALARM-D
      SD1 : REAL ; //Begleitwert Meldung 1
      SD2 : REAL ; //Begleitwert Meldung 2
      SD3 : REAL ; //Begleitwert Meldung 3
      SD4 : REAL ; //Begleitwert Meldung 4
      SD5 : REAL ; //Begleitwert Meldung 5
      SD6 : REAL ; //Begleitwert Meldung 6
      SD7 : REAL ; //Begleitwert Meldung 7
      SD8 : REAL ; //Begleitwert Meldung 8
    END_VAR
    VAR
      sbFL1 : BOOL ; 
      sbFL2 : BOOL ; 
      sbFL3 : BOOL ; 
      sbFL4 : BOOL ; 
      sbFL5 : BOOL ; 
      sbFL6 : BOOL ; 
      sbFL7 : BOOL ; 
      sbFL8 : BOOL ; 
    END_VAR
    VAR_TEMP
      tiRET_VAL : INT ; 
    END_VAR
    BEGIN
    NETWORK
    TITLE =Meldung 1
          U     #ENABLE; 
          U     #Meldung1; 
          =     #Meldung1; 
          FN    #sbFL1; 
          O     #Meldung1; 
          SPBN  END1; 
          CALL "ALARM_D" (
               SIG                      := #Meldung1,
               ID                       := W#16#EEEE,
               EV_ID                    := #ID1,
               CMP_ID                   := #CMP_ID,
               SD                       := #SD1,
               RET_VAL                  := #tiRET_VAL);
    END1: NOP   0; 
    NETWORK
    TITLE =Meldung 2
          U     #ENABLE; 
          U     #Meldung2; 
          =     #Meldung2; 
          FN    #sbFL2; 
          O     #Meldung2; 
          SPBN  END2; 
          CALL "ALARM_D" (
               SIG                      := #Meldung2,
               ID                       := W#16#EEEE,
               EV_ID                    := #ID2,
               CMP_ID                   := #CMP_ID,
               SD                       := #SD2,
               RET_VAL                  := #tiRET_VAL);
    END2: NOP   0; 
    NETWORK
    TITLE =Meldung 3
          U     #ENABLE; 
          U     #Meldung3; 
          =     #Meldung3; 
          FN    #sbFL3; 
          O     #Meldung3; 
          SPBN  END3; 
          CALL "ALARM_D" (
               SIG                      := #Meldung3,
               ID                       := W#16#EEEE,
               EV_ID                    := #ID3,
               CMP_ID                   := #CMP_ID,
               SD                       := #SD3,
               RET_VAL                  := #tiRET_VAL);
    END3: NOP   0; 
    NETWORK
    TITLE =Meldung 4
          U     #ENABLE; 
          U     #Meldung4; 
          =     #Meldung4; 
          FN    #sbFL4; 
          O     #Meldung4; 
          SPBN  END4; 
          CALL "ALARM_D" (
               SIG                      := #Meldung4,
               ID                       := W#16#EEEE,
               EV_ID                    := #ID4,
               CMP_ID                   := #CMP_ID,
               SD                       := #SD4,
               RET_VAL                  := #tiRET_VAL);
    END4: NOP   0; 
    NETWORK
    TITLE =Meldung 5
          U     #ENABLE; 
          U     #Meldung5; 
          =     #Meldung5; 
          FN    #sbFL5; 
          O     #Meldung5; 
          SPBN  END5; 
          CALL "ALARM_D" (
               SIG                      := #Meldung5,
               ID                       := W#16#EEEE,
               EV_ID                    := #ID5,
               CMP_ID                   := #CMP_ID,
               SD                       := #SD5,
               RET_VAL                  := #tiRET_VAL);
    END5: NOP   0; 
    NETWORK
    TITLE =Meldung 6
          U     #ENABLE; 
          U     #Meldung6; 
          =     #Meldung6; 
          FN    #sbFL6; 
          O     #Meldung6; 
          SPBN  END6; 
          CALL "ALARM_D" (
               SIG                      := #Meldung6,
               ID                       := W#16#EEEE,
               EV_ID                    := #ID6,
               CMP_ID                   := #CMP_ID,
               SD                       := #SD6,
               RET_VAL                  := #tiRET_VAL);
    END6: NOP   0; 
    NETWORK
    TITLE =Meldung 7
          U     #ENABLE; 
          U     #Meldung7; 
          =     #Meldung7; 
          FN    #sbFL7; 
          O     #Meldung7; 
          SPBN  END7; 
          CALL "ALARM_D" (
               SIG                      := #Meldung7,
               ID                       := W#16#EEEE,
               EV_ID                    := #ID7,
               CMP_ID                   := #CMP_ID,
               SD                       := #SD7,
               RET_VAL                  := #tiRET_VAL);
    END7: NOP   0; 
    NETWORK
    TITLE =Meldung 8
          U     #ENABLE; 
          U     #Meldung8; 
          =     #Meldung8; 
          FN    #sbFL8; 
          O     #Meldung8; 
          SPBN  END8; 
          CALL "ALARM_D" (
               SIG                      := #Meldung8,
               ID                       := W#16#EEEE,
               EV_ID                    := #ID8,
               CMP_ID                   := #CMP_ID,
               SD                       := #SD8,
               RET_VAL                  := #tiRET_VAL);
    END8: NOP   0; 
    END_FUNCTION_BLOCK
    (*$ALARM_SERVER <HEADERS STEP7_VERSION="262144" CODING="true"><LANGUAGE LCID="1031">German</LANGUAGE><STD_LANGUAGE>1031</STD_LANGUAGE><HEADER PARENT="RkIyMDA4" PARENT_SYM="QUw4RA=="><VERSION>Q1BVX1dJREVfQUxBUk1OUg==</VERSION><STRUCTTYPE>1</STRUCTTYPE><ATTR_STATE>0</ATTR_STATE><PRODUCER>1</PRODUCER><ALARM NAME="SUQx"><ATTR_STATE>0</ATTR_STATE><ALARMNR>0</ALARMNR><ALARMTYPE>YWxhcm1fcw==</ALARMTYPE><DISPLAYGROUP>16</DISPLAYGROUP><SUBCOUNT>1</SUBCOUNT><RANGE>0</RANGE><PROTOCOL>0</PROTOCOL><SUBALARM ID="1"><ALARM_CLASS>4</ALARM_CLASS><ALARM_ART>7</ALARM_ART><QUITGROUP>16</QUITGROUP><PRIORITY>1</PRIORITY><QUIT>1</QUIT><ATTR_STATE>0</ATTR_STATE><TEXT1 LCID="1031">TWVsZHVuZyAx</TEXT1></SUBALARM></ALARM><ALARM NAME="SUQy"><ATTR_STATE>0</ATTR_STATE><ALARMNR>0</ALARMNR><ALARMTYPE>YWxhcm1fcw==</ALARMTYPE><DISPLAYGROUP>16</DISPLAYGROUP><SUBCOUNT>1</SUBCOUNT><RANGE>0</RANGE><PROTOCOL>0</PROTOCOL><SUBALARM ID="1"><ALARM_CLASS>4</ALARM_CLASS><ALARM_ART>7</ALARM_ART><QUITGROUP>16</QUITGROUP><PRIORITY>1</PRIORITY><QUIT>1</QUIT><ATTR_STATE>0</ATTR_STATE><TEXT1 LCID="1031">TWVsZHVuZyAy</TEXT1></SUBALARM></ALARM><ALARM NAME="SUQz"><ATTR_STATE>0</ATTR_STATE><ALARMNR>0</ALARMNR><ALARMTYPE>YWxhcm1fcw==</ALARMTYPE><DISPLAYGROUP>16</DISPLAYGROUP><SUBCOUNT>1</SUBCOUNT><RANGE>0</RANGE><PROTOCOL>0</PROTOCOL><SUBALARM ID="1"><ALARM_CLASS>4</ALARM_CLASS><ALARM_ART>7</ALARM_ART><QUITGROUP>16</QUITGROUP><PRIORITY>1</PRIORITY><QUIT>1</QUIT><ATTR_STATE>0</ATTR_STATE><TEXT1 LCID="1031">TWVsZHVuZyAz</TEXT1></SUBALARM></ALARM><ALARM NAME="SUQ0"><ATTR_STATE>0</ATTR_STATE><ALARMNR>0</ALARMNR><ALARMTYPE>YWxhcm1fcw==</ALARMTYPE><DISPLAYGROUP>16</DISPLAYGROUP><SUBCOUNT>1</SUBCOUNT><RANGE>0</RANGE><PROTOCOL>0</PROTOCOL><SUBALARM ID="1"><ALARM_CLASS>4</ALARM_CLASS><ALARM_ART>7</ALARM_ART><QUITGROUP>16</QUITGROUP><PRIORITY>1</PRIORITY><QUIT>1</QUIT><ATTR_STATE>0</ATTR_STATE><TEXT1 LCID="1031">TWVsZHVuZyA0</TEXT1></SUBALARM></ALARM><ALARM NAME="SUQ1"><ATTR_STATE>0</ATTR_STATE><ALARMNR>0</ALARMNR><ALARMTYPE>YWxhcm1fcw==</ALARMTYPE><DISPLAYGROUP>16</DISPLAYGROUP><SUBCOUNT>1</SUBCOUNT><RANGE>0</RANGE><PROTOCOL>0</PROTOCOL><SUBALARM ID="1"><ALARM_CLASS>4</ALARM_CLASS><ALARM_ART>7</ALARM_ART><QUITGROUP>16</QUITGROUP><PRIORITY>1</PRIORITY><QUIT>1</QUIT><ATTR_STATE>0</ATTR_STATE><TEXT1 LCID="1031">TWVsZHVuZyA1</TEXT1></SUBALARM></ALARM><ALARM NAME="SUQ2"><ATTR_STATE>0</ATTR_STATE><ALARMNR>0</ALARMNR><ALARMTYPE>YWxhcm1fcw==</ALARMTYPE><DISPLAYGROUP>16</DISPLAYGROUP><SUBCOUNT>1</SUBCOUNT><RANGE>0</RANGE><PROTOCOL>0</PROTOCOL><SUBALARM ID="1"><ALARM_CLASS>4</ALARM_CLASS><ALARM_ART>7</ALARM_ART><QUITGROUP>16</QUITGROUP><PRIORITY>1</PRIORITY><QUIT>1</QUIT><ATTR_STATE>0</ATTR_STATE><TEXT1 LCID="1031">TWVsZHVuZyA2</TEXT1></SUBALARM></ALARM><ALARM NAME="SUQ3"><ATTR_STATE>0</ATTR_STATE><ALARMNR>0</ALARMNR><ALARMTYPE>YWxhcm1fcw==</ALARMTYPE><DISPLAYGROUP>16</DISPLAYGROUP><SUBCOUNT>1</SUBCOUNT><RANGE>0</RANGE><PROTOCOL>0</PROTOCOL><SUBALARM ID="1"><ALARM_CLASS>4</ALARM_CLASS><ALARM_ART>7</ALARM_ART><QUITGROUP>16</QUITGROUP><PRIORITY>1</PRIORITY><QUIT>1</QUIT><ATTR_STATE>0</ATTR_STATE><TEXT1 LCID="1031">TWVsZHVuZyA3</TEXT1></SUBALARM></ALARM><ALARM NAME="SUQ4"><ATTR_STATE>0</ATTR_STATE><ALARMNR>0</ALARMNR><ALARMTYPE>YWxhcm1fcw==</ALARMTYPE><DISPLAYGROUP>16</DISPLAYGROUP><SUBCOUNT>1</SUBCOUNT><RANGE>0</RANGE><PROTOCOL>0</PROTOCOL><SUBALARM ID="1"><ALARM_CLASS>4</ALARM_CLASS><ALARM_ART>7</ALARM_ART><QUITGROUP>16</QUITGROUP><PRIORITY>1</PRIORITY><QUIT>1</QUIT><ATTR_STATE>0</ATTR_STATE><TEXT1 LCID="1031">TWVsZHVuZyA4</TEXT1></SUBALARM></ALARM></HEADER></HEADERS> *)
    ... funktioniert astrein!

    Micha
    "arbeite klug, nicht hart" - deutsches Sprichwort

  2. Folgender Benutzer sagt Danke zu SPSKILLER für den nützlichen Beitrag:

    Perfektionist (13.06.2013)

  3. #12
    Andy_Scheck ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    31.05.2007
    Beiträge
    165
    Danke
    23
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Die Hilfe zum SFB 18 hab ich gelesen, zuvor ich die Frage gestellt hab, leider blieb der Funke aus und es kam nicht zum Sprung

    "Sie müssen darauf achten, daß Sie die SFC 17/SFC 18 nur dann aufrufen, wenn der Wert des meldungsauslösenden Signals SIG gegenüber dem letzten Aufruf invertiert ist. Ist dies nicht der Fall, so wird Ihnen dies über RET_VAL mitgeteilt, und es wird keine Meldung gesendet. Beim allerersten Aufruf der SFC 17/SFC 18 müssen Sie dafür Sorge tragen, daß am Eingang SIG 1 anliegt. Sonst bekommen Sie über RET_VAL eine Fehlerinformation, und es wird keine Meldung gesendet."

    Wie muss ich nun das ganze Umsetzen?
    Das mit dem allersten Aufruf hab ich nicht eingehalten, da ich die Hilfe erst gelesen hab, als der Ret_Val was ausgespuckt hat.

    Besten Dank
    andy

  4. #13
    Registriert seit
    04.06.2007
    Ort
    Mal hier und mal dort
    Beiträge
    116
    Danke
    13
    Erhielt 5 Danke für 4 Beiträge

    Standard

    Du kannst den jeweiligen AufrufOB mit SFC6 bestimmen und deinen Baustein im Anlauf initialisieren.
    Dafür hab ich das ganze in einen FB gepackt, der auch im anlauf bearbeitet wird

  5. #14
    Andy_Scheck ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    31.05.2007
    Beiträge
    165
    Danke
    23
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Da das ganze in AWL ist, steig ich da nicht ganz durch.

    Wozu werden die Boolschen Variablen verwendet?
    Zitieren Zitieren Code: AWL  

  6. #15
    Andy_Scheck ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    31.05.2007
    Beiträge
    165
    Danke
    23
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Das ganze sieht bei mir in etwa noch so aus.
    Angehängte Grafiken Angehängte Grafiken
    Zitieren Zitieren Bild des FBs  

  7. #16
    Andy_Scheck ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    31.05.2007
    Beiträge
    165
    Danke
    23
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Gibts denn keinen der mir bezüglich Fup etwas weiterhelfen kann, denn das ganze funkt immer noch nicht

    Besten dank
    Gruß andy
    Geändert von Andy_Scheck (11.03.2010 um 08:38 Uhr) Grund: Warte auf Anregungen

  8. #17
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    Zitat Zitat von Andy_Scheck Beitrag anzeigen
    Da das ganze in AWL ist, steig ich da nicht ganz durch.

    Wozu werden die Boolschen Variablen verwendet?
    welche meinst du? die inputs? das sind die meldungsindikatoren. oder meinst du die statischen? das sind flankenauswertungshilfsmerkerchen... eigentlich ist der baustein vom killa doch selbsterklärend genug, zumindest gut strukturiert
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  9. #18
    Andy_Scheck ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    31.05.2007
    Beiträge
    165
    Danke
    23
    Erhielt 4 Danke für 4 Beiträge

    Standard

    In Eintrag 15 hab ich meinen FB gepostet, der sieht aber anders aus als der auf der Siemens-Support-Seite
    http://cache.automation.siemens.com/...m_S_D_04_d.gif
    Woran liegt der Unterschied, ich hab nur den Aufruf drin.

    Gruß andy
    Zitieren Zitieren Bausteine vergleichen  

  10. #19
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    Zitat Zitat von Andy_Scheck Beitrag anzeigen
    In Eintrag 15 hab ich meinen FB gepostet, der sieht aber anders aus als der auf der Siemens-Support-Seite
    http://cache.automation.siemens.com/...m_S_D_04_d.gif
    Woran liegt der Unterschied, ich hab nur den Aufruf drin.

    Gruß andy
    im siemensbild wird der ALARM_D, in deinem der ALARM_S aufgerufen ... wird das jetzt hier son ratespiel?`geh zu 9live, die suchen ständig frische, motivierte moderatoren!
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  11. #20
    Andy_Scheck ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    31.05.2007
    Beiträge
    165
    Danke
    23
    Erhielt 4 Danke für 4 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    isch mir eigentlich egal ob Alarm_S oder D,
    ich mein die Begleitwerte String, Hex.... das steht bei mir nicht drin....
    ...was ist 9live, ein Forum?
    Geändert von Andy_Scheck (11.03.2010 um 09:34 Uhr)

Ähnliche Themen

  1. PC-Steuerung - aber wie?
    Von DerPalit im Forum Elektronik
    Antworten: 9
    Letzter Beitrag: 26.07.2010, 08:12
  2. FB ersetzen, aber wie?
    Von tonga im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 15.07.2010, 17:21
  3. C-problemSetPropWord aber wie?
    Von sailor im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 01.06.2010, 15:29
  4. WatchDog aber wie?
    Von AUDSUPERUSER im Forum Programmierstrategien
    Antworten: 9
    Letzter Beitrag: 06.05.2010, 07:43
  5. Not-Aus Steuerung aber wie?
    Von Tadeos im Forum Schaltschrankbau
    Antworten: 9
    Letzter Beitrag: 30.03.2009, 13:56

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •