Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

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: