Analogwertverarbeitung mit 3 Zwischenstufen

ExklusivOder

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

ich möchte ein Jalousiesteuerung programmieren, die folgende Funktionalität besitzt:
Die J soll drei Stellungen besitzen -offen- -halboffen- -geschlossen-

Der Öffnungszustand wird über PEW 256 abgefragt.
Die Logik des Programms habe ich bereits programmiert; funktioniert teilweise.

Mein Problem: Die Jalousie läßt sich nicht ganz öffnen oder schließen, sondern nur in die 'halboffene' Stellung fahren.
Ich nehme an, daß sich irgendwelche Merker/Bits überschneiden und die Steuerung daher nicht korrekt läuft.
Ich habe mal mein FC1 angehängt.

Ich bedanke mich für jeden konstruktiven Lösungsvorschlag.
 

Anhänge

  • jalousie.JPG
    jalousie.JPG
    155 KB · Aufrufe: 25
  • jalousie_2.JPG
    jalousie_2.JPG
    149 KB · Aufrufe: 19
Hallo

sind #open bzw #close als OUT oder als INOUT definiert ??

wenn nur OUT, dann ist #open im NW1 nicht definiert.

im Netzwerk 3 und 4 wird #open und #close nochmal zugewiesen ( 2.Bild )


Gruß
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo

Warum gehst Du nicht einfach online, und beobachtest, warum sich die Stellungen nicht anfahren lassen?
Bei den einfachen Netzwerken dürfte dies nicht allzu schwer sein.

Gruss
Audsuperuser
 
Ich bin zwar nicht so der FUP-Mensch ...
... aber ich glaube, das der Fehler daraus resultiert, dass du sowohl über den M4.1 wie auch über den M14.0 den OUT #open zuweisst und das gleiche auch mit #close.

Mein Vorschlag wäre, dass du die Merker ver-oder-st und dann auf die OUT's legst. Warscheinlich geht es dann.

Also :
Code:
U M4.1
O M 14.0
= #open
 
U M 4.3
O M 16.0
= #close

Gruß
LL
 
Hallo

sind #open bzw #close als OUT oder als INOUT definiert ??

wenn nur OUT, dann ist #open im NW1 nicht definiert.

im Netzwerk 3 und 4 wird #open und #close nochmal zugewiesen ( 2.Bild )


Gruß

Hallo,

erstmal danke für die verschiedenen Hilfen, ich werde es probieren.
ich habe #open #close als out definiert, sie sollen ja die Jal. ansteuern.
Aber wenn ich diese auf den Eingang gebe, stimme ich die zu.
(Was ist daran falsch, diese im NW 3 u. 4 nochmals zu verwenden? Step7 hat sich daran insofern nicht gestört, als daß mir diese vorgeschlagen hat.)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Daran ist nichts falsch ...
Der Zustand, den du schlussendlich wirklich hast, entspricht nur leider der letzten Zuweisung ...
Wenn du schreibst :
A = 10
und eine Zeile tiefer
A = 20
welchen Wert hat dann A ? (bestimmt nicht 30)

Gruß
LL
 
Im Ersten Netzwerk ist #open noch nicht zugewiesen, solange als OUT oder alt Temp definiert ist.

Das #open und #close zweimal mit '=' zugewiesen wird geht zwar, mach das Programm unübersichtlich. Aber wenn es Dir gefällt, warum nicht.
 
Was meiner Meinung auch sehr fatal sein kann ist, dass du ==i verwendest.
Was machst du wenn du wenn der Eingangswert während dein Programm im OB 1 oder sonstwo beschäftigt ist eintritt?
Besser ist es auf >=i oder <=i abzufragen.


bike
 
Hallo,

wenn das PEW256 den Wert für halboffen hat (13824), werden doch #open und #close im Netzwerk 3 und 4 ständig zurückgesetzt, da interessiert es doch wenig, was in vorhergehenden Netzwerken mit = zugewiesen wird, oder sehe ich das falsch ?

Grüße von HaDi
 
Zurück
Oben