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

Ergebnis 1 bis 4 von 4

Thema: Problem beim Baustein Hochladen in Simatic 5.4

  1. #1
    Registriert seit
    12.04.2009
    Beiträge
    23
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi,

    Kurz: Problem beim Hochladen eines OB's.

    Ich verwende eine Siemens ET200S CPU mit Simatic 5.4 Programmiersoftware.

    Ich wollte schauen wie lang meine CPU zum ausführen meines Programms braucht und habe dafür eine einfache Struktur aufgebaut:

    Code:
          CALL  "READ_CLK"
           RET_VAL:="f1"
           CDT    :=#DT3
          NOP   0
    
    
    ---
    
    
    
    Beg:  L     "Int_temp"
          L     1
          +I    
          T     "Int_temp"
          NOP   0
    
    
    ---
    //eigentlicher programm code....
    ---
    
        L     "Int_temp"
          L     999
          <I    
          SPB   Beg
    
    ---
    
    
      CALL  "READ_CLK"
           RET_VAL:="f2"
           CDT    :=#DT4
          NOP   0
    Einfach soll es folgendes machen:
    - CPU Zeit auslesen Anfang

    - Sprungmarke festlegen
    - Zähl variable Int bei jedem Durchlauf um 1 erhöhen

    - Programm ablaufen lassen

    - Prüfen ob 1000 Durchläufe

    - Wenn ja, CPU Zeit auslesen Ende
    - Wenn nein, Sprung zur Sprungmarke

    DT3/DT4 sind Tempöräre Variablen weil ich in der Symboltabelle keinen Datentyp Date_and_Time hinbekommen hab..

    Wenn ich nun hochladen will bekomme ich eine Fehlermeldung das der Baustein nicht übertragen werden kann..Frage ist nun , wieso nicht? Hab ich da nen Fehler drin?

    Vllt sieht jemand ja nen Fehler und kann mir helfen, ist vllt nur ne kleinigkeit...


    Frohe Ostern schonmal

    MfG
    Hawk

    PS: gibts nen besseren, leichteren weg die Programmlaufzeit in ms rauszubekommen? Hab was von nem Systembaustein gelesen(SFC 78?), wollte den probieren aber der brachte nur CPU stop,..vermute der wird nicht unterstützt oder so ..
    Zitieren Zitieren Problem beim Baustein Hochladen in Simatic 5.4  

  2. #2
    Registriert seit
    19.06.2005
    Ort
    in Bayern ganz oben
    Beiträge
    1.360
    Danke
    188
    Erhielt 372 Danke für 290 Beiträge

    Standard

    Hi,

    die Systemzeit kann mit dem Baustein SFC64 "TIME_TCK" gelesen werden.

    Welcher OB?
    Was steht in der Fehlermeldung die angezeigt wird?
    Was steht im Rest vom Programm?

    Gruss Daniel
    Erfahrung ist eine nützliche Sache. Leider macht man sie immer erst kurz nachdem man sie brauchte...

    OSCAT.lib Step 7

    Open Source Community for Automation Technolgy

    SPS-Forum Chat (Mibbit) | SPS-Forum Chat (MIRC)

  3. #3
    Registriert seit
    15.01.2005
    Ort
    In der Mitte zwischen Bayreuth/Weiden
    Beiträge
    6.752
    Danke
    323
    Erhielt 1.526 Danke für 1.286 Beiträge

    Standard

    Alternativ zum SFC64:
    Die Lokalvariable des OB1 (OB1_Prev_Cycle).

    Wenn der Baustein nicht übertragen werden kann:
    - Operandenbereiche verwendet, die von der CPU nicht unterstützt werden
    - Systemfunktionen verwendet die nicht unterstützt werden
    Solltest du alles mit dem Baugruppenzustand "Leistungsdaten" rausfinden.

    Mfg
    Manuel
    Warum denn einfach, wenn man auch Siemens einsetzen kann!

    Wer die grundlegenden Freiheiten aufgibt, um vorübergehend ein wenig Sicherheit zu bekommen, verdient weder Freiheit noch Sicherheit (B. Franklin).

  4. #4
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.314
    Danke
    932
    Erhielt 3.329 Danke für 2.688 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von mac_hawk Beitrag anzeigen
    Wenn ich nun hochladen will bekomme ich eine Fehlermeldung das der Baustein nicht übertragen werden kann..Frage ist nun , wieso nicht?
    Die INT-Variablen "f1", "f2" und/oder "Int_temp" liegen wohl auf zu hohen Merker-Adressen, die die CPU nicht hat.

    Weiterer Fehler:
    Das Programm 1000 mal im selben OB1-Zyklus ablaufen zu lassen wird höchstwahrscheinlich zu STOP der CPU wegen
    Zykluszeit-Überschreitung führen.
    "SPB Beg" ist ein Rückwärts-Sprung. Es muß aber zum Ende des OB1-Zyklus gesprungen werden.

    Zitat Zitat von mac_hawk Beitrag anzeigen
    DT3/DT4 sind Tempöräre Variablen weil ich in der Symboltabelle keinen Datentyp Date_and_Time hinbekommen hab..
    Lege zumindest die Date_and_Time-Variable, die den Start-Zeitpunkt der Messung enthält, in einen DB.

    Alternative Zeit-Ermittlung statt SFC1 "READ_CLK":
    • #OB1_PREV_CYCLE in jedem Meß-Zyklus addieren ergibt sofort die Meßzeit in ms (eventuell mit Rundungsfehlern)
    • #OB1_DATE_TIME bei Meß-Start in einen DB kopieren und bei Meß-Ende mit FC34 "SB_DT_DT" die Zeit-Differenz
      DB.StartTime - #OB1_DATE_TIME berechnen ergibt die Zeit-Differenz in ms
      (den FC34 "SB_DT_DT" gibt es in Standard Library > IEC Function Blocks)


    @dalbi
    SFC64 "TIME_TCK" hat bei S7-300-CPUs nur eine Auflösung von 10ms

    Zitat Zitat von mac_hawk Beitrag anzeigen
    [...] wollte den probieren aber der brachte nur CPU stop,..vermute der wird nicht unterstützt oder so ..
    Nicht "vermuten"! Für sowas gibt es den CPU-Diagnosepuffer, wo genau drin steht, warum die CPU in STOP gegangen ist.
    Zielsystem > Baugruppenzustand > Diagnosepuffer

    Gruß
    Harald

Ähnliche Themen

  1. Hochladen von Bausteinen in eine S7 300 SPS
    Von reniviech im Forum Simatic
    Antworten: 18
    Letzter Beitrag: 31.05.2011, 20:33
  2. Antworten: 17
    Letzter Beitrag: 08.03.2011, 10:00
  3. Problem Beim Starten des Simatic Managers
    Von Football_Freak im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 06.10.2010, 12:42
  4. Problem mit SCL-Baustein..Block_DB
    Von slani_bw im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 18.05.2008, 00:09
  5. Antworten: 3
    Letzter Beitrag: 06.09.2004, 17:06

Lesezeichen

Berechtigungen

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