Wertübergabe zw. FBs

Hab jetzt irgendwie einen Aussetzer...
Ihr habt eine IN Variable angelegt in dem FB, aber habt ihr jetzt einen Zaehler im FB drin oder nicht.... es hieß mal "den zahler von außen zuweisen"
Habt ihr zufällig verschiedene Lösungen? :D
 
Zuviel Werbung?
-> Hier kostenlos registrieren
bei der schnittstelle im FB eine IN variable vom datentyp counter anlegen und diese variable von aussen mit dem Zähler Z1 versorgen.
IN variable vom datentyp counter = das ist mein "interner Zähler"
In_zaehler:= Z1
 
Zuletzt bearbeitet:
Ja, in der Schnittstelle hab ich die Variable schon drin :p
Aber ich hab auch in einem Netzwerk im FB einen Zaehler, der Zaehler heißt.... oder ist das mit "aussen" gemeint und ich muss diesen Z1 nennnen?
Entschuldigt.... bin leicht verwirrt! Weit entfernt von "Klick"
 
im fb keinen Z1 verwenden auch nicht wenn du ihn mit zaehler benannt hast.Z1 nur über die schnittstelle von aussen an die variable zaehler vom datentyp counter übergeben.
und damit ist dein zähler im FB die variable zaehler.
 
...du hast deinen Z1 bestimmt in der Symboltabelle Z1 gennant und dann in deinen FB verbaut....
so war es nicht gedacht, wie Gerd schon schreibt wird im Bausteinkopf über eine IN Variable (bei uns jetzt einfach Zaehler gennant) der Zähler übergeben. Deswegen bezeichnet man diese IN; OUT und IN_OUT Paramter auch als schnittstelle...
 
Die Schnittstelle mußt du da versorgen wo du den Baustein aufrufst,
das kann der OB1 sein oder ein anderer FB.
Schau dir doch noch mal meinen OB1 in Beitrag #73 an!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Nein, in der Symboltabelle hab ich nichts gemacht.....
Ich will nur wissen, wo der Zähler dann drin ist, .... dass er als Variable im Bausteinkopf enthalten ist weiß ich schon!
 
Bei der IN Variablen sagst du den Baustein ich möchte einen Zähler haben, nennen wir ihn "Zähler". Dann Programmierst du im FB mit diesen Zähler.
Wenn du den Baustein später aufrufst muß du den Baustein nur noch mitteilen welcher Zähler es sein soll Z0; Z1 ; Z2 usw.
Nehmen wir jetzt z.b. Z1 so arbeitet dein Baustein (intern während des aufrufes) mit dem Zähler Z1.
 
Code:
CALL  "FB_bandmotor" , DB100
       IN_1B1    := [COLOR=red]E0.0[/COLOR]
       IN_2B1    := [COLOR=red]E0.1[/COLOR]
       zaehler1  := [COLOR=red]Z1  // hier übergibst du den Zähler Z1[/COLOR]
       zaehlwert2:= [COLOR=red]Z2[/COLOR]
       motorA_AUS:= [COLOR=red]A0.0[/COLOR]
an die interne variable (siehe anhang)

wenn du jetzt intern
Code:
 U     #IN_1B1
      FP    #hf.merker1
      ZV    #zaehler1
      U     #IN_2B1
      FP    #hf.merker2
      ZR    #zaehler1
den zähler hoch und runterzählst hast du diesen wert nicht aussen im Z1 enthalten.
 

Anhänge

  • Unbenannt.JPG
    Unbenannt.JPG
    63,8 KB · Aufrufe: 13
Zuletzt bearbeitet:
... wie wäre es, wenn ihr einfach mal bei dem Beispiel aus Beitrag #66 von Reparatur bleibt und das erklärt. Es macht für mich keinen Sinn immer wieder mit etwas Neuem anzufangen ...

@Jack:
Die Variablen, die im FB verwendet werden sind im Prinzip Platzhalter für das, was du von Aussen als "Parameter" anträgst. So musst du die Sache dann auch verstehen.

@Helmut:
Du schlägst dich gar nicht schlecht ... Willst du mir Konkurenz machen ?

Gruß
LL
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Nachsatz:
Der Zähler im FB1 schaltet mit seinem Q den Ausgang ... das macht doch gar keinen Sinn. Der Zähler müßte doch mit einem Wert verglichen werden und das sollte dann den Ausgang schalten ...
 
Hallo Jake,
zu deinen Beitrag #96 das sieht doch garnicht so schlecht aus.

Teste das doch einmal, es geht doch erst einmal darum das
rüber kommt was so FB alles kann.
Das der Ausgang jetzt noch direkt geschaltet wird ist nicht schlimm
daran können wir später noch Arbeiten.
 
Zurück
Oben