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

Ergebnis 1 bis 6 von 6

Thema: Zuweisung verschiedener Werte aus DB an Merker

  1. #1
    Registriert seit
    19.08.2009
    Beiträge
    4
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Guten Tag zusammen

    meine Hard- Software:

    S7-Simatic Manager V5.4, WinCC flexible 2007 V1.2.0.0_1.55.01
    S7 314C-2DP

    Ich habe eine Ablaufkette in Fub programiert mit der es mir möglich ist Hochfreqenz- Motoren einlaufen zu lassen (Fettverteilung inerhalb der Lager beim ersten Lauf). Dafür sind insgesamt 20 Zyklen mit unterschiedlichen Drehzahlen, Zyklusszeiten, Ei- Ausschaltintervalle des Antriebs nötig. Hierfür verwende ich einen selbst geschriebenen kleinen Zyklus- Baustein.

    In diesem Baustein sind drei Zähler verbaut die einen Zyklus abhandeln. Allerdings benötige ich insgesamt 20 Zyklen. Dazu habe ich die Fc_zyklusbaustein mehrfach in einem weiterem FC, 20 mal aufgerufen und über einen Vergleicher aktiviert. Der Zählwert entspricht dem Zyklusschritt der 20 vorhandenen.

    Die oben genannten Werte habe ich inerhalb eines DB mit Sructure hinterlegt. Diese Werte musste ich mit meiner Variante passend zum Zyklusschritt einzeln jeden der 20 Zyklusbausteinen zuweisen.

    Eine andere Variante von mir war das weiterreichen der DB Werte an mehrere Move Befehle die anhand des Zyklusschritt aktiviert wurden. Am Ausgang der Move Befehle befand sich die Variable die es dem Zyklusbaustein zuspielte. Mit dieser Variante war nur noch ein Zyklusbaustein nötig der passend zum Zykluss die passenden Werte bekommen hat. Allerdings waren somit durch drei s5time Zeiten und eine Dint Variable 80 Move Befehle notwendig.

    Ich würde gern die Werte von dem Datenbaustein vier Verschieden Variablen zuweisen. Die widerum sich z.b durch den Zählschritt der einzelnen Zyklen den nächsten Wert aus dem DB holen (1.Schritt- Zykluss Zeit 1, 2.Schritt- Zyklusszeit 2). Leider habe ich keine Ahnung welche Funtion dafür nötig ist.
    Wenn möglich wäre eine Lösung in Fub für mich von Vorteil weil ich mit AWL nicht so gut umgehen kann.

    Würde mich sehr über eine Lösung freuen

    MFG Harry_RE
    Angehängte Grafiken Angehängte Grafiken
    • Dateityp: jpg SPS.jpg (24,7 KB, 43x aufgerufen)
    Zitieren Zitieren Zuweisung verschiedener Werte aus DB an Merker  

  2. #2
    Harry_RE ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    19.08.2009
    Beiträge
    4
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hier noch ein Auszug aus dem DB
    Angehängte Grafiken Angehängte Grafiken
    • Dateityp: jpg DB1.jpg (68,8 KB, 42x aufgerufen)

  3. #3
    Registriert seit
    18.03.2008
    Beiträge
    267
    Danke
    3
    Erhielt 26 Danke für 26 Beiträge

    Standard

    Hab die Frage nicht ganz verstanden...

    Willst du die aktuelle Zykluszeit wissen?

    Variante 1:
    du nimmst einen OB32 oder sowas, der mit einer konstanten Zykluszeit arbeitet

    Variante 2:
    Der OB1 liefert dir die aktuelle Zykluszeit in seinen internen Variablen, geh mal im Bausteincontainer auf den OB1 und drück F1

    Variante 3:
    Du kannst dir die Zykluszeit selbst berechnen. Es gibt irgend eine FUnktion GetSystemTicks oder sowas, die dir die aktuelle Systemzeit liefert. letzen Wert vom aktuellen subtrahieren und aktuellen Wert speichern

  4. #4
    Harry_RE ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    19.08.2009
    Beiträge
    4
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke für die schnelle Antwort Chefmech,

    Es geht mir aber nicht um die Zykluszeit der S7 sondern um mehrere maschinelle Zyklen die die S7 steuern soll.
    Um dies efektiv zu realisieren benötige ich eine Möglichkeit Zeiten,DINT- Werte aus einem Datenbaustein nacheinander auszulesen. Diese Ausgelese Zeit z.B. einer Variable zu zuweisen die ich dann im weiterem Prozess verwende. Anschließend wenn der erste Zykluss der Maschine erfolgreich war soll der zweite Wert der Variable zugewiesen werden ...
    z.B.
    (im_Datenbaustein)
    Zeit_1 /St5time/ s5t#2m
    Zeit_2 /St5time/ s5t#3m
    Zeit_3 /St5time/ s5t#4m
    Zeit_4 /St5time/ s5t#5m

  5. #5
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.794
    Danke
    398
    Erhielt 2.417 Danke für 2.013 Beiträge

    Standard

    Hallo,
    das ist dann ein Fall für "indirekte Adressierung" der Quell-Variablen und entsprechende Zugriffe über Pointer. Gib den o.g. Stichpunkt mal in der Step7-Hilfe ein - oder in der Forums-Suche ...
    Allerdings - mit FUP wirst du da nicht weit kommen ...

    Gruß
    LL

  6. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    Harry_RE (16.04.2010)

  7. #6
    Registriert seit
    18.03.2008
    Beiträge
    267
    Danke
    3
    Erhielt 26 Danke für 26 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Das ist doch eine klassische Schrittkette,

    in Pseudo-Code etwa so:
    Code:
    case nMyCase
    
    0:
        //init
        dMyTime = Zeit0
        nMyCase = 1
    1:
        //do something...
    
        //Case wechsel
        if fTimerAbgelaufen
            dMyTime = Zeit1    
            nMyCase = 2
        end_if
    2:
        //do something...
    
        //Case wechsel
        if fTimerAbgelaufen
            dMyTime = Zeit2    
            nMyCase = 3
        end_if
    3:
        //do something...
    
        //Case wechsel
        ....
    
    end_case
    
    Timer(In = not fTimerAbgelaufen
            ,Time = dMyTime)
    
    fTimerAbgelaufen = Timer.Q

  8. Folgender Benutzer sagt Danke zu Chefmech für den nützlichen Beitrag:

    Harry_RE (16.04.2010)

Ähnliche Themen

  1. Energieberechnung verschiedener Motoren
    Von Markus1474 im Forum Simatic
    Antworten: 16
    Letzter Beitrag: 22.09.2011, 16:05
  2. Unterschied verschiedener CP`s
    Von settelma im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 30.07.2010, 20:18
  3. Ungültige Zuweisung, SCL
    Von petzi im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 18.05.2009, 13:55
  4. Antworten: 7
    Letzter Beitrag: 04.04.2009, 21:20
  5. Zuweisung
    Von snowbda im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 03.12.2008, 15:11

Lesezeichen

Berechtigungen

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