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

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

Thema: Unterschiedliche Aufrufzeiten realisieren/ Struktur meines Vorhabens

  1. #1
    Registriert seit
    27.03.2012
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich versuche mich im Rahmen meiner Abschlussarbeit mal wieder an einer SPS, Grundkenntnisse aus dem Studium sind vorhanden und auch ein bisschen mit S7 rumgespielt hab ich auch schon.

    Ich möchte eine kleine Anlage mittels einer S7 überwachen und steuern. Zunächst soll das ganze erstmal mit plcsim simuliert werden deshalb hab ich mir mal eine S7-1500 plus 16 AE + 4AA zusammengebaut habe. Nutze STEP 7 Professional V12 SP1. Folgende Sachen habe ich vor:

    Es gibt mehrere Durckmessstellen, 1x Temperatur (Pt100), sowie 2 Durchflussmessungen. Die Messwerte sollen alle paar Sekunden (alle 3sec) geloggt werden (daher auch die S7-1500, die 1200 würde auch gehen bietet allerdings kein PLCSIM), weiterhin werden aus den Durchflussmesswerten Solldrehzahlen für einen Motor errechnet. Diese sollen als AA 0-10V an einen FU ausgegeben werden.

    Das Datalogging soll unabhängig von der Sollwertberechnung durchgeführt werden, ich würde mich jetzt freuen wenn ihr mir ein paar Denkanstöße geben könntet wie man jetzt die Grundstruktur realisieren kann. Wie gesagt meine Kenntnisse sind jetzt nicht so vorhanden, dass ich eben sofort weiß was man da machen kann und wie es am einfachsten ist.

    Muss man dafür Timer verwenden oder kann man die beiden "Aufgaben" jeweils in einen FB packen und die in unterschiedlichen Zeiten über den OB1 aufrufen?

    Vielen Dank
    Geändert von walkingtoaster (04.02.2014 um 15:22 Uhr)
    Zitieren Zitieren Unterschiedliche Aufrufzeiten realisieren/ Struktur meines Vorhabens  

  2. #2
    Registriert seit
    02.04.2013
    Beiträge
    143
    Danke
    7
    Erhielt 22 Danke für 20 Beiträge

    Standard

    Abschlussarbeit = Bachelor-/Master-/Diplomarbeit ??

    Du kannst dir einen Zeit-OB alle 3 Sekunden aufrufen lassen und in diesem OB deine Werte speichern. (Alternative: Timer alle 3sec gibt ein Bool... und diesen Boolwert an den EN Eingang eines FCs/FBs - je nachdem, was du da noch alles machen willst).
    Sollwertberechnung: "Bastel" dir einen Baustein, in dem der Sollwert berechnet werden soll. Als In oder InOut deine Werte an deinen Baustein übergeben... Dann biste so gut wie fertig


    NACHTRAG: Der Präfix dieses Beitrags sollte TIA und nicht Step7 sein.
    Geändert von shutdown_TIA12 (04.02.2014 um 14:34 Uhr)

  3. #3
    walkingtoaster ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    27.03.2012
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    ok schon mal Danke. Abschlussarbeit ist Master, aber das hat mit der Fragestellung ja nichts zu tun

    Mit TIA ist natürlich richtig, ist jetzt auch das erste Mal bei mir mit TIA; kenne sonst nur die "alte" Oberfläche. Kann das jetzt aber nicht mehr editieren,eventuell ist ja ein Mod so nett und würde das berichtigen.

    Zu dem Zeit OB bzw Timer, gibts da einen gravierenden Unterschied zwischen beiden Varianten oder ist es im Prinzip egal?

  4. #4
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.191
    Danke
    923
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Zunächst: Du verwendest nicht Step7 V5.x sondern TIA V...?

    Die Steuerung des FU machst Du am besten im OB1 bzw in aus dem OB1 aufgerufenen Bausteinen "so oft wie möglich".

    Das Loggen von Meßwerten mache ich gewöhnlich im OB35 (oder anderer OB3x), weil der ein gleichbleibendes Aufrufraster garantiert und ich mir das mitschreiben eines Zeitstempels bei jedem Datensatz dadurch erspare. Bei "alle 3 Sekunden" ist aber wahrscheinlich ein Aufruf aus der OB1-Ebene auch genau genug. Zum Erzeugen des 3s-Triggers in der OB1-Ebene würde ich keinen Timer benutzen (zu ungenau, Abfragefehler summieren sich), sondern Impulse vom Taktmerkerbyte abzählen. Die Uhrzeit auswerten ist auch nicht gut, wenn die Uhr synchronisiert wird.

    Als Speicher für das Mitloggen der Meßwerte nimmt man üblicherweise einen Ringpuffer in einem ARRAY OF Datensatz (STRUCT), bei großen Archiven ggf. auf mehrere Datenbausteine verteilt, bei noch größeren Archiven ggf. in den Ladespeicher ausgelagert. Weiters sollte man sich Gedanken machen, wie später die geloggten Meßwerte zur Langzeitspeicherung oder Kurvenanzeige aus der SPS herausgelesen/-geschrieben werden sollen.

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  5. #5
    Registriert seit
    02.04.2013
    Beiträge
    143
    Danke
    7
    Erhielt 22 Danke für 20 Beiträge

    Standard

    Dein Zeit-OB unterbricht die aktuelle zyklische Bearbeitung und führt den Code im Zeit-OB aus (also deine Daten speichern). Danach arbeitet der OB1 dort weiter, wo er aufgehört hat.
    Wenn du das ohne Zeit-OB machst, musst du damit rechnen, dass du abhängig von deiner Zykluszeit deine Werte speicherst (3Sek + max. Zykluszeit). Und erst dann würdest du ja den Timer wieder neu starten. Ich würde behaupten, dass du auf lange Sicht, über einen längeren Zeitraum gemessen hast, aber "weniger" Messwerte tatsächlich hast. Ich hoffe, dass kam etwas verständlich rüber.

  6. #6
    walkingtoaster ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    27.03.2012
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    @shutdown ja war verständlich, jetzt wo du es sagst klingelt da wieder was

    @PN/DP ich nutze STEP 7 Professional V12 SP1 also wohl TIA. Um ehrlich zu sein steig ich da nicht so gaz durch was der Unterschied zwischen TIA und Step7 in den neuen Versionen ist^^
    Auch dir vielen Dank für die Ansätze. Wenn die Tage weiterer Fragen aufkommen werde ich mich wieder melden

    So und hier ist auch schon die erste Frage

    Ich rufe aus dem OB1 einen FB auf, dem ich Eingabewerte übergebe. Diese Wertübergabe funktioniert auch. In dem Bild wird Permeat_Soll aus dem OB1 an den FB übergeben

    http://i.imgur.com/zzhDsPj.jpg

    jetzt ruf ich in dem FB eine FC auf, das Problem hier ist jetzt, dass die Übergabewerte in der Funktion nicht ankommen sondern immer 0 da steht. Die Funktion ist im nächsten Bild zu sehen

    http://i.imgur.com/wg35zzu.jpg

    Das ganze hab ich jetzt mit PLCSIM simuliert, da keine Hardware zur Verfügung steht . Kann mir jemand sagen an was das liegt?
    Geändert von walkingtoaster (05.02.2014 um 12:30 Uhr)

  7. #7
    walkingtoaster ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    27.03.2012
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich nutze STEP 7 Professional V12 SP1 (so heißt der Download auf der Siemens Seite) sollte dann also TIA sein. Allerdings ist mir nicht ganz klar was der Unterschied zwischen TIA und Step7 ist. Heißt doch irgendiw beides Step7

    **************************************************

    So da sind dann auch die ersten Fragen

    Wo finde ich diesen OB35? Hab mir jetzt selbst einen OB erstellt der alle 3 sec aufgerufen wird. Muss ich dann noch etwas einstellen oder einfach die Anweisungen in diesen OB packen damit diese alle 3sec aufgerufen werden?

    Dann mein zweites Problem:

    Ich habe jetzt mit PLCSIM mal meine Drehzahlberechnung getestet dabei hab ich folgendes Problem.

    Aus dem OB1 ruf ich den FB zur Berechnung auf und übergeb ihm 2 Eingangswerte, das funktioniert so weit (Permeat-Soll wurde an den FB übergeben)
    scr2.JPG

    jetzt ist das Problem, dass der Wert den ich an die Funktion übergebe, nicht in der Funktion ankommt
    scr1.JPG
    bei Kubikmeter_pro_stunde liegt eine 0, sollte aber 252.0 sein. Kann mir jemand sagen warum das so ist? Ist bei allen Funktionen die ich benutze so in der Simulation
    Geändert von walkingtoaster (05.02.2014 um 14:56 Uhr)

  8. #8
    Registriert seit
    02.04.2013
    Beiträge
    143
    Danke
    7
    Erhielt 22 Danke für 20 Beiträge

    Standard

    In PLCSIM kann es vorkommen, dass Werte nicht, oder falsch angezeigt werden. Welches Update hast du drauf? Schau dir doch die Werte mal über eine Beobachtugstabelle an.
    Aber...kann es sein, dass du den falschen FC beobachtest? Die beiden Bilder passen nicht zusammen.


    Der "OB35" den man halt aus Step 7 kennt.... tja ja, den findet man so nicht.
    Neuen Baustein hinzufügen --> Organisationsbaustein --> Cyclic interrupt --> Zeittakt in ys angeben.
    Diesen OB öffnen und deinen Code reinspeichern. Fertig

  9. #9
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.191
    Danke
    923
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Kann es sein, daß Du den falschen Baustein beobachtest?
    Im ersten Bild übergibst Du 252.0 an FC5.IN.Kubikmeter_pro_Tag, im zweiten Bild hat die Funktion einen IN-Parameter Kubikmeter_pro_Stunde

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  10. #10
    walkingtoaster ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    27.03.2012
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Das stimmt die Bilder passen nicht zusammen, aber das Problem besteht so hab die funktion einmal zum umrechnen von Tag auf Sekunde und einmal von Stunde auf Sekunde, der Ausgang ist aber Null, was nicht stimmen kann wenn die Werte richtig übergeben werden

    Ich nutze STEP 7 Professional V12 SP1

Ähnliche Themen

  1. Konfiguration meines Antriebs in Step7
    Von yone im Forum Antriebstechnik
    Antworten: 7
    Letzter Beitrag: 22.04.2013, 03:06
  2. Neue Version meines LibNoDave Datenbank Protokollers...
    Von Jochen Kühner im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 16.03.2009, 13:38
  3. Unterschiedliche Softwareversionen ?
    Von mr__mines im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 02.01.2007, 07:46
  4. Strukturierung meines Programms
    Von Anonymous im Forum Programmierstrategien
    Antworten: 3
    Letzter Beitrag: 25.10.2005, 11:47
  5. unterschiedliche bausteinaufrufe
    Von Markus im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 31.07.2003, 14:01

Lesezeichen

Berechtigungen

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