Übungsaufgabe Hilfe

Wo hängt es denn bei Frage 3?
Wie man einen neuen FB in Codesys erstellt?
Wie man FB Instanzen deklariert?
Wie man die Instanz aufruft?

Ich würde jetzt auch nur sagen können:
1. Erstelle einen neuen FB in der Sprache AS (z.b. FB_Beschickung)
2. Deklariere eine Eingangsvariable (VAR_INPUT) Namens EIN (bool) und eine Ausgangsvariable ABHOLBEREIT (bool)
3. Deklariere alle anderen Variablen lokal im FB (VAR).
4. Packe das Programm, das du in Aufgabe 1 und 2 erstellt und getestet hast, in den Code-Teil des FBs
5. Deklariere im Hauptprogramm eine Instanz deines FBs (z.B. fbBeschickung :FB_Beschickung) und 2 Variablen für die Ein und Ausgänge (Ein, Abholbereit).
6. Rufe die Instanz im Hauptprogramm auf: fbBeschickung(EIN := Ein, ABHOLBEREIT => Abholbereit);
7. ???
8. Profit.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo MasterOhh,

vielen Dank für deine Antwort. Folgende Punkte sind mir unklar.

Wie man FB Instanzen deklariert?
Wie man die Instanz aufruft?


Könntest du mir das etwas genauer erklären wie das geht?
 
Hallo Otogi,
Instanzen von FBs deklarierst Du genauso wie Variablen, möglichst richtig. ;)
OK, mal im Ernst.

Eine Variable wird ja wie folgt deklariert:

Variablenname : Variablentyp; (* z.B. BOOL *)

Bei FB-Instanzen ist dies ähnlich:

Instanzname : FB-Name;

Aufgerufen wird der FB dann über den Instanznamen. Bei Deiner Aufgabe könnte der FB z.B. FB_Befuellen genannt werden und die Instanz fbBefuellen. Der Aufruf würde dann durch z.B. fbBefuellen(I_xEIN_AUS := xStart, Q_xBefuellt => xBefuellt) erfolgen, oder alternativ fbBefuellen(I_xEIN_AUS := xStart) und das Ergebnis kannst Du dann über eine IF-Abfrage unter Verwendung von fbBefuellen.Q abfragen.

Gruß

Oliver
 
Ok schon mal vielen Dank euch. Wie man eine Instanz aufruft habe ich verstanden. In welcher Sprache würdet ihr den neuen FB in Aufgabe 3 erstellen. Auch wieder in AS? Das mit der geforderten Ausgabe verstehe ich, aber was genau ist mit EIN/AUS gemeint ?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn du das Programm schon in AS fertig hast, dann wäre das ja die naheliegendste Sprache. Zur Übung kannst du natürlich auch jeder andere IEC 61131-3 Sprache verwenden.

EIN/AUS macht genau das was es vermuten lässt. Es Schaltet deine Anlage Ein / Aus. Du müsstest bei dir im Code ja schon einen Aus-Zustand mit drin haben.
 
Ok. Danke. Habe da wohl zu kompliziert gedacht. Werde es heute Abend mal probieren. Ich habe die Lösung auf jeden fall schon vor Augen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich bekomme beim starten des Programms folgende Fehlermeldung. Beim übersetzen zeigt er mir null Fehler an (Zugriff auf unerlaubte Adresse Abarbeitung gestoppt)? Jemand eine Idee was ich machen kann.

FehlerCodeSYS.JPG
 
Zurück
Oben