END_VAR oder gültiger Bezeichner erwartet... Wer weiß Rat?

Begonnen von SirBastian1986, 05. Januar 2017, 20:07:59

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 1 Gast betrachten dieses Thema.

SirBastian1986

Hallo zusammen,

ich bin "der Neue" und beschäftige mich nun seit kurzer Zeit mit der Programmierung meiner WAGO SPS 750-881, über welche ich in meinem Haus das Licht, die Steckdosen und die Rolläden steuere.
Die Grundprogrammierung wurde durch meinen Bruder vorgenommen und ich versuche mich nun ein wenig in die Thematik einzuarbeiten. Dazu sei gesagt, dass ich Programmieren in diesem Sinne vorher noch nicht gemacht habe -> absolut blutiger Anfänger. Habt bitte Nachsehen mit mir   :D

Okay, dann zum Problem:
In der "Grundprogrammierung" waren bisher 3 Objekte verbaut. Licht, Rolladen und Klingel. Diese hat mein Bruder in FUP programmiert (CodeSys 2.3). Bisher war es nur möglich die Rolläden über gedrückthalten des Tasters herunter zu fahren. Ein automatisches herunterfahren mit nur einem kurzen Druck auf den Taster war nicht möglich.
Das sollte nun ausgebessert werden, indem ich ein neues Objekt in CFC erstelle und die entsprechenden Bausteine "BLIND_INPUT", "BLIND_SET" und "BLIND_CONTROL_S" miteinander verbinde. Habe alles soweit eingearbeitet, wenn ich jedoch die Verbindung mit der SPS herstellen möchte, um das Programm zu übertragen, sagt mir CodeSys

"Fehler 3781: PLC_PRG (6): 'END_VAR' oder Bezeichner erwartet"
Diese Meldung kommt dann für jede Variable mit entsprechender Zeilenbezeichnung.

Ich habe bisher schon versucht die Variablen per Hand einzutragen und ich habe sie automatisch eintragen lassen vom Programm. Jedoch kommt immer wieder diese Meldung.. Und ja, ich bin Anfänger, aber END_VAR habe ich in der untersten Zeile stehen  ;)

Hier noch ein Screenshot beigefügt in der Hoffnung auf schnelle Rettung.

Viele Grüße

SirBastian


[gelöscht durch Administrator]

martin.k

Hi,

willkommen im Forum.

Ich benutze andere Module für meine Rolläden, deshalb kann mein Tipp falsch sein:
Manche Eingänge sind Pflicht, andere kann.
Ich mache es immer so, dass ich alle Eingänge bestücke. Ggf. mit dem Standardwert laut Handbuch.
Nehmen wir z.b. den IN von Blind_Input.
Der scheint mir ein Pflichteingang zu sein.
Zitat Handbuch: .... Wenn IN = FALSE (Handbetrieb) werden die Eingänge S1 und S2 benutzt...
Zitat Ende.
Also machst Du einen Eingang an den kleinen Strich vom IN und schreibst FALSE rein (rechte Maustaste, Eingang).
Damit ist definiert, dass S1 und S2 benutzt werden sollen....

Gruß
Wünsche Dir viel Spass.
Martin

PS: Zum Lernen und Fummeln vielleicht erstmal mit einem Lichtbaustein probieren?

SirBastian1986

Hallo Martin,

besten Dank für Deine schnelle Rückmeldung.
Habe deinen Hinweis direkt mal ausprobiert, aber das war leider noch nicht des Rätsels Lösung  :-\
Es erscheint nach wie vor die Meldung, dass END_VAR oder ein gültiger Bezeichner erwartet wird.
Konnte ich mir auch schwer vorstellen, dass es daran liegt, da der Aufbau der Bausteine und der Variablen nach einem funktionierenden Muster erstellt wurden. Da konnte ich auch kein "FALSE" im IN des BLIND_INPUT feststellen.

Trotzdem danke für den Versuch..

peewit

bist du dir sicher das variablen bzw instanznamen mit einer zahl beginnen dürfen ?

SirBastian1986

Hallo peewit,

sicher bin ich mir nicht.. zumindest habe ich die Variablen unter den FUP Objekten mit Zahlen beginnen lassen und da läuft es. Ich werde es dennoch später mal versuchen.
Wäre aber komisch, wenn die Gültigkeit einer Bezeichnung unter CFC und FUP unterschiedlich sind, oder?  ???

Melde mich heute Abend mal, ob es funktioniert hat.  :)

SirBastian1986

peewit, vielen Dank!

Das war es! Jetzt funktioniert es endlich! Dann ist es wohl in der Tat so, dass die verschiedenen Systeme (FUP / CFC) unterschiedliche Ansichten über die Gültigkeit eines Bezeichners haben. In FUP werden die Variablen mit einer Zahl beginnend akzeptiert, im Gegensatz zu CFC. Ich habe nun die Variablen folgendermaßen benannt:

IN0603
SET0603
CTR0603

Die Zahlenfolge ist für mich lediglich die Bezeichnung, um welchen Raum es sich handelt (in diesem Fall 06) und um welche laufende Nummer der Elektronik (Stromquelle, Rolllade, Taster etc.).

Das werde ich nun für die anderen Rolläden adaptieren.

Vielen lieben Dank für die Hilfe  ;D