# Flex 2007 - Auftragsfach



## Larry Laffer (11 November 2008)

Hallo,
nehmen wir einmal an, ich wollte unter Flex 2007 ein Auftragsfach symbolisch anlegen - welcher Datentyp wir hier von Flex akzeptiert ?
Ich habe aktuell ein Array [0..7] of Byte - das will es nicht ... (Auswahlfeld wird orange markiert und als unzulässiger Datentyp ausgewiesen).
Ausprobiert habe ich aber auch schon Array[0..3] of Word - das war aber auch kein Treffer ...

Ach ja - ich habe keine Überlappung mit einer anderen deklarierten Variablen ...

Gruß
LL


----------



## johnij (11 November 2008)

Larry Laffer schrieb:


> Hallo,
> nehmen wir einmal an, ich wollte unter Flex 2007 ein Auftragsfach symbolisch anlegen - welcher Datentyp wir hier von Flex akzeptiert ?
> Ich habe aktuell ein Array [0..7] of Byte - das will es nicht ... (Auswahlfeld wird orange markiert und als unzulässiger Datentyp ausgewiesen).
> Ausprobiert habe ich aber auch schon Array[0..3] of Word - das war aber auch kein Treffer ...
> ...


Moin LL,
was meinst Du mit dem "Auftragsfach"???
Ist das einfach ein Array[..] of Datatyp, den Du in die Steuerung überträgt??


----------



## Larry Laffer (11 November 2008)

Hallo Johni,

ich meinte :
Bediengerät-WinCCFlexibel RT-Kommunikation-Verbindungen-Bereichszeiger-*Steuerungsauftrag*.
Auftragsfach stammt natürlich aus der ProTool-Zeit (da hat das aber auch geklappt ...).

In dem Zusammenhang noch eine weitere Frage :
Was muß man tun, damit das Bediengerät (in dem Fall TP177B) auch mit dem Steuerungsauftrag arbeitet ? Unter ProTool reichte es, wenn man den Bereichszeiger angelegt hat. Hat die SPS dann entsprechende Daten hineingeschrieben, dann wurde auch damit gearbeitet. Flex ignoriert das Ganze im Augenblick aber geflissendlich ...

Gruß
LL


----------



## johnij (11 November 2008)

Larry Laffer schrieb:


> Hallo Johni,
> 
> ich meinte :
> Bediengerät-WinCCFlexibel RT-Kommunikation-Verbindungen-Bereichszeiger-*Steuerungsauftrag*.
> ...


 
Also LL,
ein Steuerungsauftrag hat eine feste statische Größe (WCF).
Die Länge ist immer in 16-Bit-Worten.
Du sollst wie folgt vorgehen:
1-Verbindung projektieren
2-Bereichzeiger im WCF-Projekt anlegen
3-Bitte auf die Struktur vom Bereichzeiger in der SPS achten
(z.B Wort0=00Auftragsnummer, Wort2=...)
4-Baustein (DB) in die SPS laden
5-WCF-Proejekt laden

Was für einen Auftrag möchtest Du projektieren???
Für weitere Fragen stehe ich zur Verfügung

Nachtrag: in dem WCF-Projekt kannst Du unter F1/ Help nach dem Steuerungsauftrag suchen


----------



## Larry Laffer (11 November 2008)

johnij schrieb:


> Was für einen Auftrag möchtest Du projektieren???


Ich möchte die Uhrzeit des TP's mit der CPU-Zeit synchronisieren ...



johnij schrieb:


> Also LL,
> ein Steuerungsauftrag hat eine feste statische Größe (WCF).
> Die Länge ist immer in 16-Bit-Worten.
> Du sollst wie folgt vorgehen:
> ...


Hast du meine Beitrag 1 gelesen ?
Ich habe den Bereichszeiger in der SPS aktuell als 8-Byte großes Array angelegt. Es war aber auch schon einmal ein 4-Wort großes Array. Symbolisch wurde der Bereichszeiger nicht übernommen (falsches Datenformat). Das bringt mich dann wieder zu meiner Ausgangsfrage :





> welcher Datentyp wir hier von Flex akzeptiert ?


 
Gruß
LL

Ach ja :
Wie die Bereichszeiger funktionieren weiß ich. Diese Funktion nutze ich unter ProTool schon "ein paar Dienstage" ...


----------



## johnij (11 November 2008)

Larry Laffer schrieb:


> Ich möchte die Uhrzeit des TP's mit der CPU-Zeit synchronisieren ...
> 
> 
> Hast du meine Beitrag 1 gelesen ?
> ...


 
Hallo LL,
wegen dem Datentyp: ich habe oben geschrieben 10-Bits-Wörter
--> Word ist das einizige was zugelassen ist


----------



## Larry Laffer (11 November 2008)

johnij schrieb:


> Hallo LL,
> wegen dem Datentyp: ich habe oben geschrieben 10-Bits-Wörter
> --> Word ist das einizige was zugelassen ist


 
Hallo Johni,
wie ich schon geschrieben habe :
4 x WORD nimmt es genausowenig wie 8 x BYTE ... 2 x DWORD habe ich noch nicht getestet ...
Was meinst du mit 10-Bits-Wörter ?


----------



## vierlagig (11 November 2008)

Larry Laffer schrieb:


> Was meinst du mit 10-Bits-Wörter ?



1 byte und 1/2 nibble vielleicht?

schon mal versucht das word losgelöst vom array zu benutzen? klingt komisch, ist aber auch flex


----------



## johnij (11 November 2008)

Schau mal bitte hier rein:

http://support.automation.siemens.c...ius&objaction=cssearch&searchinprim=&nodeid99=


----------



## vierlagig (11 November 2008)

wohl eher das hier: http://support.automation.siemens.com/WW/view/de/24372078

kann man dann sicher auch von der bildanwahl losgelöst betrachten


----------



## johnij (11 November 2008)

Nachtrag:
es tut mir leid
ich meine 16-Bits-Wörter

PS: Du kannst deu St.auftrag 51 benutzen


----------



## magmaa (11 November 2008)

Schreib einfach DB [xx] DBW[xx] den anfang von deinem feld.
z.B. DB252 DBW0 
Das feld muss die länge von 4 wörtern haben das ist beim Steuerungsauftrag so vorgeben.
fertig.


----------



## johnij (11 November 2008)

Larry Laffer schrieb:


> Hallo Johni,
> wie ich schon geschrieben habe :
> 4 x WORD nimmt es genausowenig wie 8 x BYTE ... 2 x DWORD habe ich noch nicht getestet ...
> Was meinst du mit 10-Bits-Wörter ?


 
Sieh mal bitte meinen letzten Beitrag an. :-D


----------



## Larry Laffer (11 November 2008)

vierlagig schrieb:


> schon mal versucht das word losgelöst vom array zu benutzen? klingt komisch, ist aber auch flex


 
Ist auch Flex trifft es ganz schön ...
Ich denke, ich mache es mit absoluter Adressierung.

@Johni:
Ich wollte mir keine Handbücher kaufen ... Ein Link, der eine Antwort auf meine Frage darstellt wäre hier schon nett gewesen ...
Falls du wirklich "Flex-Programmierer" bist, was ich nicht glaube, dann wäre es nett, wenn du dieses Problem aufgreifen würdest und in das Super-Release "Flex 2010" mit einfliessen läßt.

Gruß
LL


----------



## vierlagig (11 November 2008)

larry, mal auf meinen link geklickt?

wenn ich das richtig sehe wird ab den ersten word dann einfach die darauf folgenden bei einem steuerauftrag genommen, also das symbol des ersten words sollte funktionieren ... muß aber nicht, aber das hatten wir ja schon 

johnij denkt ja auch, dass wir einfach immer bessere idioten werden, deswegen glaub ich, muß ich dir die hoffnung nehmen, dass sich am flex-zustand was ändert ... aber vielleicht kannst du deinen kunden ja mal ein anderes produkt eines konkurenten von S vorführen ...


----------



## maweri (11 November 2008)

Hallo LL,

ich hab's gerade mal mit einem Array[0..3] of WORD und einem TP177B ausprobiert...Läuft!!!
Keine Ablehnung. Habe das Array über die Spalte 'Symbol' ausgewählt. (s.Bild)

Gruß
maweri


----------



## maweri (11 November 2008)

Da fällt mir noch was ein:

Arbeitet Flex mit demselben Projekt, wie der Simatic Manager?

Ich hatte mal das Problem, daß ich ein Projekt unter anderem Namen (Version) gespeichert habe. Aber beim Öffnen von Flex auf das alte Projekt zugegriffen habe. 
Auf das Array im neuen Projekt kann das alte Flex ja nicht draufzugreifen.


----------



## johnij (11 November 2008)

Larry Laffer schrieb:


> Ist auch Flex trifft es ganz schön ...
> Ich denke, ich mache es mit absoluter Adressierung.
> 
> @Johni:
> ...


 
*Ich habe Dir geschrieben, dass man 2 Möglichkeiten um eine Uhrzeitsynchr. zu erreichen:
1- Steuerungsuftrag 51
2- Datum/ Uhrzeit Steuerung
* Es gilt nur der Datentyp Word

Wie man das macht sollst du in den schon eingefügten Links finden.

Ob ich WCF prog oder nicht ist eine andere Sache mein Lieber
Außerdem wer sagt, dass ich bei S arbeite...


----------



## vierlagig (11 November 2008)

johnij schrieb:


> Außerdem wer sagt, dass ich bei S arbeite...



deine große fresse


----------



## Perfektionist (11 November 2008)

maweri schrieb:


> Hallo LL,
> 
> ich hab's gerade mal mit einem Array[0..3] of WORD und einem TP177B ausprobiert...Läuft!!!
> Keine Ablehnung. Habe das Array über die Spalte 'Symbol' ausgewählt. (s.Bild)
> ...


bei mir (WCF2008 / OP77A) auch ...


----------



## Larry Laffer (11 November 2008)

maweri schrieb:


> Da fällt mir noch was ein:
> Arbeitet Flex mit demselben Projekt, wie der Simatic Manager?
> 
> Ich hatte mal das Problem, daß ich ein Projekt unter anderem Namen (Version) gespeichert habe. Aber beim Öffnen von Flex auf das alte Projekt zugegriffen habe.
> Auf das Array im neuen Projekt kann das alte Flex ja nicht draufzugreifen.


 
Ich glaube, das trifft es ...
Ich habe das TP von meinem Mitarbeiter projektieren lassen und habe es dann in mein Projekt eingefügt. Nun kann ich manche Variablen symbolisch adressieren und manche nicht. Beim Auftragsfach handelt es sich anscheinend um die 2.genannten. 
Kann man das irgendwie reparieren (TEMP-Dateien löschen oder so) ?

Nachsatz:
In einem neu angelegten Bediengerät klappt das mit den symbolischen Zugriffen bei mir auch wieder ...
Wie sagte *4L* vorhin so passend : "Ist halt Flex ..."


----------



## maweri (11 November 2008)

Larry Laffer schrieb:


> Kann man das irgendwie reparieren (TEMP-Dateien löschen oder so) ?


 
Ohne es getestet zu haben:
1. Das Flex-Projekt aus Step7 kopieren (Menü: Projekt -> Aus STEP7 kopieren...).
2. Dann in Step7 das HMI löschen.
3. Flex-Projekt öffnen und integrieren (Menü: Projekt -> In STEP7 intgrieren)

Jetzt müsste die richtige Verbindung zwischen SPS und HMI stehen. Evtl. überprüfen. Wenn das geklappt hat, sollten die Variablen auf das aktuelle Step7-Projekt zugreifen.
Wahrscheinlich mußt Du alle Variablen noch neu verbinden.

Hoffe das funzt


----------



## Larry Laffer (11 November 2008)

Hallo Markus,
so, wie du es beschrieben hast, funktioniert es ...
Was nicht (richtig) funktionierte ist :
Bediengerät im Projektordner kopieren - neues Projekt anwählen - Bediengerät einfügen.
Nach dieser Aktion waren die beschriebenen Symptome aufgetreten ...

Gruß
LL


----------

