Einfügen von OCAT Modulen in Step7 Programm

Begonnen von andi-g, 20. Oktober 2007, 12:01:30

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 2 Gäste betrachten dieses Thema.

andi-g

Hallo ! ich habe Schwierigkeiten beim implementieren
von OSCAT Bausteinen in mein S7 Programm.

Folgende Module wollte ich implementieren:
Ltime, Holiday,Sun_time

Habe die Bausteine in einem FC1 zusammengefasst
& auch die entsprechenden Instanz DB's erstellt.
Auch die entsprechenden Eingangssignale sind projektiert:
DATE_AND_TIME/TOD/DATE etc... soweit kein problem.

Nach dem Download in die CPU geht die Steuerung in SF.
Egal welches der OSCAT Module ich aktiviere.

Ich habe SCL nicht installiert. Kann das der Grund sein ?

Vielen Dank ! Andreas.

dalbi

Hallo Andreas,

nein SCL muss nicht installiert sein.

Habe im SPS_Forum noch etwas mehr dazu geschrieben
http://www.sps-forum.de/showthread.php?t=15778&page=2

MfG
Daniel

MacDeath

#2
Hallo Daniel,
erstmal herzlichen dank für deinen zeitaufwand zwecks des beispiels. nach dem  ich mir deinen tip, noch mal, 20 mal durchgelesen hab und dazu parrallel noch die S7 Hilfe benutzt hatte, habe ich es dann nach 8std. fummeln hinbekommen. jetzte habe ich deine .zip  gesehen und mal geguckt - ja so hab ich das auch realisiert. super was gelernt! nach dem ganzen hickhack hab ich nun noch mal ein neues projekt geöffnet - nur mit input und control. es funzt und ich freu mich.

(1)
jetzt bleibt mir nur noch die frage zu dem OB100..."muss so sein" warum und vor allem wofür????

(2)
und mir ist was aufgefallen: wenn ich mauell ansteuere im click_mode.
ich klicke, der motor kommt....ich klicke, der motor stoppt - soweit ok. aber jetzt: ich klicke der motor kommt. endposition erreicht. der motor schaltet nicht ab!!!! dadurch steht an einem ausgang vom input modul ne 1 an und er geht nicht mehr in automatik_mode( beide ausgänge 1). damit er das tut müsste man nochmal klicken.
vielleicht sehe ich das ja falsch, aber falls es so ist, finde ich das blöd : ich klick einmal "mach mal zu"...und der automatik mode geht nicht an, wenn ich nicht stoppe oder wenn die rollade unten ist, und ich nicht noch mal klicke. damit dies geht hatte ich gedacht: er soll die Position und die ausgänge am input_module vergleichen und dann noch mal klicken....da ich aber nicht weiß wie ich Byte und BOOL vergleiche habe ich das jetzt über zeit gemacht, wobei diese ja immer > als die auffahrdauer sein muss. das klappt soweit....wenn jemand ne bessere idee hat (habs mal  als .zip angehängt) - bitte posten.
Habe meinem rolladenbaustein einen Pos ausgang für eine spätere Visu spendiert . die eingänge für manuelle % anwahl  hab ich noch nicht eingebaut.

wer also verbesserungen oder was zu anzumerken hat - immer gerne.

Nochmals besten dank an Daniel   ohne deinen tipp mit  den multiinstanzen wär ich nicht weitergekommen. oder hätte für 20rolladen 20DB's + je 5 DB's für die 5 FB's der blind module..



[gelöscht durch Administrator]

dalbi

#3
hallo nico,

(1)
der baustein stime gleicht unter STEP7 das timer-problem mit der UDINT (CoDeSys) variable (ohne vorzeichen +-) aus. da die oscat bausteine keine timer nutzen, sondern die zeitfunktionen über denn cpu-zyklus berechnet werden (SFC64 time_tck).
bei neustart der cpu bleiben die datenwörter gespeichert (Datenbaustein) der cpu zeittakt startet aber neu somit wäre im ersten zyklus die zeitmessung für die verwendeten timerfunktionen falsch, daher die initialisierung des bausteins.

(2)
byte vergleichen (am besten in AWL machen, da FUP sehr begrenzt ist oder in FUP mit der MOVE-Box das Byte in ein Word (Integer) wandeln.
  L  MB1
  L  MB2
  ==I
  = M3.0

mfg
Daniel