easy-forum

Deutsch - Software => easySoft => Thema gestartet von: blade22 am September 14, 2022, 15:10:26 Nachmittag

Titel: EASY-E4-DC-6AE1 Analogausgang in Intervall aktualisieren
Beitrag von: blade22 am September 14, 2022, 15:10:26 Nachmittag
Hallo zusammen,

ich gebe einen Stellantrieb mittels Analogausgang ein Sollwert vor.
Der Sollwert wird über ein aufwendiges Programm inklusive PI-Regler ermittelt.
Innerhalb der Regelung wird jede Sekunde ein neuer Sollwert erzeugt.

Ich möchte aber um den Stellantrieb zu schonen nicht jede Sekunde eine Bewegung auslösen sondern nur alle x Sekunden oder Minuten.

Hat jemand mit den Standartbauseinen eine Idee wie man dieses umsetzen kann?

Grüße Blade
Titel: Antw:EASY-E4-DC-6AE1 Analogausgang in Intervall aktualisieren
Beitrag von: weiss_nix am September 14, 2022, 17:57:24 Nachmittag
Welche  Programmiersprache?

Nimm einen Datenbaustein ...
Zeitrelais -> T_
Regelwert -> I1
QV -> Analogausgang

Gruß
Titel: Antw:EASY-E4-DC-6AE1 Analogausgang in Intervall aktualisieren
Beitrag von: blade22 am September 14, 2022, 19:34:36 Nachmittag
Hallo,

danke für die schnelle Antwort!
Habe noch ein Problem bzw. eine Nachfrage.
Ich arbeite in FUP

Ich habe den Zeitbaustein blinkend eingerichtet, dieser erzeugt jetzt 1 Sekunde = 1 und 10 Sekunden = 0
Das Bit mit 0 oder 1 gebe ich mittels Merker M an T_.
Den Sollwert als Merker MD an I1
Der Analogeausgang QA ist an QV angeschlossen.

In der Simulation wird alle 10 Sekunden schön T_ angesteuert und Q1 reagiert hier auch mit einem roten Signal.
Leider bleibt der Pfad QV ausgeraut und der Simulationswer ist als ? angezeigt.

Es scheint mir so das ich etwas falsch gemacht habe.

Grüße Blade
Titel: Antw:EASY-E4-DC-6AE1 Analogausgang in Intervall aktualisieren
Beitrag von: weiss_nix am September 15, 2022, 07:04:31 Vormittag
... hast du den enable Eingang vom DB beachtet?
Entweder ansteuern oder Häkchen setzen damit der Baustein ohne enable funktioniert...

Gruß
Titel: Antw:EASY-E4-DC-6AE1 Analogausgang in Intervall aktualisieren
Beitrag von: blade22 am September 15, 2022, 08:00:21 Vormittag
Guten Morgen,

das habe ich als häufigen meiner Fehler als erstes kontroliert, leider war es dass nicht.
Ich habe mal der Einfachheithalber ein Screenshoot gemacht.

Grüße Blade
Titel: Antw:EASY-E4-DC-6AE1 Analogausgang in Intervall aktualisieren
Beitrag von: weiss_nix am September 15, 2022, 08:03:41 Vormittag
... so wie es aussieht ist dein QA06 in der Simulation nicht verfügbar?!?


Gruß
Titel: Antw:EASY-E4-DC-6AE1 Analogausgang in Intervall aktualisieren
Beitrag von: weiss_nix am September 15, 2022, 08:30:30 Vormittag
... der Wert wird aber IMHO nach QA06 übertragen ...

Gruß
Titel: Antw:EASY-E4-DC-6AE1 Analogausgang in Intervall aktualisieren
Beitrag von: blade22 am September 15, 2022, 16:55:45 Nachmittag
Hallo,

ich habs auch gerade gesehen, das Verhalten verstehe ich nicht wirklich.
QA05 und QA06 sind definitiv definiert.
Habe statt QA mal auf MW abgebildet, hier gleiches verhalten.

Aber freue mich das die Lösung wohl funktioniert, ich teste das mal auf der physischen EASY.

Falls doch noch jemand ein Tip hat was die Simulation uns damit sagen möchte, gern hier rein.

Grüße Blade
Titel: Antw:EASY-E4-DC-6AE1 Analogausgang in Intervall aktualisieren
Beitrag von: ELWMS am September 16, 2022, 06:35:56 Vormittag
Hallo!

Werf mal meine Erkenntnisse in den Ring...

Der Datenbaustein ist zyklusflankengesteuert, d.h. bei jedem Zyklus der E4 welcher mit der positiven Flanke des Takteingangs T wird der Eingangswert I1 des Datenbaustein intern an einen Operanden (nennen wir es mal Zwischenmerker) weitergegeben und gleichzeitig für die Dauer des Zykluses der E4 an den QV des DB geschrieben. Das passiert einmalig. Einmal an den Analogausgang, bzw. in meinem Beispiel an an das MW10 geschrieben bleibt es Stabil weiter bestehen, bis was anderes in das MW10 geschrieben wird.

Wenn man in den Eigenschaften des DB das Häckchen "Keine Flankenauswertung des Takteingangs T" setzt, wird stetig der I1 des DB an den QV des DB geschrieben, aber das ist ja hier nicht relevant.

Ich würde in Zukunft anstatt direkt an den QV des DB einen Analogausgang, MB, MW, MD ... anzuschließen, den Umweg über ein separates Netzwerk (Hier NW3) gehen, dann taucht kein "?" auf, und man sieht an jeder Stelle im Programm was im DB aktuell steht.

Es ist ein meinen Augen, etwas ungünstig gelöst.

Aber das gibt es an einigen anderen Stellen auch (oder gab es mal).

Erinnert auch etwas an die Elektronik, wo es statt high und low noch einen anderen Zustand gibt, den Tri-State. Dabei wird der Ausgang Hochohmig, um "Kurzschlüsse" z.b. bei Datenbussen zu verhindern...siehe wikipedia... 

Aber das schweift ab.

Vllt. macht sich mal ein Entwickler die Mühe das aus Sicht des Anwenders zu sehen, die nämlich zahlen im sein Gehalt...

Gruß,

ELWMS