analogwerte

Majus68

Level-1
Beiträge
28
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi leute,
habe bis jetzt nur erfahrung mit digitalen ein/ausgänge in FUP.
Mein Problem ist folgendes:
Mein Neigungsfühler gibt eine Spannung von 1,05V bis 6,75V aus. Mit diesen Werten bekomm ich einen Strom von 2mA bis 13,33mA. Ich bräuchte aber einen Strom von 4mA-20mA bei gleicher Spannung.
Hab noch kaum Ahnung von Analogwertverarbeitug und wär um jede Hilfe dankbar.

bisheriges prog:

L PEW 256
T PAW 256:ROFLMAO:

CPU= 315-2DP
Analog= SM334

mfg

(am besten wär ein Beispielprogramm mit erklärung);)
 
hi,

warum willst du denn deine Spannungen auf 4-20mA abbilden?
du kannst doch deine Spannungen mit der SM334 einlesen und in einen beliebigen Zahlenwert wandeln...???
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Mit diesen Werten bekomm ich einen Strom von 2mA bis 13,33mA.

das versteh ich nicht ganz.....
du liest eine Spannung ein in der SPS ein, skalierst diese (1,05V = 0%; 6,75V = 100%) und schreibst deine Werte wieder auf den Ausgang (0% = 4mA = 0dez; 100% = 20mA = 27648dez).
zum skalieren gibt es sogar fertige Bausteine (weiß nur grad nicht, welche).
 
Probier mal (ungetestet):

Code:
L PEW xxx //Eingangswert
ITD //wandeln nach DINT
DTR //wandeln nach Real
 
L 2764.8 //Eingangswert in Volt
/R //umrechnen
 
L 1.05 //Offset 1.05 Volt
-R //abziehen
 
L 2.807 //auf 0-16mA
*R //umrechnen
 
L 4.0 //4mA
+R //addieren
 
L 1382.4 //Umrechnungsfaktor mA -> Digits
*R
 
RND  //Umwandlen DINT
T PAW xxx  //Ausgeben

Bereichsgrenzen sind natürlich nicht abgefragt!

Gruß
Dieter
 
der baustein zum scalieren ist FC105 in der stdlib ...

aber da muss man dann noch ein paar ein/aus gänge beschalten (fehlercode) das wieder speicher kostet *zwar nicht der rede wert aber egal* einfacher AWL code tut das gleiche siehe blockmove
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@ blockmove:
wärst du vllt. so nett und könntest noch schreiben, wie du die Werte berechnet hast?

Bei den Siemens Analogkarten entsprechen +27648 meist dem vollen Messwert.

Also 10V bzw. 20mA = +27648
1V = +2764,8
1mA = +1382,4

Eingangswert / 2764,8 = Einganswert Volt
Eingangswert Volt - 1,05V Messbereichanfang = Zwischenwert1

Du brauchst 4mA Mindeststrom. Somit bleiben 16mA für den Messbereich.
6,75 - 1,05V = 5,7V entsprechen 16mA. 1V entspricht 2,807mA

Zwischenwert1 * 2,807 = Zwischenwert2 (0..16mA)
Zwischenwert2 + 4mA Mindeststrom = Ausgangsstrom
Ausgangsstrom * 1382,4 (Umrechnungsfaktor mA/Digits) = Ausgabewert

War jetzt schnell hingeschrieben, ich hoffe es passt

Gruß
Dieter
 
Zurück
Oben