Arduino DCF77 Master väggklocka (7 / 11 steg)
Steg 7: skottsekund identifiering och korrigering
Klockan upptäcker skottsekunder. Detta är inbyggd i biblioteket och LCD och 7 segment visar automatiskt justera.
Problemet var hur att automatiskt korrigera 1 sekunder klockorna. Skottsekund läggs i slutet av en minut så i stället för sekunder räknar till 59 därefter start igen från 0 sekunder räknas till 60 och sedan återställs till 0.
Klockan ser ut för sekunder räknar till 60 och sedan väntar en sekund innan du börjar puls 1 andra klocka pulsen igen. Detta kan ses på serial displayen på min mobil via styrelsen EZ-anknyter Bluetooth i min klocka. Jag använde ett testprogram Skrivet av Udo Klein dummy skottår data ska skickas till min klocka.
I telefonens display ovan visar 0 långsam sekunder och 1 snabb sekund. Den 1: a långsam andra är alltid där vid start och anger när klockan var första sync 'd upp i detta fall 23:51:44 den 31/12/14. Dessa är dag summor och återställs vid 06:00. Den snabba andra (sekunder är snabb jämfört med DCF77 tid) visar datum och tid de snabba sekunderna upptäcktes i detta fall 0:0:0 01/01/15. Detta är när skottsekund lades och sekunder pulserande stoppades i 1 sekund att hålla i synk med DCF77 tid. Detta testades med Udo Klein DCF77 radio kodgenerator för Arduino. Koden gör en Arduino till en låg powered DCF77 sändare så kan du skicka någon datum och tid till någon DCF77 klocka för testning.
Bild 2 ovan visar de faktiska resultaten från min klocka från den verkliga skottsekund på 30/06/15.
Klockan visar den snabba andra som tas emot vid 00: 59:60 på 01/07/15 som brittiska sommaren i i drift. Efter "långsam" och "Snabb sekunder" på serial displayen är antalet fel per dag. På bilden nedan visar noll som den dag räkna är återställs till noll vid 06:10hrs varje dag. Tid och datum för den senast snabb eller långsam pulsen registreras sedan på LCD-skärmen. Jag har tagit bort aktuell tid och datum från seriella ut på den senaste versionen av koden.
Video
Kort video ovan visar Master klockan upptäcka en skottsekund och stoppa den 1 sekund tar tid för att kunna bo i synk.
Språnget andra när upptäckt är tid stämplas och lagras och kan läsas från serieporten på din PC eller Android telefon. Det kan ses som "Snabbt sekunder" (ovan på min Android mobil) som 1 andra klockan hade att pausas för att bo i synk.