Anfängerfrage zu FB

Nafura

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

Ich mache gerade eine SPS Ausbildung hab da ein Problem.
In habe in meinem Programm 2 FB erstellt, und zb. den Ausgang A0.0 in der Variablen Tabelle als out eingetragen, im OB1 hab ich dann die absolute Adresse A0.0 eingetragen.
Nun zu meinem Problem, ich muss den A0.0 auch in diesem FB verwenden, kann ihn aber nicht merh in die Variable Tabelle eintragen da ich danbn ja im OB1 ein 2x den Ausgang A0.0 eintragen müsste, das funktioniert ja nicht, oder?
Wie mache ich das ich Ein-Ausgänge in verschiedenen FB als Variable habe.

Ich hoffe ich konnte mein Problem richtig beschreiben, ich danke im Vorraus für eure Hilfe.

LG, Nafura
 
Hallo Nafura,

du möchtest in zwei verschiedenen FB's jeweils den A0.0 zuweisen, habe ich das richtig verstanden? Dann hast du es eh schon richtig erkannt, dass das so nicht geht. Du könntest bei beiden FB's je einen separaten Merker zuweisen und in einem eigenen Netzwerk danach die beiden Merker mit ODER dem A0.0 zuweisen.
Poste mal den Code, den du schon hast.

Gruß
Cosman
 
Hallo Nafura,

den Ausgang gibst du beim Aufruf des FB und nicht im Deklarationsteil (Schnittstelle) des FB an.

Gruß
Cosman
 
Hast Du den A0.0 in der Schnittstelle bei den Out-Variablen eingetragen ?
Absolute Adressen haben im FB nix zu suchen .
Du musst deine Variablen symbolisch Programmieren .
Dann mußt Du den FB im OB aufrufen und die Ein und Ausgänge mit den absoluten Operanden beschalten .
Und im OB1 brauchst Du nichts oben in der Schnittstelle eintragen !

Gruß Stephan
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Da habe ich mich wohl falsch ausgedrückt.
Ich trage in die Schnittschtelle des zB. FB1 und FB2 unter out die Symbolischen Namen der Merker ein.
Im OB1 beschalte ich diese mit den absoluten Adreesen für die beiden FB´s zB. m0.0, m0.1..
In einem eigenen Netzwerk nehme ich dann die 2 Merker und mache eine oder Verknüpfung, und weise das VKE dem Ausgang zB. A0.0 zu.

Danke nochmal für die rasche Hilfe.

LG, Nafura
 
Vielen Dank, genau das ist die Antwort die ich brauche, muss ich die Merker als (out oder stat) in die FB´s schreiben?

LG, Nafura

Du must die Variable als OUT deklarieren, könntest auch IN_OUT nehmen!
Wenn du die Variable intern im FB noch zu Verriegelungszwecken oder so brauchst mußt du sie als IN_OUT deklarieren!
Der Variablenteil "STAT" werden rein optisch nacher bei dem Bausteinaufruf nicht angezeigt, sie sind nur in dem Instanz DB enthalten!

Gruß
SKg
 
Zuletzt bearbeitet:
Wenn du die Variable intern im FB noch zu Verriegelungszwecken oder so brauchst mußt du sie als IN_OUT deklarieren!

"mußt"?! das glaube ich nicht, tim.

der Zustand wird ja im Instanz-DB "festgehalten" und die Out-Variable kann (genauso wie eine IN_OUT) einfach für Verriegelungen benutzt werden.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
"mußt"?! das glaube ich nicht, tim.

der Zustand wird ja im Instanz-DB "festgehalten" und die Out-Variable kann (genauso wie eine IN_OUT) einfach für Verriegelungen benutzt werden.

Ähh zu meinen anfangszeiten habe ich mal versucht nen Impuls zu erzeugen:

U #Variable_1
FP #Variable_2
= #Variable_3

Ich hatte da die Variable_2 als OUT deklariert und das ganze hat nicht funktioniert!
Als ich die Variable_2 als IN_OUT deklariert habe hat alles funktioniert!

Darauf beruht meine Aussage!


Gruß
SKg
 
Stimmt SKg,

bei der Flanke muss der Hilfsmerker als IN_OUT-Variable deklariert werden.

Trotzdem kannst du deine Out-Variable "Variable_3" als Verriegelung benutzen.

Code:
U #Variable_1
FP #Variable_2
= #Variable_3

U #Variable_3
U #Variable_1
= #Variable_4
In FUP wird in der Auswahlliste nur nicht die Variable_3 angezeigt, weil sie ja eine OUT-Variable ist, aber man kann sie ohne weiteres dran schreiben!

Gruß wolder
 
Zurück
Oben