Probleme mit WinCat

Fallon

Level-1
Beiträge
8
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,

leider haben ich immer noch Probleme mit WinCat und hoffe jemand kann mir helfen.

Ich habe im Mainprogramm ein kleines Testprogramm geschrieben, das einwandfrei funktioniert. Nun wollte ich für einen anderen Bereich ein weiteres Programm aufrufen das aufgerufen werden soll. Es gibt hier auch einen Bericht dazu, aber irgendwas mache ich falsch.

Wie kann ich andere Programme/Aktionen einbinden?
Was muss ich wo dafür deklarieren?

Ich sende euch mal einen Screen mit.
303d021.jpg


Danke im vorraus

Fallon
 
Hallo Fallon,

ehrlich gesagt wäre es ein Wunsch an TwinCAT das man das "Main"-Programm gar nicht als Kontaktplan erstellen kann.

Dein Beispiel, ist das erste, das ich sehe, in dem das Main mit KOP erstellt wurde. Lege dein Main mal in ST, FUP oder AWL an. Da kannst du besser deine Unterprogramme aufrufen. Ich finde allerdings auch, das ins Main keine Verknüpfungen gehören.

Gruß
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,
das ist ja nur ein Beispiel. Das eigendliche Programm betrifft 3 Bereiche die die SPS abarbeitet.
Mir würde es reichen, wenn im Main-Programm nur 3 Unterprogramme aufgerufen werden. Das Main-Programm kann ich auch in einer anderen Sprache programmieren.
Was würdest du mir den empfehlen? Aber auch damit habe ich kein Unterprogramm aufgerufen, kann mir da jemand einen Tip oder eine Quelle für eine Anleitung geben?

Gruß
Fallon
 
Hallo,

ist geschmackssache. Ich nehme halt FUP.

Ab da Strukturierter Text oder Ablaufsprache.

In FUP, fügst du einen Baustein ein, der bekommt den Namen deines Programmes, auch wenn der dann in KOP ist.

Gruß

PS: Deine Variablendeklarationen gefallen mir auch nicht. So wie du sie machst, gehören sie in Globale Variablen. Als Local definierte musst du keine Adressen angeben.
 
Zuletzt bearbeitet:
Das ganze Programm ist Geschmacksache :ROFLMAO:
Ich arbeite zB so gut wie gar nicht mit globalen Variablen. Physikalische Ein-/Ausgänge werden bei mir in den Bausteinen deklariert, in denen Sie gebraucht werden (als Teil einer Funktionalität der Maschine).

Man kann Programme natürlich im Hauptprogramm ausrufen, entspricht aber glaube ich nicht der Norm :rolleyes: ... keine Ahnung.
Wichtig ist der Einsprungpunkt für die Task (siehe Task-Einstellung). Mit der Task muss ein PRG verknüpft sein. Was in diesem "obersten" PRG aufgerufen wird, ist eigentlich egal. Ob nun mehrere Programm, oder Funktionsbausteine oder der ganze Quellcode einfach runtergetippt wird.
... halt Geschmacksache.

Aber ich würde keinesfalls absolute Adressen im Code nutzen, sondern ausschließlich über Variablen gehen.

@ Fallon:
Die Fehlermeldung kann ich nicht so recht zuordnen. Wenn es ST wäre, hätte man sofort die betroffene Zeile parat und könnte gezielter den Fehler suchen.
Um ein Programm (PRG) irgendwo aufzurufen, einfach das PRG dort hinschreiben.
Code:
myProg();
Ein FB muss zunächst deklariert werden:
Code:
VAR
   Fb1 : myFb;
END_VAR
------------------------
Fb1;
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke für euere Antwort, hat mir sehr geholfen.
Wenn ich ds Mainprogramm mit FUP programmiere, gaht alles wie gewollt.

@Voxe
Ja du hast Recht, die Variablendeklarationen ist ein wenig komisch.:ROFLMAO: Das liegt aber noch daran, das ich noch einiges ausprobiert habe. Sie werden für das eingendliche Projekt schön geordnet.

@trinitaucher
Es wird später nur mit den Bezeichner gearbeitet und nicht mit den Adressen. Ich sehe darin aber auch keinen Nachteil, wenn ich die Adressen benutze.
Für die Fehlermeldung muss ich mich endschuldigen, die gehörte zu einem Versuch davor.


Danke nochmal für die schnelle Hilfe.

Gruss
Fallon
 
Zurück
Oben