Fonction DELAY

L'utilisation et la création des scripts.
Répondre
michel_rieutord
Messages : 81
Enregistré le : 27 févr. 2017, 23:18

Fonction DELAY

Message par michel_rieutord »

Bonsoir à tous,
Est-ce que la fonction DELAY a une limite supérieure?
si oui quelle est-elle?

En demandant une attente de 20min, donc 1,200,000 ms
cette fonction ne m'a pas rendu la main, elle ou bien sa copine
WAITFORENDDELAY. Le pgm continuait à tourner dans le vide...

Je vais essayer WAIT_UNTIL la prochaine fois, mais c'est un peu moins
pratique.

Merci d'avance pour vos réponse.

Michel
Cyril Cavadore
Messages : 4492
Enregistré le : 18 juin 2009, 22:41
Localisation : 42

Re: Fonction DELAY

Message par Cyril Cavadore »

Je pense que oui, et je vais regarder combien....
Pour 20 min il faut faire autrement en regardant l'heure tte les secondes et en comptent soit meme.
Cyril Cavadore, ALCOR-SYSTEM, Auteur de PRISM
http://www.alcor-system.com

Pour reporter vos problème, la marche à suivre est ici
viewtopic.php?f=7&t=1403
michel_rieutord
Messages : 81
Enregistré le : 27 févr. 2017, 23:18

Re: Fonction DELAY

Message par michel_rieutord »

Bonjour à tous,

J'ai été occupé ces derniers temps et donc pas très réactif.
Juste pour info: suite à la limitation vraisemblable de la fonction delay,
j'ai utilisé la fonction WAIT_UNTIL qui a fait le job mais moins aisée à utiliser car ses arguments sont plus compliqués à dériver.
Mon pb était de lancer les flats sur le ciel lorsque le soleil est à une certaine "hauteur" sous l'horizon. Donc au moment où je lance le script, je calcule combien de temps il faut attendre pour faire les flats. DELAY était parfaite mais visiblement si elle ne peut dépasser 10**6 millisecondes, je ne pouvais l'utiliser pour lancer le script bien en avance. Avec WAIT_UNTIL il faut transformer ce DELAY en une date.
Bon c'est fait avec qq lignes de code en plus... A toute fin utile voici ce que ça donne, cf ci-dessous.

Bon ciel !!

Michel

-------------------- extraits....
print "Compute the delay to be waited for the elevation of the Sun to be -2°"
h_target=-2*torad
sin h_target sinht
sin ElevationSun sinhs
cos deltaS cosds
cos latitude coslat
sin AngleHor sinh0
print " sin H0 " sinh0
asin (sinhs-sinht)/cosds/coslat/sinh0 delta_H
print " delta H en deg " delta_H/torad
RAD_TO_RA delta_H delta_H$
print " delta H en HMS " delta_H$

REM Convert the AH into a delay in ms
delay_for_Ha_flat=delta_H/torad*4*60*1000
print " We have to wait: " delta_H/torad*4*60 " seconds"
NOW année mois jour heure minute seconde MS
str heure heure$
str minute minute$
str seconde seconde$
ang=(heure*15+minute/4+seconde/240)*torad+delta_H
RAD_TO_RA ang T_demarrage$
J_demarrage$=année$+"/"+mois$+"/"+jour$
print " We have to wait until: "+T_demarrage$
WAIT_UNTIL J_demarrage$ T_demarrage$
----------------------------------
Marc DELDEM
Messages : 1269
Enregistré le : 20 juin 2009, 01:01

Re: Fonction DELAY

Message par Marc DELDEM »

Salut,

Je n'ai pas regardé ton code, mais pourquoi ne pas avoir une approche comme dans le module d'observation automatique ?
Tu veux lancer les flats quand le Soleil est à une certaine hauteur.
Il suffit de lancer une condition de test sur la hauteur du Soleil, si le test échoue attendre 1 minute et relancer le test. Si le test est bon, tu passes à la suite (prise des flats).

Marc
michel_rieutord
Messages : 81
Enregistré le : 27 févr. 2017, 23:18

Re: Fonction DELAY

Message par michel_rieutord »

Merci Marc,
Je n'avais pas pensé à cette option qui en effet est plus simple
du point de vu de la programmation.
Michel
Répondre