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

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

Thema: Wertänderung S7 int

  1. #1
    Registriert seit
    26.10.2007
    Beiträge
    80
    Danke
    6
    Erhielt 1 Danke für 1 Beitrag

    Ausrufezeichen


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi habe folgendes Problem wo ich gerade nicht weiterkomme.

    Ich habe vor für Sollwerte eine Auswahl zu erstellen.
    Es sieht wie folgt aus.
    Am Panel wähle ich über ein Auswahlfeld den wochentag aus Montag bis Sonntag. Dann schreibe ich in eine int Variable eine 1-8 hinein je nach tag.
    So und dann gibt es bei der Visu (Protool) noch die 24 Sollwerte für jede Stunde einen. Die Variablen für die Sollwerte liegen im DB13.
    So jetzt mein Problem. Die Sollwerte für die Tage und Stunden leigen auf der SPS im DB 112. Jetzt will ich vom Panel die Sollwerte über den tag und den SFC 20 ins Panel laden (DB13) das klappt auch alles soweit.
    So jetzt das problem:
    Der SFC 20 schiebt ja nun die werte aus dem DB112 in den DB13. Danach muss er oder ein neuer SFC 20 die Werte aber anders herum schreiben damit ich die Sollwerte vom Panel ändern kann.

    Also in kurzform:

    Tag anwählen Sollwerte von DB112 in DB13 schieben.
    Dann Sollwerte werden angezeigt DB13 in DB112 Damit Werte von Panel geändert werden können.
    Dann wieder Anwahl Tag DB112 in Db13usw.

    Bin für jede Hilfe Dankbar!!!

    Hier mein Programmteil in AWL

    //Vorwahl PLS Wertanzeige
    L DB14.DBW 18 //PLS Vorwahl Wochentag 1-8
    L 48 //24 Stunden int
    *I
    T #Anfangs_DW
    //Datenbereich auslesen
    LAR1 P##Quelle //Anfangsadresse des ANY-Pointers in AR1 laden
    L B#(16, 2) //Syntax-ID und Typ: Byte laden
    T LW [AR1,P#0.0]
    L 48 //Transferlaenge in Byte
    T LW [AR1,P#2.0]
    L 112 //Quelle-DB
    T LW [AR1,P#4.0]
    L P#DBX 0.0
    L #Anfangs_DW //Anfangs-DW im Quell-DB
    ITD
    SLD 3
    +D
    T LD [AR1,P#6.0]
    //Sollwerte lesen und an PLS senden
    CALL SFC 20
    SRCBLK :=#Quelle
    RET_VAL:=#BLKmove
    DSTBLK :="Sollwerte_PLS".Sollwerte_Wohnzimmer //DB13
    //Sollwerte von PLS in SPS schreiben
    CALL SFC 20
    SRCBLK :="Sollwerte_PLS".Sollwerte_Wohnzimmer //DB13
    RET_VAL:=#BLKmove
    DSTBLK :=#Quelle
    Zitieren Zitieren Wertänderung S7 int  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.718
    Danke
    398
    Erhielt 2.400 Danke für 2.000 Beiträge

    Standard

    Hallo,
    ich verstehe im Augenblick dein Problem nicht ganz. Was möchtest du denn nun wissen ?

    Gruß
    LL

  3. #3
    Registriert seit
    25.08.2003
    Beiträge
    332
    Danke
    46
    Erhielt 54 Danke für 46 Beiträge

    Lächeln

    Du darfst den/die SFC20 nicht zyklisch aufrufen, sondern nur per Flanke für einen Zyklus. Dann kannst du die Daten bearbeiten und mit einer anderen Flanke die Daten zurückmoven. Worauf du triggerst, musste dir mal überlegen.

    Gruß
    Flinn

  4. #4
    M.R. ist offline Benutzer
    Themenstarter
    Registriert seit
    26.10.2007
    Beiträge
    80
    Danke
    6
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Wie ich das mit dem Triggern und der Flanke machen soll wollte ich wissen.
    Ich hatte gedacht ich werte die Änderung vom Tag aus!!!
    aber wie werte ich dort eine Änderung aus???

  5. #5
    Registriert seit
    08.04.2008
    Ort
    Köln
    Beiträge
    844
    Danke
    39
    Erhielt 244 Danke für 199 Beiträge

    Standard

    Zitat Zitat von M.R. Beitrag anzeigen
    Wie ich das mit dem Triggern und der Flanke machen soll wollte ich wissen.
    Ich hatte gedacht ich werte die Änderung vom Tag aus!!!
    aber wie werte ich dort eine Änderung aus???
    Wie wäre ein Alt-/Neuwert-vergleich?

    Grüße
    Gebs

  6. #6
    Registriert seit
    11.05.2005
    Ort
    Baden-Württemberg
    Beiträge
    669
    Danke
    113
    Erhielt 153 Danke für 124 Beiträge

    Standard

    hallo,

    brauchst du die doppelte Datenhaltung überhaupt?

    Wird der Sollwert irgendwie von der SPS berechnet?

    Micha
    "arbeite klug, nicht hart" - deutsches Sprichwort

  7. #7
    M.R. ist offline Benutzer
    Themenstarter
    Registriert seit
    26.10.2007
    Beiträge
    80
    Danke
    6
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Es geht ja nicht um die Doppelte Datenhaltung.
    Im Panel sind 24 Int werde Angelegt. Db13
    Auf der SPS Befinden sich 7x24 Int Werte in Db112
    Das ganze mal 4 Räume.
    Da ich wenn ich die Werte im Panel über den int Wert 1-8 Db14 Lade
    Mir eine Menge Projektierung in Protool spare.
    Deswegen verschiebe ich den Wert von Db112 in den Db13 und
    Dann lese ich aus DB13 und Schreibe in Db112.
    So war mein Gedankengang.
    Es ist für eine Heizungsssteuerung und ich kann somit jede Stunde einen Sollwert vorgeben von Montag bis Sonntag.

    Und jemand eine Idee???

  8. #8
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.718
    Danke
    398
    Erhielt 2.400 Danke für 2.000 Beiträge

    Standard

    Zitat Zitat von M.R. Beitrag anzeigen
    Und jemand eine Idee???
    Also .. ich würde das so machen :
    Du hast eine Taste in der Visu mit der du ein Bit setzt für "Daten laden" oder ggf. tust du dies schon mit dem Aufbau der Bildschirmseite. Das Gleiche gilt fürs "Daten speichern". Das entsprechende Bit wird von der SPS zum Ausführen des einen oder anderen Umlade-Vorgangs verwendet und nach Ausführung desselben sofort wieder gelöscht.

    Ist es das ?

    Gruß
    LL

  9. #9
    M.R. ist offline Benutzer
    Themenstarter
    Registriert seit
    26.10.2007
    Beiträge
    80
    Danke
    6
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Ja so in etwa.
    Den Aufruf der Sollwerte mach ich ja schon über den Int Wert in dem steht welchen Tag mit Sollwerten ich haben will.
    Nur wenn ich einen Wert ändere soll dies dann sofort geschehen und nicht erst durch einen Tastendruck.

  10. #10
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.718
    Danke
    398
    Erhielt 2.400 Danke für 2.000 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    Vielleicht versuchst du es erstmal so wie ich es vorgeschlagen habe und dann, wenn das funktioniert erweitern wir das so, wie du haben willst ...

    Gruß
    LL

Ähnliche Themen

  1. INT Wertänderung visualisieren
    Von Felse im Forum HMI
    Antworten: 2
    Letzter Beitrag: 05.03.2009, 15:37
  2. Wertänderung von Variablen mitloggen
    Von wincc im Forum HMI
    Antworten: 13
    Letzter Beitrag: 16.12.2008, 07:02
  3. Bildwechsel bei Wertänderung
    Von Merlin9000 im Forum HMI
    Antworten: 9
    Letzter Beitrag: 10.12.2008, 09:51
  4. Antworten: 7
    Letzter Beitrag: 23.02.2008, 10:30
  5. Wertänderung abfragen
    Von Pontifex im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 01.08.2007, 09:47

Stichworte

Lesezeichen

Berechtigungen

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