Arduino Mega ve Uno Maksimum Çalışma Süresi (Runtime) Var Mı?
  • Merhabalar, mega ve uno kartları serin, temiz, kuru ve antistatik kutu içerisinde ups ve jenaratör destekli bir sistemde(işyerimde :)) çalışmasında herhangi bir süre kısıtlaması var mıdır? millis() için yaklaşık 50 gün değer verilmiş. Bu süre sonunda sistem kendini resetlemez değil mi? Uzun süre çalışmalarda, sistem çalışma hızında herhangi bir yavaşlama olur mu?
  • milis yerine micros ile sistemini test edebilirsin. micros 70 dakikada bir resetleniyor. yani 50 gün beklemek yerine 70 dakika da sistemini test edersin. sorun yok ise milis ile yoluna devam edersin. süre sonunda sistem kendini resetlemez. sadece sayaç sıfırlanır. eğer belirli sürelerde işlem yapmak istiyorsan sayaç sıfırlanmasına karşı dirençli geliştirilmiş olan TimerFA kütüphanesini tavsiye ederim. TimerFA arkada micros fonksiyonunu kullanmakta. ama 70 dakikadan uzun periyotlar kullanıyorsanız işinize yaramayacaktır. 1sn 1dk 10dk gibi periyotlar da test ettim gayet güzel çalışıyor. 1 sn den kısa periyotlarda uzun süre kullanımda az da olsa kaymalar oluyor.
  • fatihAslamaci, verdiğin bilgiler için teşekkür ediyorum. micros'u senden duydum ve tanışıp kaynaşmak için deneme yapayım :)
    İyi eğlenceler..
  • FatihAslamacı beyin verdiği kütüphaneler gerçekten faydalı olabilir denemekte fayda var
  • micros()'u kullanarak 10:15'de denemeye başladığım program şu ana kadar 2 sn geri kaldı. 3 kez micros()' resetlemesine rağmen devam ediyor. Fakat şöyle bir problem yaşıyorum.
    micros'u 2 sabite tanımlıyorum. Zaman ve ExZaman olarak,
    Zaman = micros(); //diyerek
    if(Zaman - ExZaman) >= 1000000)
    {
    ExZaman = Zaman;
    if(Zaman < ExZaman) ResetCounter++;
    }
    diyerek resetlenme sayısını da alıyorum.
    millis() için 32bitlik binary değer alabiliyor denmiş. yani dec. olarak 4.294.967.295. micros() için de tahminim aynı değerdir (matematiksel olarak öyle çıkıyor) peki benim aradaki zaman kaymasını yani 4294 saniye için herhangi bir sorun yok fakat 967,295 microsaniye sayıp sıfırlanmasından dolayı için neredeyse 1 saniye geri kalması demek oluyor. Bu da yılda 2 saat farka sebep oluyor. Uzun süre çalışacak sistem için kötü.

    Günlük 20 sn, 4 günde 1sn ve 5 günde 1 saniye daha düşürdüğümde yılda birkaç dakikalık fark oluyor. Sistemin bu şekilde çalışmasında sorun oluşur mu? Kesmeler bu değerleri ne kadar etkiler?
    Benim için 450 günde +/-10 dakika çalışması yeterli. interrupt kullandığımdan dolayı rtc kullanamıyorum.
  • eğer geçen zamanı saniye cinsinden ölçmek istiyor isen (micros()/1000000) + ((4.294.967.295/1000000)*ResetCounter) şekilinde hesaplayabilirsin. sıfırları fazla veya eksik yazmış olabilirim. denemeden cevap verdim. ben olsam rtc olmadan böyle bir projeye cesaret edemezdim.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Login with Facebook
Açık kaynak kültürü gereği, çözdüğünüz problemlerin çözümlerini paylaşmayı lütfen unutmayın.