Picproje Elektronik Sitesi

BİLGİSAYAR => Tek Kartta Bilgisayar (SBC) => Raspberry Pi => Konuyu başlatan: wtrk - 09 Şubat 2022, 17:29:03

Başlık: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: wtrk - 09 Şubat 2022, 17:29:03
Arkadaşlar merhaba.
Raspberry pi ile ilgili bazı konularda desteğe ihtiyacım var.
Birincisi : Raspberry Pi'nin kapanıp açtığında yada bir müddet kapalı kaldığında kaldığında saati şaşırıyor, daha doğrusu geçmişte kalıyor. Bu sorunu nasıl çözebilirim acaba ? DST modül taktığım cihazda da tam verimli olmadı onda da tarih duruyor ancak saat şaşırıyor.

ikinci sorum ise : sqlite kurdum ancak sqlite zaman dilimi CET yani +00 olarak aldığı için hep 3 saat geriden geliyor. Yani aktif olarak Pi'nin saati 17:00 olmaına rağmen db'ye yaptığı kayıtlar 14:00 oluyor.
Daha önce bu şekilde sqlite'te problem yaşayan oldu mu ?

Teşekkürler.
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: mehmet - 09 Şubat 2022, 17:57:47
İnternet bağlı ise "ntp" servisini
çalıştırısanız, zamanı otomatik
günceller.

Kurulumda ya da sonrasında ülke/şehir
ayarını "Europe/Istanbul" olarak
değiştiriseniz sıkıntınız artık
olmayabilir.
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: wtrk - 09 Şubat 2022, 18:52:42
Alıntı yapılan: mehmet - 09 Şubat 2022, 17:57:47İnternet bağlı ise "ntp" servisini
çalıştırısanız, zamanı otomatik
günceller.

Kurulumda ya da sonrasında ülke/şehir
ayarını "Europe/Istanbul" olarak
değiştiriseniz sıkıntınız artık
olmayabilir.

Hocam internet yok, lokal çalışacak
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: muhendisbey - 09 Şubat 2022, 19:19:21
RTC kullanmalısınız

https://www.robotistan.com/raspberry-pi-rtc-modulu-super-capacitor

gibi. Yalnız belirteyim bunda süperkapasitör yazmasına rağmen süperkapasitör değil batarya var. Umarım şarj edilebilir koymuşlardır.
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: wtrk - 09 Şubat 2022, 20:10:57
Alıntı yapılan: muhendisbey - 09 Şubat 2022, 19:19:21RTC kullanmalısınız

https://www.robotistan.com/raspberry-pi-rtc-modulu-super-capacitor

gibi. Yalnız belirteyim bunda süperkapasitör yazmasına rağmen süperkapasitör değil batarya var. Umarım şarj edilebilir koymuşlardır.

Belli zamanlarda değiştiririz hocam hiç önemli değil önemli olan işimizi görsün.

Teşekkürler
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: fide - 09 Şubat 2022, 20:18:33
Rtc modüllerde belirli zaman aralıklarında saati güncelleme iz gerekiyor. Ayda 20-30 sn civarında ileri geri kayabilir. 2 farklı çözüm yolu önerebilir. Eğer açık hava gören bir yerdeyseniz GPS ile en güncel saat-tarih verisi alabilirsiniz. Şimdi ismi aklımda değil ama datetime benzeri bir kütüphane var. Saat ve tarih ile ilgili toplama çıkarma işlemleri yapılabiliyor. En stabil çözüm bu.
İkinci olarak GSM modül bağlayın. Veri kullanmasamıx bile şebeke saat senkronizasyonu açarsanız size lokal saati hatasız sağlar ama hattı açık tutmak için ara ara kontör yüklemesi yapmalısınız.

Kendinden pilli rtc modüller (486 anakartlarda çok kullanılırdı.) stabil olsa da pahalı olur diye düşünüyorum.

(https://n11scdn.akamaized.net/a1/640/elektronik/diger-aksesuar-yedek-parca/dallas-ds1287-dip-gercek-zamanli-saat__0497136702782634.jpg)
300tl civarında
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: wtrk - 09 Şubat 2022, 20:22:40
Alıntı yapılan: fide - 09 Şubat 2022, 20:18:33Rtc modüllerde belirli zaman aralıklarında saati güncelleme iz gerekiyor. Ayda 20-30 sn civarında ileri geri kayabilir. 2 farklı çözüm yolu önerebilir. Eğer açık hava gören bir yerdeyseniz GPS ile en güncel saat-tarih verisi alabilirsiniz. Şimdi ismi aklımda değil ama datetime benzeri bir kütüphane var. Saat ve tarih ile ilgili toplama çıkarma işlemleri yapılabiliyor. En stabil çözüm bu.
İkinci olarak GSM modül bağlayın. Veri kullanmasamıx bile şebeke saat senkronizasyonu açarsanız size lokal saati hatasız sağlar ama hattı açık tutmak için ara ara kontör yüklemesi yapmalısınız.

Kendinden pilli rtc modüller (486 anakartlarda çok kullanılırdı.) stabil olsa da pahalı olur diye düşünüyorum.

(https://n11scdn.akamaized.net/a1/640/elektronik/diger-aksesuar-yedek-parca/dallas-ds1287-dip-gercek-zamanli-saat__0497136702782634.jpg)
300tl civarında

Hocam kapı açık-kapalı bilgisini alıyorum , ancak hangi tarih ve saatler arasında kaç saat açık kaldı bunların da bilgisini toplamam gerekiyor.
Bu yüzden saat bilgisi önemli.
Burada takıldığım konulardan birisi de sqlite'in zamanının İngiltere saatiyle çalışması
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: fide - 09 Şubat 2022, 21:13:43
İnternet bağlantısı yok ise Greenwich'e göre almaması gerekir.
Raspberry pi üzerinde gui masaüstünde sağ tıklayınca çıkan menüde en sağda localisation ( lokasyon ayarı) var. Oradan ülke seçip düzeltebilirsiniz.

Diğer bir yöntem terminalde sudo raspi-config ile yine localisation ayarında saat dilimi değiştirilebilir.
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: wtrk - 09 Şubat 2022, 21:23:03
Alıntı yapılan: fide - 09 Şubat 2022, 21:13:43İnternet bağlantısı yok ise Greenwich'e göre almaması gerekir.
Raspberry pi üzerinde gui masaüstünde sağ tıklayınca çıkan menüde en sağda localisation ( lokasyon ayarı) var. Oradan ülke seçip düzeltebilirsiniz.

Diğer bir yöntem terminalde sudo raspi-config ile yine localisation ayarında saat dilimi değiştirilebilir.


Oraları Turkey yaptım hocam maalesef aynı
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: fide - 09 Şubat 2022, 22:02:28
SQLite kendi başına saat bilgisi eklenmez datanıza. Kullandığınız C yada Python fonksiyonu da saati sistemden alır. Sistem saati ne ise ona göre çıktı verir. Kod yada gmt olan SQLite datası örneği paylaşır mısınız?
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: MC_Skywalker - 09 Şubat 2022, 22:10:36
1-) DS 1307'li gereçek zaman saati modülü temin edilir, Aşağıdaki işlemleri yapabilmek için Rpi mutlaka imternete bağlı olmalıdır.

2-) Aşağıdaki şekilde bağlanır.
DS 1307 Modül 5V pini  ---> RPi pin 2
DS 1307 Modül SDA pini ---> RPi pin 3
DS 1307 Modül SCL pini ---> RPi pin 5
DS 1307 Modül GND pini ---> RPi pin 6

3-) RPi çalıştırılıp config programı ile I2C portu aktif edilir ve PRi reboot edilir
sudo raspi-config
4-) SMBUS ve I2C ile ilgili programlar kurulur
sudo apt-get install python-smbus i2c-tools
5-) I2C adresi bulunur (yanılmıyorsam 68 gibi bir değer döndürecek)
sudo i2cdetect -y 1
6-) config.txt içine RTC cip bilgileri yazılır
sudo nano /boot/config.txtyazılacak kod
dtoverlay=i2c-rtc,ds1307kaydedilir ve önce;
sudo rebootRpi açılıca yeniden
sudo i2cdetect -y 1ile adrese kalırı daha önce 68 yazan yerde UU yazdığı görülür.

7-)çakma donanım sati aşağıdaki kodlar sırayla yürütülüp devre dışı bırakılır
sudo apt-get -y remove fake-hwclock
sudo update-rc.d -f fake-hwclock remove
sudo systemctl disable fake-hwclock

8-) hwclock-set dosyası içindeki aşağıdaki satırların başına yorum işaret # eklenir.
#if [ -e /run/systemd/system ] ; then
# exit 0
#fi
bu halde olacak.
Ardından aşağıdaki satırlarada yorum işareti eklenir ve kaydedilir
/sbin/hwclock --rtc=$dev --systz --badyearve
/sbin/hwclock --rtc=$dev --systz
9-) İnternet bağlı olduğunda otomatikman Saat sekronize edilir.
dateile kontrol edilir
sudo hwclock -wile RTC ye yazılur
sudo hwclock -rile RTC den okunur.

%99,9 SQL zaman sorunu çözülmüş olur.
Ek:
Rpi I2C pinlerinin 5V toleransı var mı, yok mu aklımda değil. RTC ile arasına lojik seviye uydurucu gereke bilir.
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: wtrk - 10 Şubat 2022, 11:06:59
Alıntı yapılan: MC_Skywalker - 09 Şubat 2022, 22:10:361-) DS 1307'li gereçek zaman saati modülü temin edilir, Aşağıdaki işlemleri yapabilmek için Rpi mutlaka imternete bağlı olmalıdır.

2-) Aşağıdaki şekilde bağlanır.
DS 1307 Modül 5V pini  ---> RPi pin 2
DS 1307 Modül SDA pini ---> RPi pin 3
DS 1307 Modül SCL pini ---> RPi pin 5
DS 1307 Modül GND pini ---> RPi pin 6

3-) RPi çalıştırılıp config programı ile I2C portu aktif edilir ve PRi reboot edilir
sudo raspi-config
4-) SMBUS ve I2C ile ilgili programlar kurulur
sudo apt-get install python-smbus i2c-tools
5-) I2C adresi bulunur (yanılmıyorsam 68 gibi bir değer döndürecek)
sudo i2cdetect -y 1
6-) config.txt içine RTC cip bilgileri yazılır
sudo nano /boot/config.txtyazılacak kod
dtoverlay=i2c-rtc,ds1307kaydedilir ve önce;
sudo rebootRpi açılıca yeniden
sudo i2cdetect -y 1ile adrese kalırı daha önce 68 yazan yerde UU yazdığı görülür.

7-)çakma donanım sati aşağıdaki kodlar sırayla yürütülüp devre dışı bırakılır
sudo apt-get -y remove fake-hwclock
sudo update-rc.d -f fake-hwclock remove
sudo systemctl disable fake-hwclock

8-) hwclock-set dosyası içindeki aşağıdaki satırların başına yorum işaret # eklenir.
#if [ -e /run/systemd/system ] ; then
# exit 0
#fi
bu halde olacak.
Ardından aşağıdaki satırlarada yorum işareti eklenir ve kaydedilir
/sbin/hwclock --rtc=$dev --systz --badyearve
/sbin/hwclock --rtc=$dev --systz
9-) İnternet bağlı olduğunda otomatikman Saat sekronize edilir.
dateile kontrol edilir
sudo hwclock -wile RTC ye yazılur
sudo hwclock -rile RTC den okunur.

%99,9 SQL zaman sorunu çözülmüş olur.
Ek:
Rpi I2C pinlerinin 5V toleransı var mı, yok mu aklımda değil. RTC ile arasına lojik seviye uydurucu gereke bilir.

Hocam zamanında DS3231 almışım onunlada aynı işlemleri denesem olur mu acaba ?
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: fahri- - 10 Şubat 2022, 11:09:13
Eğer uzun süreli durumlarda zaman kayması az olsun isteniyorsa DS3232 öneririm. Ayda max 3-5 sn kayıyor. 2-3 TL lik bir backup pili ile (CR3032), yıllarca çalışıyor.
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: muhendisbey - 10 Şubat 2022, 11:15:04
Alıntı yapılan: fahri- - 10 Şubat 2022, 11:09:13Ayda max 3-5 sn kayıyor.
Gecikmenin, ya da ileri gitmenin durumuna göre haftada ya da ayda bir kez düzenleme yapılırsa kusursuz bir saat elde edilir.
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: wtrk - 10 Şubat 2022, 11:22:56
Alıntı yapılan: fahri- - 10 Şubat 2022, 11:09:13Eğer uzun süreli durumlarda zaman kayması az olsun isteniyorsa DS3232 öneririm. Ayda max 3-5 sn kayıyor. 2-3 TL lik bir backup pili ile (CR3032), yıllarca çalışıyor.

Yaklaşık 15 kadar almışım 3231 ancak sorun değil 3232'de alabilirim teşekkürler hocam.
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: MC_Skywalker - 10 Şubat 2022, 11:33:45
config.txt dosyasına yapacağın ekleme kısmı değişiyor
DS3231 için aşağıdaki kod yazılacak ve 3.3V ile çalıştığından modülün 3.3V ucu Rpi de 1 nolu pine gidecek.
dtoverlay=i2c-rtc,ds3231
DS3232 Rpi ile kullanımını bilmiyorum google emmiye sormalı
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: fahri- - 10 Şubat 2022, 13:41:03
Alıntı yapılan: MC_Skywalker - 10 Şubat 2022, 11:33:45DS3232 Rpi ile kullanımını bilmiyorum google emmiye sormalı
DS3232 ile DS3231 aynı. Sadece DS3231 in kayması biraz daha fazla.
Başlık: Ynt: Raspberry PI SQLite Zaman diliminin değiştirilmesi ve saat ayarı hakkında
Gönderen: fahri- - 10 Şubat 2022, 13:42:47
Denemelerini DS3231 yapıp çalıştır. İş bittikten sonra yerine DS3232 takarsın istediğin zaman.