Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

Programmaufbau

testerbb
2009-11-13
2009-12-07
  • testerbb - 2009-11-13

    Hallo zusammen

    Ich habe bezüglich des Programmaufbaus ein paar Schwierigkeiten.

    Ich habe 3 Betriebszustände meiner Maschine:

    Handbetrieb, Automatischer Betrieb und Demo

    Jeweils nur ein einziges ist aufs mal ausführbar/aktiv.

    Ich habe versucht mit Sprüngen und Sprungmarken das Ganze in den Griff zu bekommen, aber die Modi beeinflussen sich gegenseitig.

    Ich habe im moment das PLC_PRG und die Betriebsmodi als Funktionsbausteine, wie eine vielzahl anderer FB

    Wie kann ich einen Modus von den anderen abgrenzen damit sie sich nicht mehr gegenseitig beeinflussen?

    Danke für Help

    B

     
  • Focke - 2009-11-18

    Hallo testerbb,

    versuche doch einmal durch flanken und rs speicherglider die funktion zu realisieren. wenn eine neue betriebsart angefordert wird, werden die anderen einfach wider zurückgesetzt.

     
  • Erik Böhm - 2009-11-18

    Moin

    Ich mach das in der Regel mit einer simplen StateMachine.

    CASE iModus of

    1: ( STOP )

       AllOff();
    

    2: ( SERVICE )

       ManualMode();
    

    3: ( RUN )

       Automatic();
    

    END_CASE

    Funktioniert seit vielen Jahren wunderbar und ist problemlos ausbaufähig.

    Gruss

    Erik

     
  • testerbb - 2009-11-27

    Ich möchte es soweit auseinander nehmen, dass ich dann jeweils Unterprogramme aufrufen kann, So weiss ich immer genau in welchem Modus ich bin.

    Die Frage ist lediglich wie rufe ich nun ein bestimmtes Unterprogramm auf?

    Ein "Baustein" ruft lediglich eine Funktion oder einen Funktionsbaustein, aber kein Programm auf.

    Die Sprache die ich dabei verwenden möchte ist CFG oder ST

    Gruss

    B

     
  • Erik Böhm - 2009-12-07

    Moin

    Zu deiner Behauptung:

    Ein "Baustein" ruft lediglich eine Funktion oder einen Funktionsbaustein, aber kein Programm auf.

    Wie kommst du zu dieser irrigen Annahme ?

    Natürlich kannst du so auch ein programm aufrufen.

    Gruß

    Erik

     
  • Ralph Holz - 2009-12-07

    Hallo Eric,

    In CoDeSys kann man Programme aufrufen die IEC hat das nicht so vorgesehen und desshalb geht das in vielen anderen IEC Tools auch nicht.

    Mußte einfach gesagt werden.

    Gruß

    Ralph

     
  • Erik Böhm - 2009-12-07

    Hallo

    OK. Hab ich nicht gewusst. Aber wir sprechen doch über CoDeSys, oder ?

    Gruß

    Erik

     
  • Ralph Holz - 2009-12-07

    Ja klar und wir mögen ja auch den anderen Schweinkram wie z.B. Pointer

     
  • Erik Böhm - 2009-12-07

    Genau.

    Pointer sind im Prinzip ne feine Sache, aber man muss sich eben auch über die Nachteile im Klaren sein und wissen was man tut.

    Was aber sowieso empfehlenswert ist...

    Gruß

    Erik

     

Log in to post a comment.