TIA Analogausgang skalieren als Durchlaufzeit

mchristel

Level-2
Beiträge
15
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo liebe Forumsgemeinde,

ich versuche verzweifelt einen Analogausgang einer S7 1500 zu skalieren...

Genauer gesagt geht es darum eine Durchlaufzeit in den dementsprechenden Analogausgabewert umzuwandeln.
D.h je niedriger die Durchlaufzeit desto höher die Ausgabe.

Zielsetzung ist folgende:

Eingabewert HMI 16 entspricht 50hz
Eingabewert HMI 32 entspricht 25 Hz
Eingabewert HMI 64 entspricht 12.5 Hz

Ich habe es über Norm X und Scale X versucht sowie über die lineare Skalierung.

End und Anfangswert sind OK aber die mittleren Werte passen gar nicht.

Wie kann ich das am einfachsten lösen?

Mfg

Michael
 
Hallo, es ist ja auch keine lineare Skalierung wenn man sich die Werte genau anschaut. Bei einer linearen Skalierung wäre bei einem Eingabewert von 32 der Ausgabewert 37,5 Hz wenn man die beiden anderen Angabe als Stützpunkt nimmt.
Es ist etwas spät, also hab ich einfach mal ChatGPT die Arbeit machen lassen: Mit der Formel 800 / Eingabewert kommen deine gegebenen Beispielwerte heraus.
 
Danke euch für die Antworten.

Habt ihr auch ein Beispiel wie das im Programm aussehen muss? Bevorzugt FUP, ich arbeite leider nicht oft mit SPS.

Danke im voraus

Mfg

Michael
 
Zuviel Werbung?
-> Hier kostenlos registrieren
oder
Out := 1600 / In; ---> 0..100
Out := 442368 / In; ---> 0..27648
Haralds Antwort kapier ich nicht :)
Das sind die Formeln (in SCL formuliert), wenn du den HMI-Eingabewert ("In")
- auf einen 0 bis 100 % normierten Sollwert ("Out") umrechnen/skalieren willst PS: und 100 % = 50 Hz gilt
- oder gleich auf 0 bis 27648 skaliert für die Ausgabe an den Analogausgang umrechnen willst

Habt ihr auch ein Beispiel wie das im Programm aussehen muss? Bevorzugt FUP, ich arbeite leider nicht oft mit SPS.
Tipp: Bei S7-1500 kann man in einem FUP-Programm ein SCL-Netzwerk einfügen und da die Formel in SCL programmieren.
Hinweis: bei dem 0..100 würde ich die Berechnung in REAL machen, bei 0..27648 sollte die Berechnung auch in Ganzzahl (DINT) ausreichen.
 
Zuletzt bearbeitet:
hab ich einfach mal ChatGPT die Arbeit machen lassen: Mit der Formel 800 / Eingabewert kommen deine gegebenen Beispielwerte heraus.
Tipp: eine Umrechnungs-(Näherungs-)Formel mit Excel ermitteln lassen
die Wertepaare in Excel eingeben + ein XY-Punktdiagramm einfügen + Trendlinie hinzufügen + Formel der Trendlinie im Diagramm anzeigen
+ dann mit den Typen der Trendlinien-Formel ausprobieren, welche Formel den Verlauf der Datenpunkte am besten widergibt

Für deine 3 Wertepaare ermittelt Excel mit einer Potenzfunktion die einfachste (und vermutlich beste/richtige) Formel:
Formel.png
Das entspricht y = 800 / x
 

Anhänge

  • Excel_Trendlinie.png
    Excel_Trendlinie.png
    53,1 KB · Aufrufe: 30
Zurück
Oben