Hi Freunde!
Ich habe nun also die Library Bibliothek_OSCAT_Basic_332__S1200_V13_V13_SP1.zal13
und
Bibliothek_OSCAT_building_100_S1200_V13_V13_SP1.zal13
in TIA 13 SP1 up7 laden können.
Ich möchte nur meine Rolos und Jalousien im Haus steuern.
Bisher mach ich das mit einfachen Netzwerken, ohne Sunset und Automatismen.
Ich möchte aber mehr komfort, Timer usw.. was halt oscat alles bietet.
Ich hab also die Building und die Basic als Globale Bibliothek geöffnet.
Ich hab dann also den BLIND_CONTROL_S in den OB1 gezogen und verdrahtet.
Es gibt dann ja den FB248, der lässt sich aber nicht übersetzen.
Die Fehler sind dann: Ungültiger Datentyp. im SCL ist dann immer #rmp gehilightet.
Ich hab dann diverse Bausteine hinzugefügt und hänge jetzt beim Operand "FirstScan", der nicht definiert ist.
Weis jemand, wo ich den FirstScan finde, bzw. wie ich den definiere?
//#ERR := RD_SINFO (TOP_SI => #TOP_SI, START_UP_SI => #START_UP_SI);
(* read system time *)
#tx := DINT_TO_TIME(DWORD_TO_DINT("T_PLC_MS"()));
(* reset last_time on system startup *)
IF "FirstScan" THEN
#last := #tx;
END_IF;
(* check inputs and start state machine *)
IF #UP AND NOT #DN THEN
(* manual UP *)
#rmp.IN := 255;
Da oben wird der Firstscan verwendet.
Kann ja nicht viel sein. Vielen dank schonmal.
.
.
Hab weiter gesucht .. der Operand "FirstScan" ist nicht definiert.
Der Fehler kommt von "STIME", "_RMP_B" und "BLIND_CONTROL_S".
Nebenbei werden diverse Parameter möglicherweise nicht initialisiert.
..
Ok.. Hab "FirstScan" Global definiert. (Hab mehrer Versuche gebraucht.. Man sollte zumindest richtig tippen können
![Undecided :-\](http://www.oscat.de/community/Smileys/default/undecided.gif)
)
Jetzt Fehlt in "STIME" "SYS_TIMER", da lässt sich aber nichts machen.. und der Operand "TIME" istn icht definiert.
PLC_1,,2,5,10:42:07
Programmbausteine,,2,5,10:42:07
STIME (FB64),,2,0,10:42:07
42,"SYS_TIMER" ist nicht bekannt.,,,10:42:07
42,Der Operand "TIME" ist nicht definiert.,,,10:42:07
_RMP_B (FB93),Baustein wurde erfolgreich übersetzt.,,,10:42:07
Hier die Stelle in "STIME"
(* read the system timer *)
#tx := DINT_TO_DWORD("SYS_TIMER"."TIME");
(* stuff the highest bit into the timer value *)
#at_tx[7] := #bit31;
Ich arbeite mit den Quellen von DOD666
Aus diesem Beitrag:
http://www.oscat.de/community/index.php/topic,2475.msg12831.html#msg12831BB
Frankie