Çeşitli istatistik hesaplamalara dair aldığım notlar aşağıdaki gibidir. Bu fonksiyonların bir kısmının C dilinde gerçeklenmiş halleri de https://github.com/enginsubasi/esclib/blob/master/src/math/statistic.c adresindedir.
11 Mart 2021 Perşembe
7 Şubat 2021 Pazar
Sensör ve Transducer Nedir? Farkları Nelerdir?
Sensör ve transducer yer yer iç içe giren ve karışan kavramlardır. Bu yazıda bu iki kavram arasındaki benzerlik ve farklılıklardan bahsedeceğim.
[2] |
Sensör
Transducer
Aradaki Önemli Farklar
- Sensör fiziksel değerleri kullanıcıların değerlendirebileceği veya anlamlandırabileceği formata çevirir. Transducerlar fiziksel değeri başka bir fiziksel değere çevirir.
- Sensör kendisinden başka bir alt sistem bulundurmayabilir. Transducerler içlerinde en az bir sensör ve çıkış sinyalini/fiziksel değerini sürecek bir sinyal koşullama birimi içerir.
- Sensörün birincil görevi fiziksel değeri anlamlı bir değere çevirmektir. Transducerın birincil görevi ise fiziksel değeri diğer değere dönüştürmektir.
- Sensör örnekleri: Barometre, accelerometre (ivmeölçer), gyroscope (dönüölçer).
- Transducer örnekleri: Thermocouple, thermistor, antenler.
Referanslar:
6 Şubat 2021 Cumartesi
Accuracy, Precision & Resolution Kavramları (Doğruluk, Hassasiyet, Çözünürlük)
Accuracy, Precision ve Resolution kavramları ölçüm sistemlerinde sıklıkla karşımıza çıkan ifadelerdendir. Aynı zamanda bu sistemler için kullanılan sensörlerde de benzer ifadelere rastlayabilirsiniz.
[1] |
Bir ölçüm sisteminin performansı sistemin aynı şartlarda aynı sonucu vermesi ile ölçülebilir. Bu durumu başlıkta yer alan kavramlarla açıklayabiliriz.
Accuracy, doğru ölçüme ne kadar yakın olduğunuzu ifade eder.
Precision, arka arkaya alınan ölçümlerde ne kadar tutarlı olduğunu, aynı veya yakın değeri verdiğini ifade eder.
Resolution, ölçümün adım aralığıdır. Örnek olarak 3.3V bir sistemde 12 bit ölçüm alacaksanız çözünürlüğünüz (3.3/4095)V kadardır.
Bu kavramların anlatımını güçlendirmek için aşağıdaki görsel oldukça faydalıdır. Görselde hedefin orta noktası olması gereken ölçüm değeridir. Etrafındaki yıldızlar ise ölçüm değerleridir. Bu 4 görseli sınıflandıracak olursak;
- Sol Üst: Yüksek accuracy, düşük precision. (Tolere edilebilir)
- Sağ Üst: Yüksek accuracy, yüksek precision. (En iyi durum)
- Sol Alt: Düşük accuracy, düşük precision. (En kötü durum)
- Sağ Alt: Düşük accuracy, yüksek precision. (Tolere edilebilir)
Biz tasarladığımız ölçüm sistemlerinde yüksek accuracy ve precision bekleriz. Bu ölçüm sistemimizin performansını yüksek seviyede tutmamızı sağlar ancak bunun mümkün olmadığı durumlarda çeşitli tolerans metotları geliştirmek gerekir. Çünkü geliştirilecek uygulamaya uygun ölçüm sistemini tasarlamak için fiyat/performans kriterinden dolayı en iyi durumu oluşturacağınız sistemi oluşturamayabilirsiniz.
6 Ocak 2021 Çarşamba
Lineer/Proportional/Oransal Çıkışlı Bir Analog Sensörün Okunması, Sensör Okuma ile ilgili Temel Mantıklar
Sensör verilerinin okunması ve anlamlandırılması kontrol sistemleri için en temel girdiyi oluşturur. Sensör bilgileri, sensörün tipine, iç yapısına, ölçtüğü fiziksel niteliğin davranışına göre farklılık gösterebilir. Sensör çıkışları lineer veya bir polinoma bağlı olabilir.
Bu yazı kapsamında lineer çıkışlı sensörler hakkında detaylı bir açıklama yaptıktan sonra polinomsal çıkışlı bir sensör hakkında da kısa bir yorum yapıp bitireceğim.
Lineer çıkışlı analog bir sensöre örnek olarak SS495B ve LM35 üzerinden ilerleyeceğiz. Aşağıda gördüğünüz görselde SS495B'nin gauss/çıkış voltaj grafiği verilmiştir. Bu sensörün ölçüm yaptığı fiziksel nitelik ile çıkış voltajının lineer olduğu grafikten bellidir. Çıkış gerilimi gauss değerine göre lineer olarak artıp azalır.
SS495B Çıkış Karakteristiği |
Gauss = ( Vout - 2.5 ) * ( 640 / 4.5 )
LM35 Çıkış Karakteristiği |
Bu bilgilerden hareketle bu sensörün çıkışını santigrat derece şeklinde ifade etmek için aşağıdaki formül kullanılır.
12 Aralık 2020 Cumartesi
Inbox Zero
"Inbox Zero" kavramı Marlin Mann tarafından ortaya atılmış, e-mail yönetimi ile ilgili bir yaklaşımdır. Amacı e-mail yönetimini doğru yönlendirerek kişilerin çalışma verimini arttırmaktır.
- Sil
- Yetkilendir/Delege et
- Yanıtlama (<=2 dakika)
- Erteleme (>2 dakika)
- Yapma (<=2 dakika)
- E-mail programınızı açık tutmayın.
- E-mail yoğunluğunuza göre gelen kutunuzu sadece belirli saatlerde kontrol edin. Yoğun mail kullanımı olan kişilerde saat başları seçilebilir. Daha az e-mail trafiği olan kişilerde ise günde iki defa yeterli olabilir.
- İlk olarak silebileceğiniz mailleri silin veya arşivleyin
- Sonrasında başkası tarafından yanıtlanabilecek olan e-mailleri ilgili kişilere iletin.
- İki dakika veya daha kısa sürede cevaplanabilecek e-maillere hemen cevap verin.
- Cevabı iki dakikadan uzun ama daha sonra cevaplanabilecek e-mailleri başka bir "yanıtlanacaklar" klasörüne taşıyın.
- "Yanıtlanacaklar" klasöründeki e-maillere geri dönüş yapmak için gün içerisinde bir saat belirleyin ve o aralıkta tüm yanıt bekleyen maillerinize dönüş yapın.
7 Aralık 2020 Pazartesi
Cooperative Multitasking
Bu yazıda cooperative multitasking (CM olarak anılacak) kavramı üzerine bildiklerimi ve gömülü sistemler üzerinde bu yapıya benzer bir çalışma metodolojisi ile nasıl geliştirme yaptığımdan bahsedeceğim.
CM kavramı non-preemptive multitasking olarakta bilinir. Temel olarak görevi taskları sıralı bir şekilde işletmektir. Bilinen modern multitasking yapılarından farkı ise önceliğe göre aktif bir task switching yapmamasıdır. CM yapısında, işlemci aynı anda bir task ile ilgilenir ve o task tamamlanana kadar diğer taskların çalışmasına izin vermez. Bu yapı Windows 3.1x'te kullanılmıştır.[1]
CM yapısı ile çalışacak bir sistemde taskların zamanları önemlidir. Bu yüzden yazılacak taskların süreleri ve gereksinim durumu iyi analiz edilmelidir. Vakit alan bir task önemli bir taskı engellerse bu sistemi verimsiz/anlamsız/zararlı hale getirebilir.
CM kavramını görselleştirmek için aşağıdaki görseli kullanalım. Burada örnek olarak Task A 20ms de bir çalışır ve task aktif olduktan sonra 3 ms boyunca iş yapar. Diğer tasklarda da benzer şekilde çalışma periyotları ve çalışma süreleri tanımlanmıştır.
İlk ve en basit kural çalışma süresi, çalışma periyodundan büyük olmalıdır. Bu ikisi arasındaki fark ne kadar yüksek olursa ilgili taskın işlemciye yükü o kadar düşük olur.
- @10. ms Task C çalışır ve 11. ms'de biter.
- @15. ms Task B çalışır ve 17. ms'de biter.
- @20. ms Task A çalışır ve 23. ms'de biter. Bu esnada Task A'nın da çalışma periyodu gelir ancak Task A bitmediği için sırasını bekler. Task A biter bitmez 23. ms'de Task C başlar. 24. ms'de biter. Bu kaymadan dolayı Task C'nin bir sonraki başlama zamanı kayar ve Task C 33. ms'de çalışır.
- @30. ms Task B çalışır ve 32. ms'de biter.
- @33. ms Task C çalışır ve 34. ms'de biter.
- @40. ms Task A çalışır ve 43. ms'de biter.
- @43. ms Task C çalışır ve 44. ms'de biter.
- @45. ms Task B çalışır ve 47. ms'de biter.
Referanslar
Transistörlü Röle Sürme Devresinde Diyot Kullanımının Önemi
Transistörlü Röle Sürme Devresinde Diyot Kullanımının Önemi Elektronik devrelerde diyotların farklı görevleri bulunur. Bu yazıda, bir transi...
-
Bir haberleşme yapısı farklı seviyede katmanlardan oluşur. Bu yazıda bahsedeceğim RS-232, RS-485 ve RS-422 katmanları fiziksel katman seviye...
-
ADC (Analog-to-digital converter, Analogtan Dijitale Çevirici) analog verileri dijital verilere çeviren çevre birimleridir. ADC yapıları ge...
-
Giriş Universal Asynchronous Receiver Transmitter (Evrensel Asenkron Alıcı/Verici) kelimelerinin baş harflerinden oluşur. Adından anlaşı...