Wertübergabe zw. FBs

Zuviel Werbung?
-> Hier kostenlos registrieren
Oder besser 3 Förderstrecken A B und C, wir betrachten das mittlere B;
Sensor A zählt in B eintretende Fördergüter, Sensor B die, die in C eintreten;
Motor B und Sensor A gehören zusammen (Sensor A steuert Motor auf B, Sensor B steuert Motor auf C,...);
Sensor B gibt an Sensor A den Zählwert zurück, der vom Sensor A subtrahiert werden muss (bzw zählt Sensor A zurück)....

Wenn man das bildlich vor Augen hat, ist es vlt einfacher :p

Hallo Jackjackson,

wenn der Sensor A den Motor B steuert, dann würde bei einem 3.Teil Motor B anhalten. Dann fährt aber auch kein Teil mehr runter.
Ich würde sagen:
Sensor A startet Motor B bei <2 Teilen auf Band B und stoppt Motor A bei =2 Teilen auf Band B.
Sensor B startet Motor C bei <2 Teilen auf Band C und stoppt Motor B bei =2 Teilen auf Band C.
Einfachste Lösung wäre sicher ein Freigabemerker (oder Bit im DB) für den jeweiligen Motor.

MfG
FrankW
 
Frank....Frank,
nicht so schnell, wir müssen doch erst einmal Grundlagen machen und dann geht es ans eingemachte.....
Jack muss verstehen wie er mit Instanzen Arbeitet, das war doch sein eigendliches Problemm. Den Ablauf bekommt er später bestimmt schon selber hin.

gruss Helmut
 
Hallo Jackjackson,

wenn der Sensor A den Motor B steuert, dann würde bei einem 3.Teil Motor B anhalten. Dann fährt aber auch kein Teil mehr runter.
Ich würde sagen:
Sensor A startet Motor B bei <2 Teilen auf Band B und stoppt Motor A bei =2 Teilen auf Band B.
Sensor B startet Motor C bei <2 Teilen auf Band C und stoppt Motor B bei =2 Teilen auf Band C.
Einfachste Lösung wäre sicher ein Freigabemerker (oder Bit im DB) für den jeweiligen Motor.

MfG
FrankW

Bei einem 3. Teil soll eigentlich Sensor A merken, dass Strecke A anhalten soll, bis der Zähler wieder < 2 ist (der von Sensor B auf der Strecke B, wo 2 Teile drauf sind, zurückgezählt wird)...

Wie ein Freigabemerker funktioniert weiß ich leider nicht :icon_rolleyes:
 
wie schon in den gestrigen posts von larry erwähnt sollte man im Fb keine absolute adressierung verwenden.
das heißt eine IN varialble #zaehler anlegen und von aussen den zähler zuweisen.

Ich glaub jeder hat seine eigene Vorstelllung, wie das laufen solll...
(quasi, alle wege führen nach rom, bloß meiner nicht :p )
 
nur nicht resignieren.dafür gibt es dieses forum ja.da wird anfängern genauso geholfen wie leuten mit komplexen problemen.
wichtig ist darnbleiben und fragen.egal wie blöd es einen vorkommt.ES GIBT KEINE BLÖDEN FRAGEN.NUR BLÖDE ANTWORTEN:
 
Hallo Jackjackson,

eigentlich wollte ich mich in die Schulung nicht weiter reinhängen, aber zur konkreten Frage formuliere ich neu:

Sensor A setzt einen Merker B bei <2 Teilen auf Band B und setzt einen Merker A zurück bei =2 Teilen auf Band B.
Sensor B setzt einen Merker C bei <2 Teilen auf Band C und setzt einen Merker B zurück bei =2 Teilen auf Band C.
Die Motoren laufen nur, wenn der zugehörige Merker gesetzt ist.

MfG
FrankW
 
Achso, bei mir heißt "Zaehler" Z1

Z1 ist eine absolute adressierung und sollte in einem FB nicht verwendet werden,damit man den FB für mehrere Motoren,Bänder(gleicher Art)... verwenden kann ohne im Baustein was ändern zu müssen.nur die beschaltung von aussen wird geändert.Andere Eingänge Zähler....
Dafür legt man einen FB an.Sonst könnte man auch eine FC nehmen.
 
Hallo Jake,
so kann er ja auch weiter heißen, wenn du den Baustein aufrufst kommt an die Eingangsvariable Z1 für Band 1.
Für Band 2 rufen wir den Baustein noch einmal auf und dann heißt er Z2.

So bekommt jedes Band seinen eigenen Zähler.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Code:
      CALL  "FB_bandmotor" , DB100
       IN_1B1    := [COLOR=red]E0.0[/COLOR]
       IN_2B1    := [COLOR=red]E0.1[/COLOR]
       zaehler1  := [COLOR=red]Z1[/COLOR]
       zaehlwert2:= [COLOR=red]Z2[/COLOR]
       motorA_AUS:= [COLOR=red]A0.0[/COLOR]

so sieht der baustein z.Bsp. von aussen dann aus
 
Zurück
Oben