Étape 8: Essai esclave sorties
Une fois que l’horloge a été terminé, j’ai construit un banc d’essai pour vérifier les fonctions d’esclave horloge (Fig 1).
Le gréement a l’horloge maître, 1 deuxième esclave et esclave deuxième 30 attachés.
Le deuxième mouvement d’esclave 30 (photo 2) comporte un circuit de 5 volts qui se déclenche toutes les 30 secondes. Il faut 120 impulsions à l’étape ensemble heure. Il existe différents fabricants de ces mouvements et qu’ils étaient communs dans les centraux téléphoniques, les usines et les écoles au Royaume-Uni. De nombreux pays ont un mouvement électromécanique semblable à cela à l’aide de différentes tensions et fréquences d’impulsion.
Le second 1 mouvement (photo 3) est entraîné par un moteur type Lavet. Le moteur provient d’un mouvement d’horloge de quartz auprès de la Commission de contrôle de quartz découpe. Le moteur nécessite un courant très faible pour le conduire et peut être branché directement de la sortie de l’Arduino via une résistance de tondeuse. Cela demande juste un changement de polarité sur le moteur à l’étape de 1 seconde.
Le premier test est juste pour vérifier que l’esclave sorties travaillent c’est à dire la 30 seconde horloge se retire toutes les 30 secondes et le second 1 horloge se retire chaque seconde.
L’hiver prochain 3 tests été, hiver et correction seconde intercalaire nécessitent un Arduino de rechange et un programme de test. Comme l’horloge synchronise automatiquement l’horloge atomique DCF77 il n’y a pas de contrôle manuel pour régler l’horloge. Tous les essais sont effectués par transmettant le code de date et heure de radio factice dans le format de l’horloge DCF77. Heureusement, Udo Klein, le concepteur de la bibliothèque de DCF77 utilisé pour décoder le signal DCF77 dans cette horloge a également conçu un Générateur de code radio DCF77 pour l’Arduino.
Pour utiliser le générateur de télécharger Udo code et programme de l’ONU via le port série. Une fois que la carte est programmée connecter une résistance de 1K à la broche 3 et une petite boucle de fil sur la broche Gnd (Fig 4). Enroulez le fil une fois autour de l’antenne DCF77 de l’appareil vous mettent à l’essai. Charger un programme de terminal ou il suffit d’ouvrir le moniteur de la série à partir de l’interface Arduino. Réglez le taux de baud à 115200 et appuyez sur entrer. Vous devriez voir ce qui suit sur le moniteur de la série
en cours d’exécution
sortie sur la broche D3
Le code de test est préprogrammé avec hiver été, hiver et secondes intercalaires donc tous vous faire est régler l’horloge d’une heure et la date 15 minutes avant l’événement. Cela donne le temps d’horloge maître de synchroniser dans le signal factice. Une fois que le signal factice sont synchronisé et le maître affiche factice régler l’heure et date des esclaves sur le banc d’essai pour montrer cette fois aussi bien.
Vidéo 1 montre l’horloge automatiquement corriger l’esclave 30 seconde pour Summertime.
British Summer Time commence le dernier dimanche de mars à 01 h 00 GMT. Le signal DCF77 est réglé à HEC donc quand le générateur de code radio DCF77 est programmé mis it une heure avant que l’heure sera supprimée par le code de l’horloge maître. Si vous êtes dans une zone de CET juste fixé il à la fois, vous avez besoin.
L’horloge maître passera automatiquement 00:59:59 à 02:00 mais la seconde 30 esclave affichera 1 oclock. La seconde 30 horloges esclave ne seront pas automatiquement corriger jusqu'à ce que le commutateur « Arm » est géré et puis touche « Avance/Retard » est géré pendant 1 seconde. Traditionnellement dans les bâtiments où j’ai travaillé cela a été faits le lundi matin après que les horloges avaient changé. Vous pouvez modifier le code pour que cela soit automatique, mais alors vous devez être près à 01:00hrs de le regarder.
Une fois déclenchée par la touche « Avance/Retard » l’horloge va commencer à faire progresser chaque seconde de 30 secondes. « L’été avance » s’affichera sur l’écran LCD ainsi que le nombre d’impulsions d’avance. 120 impulsions supplémentaires sont nécessaires pour faire avancer les horloges d’esclave de 1 heure.
Les 120 pulsations supplémentaires vont prendre 2 minutes pour envoyer et durant cette période, un certain nombre d’impulsions serait normal de 30 secondes a manqué (le nombre dépend quand a commencé à l’avance). Pour obtenir plus de ce problème le comptage d’impulsions avance s’arrête sur zéro et 30 secondes.
Une fois le comptage d’impulsions atteint 120 esclave, l’horloge indique le même temps que l’horloge maître et l’écran ACL reviendra à la normale.
Vidéo 2 montre l’horloge automatiquement corriger l’esclave 30 seconde pour l’hiver.
30 secondes horloges ne peuvent reculer alors qu’ils sont retardés par l’arrêt des impulsions pendant 1 heure (120 pulsations)
Sur l’interrupteur avance retardent les pulsations manquées sont à compter de la deuxième impulsion ensuite 30.
Britannique hiver commence le dernier dimanche de mars à 02:00 GMT + 1. Affichage de l’horloge maître passera de 01:59:59 à 01:00 et GMT + 1 passera à GMT + 0. Comme au-dessus de l’esclave horloges ne sont pas corrigées jusqu'à ce que la clé « Avance/Retard » est actionné pendant une seconde.
Une fois déclenché, le capitaine attend le prochain 30 seconde impulsion et l’écran LCD « Hiver Retard » ainsi que le nombre de pulsations manquées. Le nombre de pulsations manquées est avancé pour chaque 30 seconde impulsion raté et une fois qu’il atteint 120 que l’esclave montrera le même temps que l’horloge maître et écran LCD reviendra à la normale.
Vidéo 3 montre la deuxième 1 horloge corriger pour une seconde intercalaire.
Le générateur de code radio DCF77 a secondes intercalaires construits en. Il suffit de chercher les dernières secondes intercalaires et régler le générateur à cette date et l’heure.
Voici un exemple de la façon de régler le générateur pour déclencher une seconde intercalaire.
Pour déclencher une seconde intercalaire pour l’heure GMT (pour CET décoller une heure)
Envoyer
x15.01.01 00:45:00 1 0001
Sorties
en cours d’exécution
sortie sur la broche D3
réglage de l’heure actuelle (YY. MM. DD hh:mm.ss w sbtl)
w = jour de la semaine, s = summertime, b = sauvegarde antenne, t = changement de timzone à la demande, l = seconde intercalaire à la demande
15.01.01 00:45:00 1 232001
Pour définir l’utilisation de temps cible l’un des formats suivants
mode simple : sYY.MM.DD hh:mm.ss
mode étendu: x: YY. MM. DD hh:mm.ss w sbtl
réglage de l’heure actuelle (YY. MM. DD hh:mm.ss sbtl w) w = jour de la semaine, s = summertime, b = sauvegarde antenne, t = changement de timzone à la demande, l = seconde intercalaire à la demande 15.01.01 00:45:00 1 232001
Cela a effectivement mis mon horloge (valeur GMT) une fois décodée à 23:45 31 décembre 2015 plus de quelques minutes pour le décodage des temps.
Quand la seconde intercalaire est injectée 1 deuxième esclaves horloge sont arrêtés pendant 1 seconde. Le maître affiche 23:59:59 puis 23: 59:60. 1 seconde et 30 seconde esclaves n’êtes pas entrés jusqu'à ce que le maître affiche 00:00:00. La seconde sera détectée comme un pouls rapide et figurera sur le deuxième 1 écran ainsi que la date et l’heure qu'elle s’est produite.