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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 15

Thema: FIFO mit S7 ????

  1. #1
    Registriert seit
    02.03.2010
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Respekt an alle Teilnehmer.
    Ich merke es gibt richtige Profis hier im Forum .
    ich bin ganz neue mit der Sache SPS S7- System und muss schon schwitzen. Für mein Praktikum muss ich eine CIP-Anlage programmieren.
    Mehrere Verbraucher Anforderungen sollen nach dem FIFO-Verfahren verarbeitet werden. Die Firma braucht das als Standard Baustein weil sie es fast für jede Projekt brauchen.
    Habe hier durchgesucht und FIFO von Volker gefunden. Aber habe es überhaupt nicht kappiert was da gemacht wird.

    a) Wie soll ich das ganze anfangen?

    b) Kann jemand mir das bitte richtig auskommentieren? habe bis jetzt nur mit FUP zu tun gehabt.

    c) Am Anfang öffnet er den DB(der als speicher dienen soll hoffe ich kappiert zu haben!!!!!!). Ich habe 30 Teilnehmer wie soll den DB aussehen?

    d) Die Variablen #Datenanfang(Anfangs- oder Endadresse des DBs?) und #Datenende(Anfangs oder Endadresse des DBs?) ) sind Anfangs- und Endadresse der DB oder umgekeht? oder gelesenen Daten(Anfangs oder Endadresse des DBs?) )

    Vielen Dank zuerst mal für Ihre Bemühungen

    Moclam
    Geändert von moclam (03.03.2010 um 09:44 Uhr)
    Zitieren Zitieren FIFO mit S7 ????  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.710
    Danke
    398
    Erhielt 2.397 Danke für 1.997 Beiträge

    Standard

    Hallo,
    ich finde, dass das Beispiel eigentlich ganz gut dokumentiert ist. Es ist ja nicht mal vergessen worden, auf die grundsätzliche Arbeitsweise eines FIFO's einzugehen.

    Solche Sachen lassen sich NICHT in FUP programmieren. Wieso eigentlich immer FUP ?

    Wie groß soll dein Datenbereich sein ?
    Bytes oder Worte oder Doppelworte ? Oder noch mehr ?

    Gruß
    LL

  3. #3
    moclam ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.03.2010
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Vielen Dank zuerst mal Larry,

    sei mir nicht böse, die Firma will es so in FUP haben, wenn es ginge, da ich danach weg gehe und sie müssen benutzen.
    Es werden 25 Teilnehmer sein und WORD.
    Ich will auf jeden Fall AWL lernen deswegen würde mich freuen wenn ich auf jede Zeile ein Kommentar gehabt hätte

    Vielen Dank noch mal

    Moclam
    Zitieren Zitieren FIFO mit S7 ????  

  4. #4
    Registriert seit
    23.02.2010
    Beiträge
    24
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo moclam

    Hab ich das richtig verstanden das du in ersterlinie erst mal AWL verstehen willst?
    Wenn das so sein sollte kann ich dir nur raten in der Syntaxhilfe nachzuschauen. Dann wirst du es serh schnell verstehen. Hab früher auch in FUP programmiert und kann nur sagen das man es dadurch sehr schnell versteht.
    Am besten mal kleinere programme als übung machen.

  5. #5
    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 Larry Laffer Beitrag anzeigen
    H
    Solche Sachen lassen sich NICHT in FUP programmieren.
    GERÜCHT!

    Code:
    *
    FUNCTION_BLOCK FB 10
    TITLE =
    VERSION : 0.1
    
    
    VAR_INPUT
      xPulse : BOOL ;	
      wIn : WORD ;	
    END_VAR
    VAR_OUTPUT
      wOut : WORD ;	
    END_VAR
    VAR
      xHelpFlag : BOOL ;	
      wArrayOfWord : ARRAY  [0 .. 7 ] OF WORD ;	
    END_VAR
    VAR_TEMP
      xHelp : BOOL ;	
    END_VAR
    BEGIN
    NETWORK
    TITLE =
    
          U     #xPulse; 
          FP    #xHelpFlag; 
          SPBN  end; 
    NETWORK
    TITLE =
    
          U(    ; 
          L     #wArrayOfWord[7]; 
          T     #wOut; 
          SET   ; 
          SAVE  ; 
          CLR   ; 
          U     BIE; 
          )     ; 
          SPBNB _001; 
          L     #wArrayOfWord[6]; 
          T     #wArrayOfWord[7]; 
    _001: NOP   0; 
    NETWORK
    TITLE =
    
          U(    ; 
          L     #wArrayOfWord[5]; 
          T     #wArrayOfWord[6]; 
          SET   ; 
          SAVE  ; 
          CLR   ; 
          U     BIE; 
          )     ; 
          SPBNB _002; 
          L     #wArrayOfWord[4]; 
          T     #wArrayOfWord[5]; 
    _002: NOP   0; 
    NETWORK
    TITLE =
    
          U(    ; 
          L     #wArrayOfWord[3]; 
          T     #wArrayOfWord[4]; 
          SET   ; 
          SAVE  ; 
          CLR   ; 
          U     BIE; 
          )     ; 
          SPBNB _003; 
          L     #wArrayOfWord[2]; 
          T     #wArrayOfWord[3]; 
    _003: NOP   0; 
    NETWORK
    TITLE =
    
          U(    ; 
          L     #wArrayOfWord[1]; 
          T     #wArrayOfWord[2]; 
          SET   ; 
          SAVE  ; 
          CLR   ; 
          U     BIE; 
          )     ; 
          SPBNB _004; 
          L     #wArrayOfWord[0]; 
          T     #wArrayOfWord[1]; 
    _004: NOP   0; 
    NETWORK
    TITLE =
    
          L     #wIn; 
          T     #wArrayOfWord[0]; 
          NOP   0; 
    NETWORK
    TITLE =
    
    end:  O     #xHelp; 
          ON    #xHelp; 
          SAVE  ; 
    END_FUNCTION_BLOCK
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  6. #6
    moclam ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.03.2010
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Micha2010,

    Danke für den Tipps
    Das mache ich auf jeden Fall.
    Kannst du mir irgendwelches empfehlen?

    Das großes Problem wie oben erwähnt ist die Firma, die FUP
    haben will aber wenn es nicht geht dann werden sie wahrscheinlich damit leben müssen.

    Besonders es muss ein Standardbaustein sein.

    ==> sie brauchen drin nicht zu schauen wenn es läuft.

    Moclam
    Zitieren Zitieren FIFO mit S7  

  7. #7
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.710
    Danke
    398
    Erhielt 2.397 Danke für 1.997 Beiträge

    Standard

    @4L:
    Wo ist denn das eine Schleife ?
    Soll der TE den Anweisungsblock für seine 25 Worte dann so machen ? Ist für mich OK, wenn er das so will.

    @moclam:
    erstmal damit wir von der gleichen Sachen reden. Hier ist der fragliche Beitrag von Volker :
    Code:
         AUF   #Datenbaustein      //Typ: Block_DB   //hier muss dein DB hin ...
          L     #Datenende          //Typ: INT  //die Anzahl der zu verarbeitenden Elemente - bei dir wären es 25
          L     1
          -I    
          T     #index              //Typ: DINT
    anf:  NOP   0                   //Schleifenanfang
          L     #index
          SLD   4                   //pointer erzeugen   //von SLD 3 auf SLD 4 geändert, weil du ja mit Worten arbeiten willst
                                          // aus deiner Adresse wird so ein Bit-Pointer für die indirekte Adressierung erzeugt
          LAR1                      //in das Adressregister laden
          L     DBW [AR1,P#0.0]  // hier habe ich auch wieder geändert, da du ja mit Worten arbeiten willst
          T     DBW [AR1,P#2.0]
          L     #index
          L     1
          -I                        //Index um 1 verringern
          T     #index
          L     1
          +I    
          L     #Datenanfang        //Typ: INT  // in deinem Fall = 1
          <=I                       //prüfen ob fertig
          SPB   ende                //wenn ja ende
          SPA   anf                 //sonst schleife wiederholen
    ende: NOP   0
          L     #Eintrag            //Typ: WORD
          T     DBW [AR1,P#0.0]     //neuen Wert eintragen
    .. das müßte es nun gewesen sein. Versuch dich mal daran.
    Leider lassen sich diese (etwas komplexeren Dinge) nicht in FUP machen.
    Aber vielleicht hilft es dir ja ...

    Gruß
    LL

  8. #8
    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 Larry Laffer Beitrag anzeigen
    @4L:
    Wo ist denn das eine Schleife ?
    Soll der TE den Anweisungsblock für seine 25 Worte dann so machen ? Ist für mich OK, wenn er das so will.
    schleife? wieso? wofür? aber kann ich dir auch noch bauen, kein problem... dieser fifo da oben pulst auf anforderung, so wie ich mir einen fifo halt vorstelle
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  9. #9
    moclam ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.03.2010
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    finde ech super, dass alle sich Mühe geben um mir zu helfen. Hoffe werde bald so wie ihr sein.

    @Vierlagig

    dein 1. Code habe ich super gut verstanden weil ich mehr in Richtung Hochsprache mich besser fühle.
    Ich arbeite gerade mit dem und habe noch ein kleines Problem.

    Habe zur INPUT noch #Datenbaustein( da ich am Ende mein FIFO als Standardbaustein haben muss) eingegeben.

    Habe in STAT #wArrayOfWord Array [<1..32>] of <word> deklariert aber es gibt immer eine Fehlermeldung weiss nicht warum.

    Ich muss es meiner Meinung nach danach #wArrayOfWord zu #Datenbaustein zuweisen aber wie???? weiss ich nicht.

    @Larry

    Vielen Dank für Kommentare
    Den 1. Code wird mir langsam auch klar aber mache zuerst mal mit dem 1. bis es funktioniert Dann mit deinem.
    Zitieren Zitieren FIFO mit S7 ????  

  10. #10
    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


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von moclam Beitrag anzeigen
    finde ech super, dass alle sich Mühe geben um mir zu helfen. Hoffe werde bald so wie ihr sein.
    DAS WILLST DU NICHT WIRKLICH!

    Zitat Zitat von moclam Beitrag anzeigen
    @Vierlagig
    v ... kleines v .... ist das denn wirklich SOOOOOO schwer?

    Zitat Zitat von moclam Beitrag anzeigen
    dein 1. Code habe ich super gut verstanden weil ich mehr in Richtung Hochsprache mich besser fühle.
    Ich arbeite gerade mit dem und habe noch ein kleines Problem.
    das war eigentlich nur ein spaß, aber schön, wenn du damit arbeiten willst, viel spaß nur hat das mit hochsprachen nichts zu tun, nichtmal mit hochdeutsch...

    Zitat Zitat von moclam Beitrag anzeigen
    Habe zur INPUT noch #Datenbaustein( da ich am Ende mein FIFO als Standardbaustein haben muss) eingegeben.
    ich hoffe für dich, dass du noch weißt was du meinst, ich kann es nicht erraten...

    Zitat Zitat von moclam Beitrag anzeigen
    Habe in STAT #wArrayOfWord Array [<1..32>] of <word> deklariert aber es gibt immer eine Fehlermeldung weiss nicht warum.
    schön ist bei fehlermeldungen immer zu wissen, was in der fehlermeldung drin steht. bei mir funktioniert die vergrößerung auf Array [0..31] of word ziemlich gut.

    Zitat Zitat von moclam Beitrag anzeigen
    Ich muss es meiner Meinung nach danach #wArrayOfWord zu #Datenbaustein zuweisen aber wie???? weiss ich nicht.
    da ich immer noch nicht weiß, was du vorhast: lass es! ... das wArrayOfWord ist doch schon im instanzdatenbaustein drin, was willste mehr???
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

Ähnliche Themen

  1. FIFO für Staustrecke
    Von element. im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 20.04.2010, 09:22
  2. Fifo Bit
    Von Jordy im Forum Simatic
    Antworten: 28
    Letzter Beitrag: 28.06.2008, 22:11
  3. Fifo S7
    Von stevexxx im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 18.03.2008, 14:45
  4. Scl-fifo
    Von johnij im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 12.11.2007, 08:16
  5. Fifo
    Von sweber im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 14.06.2007, 15:06

Lesezeichen

Berechtigungen

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