FR 2741168 A1 19970516 FR 9513684 A 19951113 DESCRIPTION Le présent brevet décrit la réalisation d'une machine d'état à très faible consommation permettant la réalisation d'automatismes ou de calculs complexes. Le présent dispositif nécessite pour être pleinement efficace une adéquation entre la réalisation matérielle de la machine et la réalisation de l'algorithmie. Le présent dispositif permet de faire fonctionner une unité de calcul puissante sans que la consommation énergétique du système en soit pénalisée. Une machine d'état change d'état lorsqu'une ou plusieurs de ses variables d'état évoluent. On distinguera trois types de variables d'état: - Les variables d'état à changement aléatoires dans le temps, ces variables sont généralement représentatives des interfaces de la machine avec le monde extérieur (contact de relais, bouton poussoir, opto-isolateur, ligne de communication de données, etc).Sans préjuger de l'application du présent brevet pour d'autres types de variables d'entrée et pour simplifier la compréhension, on développera ici uniquement le cas où l'interface avec les variables d'entrées est réalisé par contacts secs (ex: bouton-poussoir) - Les variables d'état datées sont généralement des variables internes à la machine et permettent de réaliser des boucles d'attente (temporisations) ou de déclencher un automatisme à un instant donné (ex: réveil, agenda électronique, caméra spatiale, etc.). - Les variables d'état internes utilisées et générées par l'algorithme. Les résultats de l'automate sont des variables de sortie, utilisées pour la commande des périphériques. Ces périphériques peuvent être des contacts de systèmes bistables pour ne pas consommer d'énergie entre deux changements d'états ou des périphériques à faible consommation d'énergie (ex: afficheur à cristaux liquides). La consommation énergétique de ces périphériques est en dehors du champ d'application de ce brevet sauf si ceux-ci sont également assimilables à une machine d'état. REALISATION Le présent dispositif selon l'invention permet de réaliser un dispositif à faible consommation énergétique permettant de réaliser une montre pour musulmans indiquant l'heure locale, la date internationale, la date de l'hégire, la direction de la MECQUE et les heures de prières. Le calcul précis des heures de prières fait appel à des calculs astronomiques complexes qui nécessitent une unité de calcul gourmande en énergie, le présent dispositif réduit son utilisation au minimum. Les heures de prières musulmanes ont été définies à partir de l'observation du soleil - FAJR : prière du matin lorsque l'on distingue un fil blanc d'un fil noir - CHOUROUQ : limite pour dire la prière du matin et prière du lever (facultative) lorsque le premier rayon du soleil pointe à l'horizon. - DHOHR: prière du midi lorsque le soleil commence à décliner. - 'ASR: prière de l'après-midi lorsque l'ombre d'un bâton a augmenté par rapport à son ombre de midi, de une ou deux fois la hauteur du bâton. - MAGHRIB : prière du soir à la disparition du soleil. -'ICHA:prière de la nuit, lorsque l'on ne distingue plus un fil noir d'un fil blanc. Cette détermination des prières a été transposée en données astronomiques avec un certain nombre de variantes, comme suit: - FAJR: le soleil est à 120 ou 180 en dessous de l'horizon. - CHOUROUQ : le soleil est à 0,50 en dessous de l'horizon, en tenant compte de la diffraction de l'atmosphère terrestre. - DHOHR : passage au zénith + quelques instants pour être certain que le soleil décline. - 'ASR : la position du soleil est déterminée à partir de sa position zénithale par une formule mathématique. - MAGHRIB le soleil est à 0,50 en dessous de l'horizon (même remarque que pour CHOUROUQ). - 'NICHA: le soleil est à 12" ou 18 en dessous de l'horizon. Suivant les régions du globe, cette détermination pose les problèmes suivants: 1) Les régions polaires: latitudes supérieures à 68" Nord ou Sud. Dans ces pays très peu peuplés, les heures de prières ne peuvent pas être déterminées pendant toute une période de l'année (nuit polaire, jour polaire) par les observations solaires. 2) Les régions nordiques : latitudes supérieures à 48" Nord ou Sud, et inférieures à 680 Nord ou Sud. Dans ces pays, (Angleterre, pays Scandinaves, Canada) les heures des prières de lever et de coucher du soleil sont toujours calculables, par contre les heures de prières de FAJR et 'ICHA ne sont pas calculables pendant des périodes plus ou moins longues. 3) Les régions intermédiaires de 35 à 48" Nord ou Sud. Dans ces pays où habitent un grand nombre de musulmans, les heures de prières sont toutes calculables en toutes saisons. Cependant, à cause des décalages parfois importants entre l'heure légale et l'heure solaire, des situations absurdes se produisent. Par exemple à Brest (F), décalage de 2 heures entre l'heure légale et l'heure solaire. Au mois de juin, ICHA a lieu après minuit, si on prend une inclinaison de 18 sous l'horizon Des situations aussi absurdes se produisent en hiver dans l'hémisphère Nord où certaines heures de prières peuvent être très rapprochées. PRESENTATION GENERALE Selon des modes particuliers de réalisation, le présent dispositif représenté figure 1 est constitué: - D'un boîtier de forme cubique, symbolisant la Pierre Noire [1]. - Sur la face supérieure du cube sont disposées en cercle 16 leds [3], permettant par allumage d'une d'entre elles, d'indiquer la direction de la Mecque. - Sur une face latérale, un afficheur à cristaux liquides alphanumérique à huit caractères [2], quatre boutons-poussoirs repérés: TIME, ALARM, LOCA, SET [BPl4]. Les trois premiers boutons permettent la consultation ou, en en utilisant le bouton SET, la modification des données suivantes: TIME: heure locale, date intemationale, date de l'hégire ALARM : heure de réveil, heure des prières et lever du soleil LOCA: zone géographique, ville proche du lieu d'utilisation, heure d'été, corrections de 250 km max. dans deux des quatre directions(NSOE) par rapport à la ville choisie. - D'un compas magnétique numérisé, décrit dans un autre brevet de l'auteur. - D'un ensemble de circuits électroniques décrit plus loin dans le texte. - Optionnellement sur la face latérale opposée ,un afficheur LCD numérique. ALGORITHMES Les données d'entrées stockées de manière permanentes sont: La ville, cet index donne accès par des tableaux à: la latitude la longitude le décalage horaire par rapport à Greenwich o l'angle entre la direction du nord magnétique et celui de la Mecque Le rite choisi: 12" ou 18 sous l'horizon type de calcul de l'heure de 'ASR (rite SAHFI ou HANAFITE) La date et l'heure G.MT. Les corrections en KM par rapport à la ville de référence. L'indicateur d'heure d'été. Les indicateurs des alarmes activées (réveil, prières sélectionables une à une) La visualisation des différentes données et leurs modifications sont réalisées par l'action sur les quatre boutons-poussoirs sous forme d'un algorithme de machine d'état qui ne sera pas décrit ici. Seuls les algorithmes particuliers à l'application seront décrits: Passage de l'heure et date locale à l'heure et date G.M.T.: A partir de l'heure et de la date locale, on calcule la date dans le calendrier Julien en prenant comme référence le 1/1/1990. Cette date est de la forme XEX.YYYY ,XXXX représente les jours et YYYY les heures et minutes en notation décimale. On ajoute algébriquement le décalage horaire (fuseaux + heure d'été). Puis cette date julienne (G. M.T.) est reconvertie en date et heure de l'ère grégorienne et stockée. Affichage de la date et heure locale de l'ère grégorienne et de l'hégire A partir de l'heure et date G.M.T., on calcule la date julienne, on ajoute algébriquement les décalages horaires, puis la date julienne est convertie en date de l'ère grégorienne et en date de l'hégire. Affichage de la direction de la Mecque: La position du boîtier par rapport au Nord magnétique est lue par la machine sur le compas numérisé sous la forme d'un mot de quatre bits, on y ajoute le décalage relatif à la ville, on obtient ainsi le numéro de la diode électroluminescente à allumer. Calcul des heures de prières: Les paramètres sont: Pl : Le retard de l'heure de la prière du midi par rapport à la position zénithale. P2 : La durée maximale entre la prière du matin (FAJR )et la prière du soir (ICHA). e P3 : La durée minimale entre la prière du matin (FAJR )et la prière du soir (ICHA). P4 : L'heure légale minimale pour l'heure de FAJR. P5 : L'heure légale maximale pour l'heure de ICHA. A partir de la date julienne et de la longitude (longitude de la ville t correction) du lieu, L'heure universelle du milieu de la journée de l'ère julienne est calculée (TU). Le jour de l'ère julienne commençant à midi, il suffit de prendre la partie entière de la date julienne et lui ajouter (longitude/360 signé positivement pour ouest). A partir de TU, I'inclinaison de la terre sur le plan de l'écliptique et les paramètres de l'orbite sont calculés. La position zodiacale est calculée. Avec ces données et la latitude corrigée du lieu, les heures correspondantes aux positions du soleil pour les prières FAJR et ICHA sont calculées: Si il n'y a pas de solutions lorsque la position sous l'horizon est de 18 , le calcul est repris avec 12"(un drapeau Dl est positionné pour indiquer l'approximation). Si avec 18 ou 12", il n'y a toujours pas de solutions, la valeur absolue de la latitude du lieu est diminuée d'une valeur prédéterminée (3 dans la réalisation) jusqu'à obtention d'une solution (un drapeau Dl est positionné pour indiquer l'approximation). Si il y a solution, les heures de prières sont converties en heures locales et les quatre conditions définies par P2, P3, P4, P5 sont testées. Si une des quatre condition n'est pas remplie, un drapeau Dl est positionné pour indiquer l'impossibilité et le calcul est repris en diminuant la latitude jusqu'à satisfaction des quatre critères. A partir de la latitude modifiée, de la longitude, de la date, des heures approximatives du passage du soleil aux positions recherchées calculées précédemment, la date et l'heure de l'ère julienne est recalculée pour la position du soleil désirée (TU1, TU2, TU3, TU4, TUS, TU6) puis les positions zodiacales exactes du globe terrestre. Avec ces données, L'heure exacte du passage du soleil à la position désirée est obtenue Ce calcul est repris pour les 6 positions solaires. Pour la prière du midi, le paramètre P1 est ajouté à l'heure universelle de passage au zénith. L'état du drapeau Dl permet d'avertir l'utilisateur qu'une approximation a été faite.Ces heures sont reconverties en heures G.M.T. et stockées sous la forme heure, minutes , les secondes sont utilisées pour indiquer le type de la prière et la position du drapeau D1 et l'activation de l'alarme. Les équations et paramètres des différentes positions relatives de la terre et du soleil sont disponibles dans les éphémérides du Bureau National des Longitudes ou des observatoires. Mise en oeuvre: A titre d'exemple, l'algorithme décrit a été mis en oeuvre avec les paramètres suivants: Pl : 2 Minutes. P2:18h P3 : 6h. P4 : 3h. PS : 22h 30 mn E LECTRONIQUE L'ensemble électronique du dispositif présenté figure 2 est constitué: - d'une alimentation très bas niveau (typiquement 1,5v) [ul] alimentant une partie de l'électronique très faible consommation. - d'une deuxième alimentation bas niveau (typiquement 4.5v)[u2] alimentant le reste de la machine. - d'un ensemble électronique [U4] dénommé génériquement horloge temps réel (RTC) composé: de 64 registres d'une longueur de 8 bits pouvant être lus, adressés et écrits par la machine d'état, d'un ensemble de registres-compteurs pouvant être lus et écrits par la machine d'état; dans ces registres sont stockés : I'année, le quantième du mois, le mois, I'heure, les minutes, les secondes et les centièmes de seconde. Ce compteur est piloté par une horloge issue d'un quartz [Ql] et entretient le temps G.M.T. d'un ensemble de registres spécialisés pouvant être lus et écrits par la machine d'état; dans ces registres sont stockés : le mois, le quantième, I'heure, les minutes et les secondes qui déclencheront une alarme lors de leur coïncidence avec les valeurs du compteur. Dans la réalisation les échanges de données avec la machine d'état se font par un bus série bifilaire. Cet ensemble [U4]est alimenté en permanence par l'alimentation [ul]. - De l'ensemble des 4 contacts secs d'entrée boutons-poussoirs [BPI-4]. - Une résistance de forte valeur et des diodes réalisent le OU câblé de l'ensemble des contacts et de la sortie alarme de l'horloge temps réel [Tr]. - Un monostable redeclenchable [U2] est alimenté en permanence par l'alimentation [u2], ce circuit étant en CMOS et statique, consomme très peu. - La machine d'état [US]est, dans la réalisation, constituée d'un microcontroleur 16 bits en CMOS. Elle intègre l'unité de calcul, la ram interne et la mémoire PROM contenant le programme. Son bus de données est relié au contrôleur de l'afficheur à cristaux liquides. Les entrées sorties intégrées commandent: I'allumage des photodiodes du compas[D14]. la lecture de l'état des phototransistors [T2-5]du compas afin de connaître sa position. I'éclairage d'une des 16 diodes électroluminescentes par les circuits [U7] décodeur 1 par 16, et les amplificateurs [U8-9] la commande d'un Buzzer [T7] le redéclenchement du monostable [ReTR] optionnellement ils pilotent un ensemble montre afficheur INTEGRATION En fonctionnement normal, seuls les boutons-poussoirs, L'ensemble horloge temps réel et le monostable sont alimentés, (optionnellement l'ensemble montre afficheur) . - La fermeture d'un contact de bouton poussoir ou le déclenchement de l'alarme vont déclencher le monostable, celui ci va par sa sortie [OUT] fermer l'interrupteur FET par la commande de sa grille [G] et par la même alimenter la machine d'état. La machine d'état pourra alors gérer son alimentation en redéclenchant pendant sa période d'activité le monostable [U2] par son entrée [ReTR]. A partir de là, la machine d'état va lire l'état des boutons-poussoirs [BP14] ainsi que les registres contenus dans [U4] pour connaître l'origine de la mise en route. Les liaisons se font à travers une barrière de potentiel (diode) pour éviter toute alimentation de la machine par ses entrées sorties. Si la source est un bouton poussoir, la machine va afficher l'heure sur l'afficheur, lire la position du compas, éclairer la LED indicatrice de la direction de la Mecque et générer 2000 impulsions toutes les 10 ms pour redéclencher le monostable et rester alimentée dans l'attente d'une autre commande manuelle. Si seules les commandes Time, Loca ou Alarm sont activées, les différentes données stockées dans l'horloge temps réel sont affichées après conversion en temps local. Si le calcul des heures de prières a été réalisé sans approximation, le nom de la prière sera affiché en lettres majuscules, sinon il sera affiché en lettres minuscules.Si la commande SET est utilisée, une donnée au moins a été modifiée, dans ce cas, à la fin de ou des modifications, L'ensemble des données (heure et date G.M.T, date de l'hegire, rite, heure d'été, alarmes activées) sont calculées ou mises àjour et stockées dans l'horloge temps réel, optionnellement la montre-afficheur est remise à l'heure. D'autre part les heures de prière du jour et du lendemain sont calculées et converties en temps G.M.T., à la place des secondes sont stockés un indicateur permettant de connaître la prière, le jour n ou n+l, I'activation de l'alarme, le drapeau indiquant une approximation. Les alarmes correspondant à un temps déjà échu sont supprimées, par contre sont insèrées dans cette liste, une alarme toujours armée correspondant à minuit heure locale et une correspondant à 18 H local. La prochaine alarme active est stockée dans les registres alarme de l'horloge temps réel. Les autres sont empilées dans les registres de l'horloge temps réel [U4]. Si la machine d'état est mise sous tension par l'alarme, trois cas sont à envisager: L'alarme est activée à 18h local, si le quantième du mois de l'hegire est inférieur à 28 celui-ci est incrémenté, sinon la date de l'hegire est entièrement recalculée. Aucun périphérique n'est activé. La machine d'état s'éteint. L'alarme est activée par une heure de prière ou de réveil, les périphériques sont activées, le buzzer est mis en route et est arrêté par une impulsion sur un bouton poussoir ou par échéance d'une temporisation , la prochaine alarme active est recherchée dans la pile et stockée dans le registre d'alarme. La machine d'état s'éteint. L'alarme est activée à minuit heure locale, les heures de prières du jour précèdent sont effacées, les heures de prière du jour n+ I sont calculées, la pile des alarmes est remise à jour avec les alarmes de minuit et 18h. Si dans ltétat actuel des connaissances une technologie CMOS basse tension semble souhaitable, selon des modes particuliers de réalisation, la machine état peut être conçue en utilisant un microprocesseur, un circuit logique programmable ou un ASIC. L'ensemble des fonctionnalités décrites peuvent également être regroupées sur un même substrat pour ne former qu'un composant et permettre la réalisation d'une montre. Le présent dispositif ne préjuge en rien de la sécurité de fonctionnement du système, pour des applications à haut niveau de sûreté les ensembles de type [U4] peuvent être redondés ( militaires et spatiales par exemple). De même la résolution et la fréquence d'horloge du compteur seront determinées suivant les règles de l'art et l'application. REVENDICATIONS 1. Dispositif électronique pour réaliser des machines d'état à faible consommation, caractérisé par l'utilisation simultanée d'un circuit horloge temps réel, entretenant le temps et stockant les variables d'état interne de la machine d'état et d'un interrupteur électronique alimentant la machine d'état et commandé par un monostable déclenché par le changement d'état d'une variable externe, le déclenchement d'un événement temporel ou par la machine d'état elle même. 2. Dispositif électronique selon la revendication I pour réaliser une machine d'état â faible consommation, caractérisé par l'utilisation des registres du circuit horloge temps réel pour stocker les résultats d'un algorithme complexe afin de dérouler l'algorithme le moins souvent possible. 3. Dispositif électronique selon la revendication 1,2 pour réaliser une machine d'état à faible consommation, caractérisé par la mise en oeuvre d'un algorithme de calcul des heures de prières musulmanes dont les résultats sont stockés dans les registres du circuit horloge temps réel. 4. Dispositif électronique selon la revendication 1,2,3, caractérisé par la mise en oeuvre d'un algorithme de calcul des heures de prières musulmanes passant en mode approximé quand le calcul normal n'aboutit pas par modification du rite ou de la latitude. 5. Dispositif électronique selon la revendication 4, caractérisé par la mise en oeuvre d'un algorithme de calcul des heures de prières musulmanes selon lequel l'utilisateur est prévenu quand le calcul nominal n'aboutit pas par un affichage différencié des noms des prières. 6. Dispositif électronique selon la revendication 4, caractérisé par la mise en oeuvre d'un algorithme de calcul des heures de prières musulmanes selon lequel cinq paramètres permettent de définir les règles de calcul en tout lieu et à toute date. 7. Dispositif électronique selon la revendication 4, caractérisé par la mise en oeuvre d'un algorithme de calcul des heures de prières musulmanes selon lequel l'itération du calcul des heures de passage du soleil aux positions remarquables procure une précision d'une minute. 8. Dispositif selon toutes les revendications précédentes, caracterisé par l'adjonction d'une montre afficheur mise à l'heure locale par la machine d'état et permettant d'afficher l'heure quand la machine d'état est éteinte. 9. Dispositif selon toutes les revendications précédentes, caractérisé par une réalisation d'un composant électronique sur un même substrat afin de l'incorporer dans une montre.