TIA Erfassung ifm Drucksensoren über Siemens Analog-Eingangsmodul ist problematisch

mmm_ams

Level-2
Beiträge
119
Reaktionspunkte
11
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich brauche wieder eure Hilfe und bin wie immer schon im voraus dankbar für eure großartige Hilfsbereitschaft.

Ich habe einige identische ifm Drucksensoren PN7030 (bis 400 bar), mit denen Hydraulik-Drücke gemessen werden soll. Die Druckwerte werden dann als Endlage einiger Aktoren ausgewertet. Angeschlossen sind sie an einem Siemens AI 8x 2-/4-Wire Modul. Wenn die Sensoren etwas Druck darauf haben bekomme ich alle Werte richtig in der SPS (1517F). Allerdings wird es problematisch, wenn manche dieser Sensoren 0 bar darauf haben (sieht man am Display). Der Eingangswert mancher Sensoren (nicht alle) bei 0 bar schwankt ständig im unteren Bereich runter bis -1, was eigentlich nicht passieren darf und hat als Folge, dass die Scale Anweisung RetVal=8 zurückgibt, was in meinem Programm als "ungültiger Wert" ausgewertet wird und zu einem Fehler führt.

Alle weiteren Details wie Hardware, Anschluss und Auswertung sind auf den Bildern im Anhang zu sehen.

Es fehlt mir wirklich nichts mehr, was kontrollieren kann.

Herzliche Grüße
 

Anhänge

  • AI-Modul-Artikel-Nr.JPG
    AI-Modul-Artikel-Nr.JPG
    3,2 KB · Aufrufe: 44
  • AI-Modul-Konfig.JPG
    AI-Modul-Konfig.JPG
    43,9 KB · Aufrufe: 43
  • AI-Modul-Doku.png
    AI-Modul-Doku.png
    178,9 KB · Aufrufe: 43
  • ifm-Anschluss-Ist.jpg
    ifm-Anschluss-Ist.jpg
    674 KB · Aufrufe: 48
  • Scale.JPG
    Scale.JPG
    14,3 KB · Aufrufe: 47
  • Auswertung_Retval.jpg
    Auswertung_Retval.jpg
    20,5 KB · Aufrufe: 47
Grundsätzlich gibt es über und unterhalb der 4...20mA noch den Über- und Untersteuerbereich. Falls der scale damit nicht klarkommt, würd ich mal in der Hilfe nachlesen und zur Not nen eigenen Skalierungsbaustein schreiben.
1753294397228.png

oder die -1 sind irgend nen Anzeigefehler im TIA, ist der IW als WORD oder INT deklariert?

Das nen Drucksensor bei 0bar auch mal nen etwas kleineren Wert als 4mA ausgeben kann ist normal. Dafür gibts ja den Untersteuerbereich.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Grundsätzlich gibt es über und unterhalb der 4...20mA noch den Über- und Untersteuerbereich. Falls der scale damit nicht klarkommt, würd ich mal in der Hilfe nachlesen und zur Not nen eigenen Skalierungsbaustein schreiben.
Anhang anzeigen 89368

oder die -1 sind irgend nen Anzeigefehler im TIA, ist der IW als WORD oder INT deklariert?

Das nen Drucksensor bei 0bar auch mal nen etwas kleineren Wert als 4mA ausgeben kann ist normal. DAfür gibts ja den Untersteuerbereich.
Danke.. das Eingangswort ist als int deklariert. Habe ich mir ehrlich gesagt keine Gedanken darüber gemacht
 
Und sowas kann man in einem bestimmten Eingangsbereich auch selbst abfangen und solch geringfügigen Unterwerte z.B. über die MX-Funktion automatisch auf 0 setzen lassen.
🤷‍♂️
Die Begrenzung des Eingangswerts sehe ich kritisch, da dadurch Unterlauf und Überlauf unbemerkt bleiben würden und der Wert zu unrecht als gültig betrachtet wird
 
Zuviel Werbung?
-> Hier kostenlos registrieren
also welcher Scale ist das? Der Legacy?

Wenn der Wert am Parameter IN größer als der Wert der Konstante "K2" ist, wird das Ergebnis der Anweisung auf den Wert des oberen Grenzwerts (HI_LIM) gesetzt und ein Fehler ausgegeben.

Wenn der Wert am Parameter IN kleiner als der Wert der Konstante "K1" ist, wird das Ergebnis der Anweisung auf den Wert des unteren Grenzwerts (LO_LIM) gesetzt und ein Fehler ausgegeben.

Wenn der angegebene untere Grenzwert größer als der obere Grenzwert ist (LO_LIM > HI_LIM), wird das Ergebnis umgekehrt proportional zum Eingabewert skaliert.

also da musst vor den Scale noch nen Limiter setzen, der bei IW<0 auf 0 begrenzt...

1753295416542.png
 
Die Begrenzung des Eingangswerts sehe ich kritisch, da dadurch Unterlauf und Überlauf unbemerkt bleiben würden und der Wert zu unrecht als gültig betrachtet wird
Das mit dem Scale nutzt ja nicht wirklich jemand, in einigermaßen wichtigen Anlagen schreibt man sich nen eigenen Messwertskalierungsbaustein, wo der Über- und Untersteuerbereich genutzt wird und ausserhalb nen Fehler generiert.
 
also welcher Scale ist das? Der Legacy?



also da musst vor den Scale noch nen Limiter setzen, der bei IW<0 auf 0 begrenzt...

Anhang anzeigen 89369
Wie schon oben erwähnt, den Wert zu limitiert halte ich für gefährlich. So wird im Falle eines Drahtbruchs einfach 0 bar ausgelesen, obwohl Druck darauf sein kö
Das mit dem Scale nutzt ja nicht wirklich jemand, in einigermaßen wichtigen Anlagen schreibt man sich nen eigenen Messwertskalierungsbaustein, wo der Über- und Untersteuerbereich genutzt wird und ausserhalb nen Fehler generiert.
Im Endeffekt mache ich das gleiche, indem ich retVal auf 0 für "Wert gültig" abfrage
 
Danke euch allen. Was ich den Antworten entnehmen kann, es ist nicht problematisch oder selten, dass der Sensor bei 0 strom leicht unter 4 mA liefert.
Von daher gebe ich euch recht, es ist sinnvoll kleine Abweichungen zu ignorieren und erst bei Unterlauf oder Überlauf eine Störung zu generieren
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wie schon oben erwähnt, den Wert zu limitiert halte ich für gefährlich. So wird im Falle eines Drahtbruchs einfach 0 bar ausgelesen, obwohl Druck darauf sein kö
ja. zuerst auf Fehler abfragen, also von mir aus <-4000 oder >32000, danach Begrenzen, danach skalieren... Oder gleich nen eigenen ordentlichen Baustein schreiben.
Im Endeffekt mache ich das gleiche, indem ich retVal auf 0 für "Wert gültig" abfrage
Ja, dann hast Du eben bei geringem Messrauschen bei 0 bar ständig Fehler... der SCALE war schon immer Scheiße und der Norm_x Scale_x ist nicht wirklich besser...
 
der IFM schreibt doch sogar, was er macht:
1753296835198.png
d.h. bei nem internen eigenen Fehler gibt er 21,5mA aus. Also würd ich meinen eigenen Baustein so schreiben, dass er bei <3,5mA(-864) oder >21mA(29376) nen Fehler ausgibt und zwischen 3,5...21mA scaliert.
Ansonsten, wenn da bei nem defekten Sensor wirklich was gefährliches entstehen kann, dann würd ich da aber noch irgend ne zusätzliche Sicherheitseinrichtung vorsehen. Und auf jeden Fall sollte jemand ne Gefährdungsbeurteilung machen. Der Sensor kann auch irgendeinen Defekt haben, wo er 10bar anzeigt und in Wahrheit 350bar drauf sind...
 
Zuletzt bearbeitet:
So wird im Falle eines Drahtbruchs einfach 0 bar ausgelesen, obwohl Druck darauf sein könnte
Bei Drahtbruch weiß man gar nichts. Wenn es für dein Programm sicherer ist, dann kannst du auch bei Drahtbruch den Wert auf einen unmöglich hohen Ersatzwert 999 bar setzen. Oder auf 0 (weil ja völlig unbekannter Druck bei Sensor-Ausfall) und zusätzlich bei Überdruck-Abschaltungen auch bei Drahtbruch oder sonstigem Sensorfehler abschalten.
Also erstmal die Drahtbruch- und Überlauf-Werte auswerten und eventuelle besondere Hinweiswerte vom Sensor und ggf. deinen gewünschten Ersatzwert ausgeben, und wenn kein Drahtbruch/Überlauf/Warnung, dann auf den technisch möglichen/sinnvollen Wert limitieren, insbesondere negative Drücke unterdrücken d.h. 0 ausgeben. Wegen Fertigungs- und Kalibrier-Toleranzen der Sensoren und Analogeingänge wird es immer vorkommen, dass Sensoren bei Messwert 0 nicht ganz genau 4,00 mA liefern oder der Analogeingang nicht ganz genau 0 liefert - da kann man ruhig (je nach Datenblättern) +/- 0,1..0,3% um die 0 auf 0 runden/limitieren. Das ist nicht gefährlich. Sorgt aber für plausible Werte im Ruhezustand der Anlage.
 
Hier scheint es eine Absolutdruckmessung zu sein.Bei Überdruckmessung(wenn möglich) , wärst du das Problem wohl los.
wie kommst Du da drauf?
Das Problem ist, bei 3,99mA geht der Scale auf Störung.
Ansonstens wärs genau andersrum wie Du schreibst ;). Bei Absolutdrucksensoren würde bei abgeschalter Anlage ja 1bar_abs angezeigt, also etwas mehr als 4mA...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich hätte jetzt auf absolut getippt lt dieser Skala.Die beginnt ja ab 0 bar.(4 mA)
Du kannst natürlich recht haben.
Er schreibt auch wenn die sensoren ein bisschen Druck haben bekommt er richtige Werte.....
Daraus habe ich dann diesen Überdruck abgeleitet, wo Alles passt...
 
Zurück
Oben