cosmomaster
Level-2
- Beiträge
- 72
- Reaktionspunkte
- 0
-> Hier kostenlos registrieren
Hallo Spezis,
ich habe folgendes Anliegen,
wie ihr am Code erkennen könnt nutze ich für verschiedene SPL-Schrittketten die gleiche INT- Variable "STEPNUMBER". Das kann ich so machen weil bisher eh nie mehrere Schrittketten gleichzeitig abgearbeitet wurden. Das muss ich nun leider ändern. Ich möchte mir aber den Vorteil behalten Schritte in mehreren Schrittkette aufzurufen.
Wie kann ich das am smartesten bewerkstelligen?
ich habe folgendes Anliegen,
wie ihr am Code erkennen könnt nutze ich für verschiedene SPL-Schrittketten die gleiche INT- Variable "STEPNUMBER". Das kann ich so machen weil bisher eh nie mehrere Schrittketten gleichzeitig abgearbeitet wurden. Das muss ich nun leider ändern. Ich möchte mir aber den Vorteil behalten Schritte in mehreren Schrittkette aufzurufen.
Wie kann ich das am smartesten bewerkstelligen?
Code:
[SIZE=1]NETWORK
TITLE =Dosierbetrieb Master und Slave im Verbund
//Schrittkettenfreigabe Initialisierung und Schrittkoordination
UN #col.MasterErr;
U #steps.Mix_Ausl;
U( ;
O #Pos_Fla.Metering_Compound;
O #SPL_act6;
) ;
SPBN dct6;
L #STEPNUMBER;
SPL END6;
SPA act6;
SPA M001; //MASTER Umdrehungszahl Pumpe zurücksetzen
SPA M012; //SLAVE Umdrehungszahl Pumpe zurücksetzen
SPA M002; //MASTER Reglerfreigabe rücksetzen
SPA M013; //SLAVE Reglerfreigabe rücksetzen
SPA M003; //MASTER Pumpenfaktor vorgeben
SPA M004; //MASTER Pumpenfaktor übernehmen
SPA M005; //MASTER Pumpenfaktor übernehmen zurücksetzen
SPA M034; //VERBUND Pumpenfaktor vorgeben SLAVE über MASTER
SPA M028; //VERBUND Pumpenfaktor für SLAVE übernehmen vom MASTER aus
SPA M029; //VERBUND Pumpenfaktor für SLAVE rücksetzen vom MASTER aus
SPA M022; //MASTER Mischungsverhältnis Zähler (Lack) übergeben
SPA M023; //MASTER Mischungsverhältnis Nenner (Härter) übergeben
SPA M006; //MASTER Reglerfreigabe setzen
SPA M030; //SLAVE Reglerfreigabe setzen
SPA M027; //MASTER Freigabe Volumenstrom übertragen
SPA M009; //MASTER Dosiervolumen vorgeben
SPA M031; //VERBUND Gemisch Dosierbetrieb starten
SPA M011; //MASTER oder MASTER-/SLAVE-Verbund Dosierbetrieb abgeschlossen
SPA M026; //VERBUND Gemisch Dosierbetrieb stoppen
END6: U "VKE_1";
R #SPL_act6;
L 0;
T #STEPNUMBER;
dct6: NOP 0;
NETWORK
TITLE =Drehzahlbetrieb Master
//Schrittkettenfreigabe Initialisierung und Schrittkoordination
UN #col.MasterErr;
U( ;
O #Pos_Fla.Drive_Master;
O #SPL_act1;
) ;
SPBN dct1;
L #STEPNUMBER;
SPL END1;
SPA act1; //Kette 1 aktiv
SPA M001; //MASTER Umdrehungszahl Pumpe zurücksetzen
SPA M002; //MASTER Reglerfreigabe rücksetzen
SPA M003; //MASTER Pumpenfaktor vorgeben
SPA M004; //MASTER Pumpenfaktor übernehmen
SPA M005; //MASTER Pumpenfaktor übernehmen zurücksetzen
SPA M006; //MASTER Reglerfreigabe setzen
SPA M007; //MASTER Start Drehzahlbetrieb
SPA M027; //MASTER Freigabe Volumenstrom übertragen
SPA M008; //MASTER Stop Drehzahlbetrieb
END1: U "VKE_1";
R #SPL_act1;
L 0;
T #STEPNUMBER;
dct1: NOP 0;
TITLE =Überspringe Schritte um STEPNUMER nicht zu erhöhen
//Letztes Netzwerk vor Schritte
SPA ENDE;
NETWORK
TITLE =Schrittkette aktiv
M000: S #SPL_act;
SPBN e000;
L #STEPNUMBER; // Schrittnummer um
+ 1; // 1 erhöhe0
T #STEPNUMBER; // (Schrittweiterschaltung)
e000: SPA ENDE;
NETWORK
TITLE =MASTER Umdrehungszahl Pumpe zurücksetzen
M001: S #M_PB_in.M_PB_in_Ctrl_Word.M_ResetCnt;
L #M_PB_out.M_PB_out_Act_Volume;
L 0;
==D ;
R #M_PB_in.M_PB_in_Ctrl_Word.M_ResetCnt;
SPBN e001;
L #STEPNUMBER; // Schrittnummer um
+ 1; // 1 erhöhen
T #STEPNUMBER; // (Schrittweiterschaltung)
e001: SPA ENDE;
NETWORK
TITLE =SLAVE Umdrehungszahl Pumpe zurücksetzen
M012: S #S_PB_in.S_PB_in_Ctrl_Word.S_ResetCnt;
L #S_PB_out.S_PB_out_Act_Volume;
L 0;
==D ;
R #S_PB_in.S_PB_in_Ctrl_Word.S_ResetCnt;
UN #S_PB_in.S_PB_in_Ctrl_Word.S_ResetCnt;
SPBN e012;
L #STEPNUMBER; // Schrittnummer um
+ 1; // 1 erhöhen
T #STEPNUMBER; // (Schrittweiterschaltung)
e012: SPA ENDE;
NETWORK
TITLE =Letzter Schritt aller Ketten
M999: L #STEPNUMBER;
L 1;
+I ;
T #STEPNUMBER;
UN OV;
SAVE ;
CLR ;
U BIE;
SPB ENDE;
[/SIZE]