S7 LAR P##... --- pointer auf pointer

milmu

Level-1
Beiträge
5
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Tag,
ich bin dabei meine uhrzeit am panel und an der cpu zu synchronisieren und auch am panel abzuändern. ich habe mich am beispiel:
http://support.automation.siemens.com/WW/view/de/24104104

Anlage 2: Time_WinCE_flexible_A2.zip

entlang gehangelt. ich habe alles nach meinen wünschen abgespeckt und alles wincc und s7 passt.
ABER, ich habe begonnen alles in mein Standardprogramm zu übertragen. wenn ich jetzt die NW aus FB102 in meinen FB109 übertrage, bekomm ich folgenden Syntaxfehler beim Laden des Adressregisters.
Aus Beispielprogramm Fb102 NW4:
LAR1 P##DateTime
In meinem Programm habe ich ein Struct eingefügt und dachte das ich es so schreiben kann:
LAR1 P##Time_Sync.DateTime
Hier aber meckert er nur rum und gibt mit einen Syntaxfehler raus. Wieso genau passiert das und was muss ich dagegen tun?
Bei den normalen Variablen die ich übernommen habe war dies kein Problem mit #x.y zu arbeiten. Hat es damit zu tun, das die Variable DateTime vom Typ Date_And_Time ist??

Wäre klasse wenn mir jemand helfen könnte...

Zur Information:
Aus dem DB20 und DB102 der Projektvorlage habe ich einen Instanzdatenbaustein DB109 gemacht. Der DB20 war ein normaler DB. Liegt es vielleicht daran? Und kann ich das überhaupt machen ohne Probleme mit den Steuerungsaufträgen zu bekommen?
 
Zuletzt bearbeitet:
Sorry ... das geht leider nicht. Du kannst auf diese Weise den Pointer auf die Struktur, nicht aber auf ein Struktur-Element bilden. Hat Herr S. einfach so nicht vorgesehen. Du mußt also manuell den Pointer erhöhen um an das/ein Unterelement zu kommen ...

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ich bin dabei meine uhrzeit am panel und an der cpu zu synchronisieren und auch am panel abzuändern. ich habe mich am beispiel:
http://support.automation.siemens.com/WW/view/de/24104104

Anlage 2: Time_WinCE_flexible_A2.zip

entlang gehangelt.
Meine Empfehlung:
Vergiß das mit der umständlichen Uhrzeitsynchronisation nach dem Siemens-Beispiel und mach es ganz einfach so:
http://www.sps-forum.de/showthread.php?p=220549#post220549
Da brauchst Du keine Pointer auf Strukturelemente und keine Steuerungsaufträge.

Harald
 
zunächst einmal danke für die schnelle antwort.

@Larry Laffer:
D.h. wenn ich mein Struct -Time_Sync- rausnehme dürfte es funktionieren?

Schließlich bringt er mit bei folgendem Befehl:
LAR1 P##IO_Job_No
keinen Fehler!

@PN/DP:
Ich versuche mich noch kurz an meinem aktuellem Projekt. Trotzdem danke!
Aber wenn es nichts wird wäre ich dir dankbar wenn du mir den FB, DB hochlädst.

Mein Panel sieht derzeit so aus. Ich möchte unbedingt erreichen das mit einem Button das Datum in die CPU geschrieben wird. Der andere Button, sps lesen, ist weniger wichtig für mich.
So bekommst du/ihr mal eine Vorstellung...
 

Anhänge

  • ScreenHunter_01 Nov. 22 13.14.gif
    ScreenHunter_01 Nov. 22 13.14.gif
    4,3 KB · Aufrufe: 46
nachdem ich die hirarchie der adresszuordnung geändert habe kann ich meine systemzeit im panel nachwievor ändern und diese läuft auch problemlos weiter. nur das stellen meiner cpu-zeit funktioniert nicht.

drücke ich dann den button -systemzeit der sps lesen- schreibt er mir irgendein mist rein. komischerweise immer die gleiche zeit, d.h. die zeit läuft im hintergrund nicht weiter aber das datum bleibt bestehen?!?!
um das zu verstehen lad ich mal zwei bilder hoch...

sehr mysteriös!

Bitte um Hilfe :)
 

Anhänge

  • ScreenHunter_03 Nov. 22 15.12.gif
    ScreenHunter_03 Nov. 22 15.12.gif
    7,3 KB · Aufrufe: 30
  • ScreenHunter_04 Nov. 22 01.00.gif
    ScreenHunter_04 Nov. 22 01.00.gif
    7,4 KB · Aufrufe: 24
Zuviel Werbung?
-> Hier kostenlos registrieren
Dazu müßtest Du mal Deinen FB109 und den DB109 hier hochladen.
Ohne Dein Programm zu kennen, kann man nichts genaues sagen.

Warum hast Du Dir ausgerechnet das komplizierteste Programmbeispiel
bei Siemens ausgesucht? Soweit ich mich erinnere, arbeitet das doch
mit 2 Steuerungsaufträgen, die sich nicht in die Quere kommen dürfen!
Wenn da irgendwas in der gegenseitigen Verriegelung der Steuerungs-
Aufträge nicht 100% richtig ist, dann funktioniert womöglich keiner
richtig - so wie bei Dir.
Es ist nicht klug, ein Programm umzuschreiben, daß man nicht versteht.
Möglicherweise sind in dem Siemens-Beispiel Time_WinCE_flexible_A3.zip
auch Fehler drin? Ich habe es nicht getestet.

Das Beispiel Time_WinCE_flexible_A3.zip ist da leichter. Es hat zwar ein
paar unbedeutende Fehler, funktioniert aber mit genau 1 Panel auf Anhieb.

Harald
 
ich habe das problem lösen können. zum glück! :)
alles funktioniert so wie ich es möchte...

leider verwende ich noch temp-variablen. darum werde ich mich die woche nochmals kümmern...

nochmals danke harald.

schönen feierabend,
michael
 
ich habe das problem lösen können. zum glück! :)
alles funktioniert so wie ich es möchte...
Na, dann ist ja alles gut.
icon14.gif


Ich habe trotzdem mal an mein in #3 verlinktes TimeSync-Beispiel die Bausteine als Step7-Projekt hochgeladen.

Harald
 
Zurück
Oben