Anfängerfragen / Strukturierung des Programms

MarcoH

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

vorab - ich bin blutiger Anfänger in Sachen CODESYS (und generell in der SPS-Programmierung).

In unserem neugebauten EFH habe ich eine Wago zur Hausautomation einbauen lassen Ich hab vorher enorm viel gelesen und dann abgewogen KNX, Wago,Becker, etc. und mich für eine Wago entschieden.
Für meinen Elektriker war das auch eine Premiere, hat das aber super hinbekommen. Alles funktioniert inzwischen reibungslos (Licht, Steckdosen, Rollo, Raffstore, ERR).

Da von jetzt ab ich das System übernehme (grundlegene Sachen wie neue OUTputs zuweisen etc. sind inzwischen - dank viel lesen und testen - keine Problem mehr). Vielmehr mache ich mir nun Gedanken zur VISU (auch da sind die ersten Teilerfolge schon vorhanden :)) und zur gerellen Strukturierung des Programms.

Mein Programmierer hat die Steuerung in verschieden Bereiche unterteilt (Schalten, Dimmen, Antriebe, Steckdosen). Ich überlege, ob eine Strukturierung nach Geschossen und Räumen nicht vielleicht sinnvoller/übersichtlicher wäre? Wie werden solche (Klein-)Projekte am sinvollsten umgesetzt ohne die Übersicht zu verlieren?

Die zweite grundlegende Frage betrifft die Sprache der FB's. wie ihr auf dem Bild seht, ist das Ganze als CFC aufgebaut. In einem Besipielvideo auf Youtube wurde KOP für die FB's genutzt. Was ist hier besser bzw. der richtige Weg und wo liegen die Vor- und Nachteile?


Vielen Dank schon mal. Ich denke ihr werdet in Kürze häufiger von mir hören :) (obwohl ich versuche mir so viel wie möglich autodidaktisch beizubringen)

Mit freundlichen Grüßen
Marco

PS: Kann mir jemand sagen, wie ich meine Therme (Brötje WBS 22F) in das System einbinde?

FB_Schalter.JPGbausteine.JPG
 
Eine Aufteilung nach Funktionen ist sinvoller. Wenn dann die Bausteine noch entsprechend benannt sind (Stockwerk 1, Raum "so-und-so") dann ist das schon recht übersichtlich. Am besten so lassen.

Bezüglich der Programmiersprache: KOP ist eigentlich eine sehr alte Programmiersprache, CFC ist eine der neueren. Der vorteil bei KOP liegt an der einfachheit. Mit KOP lassen sich Relais-Steuerungen (sogenannte VerbindungsProgrammierte Steuerungen) direkt in die Software-Controller (sogenannte SpeicherProgrammierbare Steuerungen) "importieren", da KOP die Bauteile einer VPS (sinn-/funktionsgemäss) nachbildet. Der Nachteil dabei ist dass sehr grosse und komplexe Steuerungen nur mit erhöhtem Aufwand realisiert werden können.

CFC ist eine Weiterentwicklung von FUP. Der Vorteil besteht an der Offenheit der Programmiersprache, Bausteine können einfach eingebunden und mit anderen Bausteinen verknüpft werden, es kann mit weniger Merkern (zur Übertragung von Informationen von einem baustein zum anderen) gearbeitet werden. Der Nachteil bei dieser Programmiersprache besteht dabei, dass ein Programm sehr rasch sehr unübersichtlich werden kann wenn man beinahe gänzlich auf Merker verzichtet und wirklich alles mit den für CFC typischen Verbindungslinien verbindet.

Schlussendlich ist es eine Geschmacksfrage. Und hängt es davon ab wie Fit man im programmieren ist und wie viel Aufwand man in ein sehr grosses Programm stecken will.

Fazit:
KOP: -übersichtlich
-relativ einfach
-übertragen von VPS erleichtert
-kompliziert bei grossen Programmen

CFC: -einfaches Einbinden von Bausteinen
-verminderter Einsatz von Merkern möglich
-Abarbeitungsreihenfolge frei wählbar
-kann unübersichlich bei grossen Programmen un zu vieler Nutzung der Verbindungslinien werden
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Jan,

vielen Dank für die Erklärung. Wenn du/ihr von "Merkern" sprecht, kann ich mir das so vorstellen, dass ihr Werte in Variablen schreibt um diese später weiter zu verwenden (ähnlich anderen Programmiersprachen wie z.B. VB)?

Gruß
Marco
 
Ja, das ist damit gemeint. Dabei wird in der SPS-Technik umgangssprachlich von Merkern (per der LOGO heissen die Bausteine ja wirklich "Merker", dort gibt's nix anderes) gesprochen. Aber natürlich, eigentlich müsste es Variabeln heissen ;)
 
Zurück
Oben