Programm, Funktionsblock, Funktion

Hallo
2007-03-08
2007-03-08
  • Hallo - 2007-03-08

    Hallo,

    ich habe mal eine grundlegende Frage. Kann mir mal jemand sagen, was genau der Unterschied zwischen Programm, Funktionsblock oder Funktion ist. Oder wo das genau beschrieben ist.

     
  • Rolf-Geisler - 2007-03-08

    Hallo,

    das meiste zu Deiner Frage steht in der online-Hilfe. Suche mal nach dem Begriff "Baustein", dort findest Du Links zu den Bausteintypen.

    Was dort nicht so genau steht (man kann es sich aber zusammenreimen): Funktionen haben kein Gedächtnis, d.h. ihre lokalen Variablen haben beim nächsten Aufruf nicht mehr unbedingt den Zustand, den sie nach dem vorigen Durchlauf hatten. Wenn Du also die lokalen Daten über mehrere Aufrufe hinweg benötigst, musst Du einen Funktionsblock benutzen.

    Programme kann man in Tasks einbinden, das geht für die anderen Bausteintypen nicht.

    Rolf

     
  • mwatermann - 2007-03-08

    hallo Hallo

    Programm beinhaltet deinen Programmcode. Hier kannst du zB in ST auch Unterprogramme, oder Aktionen anlegen und so deinen Code strukturiert ordnen, wobei im Normalfall der Code von PLC_PRG ausgehend abgearbeitet wird (wenn keine Tasks angewendet werden.

    Funktionsblöcke sind Funktionen, die du anlegen kannst, welche mehrere Ein- und mehrere Ausgabeparameter besitzen können und sich ihre Variablen "behalten".

    Funktionen können zwar mehrere Eingabeparameter besitzen, aber nur einen Ausgabeparameter und die verwendeten Variablen (sofern es keine globalen sind) werden nicht "behalten".

    Nachzulesen sollte das ganze eigentlich auch in der CoDeSys Dokumentation sein, wenn ich nicht irre...

     

Log in to post a comment.