easy-forum
Deutsch - Software => XSoft-CoDeSys => Thema gestartet von: nico tec am Juli 10, 2012, 17:12:01 Nachmittag
-
guten tag,
folgendes problem versuche ich gerade zu lösen.
ich habe zwei silos in welchen je 5000kg sind wenn sie voll sind.
diese silos stehen aber auf keiner waage sondern das momentane gewicht der silos soll über austrag über eine waage realisiert werden. soweit habe ich das auch hinbekommen.
jetzt die schwierigkeit für mich: ich möchte angeben wieviel masse noch in den silos ist, da ich aber nicht dauerhaft über den wert verfüge dessen masse ich aus einem silo rausgenommen habe versuchte ich es über zwei AR bausteine einen ADD und einen SUB der gesamtwert ist bekannt und jetzt möchte ich den wert abziehen den die waage gerade anzeigt, soweit so gut, nur nachdem das einmal passiert, zählt der zähler weiter nach unten im lauf der prozessorgeschwindigkeit.
kann mir jemand helfen
mfg
nic
-
hallo nic,
hab dir mal ein Beispiel mit der 822 angehängt. Denke in CoDeSys wir es ähnlich funktionieren.
Gruss
Jürgen
-
vielen dank,
aber kannst du vielleicht einen screenshot anhängen, die e60 datei kann ich mit codesys nicht öffnen.
danke
gruß
nic
-
Hallo nic,
Kurzbeschreibung:
Verwende Skalierbaustein mit dem ich den Wert den ich addieren will Eingang auf Ausgangswert skaliere. Der Skalierbaustein muss jedoch getriggert werden damit er einen Wert ausgibt, sonst Ausgabe Null. Die mache ich mittels Flankentrigger damit nur ein Zyklus der Wert ausgegeben wird. Diesen Wert führe ich auf einen Eingang des Arithmetikbaustein (addierer) und den Ausgang des Arithmetikbaustein führe ich wieder zurück auf den zweiten Eingang des Addierers.
Hoffe ist verständlich, im Anhang trotzdem die gewünschte screenshots.
Gruss
Jürgen
-
Hallo nic
vll. hilft dir dieses Bild weiter
Gruß Thomas
-
Danke beiden,
ich habe eine mischung aus beiden gebaut,
zwischendurch noch eine frage, bei mir funktioniert der eingang EN am Arithmetik-Baustein nicht, ob ich an diesem ein signal anlege oder nicht ist vollkommen egal, der zählt immer. Liegt das an irgend einer Einstellung?
ich versuche es jetzt nur gerade wieder auf null zu setzen.
unten ist meine lösung
danke
-
Hallo nic,
Ich kann das Problem mit dem EN Eingang leider nicht nachvollziehen.
Versuch es doch mal mit den Bausteinen der Standard.lib + Util.lib . Du musst hier aber die EN Eingänge der einzelnen Bausteine explizit einschalten
Für den LS Baustein setzt du LIN_TRAFO ein.
Eine weitere Möglichkeit, die Aritmetik nur einen Zyklus abzuarbeiten ist, sie zu überspringen.
Ist Q.F_TRIG false, dann spinge zur Marke hinter die Aritmetik. EN ist hier nicht nötig.
Gruß Thomas