Idee für Aufwandsminimierung?

jackjones

Level-1
Beiträge
214
Reaktionspunkte
9
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich habe folgendes geplant:

Ich habe eine EHB (Elektrohängebahn) mit 65 Fahrzeugen.
Für jedes Fahrzeug habe ich einen DB in welchem die Inkremente der Positionen abgelegt werden.

Fährt das Fahrzeug, egal welches, in einen bestimmten Bereich, soll ein Ausgang geschaltet werden.

Nun würde ich einen neuen Baustein anlegen, und für jedes Fahrzeug ein Netzwerk, in dem ich mit 2 Vergleichern, größer als / kleiner als, die Position von-bis auswerte.
Nehmen wir mal an 9500-9800. Wenn vergleicher 1 und vergleicher 2 = True dann Fahrzeug im Bereich.

Nun möchte ich ungern 65 Netzwerke anlegen. Komme ich da irgendwie drum herum? Ich grübel schon seit mehreren Tagen...

Ich muss auch ein wenig auf meine Zykluszeit achten, die ist schon leicht erhöht.

Jedes Fahrzeug soll nur 2x mal am Tag, bzw. zu bestimmten Uhrzeiten (Nachts) den Ausgang setzen, werde ich über HMI einstellbar machen.
Wie ich das angehe, weiß ich aber schon.

Ich bin nur faul und möchte mir die 65 Netzwerke ersparen.

Vieleicht jemand ne Idee?
 
Auswerten..

Hallo,
hm, das heisst doch, ein Vergleich in einer Schleife 65 aufrufen, wobei sich jedes mal aber die DB Nummer ändert? Kein Problem eigentlich..

V.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja, richtig. Copy & Paste? Oder hast du eine Idee für eine Automatisierte:) Lösung?

Ich würde 65 Netzwerke erstellen und in jedem NW einen FC mit der Eingangsvariable des DB's mit der Position aufrufen. Der FC soll die Vergleicher beinhalten und True oder False zurückgeben.

Meine Frage ist eigentlich, komme ich um die 65 Netzwerke herum?
 
Wie crash schon schrieb, einfach die DB-Nummer ändern. Wenn du 65 SPS-Zyklen Zeit hast, bis der Ausgang im schlechtesten Falle gesetzt wird, kannst du auch auf die Schleife verzichten und immer nach dem Netzwerk mit deinem Vergleicher eine Laufvariabe für die DB-Nummer hochzählen. Sinnvoll wäre ohnehin, daß die DB dazu entweder einen Block belegen, z.Bsp. DB101-DB165. Außerdem noch ein Vergleicher, der prüft, ob die DB-Nummer schon über der höchsten erlaubten Nummer liegt, wenn ja, die Nummer wieder auf den 1. DB setzen. Das Ganze würde deine Zykluszeit kaum belasten, im schlechteste Falle benötigt du, wie schon gesagt, 65 Zyklen, bis der Ausgang gesetzt wird. Bei 10 ms Zykluszeit also 650ms.
 
Zurück
Oben