Rezeptur laden bei...

sleepless

Level-1
Beiträge
44
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Jungs,

ich brauch hilfe: Ich habe 4 verschiedene Rezepturen inkl. Datensätze.

Mein Ziel ist es, das ich per Hardware Schalter (z.B. E 0.1 ist True, dann lade...) Rezeptur X mit Datensatz X (oder nur die Rezeptur mit einem Standardsatz) in die Steuerung laden kann.

Geht das überhaupt?
Wenn ja, wie??!?

Vielen Dank euch
 
Hallo,
ja das ist möglich. Du müsstest einen Datenbaustein anlegen (DB100) dort die entsprechenden Werte eingeben. Dann müsste ein Pointer gesetzt werden, welcher auf Tastendruck auf die nächste Zeile verschoben wird. Diese Werte dann entsprechend in per Verschiebung laden. Ich komme im Moment nicht an die entsprechenden Daten für Pointer, du kannst ja mal googeln. Ist das Rezept auf einer HMI? Dann kannst du durch Tastendruck auch den entsprechenden Datensatz direkt in DB100 laden.
Ansonsten werde ich morgen nachschauen.
Gruß Danny
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Kommt man wirklich nicht um Pointer herum?

Ich stell die Frage, weil ich eine alt Anlage überarbeite und einige Dinge halt schon fertig sind, ich mich quasi nur reinquetsche.. Daher dachte ich, ich erstelle in flexible mehrere Rezepturen, die den alten verwendeten DB halt benutzen. In der alt Anlage gab es halt nur die möglichkeit einer Rezeptur (wohl weniger Rezeptur, eher die einzel db werte neu überschreiben...). Mein Ziel ist es, das die Vögel von Bedienern einen Wahlschalter auf das entsprechende Programm stellen sollen. Intern soll halt die dazugehörige Rezeptur geladen werden. (Daher das Bedienpanel sonst wo sitzt, nur nicht da, wo gearbeitet wird..)

Ich habe es schon mit einem DB versucht, in dem sich die Werte geändert haben, je nach Schalterstellung. Diese habe ich dann in WinCC flex per Grenzwerte abgefragt. (Variable->Eigenschaften->Ereignisse). Das hat leider nicht so funktioniert, wie ich wollte. Trotz, das ich bei der Aktion sagte "ladeDatensatzvariableinSteuerung" (oder so ähnlich), lud er immer nur eine einziges Rezept, egal, welches ich dort ausgewählt hatte. Ich will dieses vorgehen wohl erst mal nicht weiter verfolgen, weil ich a) dabei etwas übersehen habe oder b) winFlex zu dumm/verbugt ist.

Die Idee mit den Pointern ist nicht schlecht, doch irgendwie schein ich mir damit die ganze Rezeptur Geschichte unnötig zu machen. Und diese sieht für den normalen Otto halt besser aus, als 4 verschiedene Eingabefelder für die ein und selbe Sache... Abgesehen davon, weiß ich nicht, was ich im Adressregister der Anlage anrichte, wenn ich dort nen Pointer reinknall...
Wie gesagt, mein größtes Ärgernis dabei ist, das ich dann für jede Rezeptur & jeden Wert einen eigenen Platz im DB benötige. Das bläht die ganze Geschichte natürlich Speichermäßig unheimlich auf, abgesehen davon, das später ohne ein riesen Aufwand keine neuen Rezepturen hinzugefügt werden können... Stell dir mal vor, du musst nach 10 Jahren da ran und dein eigenen Pointer verstehen... *ROFL*

Trotzdem, ich bin gespannt auf weitere ausführungen von dir oder noch alternativen. Das ich mit Pointern gearbeitet hatte, ist schon ein weilchen her und brauch da wohl ein wenig nachhilfe :oops:
 
Kannst auch Abfragen ob der Eingang für Rezept 1 da ist, wenn ja -> lade dir die Werte aus dem "Rezept-Speicher-DB" und kopiere sie in "Rezept-aktuell"
Code:
U Eingang 1
SPBN 1234
L Rezept 1 Wert 1
T Rezept aktuell Wert  1
1234: NOP 0

U Eingang 2
SPBN
...
L Rezept 2 Wert 1
T Rezept aktuell Wert  1
...

Ich weiß jetzt nicht wieviele Werte dein Rezept beinhaltet, aber wenn es nicht so viele sind, halte ich das für eine überschaubare Lösung.

MFG
 
Oder einfach mit einem Steuerauftrag das HMI anweisen das Rezept in die Steuerung zu laden. Dazu muss das Rezept offline angelegt werden und am besten in den Bereichszeiger noch den Datensatz aktivieren. Dann per Steuerungsauftrag 70 Rezept laden. Repernummer = Parameter 1, DatensatzNr = Parameter 2.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das wird nicht funktionieren, daher Rezepte innerhalb von wincc verwaltet werden. Die Werte liegen ja alle innerhalb der csv Datei, da ist nichts mit L Rezept... Oder wie darf ich dich verstehen?
 
Doch funktioniert, habe ich gerade gestern programmiert. Die Steuerung weist WinCC Flexibel an das Rezept xy mit Datensatz z in die Steuerung zu transferieren. Der Steuerungsauftrag dazu hat die Nummer 70. Es gehen natürlich nur in WinCC Flexibel angelegte Rezepte!!

Alternativ die Daten über ein Script aus einer Csv auslesen. Script Beispiele mit Dateizugriff gibt hier im Forum. Script triggern über Variablenänderung bei Tastersuswahl. Ist aber bestimmt aufwendiger als Rezepte....
 
Zuletzt bearbeitet:
Ich meinte michstein mit dem Beitrag... sry, mein Antwort schreiben hat sich mit deiner überschnitten...

Wie geht das genauer mit diesem steuerungsauftrag.. . mehr oder weniger habe ich mich bisweilen davor erfolgreich drücken können, ich weiß gerade nur, wie man den bereichszeiger fit kriegt...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
den Datensatz in DB100 aus der HMI aus Tastendruck schreiben ist kein Problem. Geht übrigens auch per movicon von Vipa ;).
Falls du es noch benötigst habe ich mal im Anhang das Programm für den Pointer hoch bzw. runter dann nur anders rum in der Bilddatei Pointer hoch und zum Erstellen des Pointers die zweite Bilddatei. Damit funktioniert es. Bei Bedarf kannst du aus der HMI weitere Rezepte auf den DB 100 schreiben.
Wenn du Fragen hast, werde ich antworten. Da ich aber voll auf zu tun habe, kann es dauern. Zu Hause habe ich leider Dank Kabel D kein Internet :(.
Wünsche einen schönen Abend.
Gruß Danny
 

Anhänge

  • Pointer.PNG
    Pointer.PNG
    19 KB · Aufrufe: 66
  • Pointer hoch.PNG
    Pointer hoch.PNG
    12,1 KB · Aufrufe: 53
Zurück
Oben