TIA Eingangsdaten einlesen zum Verarbeiten im FB

Mcool

Level-2
Beiträge
37
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute,

vorab, steinigt mich nicht wenn ich etwas vergessen sollte zu beschreiben, sondern fragt nach dann werde ich versuchen es besser zu machen.

nun zu meinem Problem:

ich möchte mit Tia einen FB Erstellen (idealerweise in SCL) mit welchem man einen Antrieb steuert. Welcher Antrieb es ist spielt hier keine Rolle.

Zum Antrieb gibt es eine Prozessdatenstructur, welche ich gerne im Baustein in die Statischen oder Temp Variablen übergeben möchte.
Was ich nicht will, ist die Structur der Prozessdaten als Eingangsvariablen vorher anlegen.

Ich würde gerne am Baustein ein Eingangsparameter haben, an dem die Anfangsadresse oder eine Integer Zahl oder egal wie die Parametrierte Hardwareadresse übergebe und dann die Prozessdatenstruktur eingelesen wird. die Länge der Struktur soll im Baustein fest hinterlegt sein. Auch die Datenstruktur der Prozessdaten soll im Baustein hinterlegt sein. Also feste Struktur und feste Länge.

Wie ich die Steruktur dann intern verarbeite ist erst mal nicht von Bedeutung.

Weiterhin möchte ich einen optimierten Baustein verwenden.

Könnte mir das Vorum hier ein paar ansätze liefern wie ich das machen kann??

Grüße Mcool
 
Zuletzt bearbeitet:
"Optimiert" und "Anfangsadresse übergeben" geht nicht zusammen.
Welche CPU soll es denn sein?

Wenn Du auf die Struktur der Prozessdaten zugreifen willst, dann mußt Du die mindestens einmal deklarieren. Da könntest Du gleich einen PLC-Datentyp erstellen und kannst den dann im FB verwenden und auch auf E-Adressen deklarieren.

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo PN/DP

danke erst mal für die Antwort.

Im ersten Schritt soll es die 1500 Serie sein. ideal währe wenn es auch fü die 1200 serie geht.

Das ich einen PLC Datentyp machen kann und den dann übergeben weiß ich. das ist ja aber genau das was ich nicht will. der Baustein soll im Prinzip mit der Angabe einer Zahl welche dann in eine Adresse gewandelt wird, oder eventuell direkt eine Adresse welche als Anfangsadresse verwendet wird, arbeiten.

Ich vermute ja, ich muß einen nicht optimierten Baustein schreiben und mit Pointern arbeiten. eben auf die gute alte Art und Weise.


aber nicht verzagen Forum fragen!!

Wenn doch noch jemand eine Lösung für meine Anfrage hat, ich binn für alles offen.

Gruß Marco
 
Kannst du mal erläutern, warum du das nicht willst?
Wenn du eine "Zahl" übergibst und dann im FB die Struktur ohnehin so aufdröselst, dass du auf die Daten zugreifen kannst, dann legst du ja im FB auch alles ganz genau fest. Da kannst du gleich eine Struktur als Input übergeben, was zusätzlich auch noch die Übersicht enorm verbessert. Der Sinn der Übung will mit nicht wirklich in den Kopf. Würde mich wirklich interessieren.
 
Hallo Ralle,

dein Einwand ist richtig.

letzten Endes soll es darauf hinauslaufen, dass der Baustein für ein bestimmtes produkt dem Kunde zur verfügung gestellt werden soll. bei der Parametrierung über einen Pointer, Zahl oder was auch immer, bräuchte er sich über die Struktur des Protokolls keine gedanken mehr machen, sondern nur noch den Baustein parametrieren.

so mal auf die Schnelle deine Frage beantwortet.

Gruß Marco
 
bräuchte er sich über die Struktur des Protokolls keine gedanken mehr machen, sondern nur noch den Baustein parametrieren.
Meinst Du vielleicht eher, er soll die Struktur nicht kennen, Du willst die Struktur absichtlich verschleiern (zwecks KnowHow Protect?), außer Dir soll niemand Dein Datengewurstel nachvollziehen können?

Es sollte den Kunde doch nicht überfordern, anstatt einer ominösen Zahl eine vorhandene Struktur/PLC-Datentyp zu verschalten...

Harald
 
ich verstehe ihn so, dass er einen Baustein schreiben will, mit dem er z.B. am FB-Eingang die Anfangsadresse des Steuerwortes eines FU eingibt. Den Rest macht der Baustein dann alleine.
Wenn du sowas umsetzen willst musst du in deinen FB z.B. die Bausteine SFC14 und SFC15 einsetzen und die Prozessdaten in entsprechende Strukturen (Jeweils eine Struktur zum lesen, eine zum schreiben) im STAT-Bereich des FB deklarieren.
Die Strukturen werden dann an die SFC14 / SFC15 gehängt.
Mit dem Weg habe ich mir eigene Bausteine für FU's geschrieben, dabei ist das verwendete PPO fest vom Baustein vorgegeben ... quasi intern. Man kann dann natürlich noch einen Schritt weiter gehen und die Profibusadresse auslesen und sich darüber dann die Startadresse des PPO's holen etc.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Larry Laffer: ich denke das ist das was ich brauche, danke für den Tip. manchmal sieht man den Wald vor lauter Bäumen nicht mehr.

@PN/DP : der Kunde darf und soll die Struktur kennen, es soll ihm lediglich mit einem Baustein erleichtert werden informationen aufbereitet aus dem Protokoll herauszubekommen ohne sich alles selbst zu filtern. er kann das natürlich auch selbst machen!

@all
closed
 
Zurück
Oben