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

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

Thema: Varible Zeit

  1. #1
    Registriert seit
    08.09.2010
    Beiträge
    57
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen.
    Ich bekomme das mit den variablen Timern eifnach nicht auf die Reihe
    Die Hilfe funktion habe ich benutzt und benutze folgende Beitraege als Referenz:

    http://www.sps-forum.de/showthread.php?t=2942

    Ich moechte einfach nur ein variables takt Signal (aehnlich PWM-Signal) generieren. Dazu habe ich folgende Ueberlegungen getaetigt.

    Variable Zeit fuer einen Timer, Timer schaltet Ausgang = Takt den ich brauche

    ich bekomme das mit den Datentypen einfach nicht auf die Reihe und verstehe nicht wieso ich da nicht einfach Integer Werte wie z.B. 5, 9, 30 eingeben kann. Irgendwie ist das mit der S7 Programmierung etwas komisch verglichen mit der Einfacheit von C/C++.

    SIehe Screenshot. was fuer Variablentypen werden erwartet?

    S5_Time ist ausgabe des Zeitwertes, richtig?
    was muss ich fuer z.b. globale Variablen in der Symboltabelle eintragen, dass sich hier etwas sinnvolles ergibt, was ich fuer mein Projekt (Takt auf Ausgang) benutzen kann?

    Ich verstehe nicht, was die Symboltabelle als Adresse fuer Typ Integer eingeben muss. Und wenn ich S5TIME als Typ angebe geht es auch nicht?
    Habe schon versucht hier im Forum eine hilfreiche Beschreibung fuer Datentypen zu finden und auch im Netz, doch leider nie genauere Angaben gefunden. Nur Typ Inter, Bereich von -32... bis 32......

    Hilfe

    Danke und schoene Thanksgiving Feiertage!

    Studi

    Danke
    Angehängte Grafiken Angehängte Grafiken
    Zitieren Zitieren Varible Zeit  

  2. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.184
    Danke
    923
    Erhielt 3.290 Danke für 2.659 Beiträge

    Standard

    Zitat Zitat von Studiologe Beitrag anzeigen
    SIehe Screenshot. was fuer Variablentypen werden erwartet?
    Das steht in dem Beitrag, wo Du den Umrechnungsbaustein her hast, ganz genau im Quelltext des Bausteins.
    Und auch im Kopfbereich des Bausteins, wie Du ihn jetzt in Deinem Step7-Projekt hast.
    Zitat Zitat von plc_tippser Beitrag anzeigen
    Hier noch ein Baustein von unserem User OHGN:
    Code:
    FUNCTION FC 201 : VOID
    TITLE =INT_to_S5 Time
    
    VAR_INPUT
      Einheit : BYTE ; //1=ms 2=s 3=min
    END_VAR
    VAR_OUTPUT
      S5_Time : S5TIME ; 
    END_VAR
    VAR_IN_OUT
      IN : INT ; 
    END_VAR
    Man kann auch beim Bausteinaufruf den Mauszeiger auf einen Bausteinparameter halten - etwas warten - und schon
    erscheint ein Tooltip mit der Angabe des erwarteten Datentyps.

    Zitat Zitat von Studiologe Beitrag anzeigen
    S5_Time ist ausgabe des Zeitwertes, richtig?
    Richtig. Es ist der aus Einheit und IN berechnete Zeitwert im Format S5TIME.
    Die Variable, die Du hier angibst mußt Du nachher bei dem/den Takt-Timer(n) verwenden.

    Ich verstehe nicht, was die Symboltabelle als Adresse fuer Typ Integer eingeben muss.
    Eine Speicheradresse, die einen INT (16 Bit) aufnehmen kann, z.B. MW40.

    Habe schon versucht hier im Forum eine hilfreiche Beschreibung fuer Datentypen zu finden und auch im Netz, doch leider nie genauere Angaben gefunden. Nur Typ Inter, Bereich von -32... bis 32......
    Warum in die Ferne schweifen, liegt die Beschreibung aller S7-Datentypen doch direkt vor Deiner Nase:
    Einfach mal im Step7-Editor die Zaubertaste F1 drücken und nach "Datentypen" suchen.
    Zusätzlich hat das Step7 eine Menge Programmierhandbücher mit allen wichtigen Informationen auf Deinem Rechner
    installiert (Start > SIMATIC > Dokumentationen (oder so ähnlich)), z.B. das Handbuch "Programmieren mit STEP 7",
    das enthält u.A. die Beschreibung aller Datentypen. Und Handbücher zu FUP, KOP, AWL, ...

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    Studiologe (27.11.2010)

  4. #3
    Registriert seit
    08.09.2010
    Beiträge
    57
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Harald,
    besten Dank!
    Jetzt hat es geklappt. Ich war nur etwas verunsichert mit den Datentypen.


    Super vielen Dank!

  5. #4
    Registriert seit
    08.09.2010
    Beiträge
    57
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich habe jetzt noch folgendes kleines Problem.
    Die CPU geht immer auf STOP wenn ich folgenden Programmcode ausfuehren lasse (Meldung der CPU unter Diagnose deutet auf programmierfehler....)

    Und zwar geht es datum, das ich am OP einen Pushbutton habe, mit dem ich den Zeitwert anpassen kann. Ebenfalls wird der Zeitwert ueber ein EIN/AUSgabe fenster und einen Schieberegler beeinflusst.
    Aendere ich den Zeitwert ueber das EIN/AUSGABEFELD, so aendert sich auch der Schieberegler und umgekehrt. Also alles so wie es soll.
    Wenn ich allerdings den Pushbutton benutze um den Zeitwert anzupassen, dann erhoeht er mir den Wert um 1 und dann geht die CPU in STOP.
    Ich tippe auf einen Mismatch zwischen Datentypen, bin mir aber unschluessig wo der Fehler sitzt.
    Ich befuerchte,dass ich wegen der hoehen Zyklenfolge noch einen Timer einbauen muss, damit die Schritte mit denen ich den Zeitwert dekrementiere/inkrementiere kleiner und fluessig ablaufen.

    Nachfolgender Code ist im Anhang als Screenshot mit Symbolinformationen. Sorry da wusste ich leider nicht wie ich diese mit kopieren kann.
    Code:
          U     DB1000.DBX   11.7
          SPB   ADDT
          SPA   NADD
    
    ADDT: NOP   0
          U     M      0.1
          L     DB1000.DBW    8
          L     MW   578
          +I    
          T     DB1000.DBW    8
    
    NADD: NOP   0
          U     DB1000.DBX   12.0
          SPB   SUBT
          SPA   NCHN
    
    SUBT: NOP   0
          U     M      0.1
          L     DB1000.DBW    8
          L     MW   578
          -I    
          T     DB1000.DBW    8
    
    NCHN: NOP   0
    Studi
    Angehängte Grafiken Angehängte Grafiken
    Geändert von Studiologe (27.11.2010 um 16:34 Uhr) Grund: screenshot vergessen

  6. #5
    Registriert seit
    14.10.2010
    Ort
    Telgte
    Beiträge
    654
    Danke
    97
    Erhielt 129 Danke für 99 Beiträge

    Standard

    Hi,
    hast du den DB1000 schon vorher verwendet?
    Ggf reicht das Nummerband der CPU für DB-Adressen nicht aus.
    Bei einigen CPU´s ist z.B bei DB511 Schluß...

    http://cache.automation.siemens.com/...e-DE_de-DE.pdf

    Gruß
    Toki
    Geändert von Toki0604 (27.11.2010 um 16:45 Uhr) Grund: Adresse
    Zitieren Zitieren DB vorher schon verwendet?  

  7. #6
    Registriert seit
    08.09.2010
    Beiträge
    57
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hi Toki
    und danke fuer die rasche Antwort.
    Ja habe den DB1000 vorher schon eingesetz fuer die Kommunikation zwischen OP und CPU, da hat alles einwandfrei funktioniert.
    Es ist eine S7 315-2DP verbaut, die eigentlich soweit ein nummernband haben sollte:

    DB
    Number, max. 1023 ; Number band: 1 to 1023
    Size, max. 16 Kibyte

    Ich denke es ist eine Datentyp Vermischung hier, kann aber leider nicht erkennen wo...
    Ideen?

  8. #7
    Registriert seit
    14.10.2010
    Ort
    Telgte
    Beiträge
    654
    Danke
    97
    Erhielt 129 Danke für 99 Beiträge

    Standard

    Kannst du denn mal nen Screenshot vom Diagnoseeintrag machen?
    Bzw. U-Stack...
    Vielleicht finden wir dort noch nen Hinweis

    Toki

  9. #8
    Registriert seit
    23.04.2009
    Ort
    Allgäu
    Beiträge
    3.042
    Danke
    241
    Erhielt 863 Danke für 617 Beiträge

    Standard

    Frage 1:
    Was steht im MW 578?

    Frage 2:
    Wann wird das Bit DB1000.DBX 11.7 (Pushbutton?) wieder zurück gesetzt?
    Ein Lösung wäre am Ende der Aktion zurücksetzen:
    Code:
          U     DB1000.DBX   11.7
          SPB   ADDT
          SPA   NADD
     
    ADDT: NOP   0
          U     M      0.1
          L     DB1000.DBW    8
          L     MW   578
          +I    
          T     DB1000.DBW    8
     
    NADD: NOP   0
          U     DB1000.DBX   12.0
          SPB   SUBT
          SPA   NCHN
     
    SUBT: NOP   0
          U     M      0.1
          L     DB1000.DBW    8
          L     MW   578
          -I    
          T     DB1000.DBW    8
     
    NCHN: NOP   0
         U     DB1000.DBX   11.7
         R     DB1000.DBX   11.7
    Gruß
    Paule
    ----------------------------------------------------------------------------
    > manchmal verliert man und manchmal gewinnen die anderen <

  10. #9
    Registriert seit
    02.10.2010
    Beiträge
    453
    Danke
    62
    Erhielt 87 Danke für 69 Beiträge

    Standard

    Wird Dein Zähler im DB1000.DBW8 denn irgendwo begrenzt (sowohl nach oben wie nach unten)?

  11. #10
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.184
    Danke
    923
    Erhielt 3.290 Danke für 2.659 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Was steht im MW578? Warum verwendest Du da nicht eine Konstante (z.B. "L 1")?
    Geht das DB1000.DBW8 auf den Parameter IN Deines S5-Zeitumrechnungsbausteins oder direkt an einen Timer?
    Der Zeitwert an einem Timer muß im BCD-Format (genauer: S5TIME-Format) sein.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

Ähnliche Themen

  1. UTC-Zeit in GMT+1
    Von binford im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 23.09.2010, 11:26
  2. CPU Zeit auswerten
    Von HWPascal im Forum Programmierstrategien
    Antworten: 6
    Letzter Beitrag: 05.03.2009, 23:20
  3. UTC zeit
    Von M4RKU5 im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 14.03.2008, 13:11
  4. CPU Zeit
    Von Pinguino im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 04.04.2007, 09:46
  5. S7 - Zeit?
    Von Orion im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 13.11.2003, 08:42

Lesezeichen

Berechtigungen

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