Description de la fonction
La fonction SCHEDULE permet de commander des
actions à des horaires et des dates prédéfinis ou calculés.
Elle règle sur 1 la sortie OUT si la date
fournie par l’horloge de l’automate au moment de l’appel
de la fonction appartient à la période programmée dans
les paramètres d’entrée.
Les paramètres
supplémentaires EN et ENO peuvent
être configurés.
Représentation en FBD
Représentation :

Représentation en LD
Représentation :

Représentation en IL
Représentation :
LD DBEGSCHEDULE DEND, WEEK, HBEG, HEND, Date_OKReprésentation en ST
Représentation :
SCHEDULE(DBEG, DEND, WEEK, HBEG, HEND, Date_OK);Description des paramètres
Le tableau ci-après décrit les paramètres d'entrée.
Paramètre |
Type |
Commentaire |
|---|---|---|
|
|
Entier codant la date de début de la période (mois-jour) en BCD (valeurs limites : 01-01 à 12-31). |
|
|
Entier codant la date de fin de la période (mois-jour) en BCD (valeurs limites : 01-01 à 12-31). |
|
|
Entier codant le ou les jours de
la semaine pris en compte dans la période définie par les
paramètres Les sept bits de poids faible représentent les sept jours de la semaine : bit 6 = Lundi, bit 5 = Mardi, etc., bit 0 = Dimanche. |
|
|
Entier double codant l'heure de début de la période dans la journée (heures-minutes-secondes) en BCD format heure du jour. Valeurs limites : 00:00:00, 23:59:59. |
|
|
Entier double codant l'heure de fin de la période dans la journée (heures-minutes-secondes) en BCD format heure du jour. Valeurs limites : 00:00:00, 23:59:59. |
Le tableau suivant décrit les paramètres de sortie :
Paramètre |
Type |
Commentaire |
|---|---|---|
Date_OK |
|
La sortie |
Les deux paramètres
DBEGetDENDdéfinissent une plage de jours dans l'année. Cette plage peut s’étendre sur deux années civiles. Exemple : du 10 octobre au 7 avril. Le 29 février peut être utilisé dans cette période, il sera ignoré les années non bissextiles.Les deux paramètres
HBEGetHENDdéfinissent une plage d'heures dans la journée. Cette plage peut s’étendre sur deux jours. Exemple : de 22:00 à 06:10:20.Si l'une des dates
DBEGetDENDou l'une des heuresHBEGetHENDest erronée, (c'est-à-dire qu'elle ne correspond pas à une date ou une heure réelle), la sortieDate_OKest réglée sur 0 et le bit %S18 sur 1.Lorsque la précision est secondaire, il est possible d'alléger la charge du processeur de l'automate en cadençant les appels à la fonction
SCHEDULEpar le bit système %S6 ou %S7.
Exemples
Programmation de deux plages horaires non continues :
SCHEDULE |
(16#0501, 16#1031, 2#0000000001111100, 16#08300000, 16#12000000, Date1_OK ); |
(*date de début : 1er mai*) (*date de fin : 31 octobre*) (*lundi à vendredi*) (*heure de début : 08:30*) (*heure de fin : 12:00*) (*résultat dans Date1_OK*) |
SCHEDULE |
(16#0501, 16#1031, 2#0000000001111100, 16#14000000, 16#18000000, Date2_OK ); |
(*date de début : 1er mai*) (*date de fin : 31 octobre*) (*lundi à vendredi*) (*heure de début : 14:00*) (*heure de fin : 18:00*) (*résultat dans Date2_OK*) |
%Q0.0 |
:=Date1_OK OR Date2_OK; |
(*affectation de la sortie sur Date1_OK ou Date2_OK*) |

