Re: sleep für 150 sec? Kategorie: Programmierung (von Tom - 19.11.2003 8:38) | |
Als Antwort auf sleep für 150 sec? von Günter - 18.11.2003 23:49
| |
Hallo Günter, benutze die die Suche, Begriff "Zeitverzögerung". da wirst Du ein Beispiel zu diesem Problem finden. mfg Tom > Hallo! > > Ich will mit meiner C-C II Station Stellantriebe für 3-Wegeventile ansteuern. Nachdem eine Stellbewegung > bis zu 150 sec dauern kann, ist mir folgendes Problem aufgefallen: > > Ich kann die Relais nicht über einen sleep-Befehl 150s lang ansteuern, da laut Handbuch nur Int-Werte zulässig > sind. Daher sind 150.000 Millisec. nicht möglich. > Was soll ich tun? > > Danke, > Günter > > > > Beiliegend die vielleicht noch ganz glückliche Funktion: > > int ventilstellpos2; // in Prozent des Durchflusses > > function vent_oeff (byte ventil, int durchfluss) > > { > long durchfluss2; > durchfluss2 = durchfluss*1500 - ventilstellpos2*1500; > ventilstellpos2 = durchfluss; > > if durchfluss2 > 0 > { > station_io.RELon(1); // Relais1 schlie�en > sleep durchfluss2; > station_io.RELoff(1); //Relais1 nach Laufzeit wieder öffnen > } > > if durchfluss2 < 0 > { > durchfluss2 = 0 - durchfluss2; //aus negativem Wert positiven machen > station_io.RELon(2); // Relais2 schlie�en > sleep durchfluss2; > station_io.RELoff(2); //Relais2 nach Laufzeit wieder öffnen } > } > } | |
Antwort schreiben Antworten: |