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

Ergebnis 1 bis 10 von 10

Thema: Timer Einschalt und /oder Auschaltverzögert Selbst Erstellen

  1. #1
    Anonymous Gast

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hilfe,
    wer kann mir helfen einen Timer selbst zu programmieren ( in einem FB ) ?? Mir reichenm die 255 Timer meiner S7-315-2DP-STeuerung nicht aus !! Wer kann mir helfen ?? Dringend !!
    Im vorraus schonmal dankeschöb
    Zitieren Zitieren Gelöst: Timer Einschalt und /oder Auschaltverzögert Selbst Erstellen  

  2. "Hallo,

    eine weitere Möglichkeit wären die IEC - Timer
    SFB4; SFB5



    mfg.
    Rolf"


  3. #2
    Anonymous Gast

    Standard

    nutze doch einfach die taktmerker und einen zähler

  4. #3
    Registriert seit
    14.01.2004
    Ort
    Hattorf
    Beiträge
    3.201
    Danke
    297
    Erhielt 311 Danke für 266 Beiträge

    Standard

    Hallo,
    was hast Du den schönes vor, vieleicht geht es auch einfacher??? Weil zu jedem FB gehört ein DB (es sei denn man nimmt einen Instanzen DB), das wird dann ganz aufgebläht. Also schreib mal auf was Du vorhast.

    mfg

    dietmar

  5. #4
    Registriert seit
    14.01.2004
    Ort
    Hattorf
    Beiträge
    3.201
    Danke
    297
    Erhielt 311 Danke für 266 Beiträge

    Standard

    Hallo,
    kannst auch in der S7 Hilfe unter Erstellen folgendes Thema finden FB-Motor. Oder Du suchst unter denSiemenslernmodulen die richtigen raus.


    mfg

    dietmar

  6. #5
    Registriert seit
    20.06.2003
    Ort
    Sauerland.NRW.Deutschland
    Beiträge
    4.862
    Danke
    78
    Erhielt 805 Danke für 548 Beiträge

    Standard

    hab ich mal für eine s5 gebraucht.

    zählt über ein dw.

    ist s5. lässt sich aber leicht an s7 anpassen.

    takt sollte 1 sek oder 1 min sein.
    wenn run=1 zählt die zeit rückwärts.
    run=0 dw auf zählwert setzen
    out=1 wenn dw 0 erreicht hat

    Code:
    Netzwerk 1
    Name :TIME-SE
    Bez  :TAKT      E/A/D/B/T/Z: E  BI/BY/W/D: BI
    Bez  :DB        E/A/D/B/T/Z: B
    Bez  :DW        E/A/D/B/T/Z: E  BI/BY/W/D: W
    Bez  :RUN       E/A/D/B/T/Z: E  BI/BY/W/D: BI
    Bez  :TW        E/A/D/B/T/Z: D  KM/KH/KY/KC/KF/KT/KZ/KG: KF
    Bez  :OUT       E/A/D/B/T/Z: A  BI/BY/W/D: BI
     
         :
         :***
    Netzwerk 2
         :AWL
         :B   =DB
         :
         :U   =RUN
         :SPB =RUN
         :
         :LW  =TW
         :T   =DW
         :U   =OUT
         :RB  =OUT
         :BEA
         :
    RUN  :
         :UN  =TAKT
         :SPB =ENDE
         :
         :L   =DW
         :L   KF +1
         :-F
         :T   =DW
         :
         :L   =DW
         :L   KF +0
         :>=F
         :SPB =OK
         :L   KF +0
         :T   =DW
    OK   :
         :
    ENDE :L   KF +0
         :L   =DW
         :!=F
         :=   =OUT
         :
         :BE
    .
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download

    Meine Definition von TIA: Total Inakzeptable Applikation

  7. #6
    Registriert seit
    14.01.2004
    Ort
    Hattorf
    Beiträge
    3.201
    Danke
    297
    Erhielt 311 Danke für 266 Beiträge

    Standard

    Hallo,
    sollten vieleicht alle zum lesen bekommen, Fabian hat geschrieben:
    Hi,
    Ich habe eine Beleuchtungsanlage zu Programmieren, die pro Scheinwerfer 4 Timer benötigt.
    Der Erste ( S_EVERZ ) verzögert eine OK Meldung um ca. 2 min
    Der Zweite (S_AVERZ ) sperrt den scheinwerfer gegen das wiedereinschalten vor ablauf einer Abkühlzeit um ca. 2 min
    Der Dritte ( S_EVERZ ) überwacht die OK Meldung und gibt wenn diese nicht kommt nach ca. 2 min eine Störmeldung
    Der Vierte ( S_AVERZ ) sperrt das Ausschalten direkt nach dem Boosten um ca.10 sec.

    Die Zeiten sollten "relativ" einfach zu verstellen sein, vielleicht sogar aussen am baustein. Der momentane DB ist ein Instanz-DB.


    Nach Adam Riese müßten das über 63 Strahler sein, müßen die wirklich jeder für sich autark angesteuert werden?

    mfg
    dietmar

  8. #7
    Registriert seit
    14.01.2004
    Ort
    Hattorf
    Beiträge
    3.201
    Danke
    297
    Erhielt 311 Danke für 266 Beiträge

    Standard

    Hallo,
    das was mir jetzt dazu einfällt ist: die Systemzeit nehmen, und dann wenn der Strahler eingeschaltet wird speichern, danach vergleichen ob die Bedingungen erfüllt sind. Aber die Sache ist nicht von Pappe, ob die 315er die ganze rechnerei packt .
    Vieleicht fällt ja einem Anderen was ein.

    mfg

    dietmar

  9. #8
    Registriert seit
    26.05.2005
    Beiträge
    8
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    du kannst dir doch auch "pseudozeiten" im OB35 erzeugen. indem du datenwörter aufaddierst und dann einfach im program den wert vergleichst und daraus deine bedingung ableitest.



    L act_val_t01 // actual value timer
    L 1.000000e-001 // 1.0e-002 = 10ms - 1.0-001 = 100ms
    +R
    T act_val_t01 // * actual time [sec] *

  10. #9
    Registriert seit
    24.09.2003
    Beiträge
    122
    Danke
    0
    Erhielt 8 Danke für 7 Beiträge

    Standard

    Hallo,

    eine weitere Möglichkeit wären die IEC - Timer
    SFB4; SFB5



    mfg.
    Rolf

  11. #10
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.263
    Danke
    537
    Erhielt 2.708 Danke für 1.957 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Als Anregung hier einen "Timer" zur Fehlerüberwachung:

    Code:
    ...
    
    VAR_INPUT
      FRG : BOOL ;	//Freigabe Bewegung allgemein
      FRG_STEP_AUTO : BOOL ;	//Freigabe Bewegung für Step und Automatik
      SK_EIN : BOOL ;	//aus Schrittkette --> Einschalten
      SK_AUS : BOOL ;	//aus Schrittkette --> Ausschalten
      HAND_EIN : BOOL ;	//aus Handsteuerung --> Ein
      HAND_AUS : BOOL ;	//aus Handsteuerung --> Aus
      STATUSANZEIGE_AKTIV : BOOL ;	//Ausgabe der Statusnzeige Ein --> Aus spart Zykluszeit !!!
      GRUNDBEDINGUNG : BOOL ;	//Freigabe bei Grundstellungsfahrt
      GRUNDFAHRT : BOOL ;	//Grundstellungsfahrt ausführen
      HARDWARE_o_k : BOOL ;	//Anlage ist eingeschaltet und IO
      QUITT_ERROR : BOOL ;	//Quittierung Fehler
      ZEIT_IMPULS_100ms : BOOL ;	//Zeitimpuls(100ms)
      WERT_LAUFZEIT_100ms : INT ;	//Wert Laufzeit (Xx100ms)
      ENDLAGEN_WACHE_AKTIV : BOOL ;	//Endlagenüberwachung aktiv
      ENDLAGE_G : BOOL ;	//Endlage in -G-
      ENDLAGE_A : BOOL ;	//Endlage in -A-
      ENDLAGE_G_AUS : BOOL ;	//Abschalten bei Endlage Grund
      ENDLAGE_A_AUS : BOOL ;	//Abschalten bei Endlage AST 
    END_VAR
    VAR_IN_OUT
      STATUS : DWORD ;	//Status, belegung DWORD siehe Bausteinkommentar
      AUSGANG_G : BOOL ;	//Ausgang ->G
      AUSGANG_A : BOOL ;	//Ausgang ->A
      AKKU_LAUFZEIT : WORD ;	//Laufzeitüberwachung
      STOERMELDUNG : BOOL ;	//Laufzeitstörung
      STOERBIT : BOOL ;	//Störbit im Datenbereich des OP
      QUITTIERBIT_OP : BOOL ;	//Quittierbit OP
      QUITTIERBIT_SPS : BOOL ;	//Quittierbit SPS
    END_VAR
    VAR_TEMP
      LAUFZEIT_EIN : BOOL ;	//Endlage überwachen
      ZM_AUSGANG_G : BOOL ;	//Zwischenmerker Ausgang Grundstellung
      ZM_AUSGANG_A : BOOL ;	//Zwischenmerker Ausgang Arbeitsstellung
      ERROR_ENDLAGE : BOOL ;	//Fehler Endlage
      LAUFZEIT_RESET : BOOL ;	//Laufzeit rücksetzen
      Status_intern : DWORD ;	//internes Statuswort
    END_VAR
    
    ...
    
    NETWORK
    TITLE =Logik Laufzeitüberwachung
    
          U(    ; 
          U     #AUSGANG_G; 
          UN    #ENDLAGE_G; 
          O     ; 
          U     #AUSGANG_A; 
          UN    #ENDLAGE_A; 
          O     ; 
          UN    #ENDLAGE_G; 
          UN    #ENDLAGE_A; 
          U     #FRG_STEP_AUTO; 
          )     ; 
          U     #HARDWARE_o_k; 
          =     #LAUFZEIT_EIN; 
    NETWORK
    TITLE =Laufzeit löschen
    
          U(    ; 
          U     #AUSGANG_G; 
          UN    #ENDLAGE_A; 
          U     #ENDLAGE_G; 
          O     ; 
          U     #AUSGANG_A; 
          UN    #ENDLAGE_G; 
          U     #ENDLAGE_A; 
          O     ; 
          UN    #SK_EIN; 
          UN    #SK_AUS; 
          UN    #HAND_EIN; 
          UN    #HAND_AUS; 
          UN    #GRUNDFAHRT; 
          U(    ; 
          O     #ENDLAGE_G; 
          O     #ENDLAGE_A; 
          )     ; 
          )     ; 
          UN    #STOERMELDUNG; 
          O     ; 
          U(    ; 
          O     #QUITTIERBIT_OP; 
          O     #QUITTIERBIT_SPS; 
          )     ; 
          U     #STOERMELDUNG; 
          =     #LAUFZEIT_RESET; 
    NETWORK
    TITLE =Logik Endlagenüberwachung
    
          U     #ENDLAGE_G; 
          U     #ENDLAGE_A; 
          U     #ENDLAGEN_WACHE_AKTIV; 
          =     #ERROR_ENDLAGE; 
    NETWORK
    TITLE =Fehlerüberwachung
    //Lösche Laufzeit
          UN    #LAUFZEIT_RESET; 
          SPB   M001; 
    
          CLR   ; 
          =     #STOERMELDUNG; 
          L     0; 
          T     #AKKU_LAUFZEIT; 
          SET   ; 
          R     #STOERMELDUNG; 
    
    M001: NOP   0; 
    
    //??Einschaltzeit überschritten
          L     #AKKU_LAUFZEIT; 
          L     #WERT_LAUFZEIT_100ms; 
          >=I   ; 
          S     #STOERMELDUNG; 
          SPB   ENDE; 
    
          U     #ERROR_ENDLAGE; 
          S     #STOERMELDUNG; 
          SPB   ENDE; 
    
    //??Zeitimpuls
          ON    #ZEIT_IMPULS_100ms; 
          ON    #LAUFZEIT_EIN; 
          SPB   ENDE; 
    
          L     #AKKU_LAUFZEIT; 
          L     1; 
          +I    ; 
          T     #AKKU_LAUFZEIT; 
          SPA   ENDE; 
    
    ENDE: NOP   0; 
    
    ...
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

Ähnliche Themen

  1. Visu (selbst) erstellen
    Von Larry Laffer im Forum HMI
    Antworten: 19
    Letzter Beitrag: 08.12.2009, 10:46
  2. Antworten: 2
    Letzter Beitrag: 07.12.2009, 17:35
  3. Simulation von z.B.Kuka-Robotern selbst erstellen.
    Von Rollmops im Forum Programmierstrategien
    Antworten: 10
    Letzter Beitrag: 11.10.2009, 15:10
  4. S7-Timer selbst erstellen
    Von klauserl im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 17.06.2007, 20:11
  5. Antworten: 2
    Letzter Beitrag: 09.01.2006, 12:19

Lesezeichen

Berechtigungen

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