Arduino DCF77 Master väggklocka (1 / 11 steg)

Steg 1: Design



Efter många år av klockor med logik marker jag beslutade att använda mikrokontroller på grund av minskad chip räkna och därför lätta konstruktion. Min tidigare ledar-tar tid används 31 logik ICs och 4 huvudsakliga styrelser och hade mycket mindre funktioner se pic.

Jag beslutade att använda Arduino för att styra min nya Master på grund av det är enkel programmering. De flesta av det komplicerade arbetet görs av människor som design och sedan dela bibliotek. Arduino är mycket väl stöds Hårdvara klokt och många kompletta delar kan köpas färdig byggd som byggsten för projekt.

På denna klocka driver en MAX7219 primär bildskärm och en 4 x 20 I2C LCD används för den sekundära dessa hjälp att hålla ledningar och Arduino 328 pin använda till ett minimum. Jag behöll samma typ av ek fallet används i min gamla master klocka eftersom det passade 6 x 1" 7 segment visar perfekt och gav mig utrymme för att passa i alla de andra modulerna. Jag har använt en PIR modul för display shutdown/wakeup med egen timer och känslighetsjustering som detta använder endast 1 pin av Arduino 328. En EZ Link Bluetooth Serial Board modul gör det möjligt för mig att programmera klockan och läsa data från det avsides från min stationära dator och Android mobil.

En av designöverväganden när man bygger denna klocka var att reducera makten förtäringen eftersom klockan är på 24/7. Se tabellen nedan för det mesta Mk2 klockan kommer att dra runt 50mA jämfört till den Mk1 200mA.

Strömförbrukning

Masterclock Mk1 200mA

Masterclock MK2 start 35mA

Skärm under dagtid med ingen rörelse upptäckts 40mA

Uppvisning på 0 ljusstyrka 43mA

Uppvisning på 2 ljusstyrka 50mA

Uppvisning på 5 ljusstyrka 62mA

Uppvisning på 10 brightness78mA

Uppvisning på 15 (max) brightness90mA

Arduino biblioteken
DCF77.h detta bibliotek är hjärtat i klockan och den avkodar även en bullrig DCF77 signalen och automatisk stämma kvartskristallen.

LedControl.h att driva LED-display och LDC bakgrundsbelysning via en MAX7219 IC.

LiquidCrystal_I2C.h att köra den LCD uppvisning

Wire.h att kommunicera med I2C enheter

Tidhållning
Min gamla Master klocka var en mycket bra tid keeper och så länge jag hade en bra DCF77 signalen att hålla i synk det var fina. Då och då när DCF77 signalen förlorades för länge det skulle få en andra och vid korrigering av det det skulle göra det 1 andra slavar förlora en sekund. Detta bara hänt ett par gånger om året men åter synkronisera alla min 1 andra slavar var en smärta.

Jag har beslutat att fortsätta använda DCF77 signalen från atomklockan i Tyskland. Jag kunde ha använt MSF signalen från Storbritannien men receptionen är inte bra i Surrey som sändaren har flytta längre norrut. DCF77 signalen stöds också bättre eftersom det används i Europa inte bara Förenade kungariket.

Jag kommer att använda Arduino DCF77 decoder library skriven av Udo Klein. Udo har utvecklat denna kod under de senaste åren att göra det synkronisera och låsa fast en signal även när det finns en enorm mängd brus och störningar på signalen. Medan prototyper bör min nya klocka jag konsekvent lyckas synkronisera och upprätthålla ett lås även om DCF77 signalmottagaren ledde som Visa en stadig 1 sekund puls från Tyskland blinkar flera gånger i sekunden. Udo's DCF77 bibliotek kod är mycket mycket komplex men i mycket grundläggande termer det låser på DCF77 frekvensen med en fasas-locked loop och när det är låst kommer det faktiskt förutsäga vad DCF77 koden innehåller och sedan leta efter denna kodavsnitt i en mycket högljudd signal. Som saker som datum inte ändra att hans kod ofta kan se för denna data i signalen att hjälpa den förblir låsta på! När i synk med DCF77 signalen används det till "Autotune" backup quartz crystal att säkerställa om DCF77 signalen bryts klockan fortfarande stannar i synkronisering. Du kan läsa fullständiga uppgifter om utvecklingen av detta bibliotek och mycket mer på Udo webbplats/blogg här Blinkenlight.

Endast små ner sidan till det här biblioteket är att det krävs en exakt tid bas på Arduino att låsa in DCF77 frekvensen. Moderna Arduino styrelser använder inte en kvartskristall (den som du ser i styrelsen är för den seriella porten) men en sämre 16MHz keramisk resonator. Udo har skrivit ett testprogram att kontrollera om din Arduino styrelser resonator/crystal är av jobbet med att köra sitt bibliotek och kan hittas här DCF77 räckvidd . Om din styrelse inte är upp till jobbet är det mycket lätt att ta bort resonator och ersätta den med en kvarts kristall och ett par kondensatorer. Jag har ändrat min Arduino UNO och det fungerar perfekt med biblioteket.

Se bilder och scheman för UNO före och efter ändringen.

Huvudsakliga klockdisplay
Jag använde 1"(26mm) 7 segment display att Visa tid som dessa har arbetat mycket väl på min gamla Master klocka och är läsbara från en bra bit på natten och även i dagsljus. Dessa drivs av en MAX7219 display driver som det kan prata direkt med Arduino med ett par sladdar och det har multiplexed displayen förenklar ledningar.

Sekundära klockdisplay

Den sekundära displayen som visar tid och datum kommer att ge information om driften av klockan i synnerhet DCF77 avkodning prestanda. Jag har använt en I2C 4 x 20 LCD-display för detta. Återigen dessa visar prata direkt med Arduino över en 3 wire interface och är mycket bra på visar massor av information på nära håll. Se Visa animering i detta avsnitt.

Puls Monitor

Övervakning av puls använder enkla lysdioder eftersom de ger en snabb visuell indikation av vad pulser överförs av klockan.

Se Steg
Relaterade Ämnen

Arduino DCF77 puls klocka

IntroduktionDetta Instructable visar dig hur man gör en digital puls klocka och lägga till det i en gammal 12"(300mm) klockan fallet eller ratten & bezel. Jag har använt en gammal engelsk ringa klocka med 12" ratten men någon klocka med en s...

Solen, Arduino powered design väggklocka

Hej igen Instructables-folk! :-PPå grund av frakt-problem jag wasn´t kunna fortsätta mitt ABTW projekt så jag bestämde mig att visa dig en annan, min nyaste skapandet.Jag tror många av oss, som jag, liksom de fina adresserbara LED Stripes (även kalla...

Arduino I2C Master och Breakout

Efter framgången med min Arduino Uno I2C befälhavaren ombord började jag tänka att jag skulle kunna förbättra styrelsen. Tja... gör det mer utbyggbar för en sak, och tillåter mig att använda styrelsen för andra saker också. Jag tänkte om jag skulle k...

MODBUS RTU Master med Arduino via RS232

I föregående test, utför kommunikationen mellan Arduino Mega 2560 och Modbus simulator slav genom USB-porten som ofta har våra arduino, i detta fall kommer vi att testa med en Arduino som Master Modbus men via RS-232 med våra PC - simulator modbus sl...

Arduino ledar-LCD-klocka

Denna klocka är utformad som en fristående klocka eller som en ledar-tar tid att driva slav-tar tid och är bärbar med batteribackup. Se klockans hemsida för ytterligare detaljer LCD klocka hem huvudsidaUppdatering - automatisk sommar advance och vint...

Arduino cyklonen spelet

detta är ett bra projekt för nybörjare (faktum är att det var min första!) Jag har ingen bakgrund i elektronik kunskap, men fann att detta projekt var bra för röra på digitala utgångar, analoga utgångar, tryckknapp ingångar och värdet av motstånd (på...

Dual Core Arduino / Atemga328 - Robot Controller & Audio Player

Hej där stipendiaten beslutsfattare,Jag vill dela några erfarenheter som jag har fått när han arbetade på mitt projekt, som ledde mig att använda 2 Arduino.Varför?Kort version: eftersom det ser ut som ett roligt projekt.Lång version: Jag körde slut p...

Baserade Arduino remote översättare

Det finns 3 fjärrkontrollen är bara att titta på min TV, för TV, sätta topp låda och sound bar. Förfarande för att titta på TV är byta på TV att sätta sin källa till A / V, inkoppling ljudsystem och sätta dess källa för aux och inkoppling sätta topp...

Linkit en till Arduino kommunikationen I2C

I sist instructable jag visade dig hur du skapar en spänning bildskärm använder linkit en och efter att ha gjort ett par projekt med hjälp av en Linkit styrelsen insåg jag att det skulle vara bra om vi kunde göra linkit ett arbete med en arduino. Och...

ATTiny84 - I2C slav - Arduino UNO

Jag har jobbat på att bygga upp de bitar som jag måste göra mig själv en CNC PCB kvarn för ett litet tag nu och nästa del av pusslet försöker få Arduino att styra 3 steg motorer samtidigt. Eftersom arkitekturen inte stöder multi-threading eller multi...

Seriell kommunikation mellan android och arduino via laptop bluetooth

Om:Detta instructable handlar om seriell kommunikation mellan android och arduino genom laptop inbyggd Bluetooth. Jag har inte separata Bluetooth-modul. så jag har beslutat att använda min bärbara dator inbyggd Bluetooth för seriell kommunikation.Ste...

Hur man styr luftkonditionering A/C hemma med Arduino, även på distans!

Arduino verkligen kan du göra många saker om Internet saker, bara har lite "lust och intuition för att skapa någon typ av projekt.I detta inlägg kommer vi att se hur till avlägsen kontroll din luftkonditionering hemma, genom Arduino, som är ansluten...

PC fjärrkontrollen med hjälp av Arduino Pro Micro

Hej jag är ny till arduino och håller på att lära sig, som många jag lär dig genom tutorials, video, "ibles och av egen erfarenhet.Nyligen ville jag använda arduino Uno och IR-fjärr till kontroll VLC spelaren. Tyvärr fungerade detta inte bra för mig...

Steg för steg guide till Micro trollkarl robot controller (Arduino kompatibel)

Micro trollkarl från DAGU är en låg kostnad Arduino kompatibel controller speciellt för nybörjare som vill bygga en liten robot. Styrelsen har ett antal användbara tillbehör inbyggd så att i de flesta fall sköldar är inte obligatoriska och yttre ledn...

I2C mellan Arduinos

Kanske vill vi ibland dela arbetsbördan för en Arduino med en annan. Eller kanske vi vill ha fler digitala eller analoga stift. Inter-Integrated krets eller I2C (uttalas jag fyrkant C) är den bästa lösningen.I2C är en intressant protokoll. Det är oft...

DCF77 Signal Analyzer klockan

Arduino DCF77 klocka & signalmätarenDu kan också se denna klocka på myweb webbplats här DCF77 Analyzer klocka sidaDenna klocka visar tidkoden mottagna & avkodade DCF77 på tre 8 x 8 matrisskrivare displayer och tid, datum och signal information om...

Arduino bakgård Cricket målskytt

Hej, detta är min första instructable. Jag använder en Arduino att hålla reda på cricket poäng med en LCD-skärm och en infraröd fjärrkontroll. Målskytt visar din kör, overs, tid tillbringade vadd och beräknar och visar din årstakt. Jag har också gjor...

Med hjälp av LinkIt med Arduino i Linux

LinkIt ett är utan tvekan en stor utveckling styrelse. Men ett huvudsakliga problem är den fortfarande inte stöder utvecklingen i linux-maskin. Personligen är detta ett stort problem för mig eftersom jag är en linux-maskin. Jag vill inte installera w...

Hur man ställer in en IC2 Display till Arduino

Du har någonsin viljat till krok upp en LCD-display till Arduino men fick reda på det riktigt svårt. Ja är detta hur jag hakade så du kan följa med och enkelt ansluta en bildskärm till arduino att skriva ut information lättSteg 1: Ledningar anslutnin...