METER_STAT bei Umstellung von OSCAT303.lib auf OSCAT310.lib

Begonnen von good_mike, 23. September 2009, 20:50:02

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 1 Gast betrachten dieses Thema.

good_mike

Hallo,

ich möchte wegen der vielen Verbesserung auf Ver. 3.10 umstellen. Dabei habe ich Probleme mit der METER_STAT Funktion.
Hier bekommen ich die im anliegenden Bild dargestellten Fehlermeldungen.
Was hat sich von 3.03 auf 3.10 in dieser Hinsicht geändert??

Grüße
Michael


[gelöscht durch Administrator]

hugo

kannst du mal dein teilprojekt mit dem baustein hier reinstellen?

good_mike

Hallo, anliegend der Export des betreffenden Bausteins.

Wäre schön wenn hier jemand das Problem sehen / lösen könnt....

Gruß

Michael


[gelöscht durch Administrator]

Pusher

HI,

hatte das selbe Problem
im FUP ! In CFC keine Übersetzungsprobleme...

MFG

hugo

FOLGENDE VARIABLEN SIND IN DER RELEASE 3.10 I/O variablen geworden:

last_day, current_day, last_week, current_week, last_month, current_month, last_year, current_year.

I/O variablen bedeuten das der baustein selbt gar keinen speicherplat für die varibale hat, sondern dieser speicherplatz extern deklariert werden muss und auch verbunden werden muss.
I/O ein/ausgänge dürfen also nicht unbeschaltet bleiben und müssen bei jedem aufruf des bausteins mit angegeben werden.
dies hat den vorteil das nicht mehr wie bisher der ganze baustein als retain oder persisitent deklariert werden muss, es genügt wenn die oben genannten variablen als retain und oder persistent deklariert werden.

deine fehlermeldungen besagen lediglich das keine variablen mit den benannten ausgängen des bausteins verbunden sind.

good_mike

Hallo Hugo,

ähhhh... Sorry; Mir fehlt etwas die Idee..
Kannst Du mir sagen was ich jetzt tun muss.

Schon mal besten Dank.

Michael

hugo

du definiert 2 bausteine vom typ meter_stat:
   METER_STAT_Betriebsstunden_Brenner:   METER_STAT;
   METER_STAT_Betriebsstunden_Zirkulationspumpe: METER_STAT;

dies ist völlig ok, allerdings kannst du sie ohne retain und persistent deklarieren seit release 310 ist retain persistent für meter stat überflüssig

beim aufruf von modulen des typs meter_stat musst du die variablen für alle I/O variablen zwingend angeben

deine version macht dies nicht :
METER_STAT_Betriebsstunden_Brenner(
   IN:=UDINT_TO_REAL(Betriebsstunden_Brenner_MIN) ,
   DI:=DatumDATE ,
   RST:= ,
   Last_Day=> ,
   Current_Day=> ,
   Last_Week=> ,
   Current_Week=> ,
   Last_Month=> ,
   Current_Month=> ,
   Last_Year=> ,
   Current_Year=> );

richtig wäre aber :
METER_STAT_Betriebsstunden_Brenner(
   IN:=UDINT_TO_REAL(Betriebsstunden_Brenner_MIN) ,
   DI:=DatumDATE ,
   RST:= ,
   Last_Day := deinlastday ,
   Current_Day := deincurrentday ,
   Last_Week:= deinlastweek ,
   Current_Week := deincurrentweek ,
   Last_Month := deinlastmonth ,
   Current_Month := deincurrentmonth ,
   Last_Year := deinlastyear ,
   Current_Year := deincurrentyear );

rst := kannst du dur sparen wenn du eh nichts neues zuweisen willst

die variablen dein... musst du als retain persistent deklarieren

good_mike

Hallo Hugo,

besten Dank. Werd's probieren sobald ich mal 5 min Zeit habe. Gebe dann Rückmeldung...

Nochmals Dnake und Gruß

Michael

good_mike

Hallo,

hab mehr als 5min gebraucht - jede Menge "Tipparbeit"  :) :)

Jetzt funktioniert's


DANKE

Gruß

Michael