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

Ergebnis 1 bis 9 von 9

Thema: Lineare Skalierung mit WinCC flexible

  1. #1
    Registriert seit
    04.04.2008
    Beiträge
    389
    Danke
    85
    Erhielt 39 Danke für 24 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    ich habe wieder eine Frage zu WinCC flex 2007.
    Wie skaliert man einen Analogwert in Flex? (nicht in STEP7 !)

    Ich wollte den Analogwert 0 bis 27648 an Flex übergeben und dann mit der Linearen Skalierung in Variableneigenschaft auf 0 bis 9 umrechnen. Das funktioniert nicht richtig, weil Flex wohl mit Ganzzahlen rechnet.

    Gruß
    Earny
    Zitieren Zitieren Lineare Skalierung mit WinCC flexible  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.792
    Danke
    398
    Erhielt 2.417 Danke für 2.013 Beiträge

    Standard

    Welchen Typ hat den deine Eingangs-Variable ? INT oder DINT ?
    Wenn sie vom Typ REAL ist, dann sollte das auch funktionieren. Falls du ein entsprechendes Bediengerät hast, dann gibt es ggf. auch noch die Funktionen "Linear Umrechnen 1" und "..2", die du auch an deine Eingangs-Variable hängen kannst (bei Wert-Änderung).

    Gruß
    LL

  3. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    Earny (23.07.2008)

  4. #3
    Earny ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.04.2008
    Beiträge
    389
    Danke
    85
    Erhielt 39 Danke für 24 Beiträge

    Standard

    Hallo Larry L.,
    ich will einen Word bzw. INT-Wert der S7, genaugenommen das PEW754 (0 bis 2764 in den neuen Wert 0 bis 9,0 l/min (für ein Zeigerinstrument) umrechnen. Ich hatte gehofft, dass Flex die exakte Umrechnung auch so irgendwie schafft.

    Die Wandlung in STEP7 mit:
    L PEW754
    ITD
    DTR
    T MD50

    und dann MD50 in Flex einlesen war mir bekannt. Ich wollte das aber eigentlich vermeiden. Aber wenn es nicht anders geht, muss es wohl sein.

    Gruß
    Earny

  5. #4
    Registriert seit
    20.11.2004
    Ort
    Linz, OÖ
    Beiträge
    1.365
    Danke
    96
    Erhielt 177 Danke für 133 Beiträge

    Standard

    Hier dürfte ein Fehler in WinCCflexible schuld sein.
    http://www.sps-forum.de/showthread.p...le+2007+hotfix

    intern rechnet Flex sicherlich mit Floating-Point

    mfg Maxl
    Bin aufgrund §2 der "Rechte des Betreibers" der Forum-Regeln nicht mehr aktiv, da nicht nicht akzeptiere, dass Informationen und Erkenntnisse ohne Quellangabe weitergegeben werden sollen. Jedem steht frei, auf die gleichen Erkenntnisse durch Eigenversuche zu kommen, vor allem Buchautoren.

  6. Folgender Benutzer sagt Danke zu Maxl für den nützlichen Beitrag:

    Earny (23.07.2008)

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

    Ich gehe jetzt hier mal nicht von einem Fehler in Flex aus,
    der Link von Maxl bezog sich imho ausschließlich auf "Timer",
    aber warum rechnest du die 0-27648 auf z.B. 0-900 um,
    überall wo die Variable angezeigt wird, wird diese dann mit 2 Kommastellen angezeigt.

    Mfg
    Manuel
    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).

  8. Folgender Benutzer sagt Danke zu MSB für den nützlichen Beitrag:

    Earny (23.07.2008)

  9. #6
    Earny ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.04.2008
    Beiträge
    389
    Danke
    85
    Erhielt 39 Danke für 24 Beiträge

    Standard

    Hallo MSB,
    hallo Maxl,
    hallo Larry L.,
    ich habe die Sache noch eine zeitlang untersucht und bin zu einem ähnlichen Ergebnis wie MSB gekommen.
    Die lineare Skalierung scheint in Flex2007 zu funktionieren.
    Ich rechne jetzt die
    0 bis 27648 nicht mehr um in 0 bis 9 l/min sondern in 0 bis 9000 ml/min. Dadurch entstehen 1000fach größere Werte und die lass ich auf einem Zeigerinstrument anzeigen. Das sieht jetzt auf dem Zeigerinstrument ganz gut aus, ist aber wirklich nur eine Notlösung.
    Die Anzeige 0 bis 9 l/min wäre mir lieber. In diesem Fall springt der Zeiger sofort erkennbar, immer nur auf ganze Zahlen, nicht auf Zwischenwerte. Das macht er vermutlich auch, wenn die mit 1000 multiplizierten Wert im Bereich 0 bis 9000 angezeigt werden, nur es fällt nicht mehr auf. Es sieht so aus, als könnte ein Zeigerinstrument grundsätzlich nur ganze Zahlen anzeigen!?

    Gruß
    Earny

  10. #7
    Registriert seit
    24.10.2007
    Ort
    USA
    Beiträge
    815
    Danke
    3
    Erhielt 73 Danke für 57 Beiträge

    Standard

    Einen wunderschönen Morgääääääääääääääään Forumer,
    die Skalrierung muss klappen:
    IN=Eingang (Word)
    Out=Ausgang(Real)
    Delta=Geradensteigung

    Aus der Formel (FC105)

    Code:
     Out=Delta*IN=(9000/27648)*IN
    In WCF rufst du bei Wertänderung von IN die Skalierungsformel auf:

    Y=Out
    X=IN
    a=Delta=ca 0,3255209
    b=0

    und das war es.


    Gruß johnij
    Geändert von johnij (23.07.2008 um 07:12 Uhr)

  11. Folgender Benutzer sagt Danke zu johnij für den nützlichen Beitrag:

    Earny (23.07.2008)

  12. #8
    Earny ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.04.2008
    Beiträge
    389
    Danke
    85
    Erhielt 39 Danke für 24 Beiträge

    Standard

    Hallo johnij,
    diese Variante hatte ich auch schon mal durchprobiert.
    Ich habe diesen Weg dann aber aufgegeben. Es mag sein, dass man auf diese Weise einen sauberen Real-Wert erhält (Float oder auch Single). In meinem Fall nutzt das nichts, weil ein Zeigerinstrument keine Real-Werte anzeigen kann. Zumindest schaffe ich es nicht, einen Real-Wert auf das Instrument zu geben. Oder mache ich was falsch?

    Gruß
    Earny

  13. #9
    Registriert seit
    24.10.2007
    Ort
    USA
    Beiträge
    815
    Danke
    3
    Erhielt 73 Danke für 57 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Earny Beitrag anzeigen
    Hallo johnij,
    diese Variante hatte ich auch schon mal durchprobiert.
    Ich habe diesen Weg dann aber aufgegeben. Es mag sein, dass man auf diese Weise einen sauberen Real-Wert erhält (Float oder auch Single). In meinem Fall nutzt das nichts, weil ein Zeigerinstrument keine Real-Werte anzeigen kann. Zumindest schaffe ich es nicht, einen Real-Wert auf das Instrument zu geben. Oder mache ich was falsch?

    Gruß
    Earny
    Tja Earny, ein Zeigerinstrument ist eine schlechte Darstellung fuer einen
    realen Wert

    johnij

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 09.09.2011, 14:16
  2. Lineare Skalierung in Flexible
    Von Earny im Forum HMI
    Antworten: 10
    Letzter Beitrag: 17.08.2008, 09:07
  3. Antworten: 1
    Letzter Beitrag: 23.05.2008, 13:56
  4. WinCC Fex 2005 und libeare Skalierung
    Von buffi4711 im Forum HMI
    Antworten: 2
    Letzter Beitrag: 11.08.2007, 10:58
  5. WinCC Flexible lineare Umrechnung
    Von Lars Weiß im Forum HMI
    Antworten: 11
    Letzter Beitrag: 26.03.2007, 15:31

Lesezeichen

Berechtigungen

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