Category: Donanım


Birden fazla bilgisayarda zaman senkronizasyonuna ihtiyaç duyduğumuzda işimize yarayacak en kolay ve basit çözüm NTP (Network Time Protocol) kullanmak olacaktır. Özellikle otomasyon sistemlerinde birden fazla PLC ve operatör paneli olması üretilen alarm ve proses değerlerinin zamansal önemini arttırmaktadır. Keza sunucu sistemlerinde de bu konu önemlidir. Bu iş için saat bilgisi merkezi bir sunucudan zamansal gecikmeler hesaba katılarak alınır.

NTP Client Ayarları

Windows sistemde bir bilgisayarı NTP üzerinden senkron etmek için regedit ile sistem ayarlarından aşağıdaki adımlar izlenir.

Saat alınacak adres “NtpServer” alanına yazılır. Mevcut Çalışma grubundan bir bilgisayarda NTP server kurulmuş ise onun ip adresi yazılabilir. Bunun için ilgili server da firewall ayarlarında Port 123’e izin verilmelidir.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters]
"NtpServer"="192.168.1.10"

NtpClient etkin hale getirilir. (“Enabled” değeri, onluk sistemde “1” yapılır)

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient]
"Enabled"=dword:00000001

Hangi zaman periyotlarında zaman senkronizasyonu yapılacağı saniye cinsinden belirlenir.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient]
"SpecialPollInterval"=dword:00093a80

Windows Time Servisi kapatılarak, otomatikte yeniden başlatılır.

NTP Server Ayarları

Aynı şekilde NTP client ayarları yapılarak doğru saat ayarları sağlanmış olur. Bunun üzerine kendi networkümüzdeki bilgisayarlar için NTP server kurulumu aşağıdaki adımlarla kurabiliriz.

“AnnounceFlags” değeri, onluk sistemde “5” yapılır.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config]
"AnnounceFlags"=dword:00000005

“Enabled” değeri, onluk sistemde “1” yapılır.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer]
"Enabled"=dword:00000001

Windows Time Servisi kapatılarak, otomatikte yeniden başlatılır. Client bilgisayar isteklerine cevap verebilmek için Port 123 güvenlik ayarlarının yapılması gereklidir.

IAR ANSI-C uyumlu hoi bir derleyici. Hoş olmasının nedeni birçok denetleyiciye destek veriyor olması. Diğer yandan sadece bir ANSI-C derleyicisi yani kullandığınız denetleyiciyi tanıyor ama denetleyicideki modüllere hazır fonksiyonlar sunmuyor. Böyle oluncada bu modüllere ilgili fonksiyonları yazma kullanıcıya kalıyor. Gerçi Assembly ile program yazan birisi için bu durum çokta zorluk çıkarmaz.

Neyse sözü fazla uzatmadan hemen bir örnek yapalım.

Okumaya devam et

AVR Studio programının 4.12 versiyonu ile birlikte AVR GCC desteği eklendi. İyi kullanımlar

Assembly olarak yazdığımız kodun C versiyonu. Burada sadece biraz bekleyerek yavaş çekim yapıyoruz.

Okumaya devam et

“Merakım sonumu getirecek.” Bu da benden kitaplara geçecek bir söz olsun. Neyse buldum buluşturdum ve AVR ile ilgili ilk Assembly kodunu derledim.

Kodlar şöyle:

Okumaya devam et

C ile yapılıyorsa neden python ilede yapılmasın demiş sanırım birileri ve ortaya bu proje çıkmış herhalde.
http://pyastra.sourceforge.net/

İlginç ve güzel ama çok fazla ram ve bellek tüketiyor. Program belleği hadi neysede ram dayanmaz gibi buna. Mesela aşağıdaki programın derlenmesi sonucu program ve ram belleği kullanımı şöyle:

Peak RAM usage: 26 byte(s) (38.2%)
Program memory usage: 112 word(s) (11.0%)

Programımız ise şöyle:

Okumaya devam et