Stránka 1 z 3

GPS Hodiny v2.1

PříspěvekNapsal: pon 23. úno 2015 13:19:50
od Sakul
Obrázek


Aktualizovaná verze 2.1:


Takže aktuální článek včetně veškeré dokumentace a nejnovějšího firmware najdete již nyní na mém Patreonu: https://www.patreon.com/posts/42785839

V tomto vláknu se zabýváme touto konstrukcí. Bližší informace naleznete na webu Sakul World.
Takže pokud máte nějaké dotazy nebo připomínky rozhodně mi o tom zde napište.

Současná verze umí Letní/Zimní čas (pouze tlačítkem).

Technické paramatry:
Napájení: AC/DC 8-15V
Proud: 100mA
Rychlost inicializace: cca 3 sekundy (po zapnutí do 3 sekund naskočí přesný čas)
Jištění pojistkou: F/200mA
Komunikace externí: RS232 (Canon9M)
Komunikační rychlost: 19200bps
Komunikace s GPS: UART 9600bps
Rozlišení displeje: 24:59:59 (HH:MM.SS)
Volba časového posuvu: Tlačítkem +1h/+2h
Záloha RTC: Kondenzátor 0,22F/5,5V

Pro případné zájemce o stavbu, zde rovnou uvádím ceny jednotlivých komponent, které mohu zaslat.
CENY najdete - ZDE.

30.10.2015 - Dnes jsem byl upozorněn, že neblikají dvojtečky na displeji. Původně jsem to chtěl dodělat, ale nějak jsem na to zapomněl (osobně mám radši, když pouze svítí). Takže si můžete stáhnout upravený program, kde je možno pomocí interního Jumperu JP5 (který dosud neměl žádnou funkci) zapnout nebo vypnout blikání dvojteček:
JP5 Osazen - Dvojtečky trvale svítí jako u původního programu (včetně dvojteček na externím displeji)
JP5 Neosazen - Dvojtečky blikají v intervalu 500ms svítí / 500ms nesvítí (včetně dvojteček na externím displeji)

Re: GPS Hodiny v2

PříspěvekNapsal: pát 30. říj 2015 18:51:06
od maja666
Ahoj, postavil jsem si tyto hodiny a fungují skvěle. Upravil sem si trochu schéma, plošák a použil jsem jinou GPS. Jedna věc se mi na nich nelíbí a to že dvojtečky jen svítí. Jde to nějak upravit v softwaru aby blikaly?

Re: GPS Hodiny v2

PříspěvekNapsal: pát 30. říj 2015 20:04:37
od Sakul
Jo ty dvojtečky jsem nějak nedodělal a pak jsem na to zapomněl. Jak bude trocha času mrknu na to a dám upravený program.

Re: GPS Hodiny v2

PříspěvekNapsal: pát 30. říj 2015 20:49:49
od maja666
Tak to bude super... zatím díky...

IMG_2856.JPG


IMG_2861.JPG

Re: GPS Hodiny v2

PříspěvekNapsal: pát 30. říj 2015 21:35:38
od Sakul
Takže do úvodního příspěvku jsem přidal odkaz na stažení nejnovější verze programu v1.1, kde je přidána možnost volby zda mají dvojtečky blikat nebo trvale svítit.

Jinak díky za foto. Povedená konstrukce hodin. Co to tam máš za GPS, bylo by možno hodit nějaký odkaz ?

Re: GPS Hodiny v2

PříspěvekNapsal: sob 31. říj 2015 22:57:54
od maja666
GPSka je z eBay - Crius U-blox NEO-6M. GPSka má baterku, takže není zapotřebí na DPS procesoru a napájení je 5V.
Šlo by ty dvojtečky synchronizovat se změnou sekundy? Aby se rozsvítily při změně sekundy.

Re: GPS Hodiny v2

PříspěvekNapsal: ned 01. lis 2015 10:12:49
od Sakul
maja666 píše:GPSka je z eBay - Crius U-blox NEO-6M. GPSka má baterku, takže není zapotřebí na DPS procesoru a napájení je 5V.
Šlo by ty dvojtečky synchronizovat se změnou sekundy? Aby se rozsvítily při změně sekundy.


No to je maličko problém. Ono totiž to zobrazování sekund lehce kolísá a právě z toho důvodu není synchronní s těma dvojtečkama. A protože od GPS nemám data o ms nelze to jednoduše synchronizovat a musí se to počítat oddělaně. Určitě by to šlo řešit porovnáním sekund. Až bude nálada a trocha času zkusím na to mrknout.
Jinak už jsem si vzpomněl proč dvojtečky neblikaly. Původně jsem totiž chtěl pomocí dvojteček signalizovat zda je GPS fixnutá nebo nikoli.

Tak či tak, v případě nové verze programu bude zase v úvodním příspěvku.

Re: GPS Hodiny v2

PříspěvekNapsal: ned 01. lis 2015 15:47:11
od maja666
Čekal jsem že to asi nebude jednoduché. No pokud se na ty dvojtečky člověk nezaměří, tak to zas tak mimo není. No nevadí.
Ještě jedna drobnost. Ten ATMEGA328 má pokud se nepletu 6 ADC vstupů, které jsou využité na spínání anod. Je složité použít třeba ADC0 na regulaci jasu zobrazovačů pomoci fotoodporu a pro anodu toho jednoho displeje použít PIN č.5 nebo 6 což je komunikace(MAX232) kterou nevyužívám.?

Re: GPS Hodiny v2

PříspěvekNapsal: ned 01. lis 2015 17:57:43
od Sakul
maja666 píše:Ještě jedna drobnost. Ten ATMEGA328 má pokud se nepletu 6 ADC vstupů, které jsou využité na spínání anod. Je složité použít třeba ADC0 na regulaci jasu zobrazovačů pomoci fotoodporu a pro anodu toho jednoho displeje použít PIN č.5 nebo 6 což je komunikace(MAX232) kterou nevyužívám.?


Tak určitě by to šlo. Stačí na začátku přepsat konfiguraci patřičného výstupu například: int digit6 = 14; na jiný například: int digit6 = 3;
Pak je samozřejmě nutno odstranit vše co má spojitost s SoftwareSerial. Dále už jen číst analogový vstup, trochu poupravit výsledek, aby odpovídal rozsahu cca 500-1500 a plnit s tím proměnou DISPLAY_BRIGHTNESS.

Re: GPS Hodiny v2

PříspěvekNapsal: pát 19. úno 2016 15:56:29
od LeopardA4
Mohl by mi někdo poradit, jak potlačit zobrazení nuly na pozici desítky hodin? Vím, že je potřeba vložit funkci podmínky, ale nevím kde a jak.
Děkuji.

Re: GPS Hodiny v2

PříspěvekNapsal: pát 19. úno 2016 22:44:48
od LeopardA4
Tak jsem si poradil sám:

void displayNumber() {
unsigned long toDisplay = cislo;

#define DISPLAY_BRIGHTNESS 1000 // Nastavení jasu displeje (čím větší číslo, tím větší jas) 900 je standard (500-1500)

#define DIGIT_ON LOW // Nastavení logiky pro Anody
#define DIGIT_OFF HIGH

long beginTime = millis();

for(int digit = 6 ; digit > 0 ; digit--) {

//Zapnutí cislic na kratkou dobu
switch(digit) {
case 1:
if (casSEC >= 100000) { // Vložení podmínky pro potlačení nuly na desítkách hodin.
digitalWrite(digit1, DIGIT_ON);
}
else
{
digitalWrite(digit1, DIGIT_OFF);
}

break;
case 2:
digitalWrite(digit2, DIGIT_ON);
break;
case 3:
digitalWrite(digit3, DIGIT_ON);
break;
case 4:
digitalWrite(digit4, DIGIT_ON);
break;
case 5:
digitalWrite(digit5, DIGIT_ON);
break;
case 6:
digitalWrite(digit6, DIGIT_ON);
break;
}

//Turn on the right segments for this digit
lightNumber(toDisplay % 10);
toDisplay /= 10;

delayMicroseconds(DISPLAY_BRIGHTNESS);



lightNumber(10);

//Vypnuti vsech cislic
digitalWrite(digit1, DIGIT_OFF);
digitalWrite(digit2, DIGIT_OFF);
digitalWrite(digit3, DIGIT_OFF);
digitalWrite(digit4, DIGIT_OFF);
digitalWrite(digit5, DIGIT_OFF);
digitalWrite(digit6, DIGIT_OFF);
}

while( (millis() - beginTime) < 10) ;

}

Re: GPS Hodiny v2

PříspěvekNapsal: pát 19. úno 2016 23:55:14
od Sakul
To jsem rád, že se to podařilo. Ať hodiny dobře slouží.

Re: GPS Hodiny v2

PříspěvekNapsal: sob 20. úno 2016 19:08:26
od LeopardA4
Jsou velmi povedené, ještě dodělám jas displeje v závislosti na okolním světle, nechám vyrobit DPS a pak pošlu foto nebo video.

Re: GPS Hodiny v2

PříspěvekNapsal: sob 27. úno 2016 9:32:58
od Hamradio
Postavil jsem si zmíňené GPS hodiny dle návodu autora ,DPS + modul L80 jsem si koupil. Ostatní ze šuplíkových zásob.Hodiny chodí na první spuštění naprosto bez problémů. Zálohovací kondenzátor jsem zatím zkoušel asi na 15 hodin , čas opět naskočil do 3 sekund.V minulosti jsem se zabýval DCF moduly , tato konstrukce a využití GPS signálu je nesrovnatelně lepší. Atmega328P-PU jsem si naprogramoval dle návodu autora , vše proběhlo bez závad.

Re: GPS Hodiny v2

PříspěvekNapsal: sob 27. úno 2016 18:45:07
od Sakul
Hamradio píše:Postavil jsem si zmíňené GPS hodiny dle návodu autora ,DPS + modul L80 jsem si koupil. Ostatní ze šuplíkových zásob.Hodiny chodí na první spuštění naprosto bez problémů. Zálohovací kondenzátor jsem zatím zkoušel asi na 15 hodin , čas opět naskočil do 3 sekund.V minulosti jsem se zabýval DCF moduly , tato konstrukce a využití GPS signálu je nesrovnatelně lepší. Atmega328P-PU jsem si naprogramoval dle návodu autora , vše proběhlo bez závad.



Jsem rád, že vše proběhlo bez problému a děkuji za zpětnou vazbu. Takže ať dobře slouží.

Re: GPS Hodiny v2

PříspěvekNapsal: ned 10. črc 2016 14:03:14
od petersmd
Ahojte, postavil som si hodiny podle návodu, sú super. Chcel by som sa ale niekoho opýtať, či by mi nevedel poradiť ako upraviť program, aby po stlačení tlačítka sa vypol celý displej a po opatovnom stlačení znovu zapol, čiže rozsvietil. Hodiny by samozrejme išli ďalej aj pri vypnutom displeji. Ďekuji moc za prípadnou radu. Peter

Re: GPS Hodiny v2

PříspěvekNapsal: ned 10. črc 2016 20:18:43
od Sakul
petersmd píše:Ahojte, postavil som si hodiny podle návodu, sú super. Chcel by som sa ale niekoho opýtať, či by mi nevedel poradiť ako upraviť program, aby po stlačení tlačítka sa vypol celý displej a po opatovnom stlačení znovu zapol, čiže rozsvietil. Hodiny by samozrejme išli ďalej aj pri vypnutom displeji. Ďekuji moc za prípadnou radu. Peter


Zdravím,
nemělo by to být nic složitého. Stačí si přidat například jednu proměnnou, která bude ovládaná tím tlačítkem a na jejím základě povolit aktivaci zobrazovačů. Je to v podstatě ten kus kódu co je o pár příspěvků nahoře. Jen se ta podmínka nebude týkat pouze prvního zobrazovače, ale všech šesti.

Re: GPS Hodiny v2

PříspěvekNapsal: pon 11. črc 2016 13:41:36
od petersmd
A nešlo by sem niečo vložiť? Treba by to pomohlo i ďalším čo neumí programovať jako já. Díky moc.

Re: GPS Hodiny v2

PříspěvekNapsal: pon 11. črc 2016 17:19:00
od Sakul
petersmd píše:A nešlo by sem niečo vložiť? Treba by to pomohlo i ďalším čo neumí programovať jako já. Díky moc.


Jde o to, že ten kód se teda musí upravit na několika místech a navíc tlačítko jako takové již svou funkci má. Takže je otázka zda danou funkci zrušit a místo ní použít to zhasínání nebo to zhasínání nabastlit na ten Jumper JP5, na kterém je sice také v nejnovějším programu funkce.
Tyto otázky je třeba si nejprve zodpovědět a pak můžu udělat třeba update programu.

Re: GPS Hodiny v2

PříspěvekNapsal: pon 11. črc 2016 22:02:12
od petersmd
No ja napríklad nevyužívam funkciu blikania dvojteček, takže by to šlo udelať tam. Prepínanie letný čas/zimný je myslím praktické cez to tlačítko, pokiaľ to človek má celé v nejakej krabičke. Taky nevyužívam prevodník serial, tak myslím že tie piny procesoru č.5 a 6 by bolo asi možné použiť taky...

Ja som vo svojom zapojení použil vačšie led segmentovky 44,5mm má samotný znak, čiže som musel upraviť v programe logiku spínania. Takže som vypustil tranzistory a nahradil som ich obvodom TD62783AP a na spínanie jednotlivých číslic som použil darlingtonové pole ULN2003AN. Nič viac. Ako GPS-ku som kúpil na ebayi Ublox NEO-6M GPS. Má maličkú záložnú batériu, takže pri výpadku elektriny a opatovnom zapnutí hodiny nabehnú do cca 3sec. Pokiaľ by mal niekto záujem, možem poslať schému aj upravený program na tento vačší displej.

Re: GPS Hodiny v2

PříspěvekNapsal: úte 12. črc 2016 15:28:16
od Sakul
Když bude čas tak na to mrknu a hodil bych to teda na ten JP5. Ale rozhodně to nebude tento ani asi příští týden. Takže pokud by se do toho chtěl někdo pustit určitě může.