FUP oder AWL das ist hier die Frage!

Ricko

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

ich möchte ein Programm in CoDeSys schreiben (Berechnung von Steigung je Erfasungszyklus, Impulse zählen, Wert interpolieren...)
Da ich mit CoDeSys noch nicht zu tun hatte, habe ich das Ganze in Step7 mit FUP und paar Netzwerken mit AWL geschrieben - es funktioniert.
Jetzt möchte ich das in CoDeSys umsetzen!
Programm Inhalt: ca. 13 Netzwerke mit 2 Timer, 2 Zähler, 6 Vergleicher, 2 /R, 2 >R, und Sprünge.

Es soll ein Funktionsbaustein enstehen mit 5 Eingängen (Parameter für Timer, Zähler..) 4 Ausgänge (berechnete Werte als 3xREAL, Ausgänge steuern 2xBOOL)
Sollte ich FUP oder AWL wählen?

Wie wird das in CoDeSys geschrieben:
U Mx.y
SPB a:
A1: L MW 0
T MW 2

BE


Grüße
Ricko
 
Du kannst für ein Programm sogenannte "Aktionen" schreiben und diese aus dem Hauptcode heraus aufrufen. Die Aktionen können in unterschiedlichen Sprachen geschrieben werden, eine Mischung von FUP und AWL ist so auch mit CoDeSys möglich. Wenn Dein Programm viele Sprünge enthält, würde ich mich mal alternativ mit der Sprache ST befassen, mit ihrer IF THEN ELSE-Struktur lassen sich solche Dinge besser verständlich darstellen als mit Sprüngen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Trash

das Programm enthält nur eine Abfrage mit Sprung:

je 10sek wird der Mx.y gesetzt
dann der gelesene Wert MW0 in MW2 gespeichert (also MW2 wird mit dem Impuls aktualisiert um Berechnung durchzuführen)
Gibt es Beispiele mit CoDeSys?

Bin gerade bei einfachem Programm der einen FB (alles in FUP) aufruft.
Dort der TON (Einschaltverz) - Ausgang (Q) Var_1 , Eingang IN) als neg. Var_1, PT mit T#1s
trozdem bekomme ich in VISU (Kreis mit: Variablen / Farbwechesl: Var_1) keine blinken!

Grüße
Ricko
 
... das mit TON funktioniert!

Online läuft über Simulation (PC), Die Impulse kommen aber je 5sek obwohl T#1s eingetragen ist!

liegt das an Simulation?

Ricko
 
... das mit TON funktioniert!

Online läuft über Simulation (PC), Die Impulse kommen aber je 5sek obwohl T#1s eingetragen ist!

liegt das an Simulation?

Ricko

Ja gut möglich das es an der Simulation liegt. Isses ein Desktop PC oder ein Notebook? Ich hatte das gleiche Problem auf meinem Notebook. Wer weiss was dem TwinCAT Echtzeittreiber auf einem normalem PC alles in die Suppe spuckt? (Hintergrunddienste, Virenscanner ....)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Master!

es ist ein Laptop,

PT habe ich z.Z. mit 500ms belegt, in der dekl.Tabelle siehe ich das mit 1000ms gerechnet wird, Impuls kommt nach ca. 3sek

wenn PT 2000ms dann Impuls nach ca. 6 sek

Ich hoffe dass das wegen SIMU so abläuft

Ich brauche 1sek also 1000ms (wenn Online mit CPU!) am PT reicht

Ricko
 
Für FUP bist Du bei mir natürlich an den Falschen geraten (siehe Nick). Aber AWL geht schon, ist auch einfacher für den Austausch von Codeschnipseln.
Das Speichern der Word-Var könnte so aussehen
Code:
VAR
 Trigger:BOOL;
 Source:WORD;
 Target:WORD;
END_VAR

 LD  Trigger
 JMPCN l1
 LD  Source
 ST  Target
l1:
 
Hallo Trash,

Danke fürs Info!
Noch eine Frage: einen parametrierbaren Engang eines Funktionsbaustein möchte ich über VISU (Online) verändern/darstellen. Ist das nur über Var.forcen möglich?

Ricko
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Auf Laptops/Notebooks passen Verzögerungszeiten oft nicht, weil das Laufzeitsystem mit dem Speed Stepping nicht zurechtkommt.
Visu-Elemente bieten unter dem Punkt "Eingabe" die Möglichkeit, Variablenwerte zu ändern (BOOL-Variablen toggeln/tasten, NUM-Variablenwerte per NumPad eingeben...).
 
Zurück
Oben