oscat Baustein R2_Add verwenden

pjoddi

Level-2
Beiträge
212
Reaktionspunkte
54
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo, hab wohl gerade einen Hänger... wenn mal jemand so freundlich wäre, mich wieder auf die Spur zu setzen...
Werkzeug: Step 7 V5.4 SP3 + HF1

Ich möchte innerhalb einer FC den FC144 aus der oscat Lib verwenden (Addition einer REAL2 mit REAL)
Das Problem ist, das der Eingang x als Struct definiert ist, und mein (vorhandenes) UDT nicht akzeptiert wird...

Das UDT ist doch eine Structur ... :confused::confused:
 

Anhänge

  • Real2.JPG
    Real2.JPG
    60 KB · Aufrufe: 27
Hast Du die letzte Version von Oscat benutzt.
Ich hab das gerade mal genau so bei mir eingetippt , und geht ohne probleme.

EDIT: STOP

Hatte das als Temp angelegt, der Fehler ist, das du IN-OUT deklariertst aber ein IN erwartet wird !!!!!!!!!!
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
war auch mein Gedanke, hab sie deshalb extra neu runtergeladen...

Hast Du die Typüberprüfung ein oder ist die aus, so dass er das gar nicht meldet?
 
ok, klang erst mal logisch, aber das löst das Problem nicht.

Habe Summe_D_REAL jetzt in den IN-Bereich geschoben, jetzt mosert Step 7:
"Unzulässige Parameterversorgung für X"
 
Hab mal einen FB angelegt
In Real+ Real2 und Out Real, ging ohne zu meckern auch mit Typenprüfung
 

Anhänge

  • real2.jpg
    real2.jpg
    32,8 KB · Aufrufe: 18
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,
meines Wissens kann man die IN/OUT/IN_OUT Parameter eines FC nicht an die Schnittstelle eine aufgerufenen FC übergeben. Der Umweg über temporäre Variablen geht.
 
Ja , da ist was dran.
Hab das mit einem FB probiert, aber pjoddi wollte das in einem FC machen, da gehts bei mir auch nicht.
 
Also...

Danke an die helfende Gemeinde...

Jawohl, Fehler war wohl, das man nicht direkt adressieren kann, die crux mit der FC in der FC.
Man muß über den Temp-Bereich gehen.

Hab es jetzt in angehängter Form realisiert, ein Test steht noch aus...

Bitte gern nochmal drüber schauen, ob man den Umweg über den Temp-Bereich in der Art realisieren kann...
 

Anhänge

  • neu.JPG
    neu.JPG
    96,8 KB · Aufrufe: 28
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Pjoddi,

genau so. Gib mal bitte Rückmeldung ob die Funktion funktioniert, denn ich sehe gerade die R2 Funktionen habe ich noch nicht weiter getestet.

Gruss Daniel
 
Es funktioniert

So, habe den Baustein nun getestet.
Läuft problemlos in der Simulation und in der realen Welt, habe ihn also schon in einer Anlage am laufen.

In der Simu habe ich bis probiert bis 200000.00 + 0.00005 , was immer noch korrekt funktioniert.
In der realen Welt dauert es wohl noch Jahr(zehnt)e, bis dieses Ereignis eintritt, also reicht mir das an Genauigkeit aus.

Festgestellt habe ich, das sich der "hochgenaue" Anteil der REAL2, also der R1, während der Zählerei zumindest nicht in der Real-Darstellung bewerten läßt, da er ständig hoch- und herunterzählt.(auch in den Minus-Bereich)

Fakt ist aber, das er sich dabei korrekt verhält, weil die letzte Steller von RX, also der "normalen" Realzahl, zur anscheinend richtigen Zeit um eins weiter gezählt wird.

Fazit: R2_Add funktioniert, kann auch innerhalb einer wiederverwendbaren FC benutzt werden, wenn man die Variablen über den Temp-Bereich schleust, und ermöglicht damit Funktionen, die mit normaler Gleitpunktarithmetik nicht mehr zu machen sind.

Danke nochmal an alle Beteiligten!
 
Zurück
Oben