Fórum témák

» Több friss téma
Fórum » Óravezérlő
 
Témaindító: Lucifer, idő: Dec 20, 2005
Témakörök:
Lapozás: OK   9 / 9
(#) kaqkk válasza etilalkohol hozzászólására (») Júl 2, 2023 /
 
A 3231 mint látod kapható kész modulon (elemmel) emiatt őt nem érdekli az áramszünet , és igen a hőkompenzált belső kvarc miatt pontos . A többi RTC pontossága a külső órakvarc miatt olyan amilyen ...
A hozzászólás módosítva: Júl 2, 2023
(#) etilalkohol válasza kaqkk hozzászólására (») Júl 2, 2023 /
 
Veszek is vagy 3-at, van pár pontatlan órám, amibe ki is próbálom, amúgy meg hihetetlen olcsó ahhoz képest amit tud pontosságban...
A hozzászólás módosítva: Júl 2, 2023
(#) kaqkk válasza etilalkohol hozzászólására (») Júl 2, 2023 /
 
A "nagyobbikon" van eprom ami használható külön adatmentésre ugyanazon a vonalon mint az RTC .
(#) phr3ak válasza etilalkohol hozzászólására (») Júl 2, 2023 /
 
Szerintem nem túl pontosak. A téli nyári időszámítás sem megy automatikusan.
(#) kaqkk válasza phr3ak hozzászólására (») Júl 2, 2023 /
 
Az átállás nem probléma a proci megoldja ,egyébként már nem is sokáig lesz átállás . A pontosságot tesztelted ? Miből gondolod hogy nem pontos ? 2PPM nél tudsz pontosabb RTC-t mutatni ?
A hozzászólás módosítva: Júl 2, 2023
(#) etilalkohol válasza kaqkk hozzászólására (») Júl 2, 2023 /
 
Úgy is kell kontroller és annak az eeprom-ába egyszerűbb/gyorsabb a mentés.
Amit használsz DS3231 az hozza nálad a havi 1-2 másodperces pontosságot?
(#) kaqkk válasza etilalkohol hozzászólására (») Júl 2, 2023 / 1
 
Persze , nem véletlenül használom https://www.youtube.com/@NIXI.KMB-Team/videos
A hozzászólás módosítva: Júl 2, 2023
(#) etilalkohol hozzászólása Júl 6, 2023 /
 
Sziasztok, megjött a ds3231...
Ketyeg szépen, amikor léptet/lapoz, akkor elmenti az ébresztésbe az időt, azt nem mentem külön, hogy melyik irányba kapta a léptető feszt, mert ha páros, akkor egyik ha páratlan másik irányú a léptető feszültség.
Eddig okés!
Ő most perceket néz, ha nagyobb az rtc perc, akkor léptet - ellenben azt hogy lehetne frappánsan megoldani, hogy a lépés/lapozás szinkronban legyen a valós abszolút idő percváltásával?
Most elég a relatív idő, hogy áramszünet esetén ahhoz képest tudja majd, hogy mennyi idő telt el, de ez így nincs szinkronban a valós idő percváltásával... Amikor az ESP32-vel a net időt lekértem a korábbi változatnál, akkor ott tudtam értelemszerűen mikor van a valós percváltás.
Remélem érthetően leírtam a problémát.
Ha lenne valami jó ötletetek ehhez, akkor ne kíméljetek!
(#) Bakman válasza etilalkohol hozzászólására (») Júl 6, 2023 /
 
Az egész koncepciót nem értem. Van egy RTC IC-d, amiből bármikor kinyerhető a pontos idő. Miért nincs szinkronban a lapozás a pontos idővel? Másodpercenként kérdezgeted az IC-t és ha a perc eltér az előző lekérdezés eredményétől, vagy a másodperc értéke nulla, lapozol. Nem?

Az INT/SQW láb beállítható 1 Hz-es ütemadásra is ha másra nem használod.
(#) kaqkk válasza etilalkohol hozzászólására (») Júl 6, 2023 /
 
Két változó : perc "oldperc" amikor a perc-oldperc nem egyenlő léptetsz majd oldperc= perc
(#) etilalkohol hozzászólása Júl 6, 2023 /
 
Bakman, Kaqkk!
Ahhoz valamivel az elején be kellene állítanom a pontos időt, pl gombok + kijelző: ebben az esetben valóban tudna szinkron lenni a valós idő percváltásához, ellenben emiatt felesleges rá kijelző és beállítógombok.
Közben gyagyázva viszont az ugrott be, hogy úgy is lesz egy előre léptető gomb, ezt lehet érzékelni, hogy pl. duplakilikkre nullázná a másodperceket és akkor csak annyi a dolgom, hogy nézek egy pontos időt és amikor vált, akkor duplaklikket nyomok, ami nullázza az rtc időt vagy csak a másodpercet....
(#) proba válasza etilalkohol hozzászólására (») Júl 6, 2023 / 1
 
Én a polaritás is tároltam, a páros az pl hétfő volt, a páratlan meg vasárnap. Ha nem tárolod, az áramszünet utáni állapot akár 2-3 perc késés is lehet. ( azt hittem a lapozó nem váltott polaritású, de végül is ha óra vonalra van kötve)
A másodperc nullázást úgy oldottam meg, minden léptetés nullázta a másodperceket. Beállításnál 1 perccel hamarabb meg kell állni, és váltáskor beléptetni a pontos időre..
A hozzászólás módosítva: Júl 6, 2023
(#) etilalkohol válasza proba hozzászólására (») Júl 6, 2023 /
 
Igen ezen gyagyáztam én is, de rájöttem, hogy ha mindig ugyanaz a polaritás pl. páros perceknél és az mindig tárolódik (az utolsó lépés ideje), akkor kvázi felesleges külön is letárolni...
(#) etilalkohol válasza proba hozzászólására (») Júl 6, 2023 /
 
Akkor kvázi bármikor léptetsz az rtc másodpercet is nulláz és ezzel egyidőben a lementett másodperc is nullás - jól értem?
Akkor nem is kell a klikkelés érzékeléssel szenvedni...
(#) pipi válasza etilalkohol hozzászólására (») Júl 6, 2023 /
 
Minek is kellene kijelző? Ha ott az esp, webszerver rá és kész
(#) etilalkohol válasza pipi hozzászólására (») Júl 6, 2023 /
 
Ez már az ESP nélküli változat, rájöttem (pontosabban rávezettetek, hogy túlbonyolítottam az egészet az esp-vel, mivel itt elég a relatív idő mérése, mert ugye itt a lapozóóra kvázi egyben memória is, hiszen áramszünet esetén megtartja az értékét...
A hozzászólás módosítva: Júl 6, 2023
(#) proba válasza etilalkohol hozzászólására (») Júl 6, 2023 /
 
Nézegettem a programom, nem nullázok soha semmit benne . Gombnyomáskor a pillanatnyi időt egyenlővé teszem az ébresztés idővel és kérek egy soron kívüli léptetést. Léptetéskor ehhez hozzáadok 60 másodpercet, és azt tárolom. Az órám tényleges lépésének semmi köze az RTC percváltásához. Kb így:
  1. init rész:
  2. {
  3.  
  4.     ido=alarm.Second();
  5.     ido=ido+(alarm.Minute()*60);
  6.     ido=ido+(alarm.Hour()*60*60);
  7.     if (alarm.DayOf()==2)
  8.       {        
  9.          pol=1;
  10.       }
  11.       else
  12.       {
  13.           pol=0;  
  14.       }
  15. }
  16.  
  17. void loop ()
  18. {
  19.    
  20.     now = Rtc.GetDateTime();        //pontos idő a netes idő szerint másodpercekben
  21.     now=now % 43200 ;            // az idő 12 óránként újra íródik  
  22.    
  23.     if (now<ido)                  
  24.       {
  25.         lep=0;
  26.         if ((ido-now)>3600)      // sok az eltérés körbejár
  27.           {
  28.              lep=1;
  29.           }
  30.       }
  31.      else
  32.       {
  33.         unsigned long tmp=ido+39600;  // mutató +11 óra
  34.         lep=1;
  35.         if (now > tmp)                          // leállítja a léptetést ha 11 óránál több az eltérés
  36.           {
  37.             lep=0;
  38.           }    
  39.        
  40.       }  
  41.    if (digitalRead(leptet)==0)                          // léptető gomb
  42.       {
  43.         lep=1;
  44.         ido=now;
  45.       }
  46.      
  47.     if(lep)
  48.       {
  49.           ido = ido+60;                 // egy percet léptet  
  50.           ido = ido % 43200 ;
  51.           if (pol)
  52.           {
  53.               digitalWrite(poz,HIGH);
  54.               digitalWrite(poz_,HIGH);  
  55.               delay(1000);
  56.           }
  57.           else
  58.           {
  59.               digitalWrite(neg,HIGH);
  60.               digitalWrite(neg_,HIGH);  
  61.               delay(1000);
  62.           }
  63.           pol=1-pol;
  64.           now=ido+pol*86400;                             // a polaritást tárolja is itt tárolja, 1 nap az 86400 sec
  65.           RtcDateTime alarmTime = now;
  66.           DS3231AlarmOne alarm(  alarmTime.Day(),
  67.                   alarmTime.Hour(),
  68.                   alarmTime.Minute(),
  69.                   alarmTime.Second(),
  70.                   DS3231AlarmOneControl_HoursMinutesSecondsMatch);
  71.           Rtc.SetAlarmOne(alarm);                                               // a következő lépés ideje
  72.           digitalWrite(poz,LOW);
  73.           digitalWrite(poz_,LOW);
  74.           digitalWrite(neg,LOW);
  75.           digitalWrite(neg_,LOW);
  76.        
  77.      }
  78.      
  79.      
  80.     delay(500); // 1/2 seconds
  81. }
A hozzászólás módosítva: Júl 6, 2023
(#) etilalkohol válasza proba hozzászólására (») Júl 7, 2023 /
 
Köszi, igen, értem: az kvázi ugyanaz, mintha nulláznád, mivel 60 másodperces eltérést nézel (86400 alapon figyeled), nekem a nullázás azért fontos, mert percalapon figyelek (1440), így elég az int változóméret. Kipróbálom ezt is, kiderül melyik lesz kisebb kódméretű (megpróbálom az egészet beletenni a tiny13-ba, ha nem fér, akkor tiny45, ha abba sem, akkor tiny85
(#) etilalkohol válasza etilalkohol hozzászólására (») Júl 8, 2023 /
 
Nos, kész a program, végül nem sikerült tiny13-ba belepréselni, sajna az i2c-hez nem találtam megfelelő függvényeket ill. az 1K is kevésnek bizonyult. Tiny25-be már beleférne (1.9K lett) de kényelemből egy 85-ösbe tettem és ezzel tesztelem pár napig.
Kipróbáltam: egy szűz ds3231-et rátéve már egyből ketyeg de a kiolvasott szűz ébresztési idő irreális, ellenben ezen pont segít a léptető gomb megnyomása, ami nullázza is, így utána már rendben felülíródik és ketyeg is szépen. Ez azért fontos, mert a majdani elemcserénél sem kell semmi extra konfigurálás a ds-nek.
Köszönöm az ötleteket/segítséget mindenkinek!
Üdv, etil...
(#) phr3ak hozzászólása Júl 24, 2023 /
 
Mennyire pontos a DS3231? Nálam a 20 nap alatt kb +5mp -et siet.
(#) Bakman válasza phr3ak hozzászólására (») Júl 24, 2023 /
 
Évi két percet ír az adatlap, az napi kb. 0.329 másodperc, 20 nap alatt 6.575 másodperc. Elvileg belefér a tűrésbe. Párszor használtam az IC-t de ekkora eltéréssel nem találkoztam, maximum a felével. Ettől függetlenül nem lehet hibásnak tekinteni.

Ha zavar ez az eltérés tudod kompenzálni az Aging Offset nevű regiszterrel (0x10).
(#) phr3ak válasza Bakman hozzászólására (») Júl 24, 2023 /
 
Köszi lehet hogy egyszer kipróbálom. Meddig jegyzi meg? Amíg az elem tart?
(#) Bakman válasza phr3ak hozzászólására (») Júl 24, 2023 /
 
Igen,amíg az elem tart.
Következő: »»   9 / 9
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem