Kan man använda nätfrekvensen som klocka
Kan man använda nätfrekvensen som klocka
Hej!
Jag hade lite långtråkigt under julledigheten och gjorde en klocka som använder nätfrekvensen för att hålla tiden.
Tyvärr håller inte klockan tiden. Ibland går den för snabbt och ibland för långsamt.
Vet någon ifall det är normalt?
Jag trodde att nätfrekvensen skulle vara stabil sett under ett dygn.
Skulle vilja veta ifall jag ska överge idén eller om jag ska felsöka.
/Olof
Jag hade lite långtråkigt under julledigheten och gjorde en klocka som använder nätfrekvensen för att hålla tiden.
Tyvärr håller inte klockan tiden. Ibland går den för snabbt och ibland för långsamt.
Vet någon ifall det är normalt?
Jag trodde att nätfrekvensen skulle vara stabil sett under ett dygn.
Skulle vilja veta ifall jag ska överge idén eller om jag ska felsöka.
/Olof
- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: Kan man använda nätfrekvensen som klocka
Åtminstone förr var den stabil över tid. Jag vet inte om man har släppt på det men jag tvivlar på det eftersom min klockradio från sjuttiotalet inte går fel mer än någon minut på ett par år. Hur mycket fel får du?
Re: Kan man använda nätfrekvensen som klocka
Detta har diskuterats tidigare på forumet, och nätfrekvensen ska vara stabil över ett dygn, samt över långa perioder. Klockradioapparater använder nätfrekvensen.
Du ger inte någon info om din krets, men jag gissar ändå att felet ligger i din "detektor" / ditt filter, innan processorn/räknaren.
Du ger inte någon info om din krets, men jag gissar ändå att felet ligger i din "detektor" / ditt filter, innan processorn/räknaren.
Re: Kan man använda nätfrekvensen som klocka
Hur mycket varierar den ??
Över dygnet så skall den vara hyfsat stabil då denna är atomklockskontrollerad i botten, men över kortare tider -(minuter - timmar) kan det variera på max några sekunders avvikelser beroende på lastgraden i elnätet, - dvs. går det en smula långsammare under 'rush-hour' så kör man ifatt det senare när belastningen är lugnare.
Det jag tror är att du har inte filtrera det tillräckligt noga med ett smalbandigt bandpassfilter av inkommande 50Hz-referensen och helt enkelt missar triggar (tiden går långsammare än tänkt) eller falsktriggar på övertonsstörningar (klockan går snabbare)
Över dygnet så skall den vara hyfsat stabil då denna är atomklockskontrollerad i botten, men över kortare tider -(minuter - timmar) kan det variera på max några sekunders avvikelser beroende på lastgraden i elnätet, - dvs. går det en smula långsammare under 'rush-hour' så kör man ifatt det senare när belastningen är lugnare.
Det jag tror är att du har inte filtrera det tillräckligt noga med ett smalbandigt bandpassfilter av inkommande 50Hz-referensen och helt enkelt missar triggar (tiden går långsammare än tänkt) eller falsktriggar på övertonsstörningar (klockan går snabbare)
Re: Kan man använda nätfrekvensen som klocka
Ok, intressant att veta, då ska jag felsöka så att jag inte får in störningar.
Övernatten drog den sig ett par minuter men under dagen har den gått alldeles för snabbt.
Jag låter en AVR räkna pulser på T0 ingången.
När antal pulser blir 50 körs en interrupt som räknar upp sekunderna. Tror koden är rätt:
Ett tips!
Jag ville att klockan skulle kunna prata. Googlade en del och hittade ett bibliotek som emulerar gamla talsyntes chip.
Har implementerat det i klockan och jag tycker det låter riktigt bra: https://github.com/going-digital/Talkie
Övernatten drog den sig ett par minuter men under dagen har den gått alldeles för snabbt.
Jag låter en AVR räkna pulser på T0 ingången.
När antal pulser blir 50 körs en interrupt som räknar upp sekunderna. Tror koden är rätt:
Kod: Markera allt
TCCR0A = 0; // set entire TCCR1A register to 0
TCCR0B = 0; // set entrire TCCT1B register to 0
//Set register to 0
TCNT0 = 0;
//Compare value
OCR0A = 50;
//Compare with OCR0A
TCCR0A |= (1 << WGM01);
//External Clock Source on T0 pin, Clock on Rising Edge
TCCR0B |= (1 << CS02) | (1 << CS01) | (1 << CS00);
//enable timer interrupt
TIMSK0 |= (1 << OCIE0A);
ISR (TIMER0_COMPA_vect)
{
sekunder++;
}
Jag ville att klockan skulle kunna prata. Googlade en del och hittade ett bibliotek som emulerar gamla talsyntes chip.
Har implementerat det i klockan och jag tycker det låter riktigt bra: https://github.com/going-digital/Talkie
Re: Kan man använda nätfrekvensen som klocka
OCR0A ska väl vara 50 - 1 för att det ska bli rätt. Nu går den alltså 2% för långsamt.
- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: Kan man använda nätfrekvensen som klocka
Hur ser hårdvaran mellan nätet och processorn ut?
Re: Kan man använda nätfrekvensen som klocka
Ska erkänna att jag är en glad amatör.
Jag har en 9V AC adapter som strömkälla.
Jag likriktar + 470uF kondensator. Sedan har jag en 7805 (med kondensatorer) för att få 5V.
Det sitter 100nF kondensatorer på matningen till processorn.
50Hz pulserna får jag genom en diod som är kopplad till en transistor (2N7000) med ett pulldown motstånd på gaten.
Fyrkantsvågen ser fin ut när jag kollar på den med ett oscilloskop.
Skulle jag kunna få ett tips hur jag bör göra? Ett filter efter dioden?
Jag har en 9V AC adapter som strömkälla.
Jag likriktar + 470uF kondensator. Sedan har jag en 7805 (med kondensatorer) för att få 5V.
Det sitter 100nF kondensatorer på matningen till processorn.
50Hz pulserna får jag genom en diod som är kopplad till en transistor (2N7000) med ett pulldown motstånd på gaten.
Fyrkantsvågen ser fin ut när jag kollar på den med ett oscilloskop.
Skulle jag kunna få ett tips hur jag bör göra? Ett filter efter dioden?
Senast redigerad av olof_n 4 januari 2016, 17:13:11, redigerad totalt 2 gånger.
Re: Kan man använda nätfrekvensen som klocka
Ahh jag hade faktiskt värdet 49 först.bearing skrev:OCR0A ska väl vara 50 - 1 för att det ska bli rätt. Nu går den alltså 2% för långsamt.
Men när jag såg att klockan gick för snabbt trodde jag att jag hade tänkt fel.
- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: Kan man använda nätfrekvensen som klocka
Nja, snarare före dioden. Att fyrkantsvågen ser bra ut på ett oscilloskop är väl bra men betyder inte så mycket. Det är svårt att se avvikelserna.
Re: Kan man använda nätfrekvensen som klocka
Misstänkte detolof_n skrev:Ahh jag hade faktiskt värdet 49 först.bearing skrev:OCR0A ska väl vara 50 - 1 för att det ska bli rätt. Nu går den alltså 2% för långsamt.
Annars tycker jag om att skriva 50 - 1 istället för 49. Då gör man det tydligt i koden vilken period man tänkt sig.
Transistorn är ju inte en "schmitt-trigger" vilket antagligen ökar störkänsligheten jämfört med att använda processorns ingång direkt.
Jag skulle nog provat med en 100k spänningsdelare med RC-filter från transformatorn till ingången bara. D.v.s två motstånd och en kondensator. Ev. med en zenerdiod för att skydda ingången.
Re: Kan man använda nätfrekvensen som klocka
Fungerar det med 10K och 200nF som RC filter eller bör jag använda andra värden?
Re: Kan man använda nätfrekvensen som klocka
Brytfrekvensen f = 1/(2*pi*R*C)
Spänningsdelaren får du anpassa så att peak från transformatorn ger något under matning på processorn. Jag skulle kört med omkring 100k från transformatorn, så att inbyggda dioderna i processorn klarar strömmen ifall nedre resistorn i spänningsdelaren skulle ramla av eller liknande.
Spänningsdelaren får du anpassa så att peak från transformatorn ger något under matning på processorn. Jag skulle kört med omkring 100k från transformatorn, så att inbyggda dioderna i processorn klarar strömmen ifall nedre resistorn i spänningsdelaren skulle ramla av eller liknande.
- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: Kan man använda nätfrekvensen som klocka
Tack för alla tips och råd!
Ska testa filtret senare.
Ska testa filtret senare.