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

Ergebnis 1 bis 8 von 8

Thema: Flankenauswertung bei optimiertem DB

  1. #1
    Registriert seit
    01.06.2015
    Beiträge
    22
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Frage


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    ich hab mal wieder ein Problem beim Umstieg auf die Et200sp.

    Angaben:
    CPU1510sp-1PN
    TIA V13 SP1

    Ich möchte eine Flankenauswertung eines WORD machen und dies zurück in einen optimierten DB schreiben. Es geht darum das ich einen optimierten DB habe in den ich nen Tastendruck an der HMI schreibe. Dazu habe ich noch eine zweite Struktur im gleichen Baustein, in die wird die pos. Flankenauswertung geschrieben. Somit hatte ich ohne viel Aufwand für 16 Tasten den normalen Druck sowie die pos. Flanke zur Verfügung.

    Code:
    L     DB310.DBW   20              //Wort Tasten OP      
    L     "DB_HMI".HM_Button          //Hilfswort Flanken
    INVI  
    UW    
    T     DB310.DBW   22              //Wort Tastenflanken
    
    L     DB310.DBW   20              //Tasten OP
    T     "DB_HMI".HM_Button          //Hilfswort Flanken
    So sah das bisher aus


    Wie kann ich diesen Abschnitt nun bei optimiertem DB programmieren damit ich nicht für jedes einzelne Bit eine Auswertung machen muss?

    Danke
    Edi
    Zitieren Zitieren Flankenauswertung bei optimiertem DB  

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

    ... Wahrscheinlich, also eher ziemlich sicher gar nicht ...

    Angeblich, so hat man mal gelesen, ist ein Bool in einem optimierten DB eigentlich ein Byte (ist bei Codesys z.B. auch so) ... also entweder Philosophie anpassen oder nicht-optimiert.
    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).

  3. #3
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.367
    Danke
    457
    Erhielt 696 Danke für 521 Beiträge

    Standard

    Ich nehm mal an dass dein DB310 aus einzelnen Bools besteht.

    Das einzige was mir einfallen würde, währe es die Bits im DB als Struct_of_16Bool oder Struct_of_32Bool abzulegen. Die Bools also einzupacken.
    Man könnte sich dann einen FC schreiben den man dann am IN einen solchen Struct + ein WORD/DWORD für den Flankenvergleich am INOUT übergibt.

    Im FC kann man dann aus den Struct-Bools mit SLICE ein WORD/DWORD im Temp-Bereich zusammenbauen und dann deine obige Funktion ausführen.
    Geändert von RONIN (10.05.2016 um 09:56 Uhr)
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

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

    Standard

    Im Zusammenhang mit der HMI ist ein optimierter DB in diesem Fall wohl eher nicht die optimale Lösung.
    Warum nicht diesen Teil in einem nicht optimiereten DB und das Word dann an einen FC/FB übergeben, wenn dieser es benötigt.
    Oder gleich auf den optimierten DB verzichten, denn wenn man aus der HMI Word als "Bool-Container" nutzt, ist das für die Kommunikation SPS<-->HMI sicher besser.
    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

  5. #5
    Eduard Schleich ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    01.06.2015
    Beiträge
    22
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ok ich werd den DB mal als nicht optimiert angeben und dann sollte die alte Version wieder funktionieren.

    Danke

  6. #6
    Eduard Schleich ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    01.06.2015
    Beiträge
    22
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ok irgendwie bin ich zu doof um das ganze zu verstehen.

    Ich habe jetzt meine Buttons und die Flanken im "nicht optimierten" DB als Word angelegt.
    ButtonsNeu.jpg

    Nun kann ich die Flankenauswertung aus dem ersten Beitrag schreiben und er meckert auch nicht das ihm irgendwas nicht passt.
    Flanke.png

    Nur peil ich grad nicht mehr wie ich die einzelnen Bits des Word dann meinen Tasten an der HMI zuordnen kann?

    Seit mir bitte nicht böse. Ich bin noch am lernen und muss mir leider alles selber beibringen.


    Grüße
    Edi

  7. #7
    Eduard Schleich ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    01.06.2015
    Beiträge
    22
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ah ich glaub ich bin so doof.

    Vielleicht sollte ich das Word dem Button zuordnen und darunter dann das Passende Bit einstellen.

    Wer lesen kann ich klar im Vorteil

  8. #8
    Registriert seit
    27.06.2009
    Ort
    am Nordharz
    Beiträge
    3.738
    Danke
    444
    Erhielt 924 Danke für 744 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Eduard Schleich Beitrag anzeigen
    Wenn das im DB eh alles als WORD deklariert ist, dann sollte Dein Code auch mit einem optimierten DB, also rein symbolisch, funktionieren.

Ähnliche Themen

  1. Antworten: 9
    Letzter Beitrag: 05.12.2017, 12:42
  2. TIA BlkMov bei optimiertem Baustein im TIA Portal
    Von Eduard Schleich im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 29.04.2016, 07:27
  3. Flankenauswertung
    Von Ralle_1971 im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 09.11.2012, 15:54
  4. Flankenauswertung
    Von Techniker1907 im Forum Simatic
    Antworten: 23
    Letzter Beitrag: 08.11.2011, 09:26
  5. Antworten: 8
    Letzter Beitrag: 07.09.2009, 00:46

Lesezeichen

Berechtigungen

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