Analogwerte mit einer 313C einlesen

Atlas

Level-1
Beiträge
65
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen!

Analogwerte einzulesen ist an sich nichts besonderes und hab ich auch schon sehr oft gemacht. Allerdings nie bei einer 313C!

Konkret handelt es sich in meinem Fall um ein aktives 4..20mA Signal das eingelesen und in einen Bereich von 0..30mBar umgerechnet werden soll.

Das würde ich mit dem Standart FC105 angehen wollen:
Code:
CALL  "SCALE"
       IN     :=PEW745
       HI_LIM :=3.000000e+001
       LO_LIM :=0.000000e+000
       BIPOLAR:=#Null
       RET_VAL:=#Err
       OUT    :=#Ist

Problem:
Laut Datenblatt der CPU können sowohl 2- als auch 4- Leiter Signale verarbeitet werden. In der HW Config hab ich beim Analogeingang unter Messart "I" folgende Optionen zur Auswahl: "+/- 20mA", "0..20mA" und "4..20mA". Woher weiß ich nun, od das 2- oder 4- Leiter Messung ist?

Habe schon einige einstellungen versucht aber ich erhalte immer blödsinnige Messwerte. Mein Sensor gibt laut Multimeter einen Strom von 4,2mA aus. Sollte also eigentlich passen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Atlas,

die integrierten Analogeingänge der CPU sind passiv es können 2- o. 4- Draht-Messumformer mit externer Versorgung angeschlossen werden.

Gruss Daniel
 
Der erste Eingang wäre nach Vorbelegung PEW752 !

Wenn Du deinen Sensor mit einem Draht an 24V legst, oder mit zwei Drähten mit 24V versorgst ist das ein 4-Draht. Einstellung denke ich mal 4..20mA.

Wieviele Drähte / Anschlusspunkte hat dein Sensor
Wenn der nur 2 hat musst du prüfen ob der z.B. bis 30V geht.
Dann käme + auf den Sensor , - vom Sensor auf + SPS, und Minus Stromversorgung auf Minus SPS.
 
Hallo Atlas,
PEW 745 das kann doch nicht stimmen!
Muss doch eine gerade Adresse sein :D

Stimmt, danke!
Das ist aber nicht der Fehler. Ich hatte mich nur hier im Forum verschrieben, da ich meinen Programmcode etwas kürzen wollte. In der Steuerung wird natürlich das PEW754 eingelesen. Bevor es auf den SCALE geht aber noch in ein INT gewandelt.


Der erste Eingang wäre nach Vorbelegung PEW752 !
Wenn Du deinen Sensor mit einem Draht an 24V legst, oder mit zwei Drähten mit 24V versorgst ist das ein 4-Draht. Einstellung denke ich mal 4..20mA.

Wieviele Drähte / Anschlusspunkte hat dein Sensor
Wenn der nur 2 hat musst du prüfen ob der z.B. bis 30V geht.
Dann käme + auf den Sensor , - vom Sensor auf + SPS, und Minus Stromversorgung auf Minus SPS.

Ich habe zwei Anschlusspunkte/Drähte. Der Sensor gibt mir aber aktiv die 4..20mA aus, da er von einem Messumformer mit eigener Spannungsversorgung kommt.



Wo liegt dann eigentlich der Unterschied wenn ich im HW Manager 0..20mA oder 4..20mA einstelle? An der Skalierung? Also es werden im ersten Fall die 20mA auf die 27658 Inkremente verteilt und im zweiten Fall die 16mA (20 - 4)?
Kann ich dann den SCALE Baustein überhaupt benutzen??
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Aus diesem Grunde habe ich mir selbst einen FC geschrieben bei dem man auch einen min. Eingang und einen max.Eingang eingeben kann. der FC105 geht immer davon aus, daß die komplette Bandbreite benutzt wird.
Die benutzte Formel steht sogar bei der Hilfe vom FC105 dabei.


OUT = [ ((FLOAT (IN) – K1)/(K2–K1)) * (HI_LIM–LO_LIM)] + LO_LIM

Die Konstanten K1 und K2 werden unterschiedlich gesetzt, je nachdem, ob der Eingabewert BIPOLAR oder UNIPOLAR ist.

· BIPOLAR: Es wird angenommen, daß der ganzzahlige Eingabewert zwischen -27648 und 27648 liegt, deshalb sind K1 = -27648,0 und K2 = +27648,0.

· UNIPOLAR: Es wird angenommen, daß der ganzzahlige Eingabewert zwischen 0 und 27648 liegt, deshalb sind K1 = 0,0 und K2 = +27648,0.

wenn man jetzt aus K1 und K2 "IN" Variablen macht, dann kann man den Eingangsbereich auch festlegen.

peter(R)
 
Zuletzt bearbeitet:
Aus diesem Grunde habe ich mir selbst einen FC geschrieben bei dem man auch einen min. Eingang und einen max.Eingang eingeben kann. der FC105 geht immer davon aus, daß die komplette Bandbreite benutzt wird.
Die benutzte Formel steht glaube ich sogar bei der Hilfe vom FC105 dabei.

peter(R)


Meinst Du, Du könntest so freundlich sein und mir den FC zukommen lassen? Würde mir sehr helfen! Schon mal Danke!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Auf deinem Sensor steht ja drauf was er liefert .
Entweder 0-20 oder 4-20mA, du hast schon richtig erkannt, das bei falscher einstellung der Bereich falsch scaliert wird.

Im hardwaremanger stellt man genau das ein, was man auch angeschlossen hat, es gibt halt entsprechend auch verschiedene Sensoren.
 
Bitte sehr, bitte gleich. Ist zwar ein FB da ich das Ding im Programm immer mehrfach brauche dürfte aber für dich kein Problem sein, das entweder so oder als FC zu schreiben.

peter(R)
 

Anhänge

  • FB1.pdf
    6,3 KB · Aufrufe: 63
Meine ich schon, dass ich könnte. gib mir 10 minuten.

peter(R)


Super, Danke!!


Auf deinem Sensor steht ja drauf was er liefert .
Entweder 0-20 oder 4-20mA, du hast schon richtig erkannt, das bei falscher einstellung der Bereich falsch scaliert wird.

Im hardwaremanger stellt man genau das ein, was man auch angeschlossen hat, es gibt halt entsprechend auch verschiedene Sensoren.

Ja was nun? :)
Brauch ich etz einen SCALE Baustein mit berücksichtigung des Min- Max Signales oder nicht *verwirrt*
 
JA Ausser du willst die skalierung nochmal skalieren ( zB. Offset)

peter(R)

Ja, ich hab grad versucht mir die Logik des ganzen zu überlegen:
der Sinn von 4..20mA liegt ja darin, dass hier im Gegensatz zu 0..20mA Drahtbruch erkannt werden kann wenn 4mA unterschritten werden. Wenn Siemens nun das Signal bei einer Einstellung von 4..20mA in der HW Config komplett auf die 0 bis 27648 Inkremente aufteilen würde, kann ich Drahtbruch nicht mehr erkennen... Also müsste hier der Bereich von 5530 bis 27648 Inkremente gehen. Alles was kleiner als die 5530 ist wäre theoretisch Fehler/Drahtbruch.

Das kommt dann aber aufs selbe raus wie eine Aufteilung der 0..20mA auf die 0..27648 Inkremente und ich fang halt erst bei 5530 inkrementen an zu zählen...

Also:
Wozu dient überhaupt die Unterscheidung die in der HW config getroffen werden kann?
 
Wenn Du 4-20mA einstellst und hast einen Wert von 0mA geht der Analogeingang auf - 32768 dadurch erkennst Du den Drahtbruch.
Wenn du aber 0-20mA einstellst geht der Wert bei 0mA auf 0.

Du kannst natürlich in der Hardwareconfig 0-20mA einstellen und den Wert selber scalieren, aber dann verlierst du ja an Auflösung, was eigentlich keiner haben will.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
"Also:
Wozu dient überhaupt die Unterscheidung die in der HW config getroffen werden kann? "

Alles was Jabba sagt und darüberhinaus kann man zu Fuss oder bei PCS7 automatisch, die Diagnose der Kanäle direkt auslesen. dH. Du kannst ohne den Analogwert einzulesen bereits feststellen dass der Kanal einen zB einen Drahtbruch hat...

lG
Karl
 
Zurück
Oben