|
|
||||
|
KONULAR
Temel Eletronik
PIC 16F84 İLE SICAKLIK ÖLÇER DEVRESİ YAPIMI | PIC 16F84 İLE SICAKLIK ÖLÇER DEVRESİ YAPIMI |
|
|
|
PIC 16F84 İLE SICAKLIK ÖLÇER
Şemadan göreceğiniz gibi bir adet pic ve termistör ile PC seri portuna sıcaklık bilgisini ölçüp, yollayabiliyoruz. Bundan ucuzu can sağlığı... Termistör elemanı ısıyla direnci değişen bir dirençtir. Termistörün direnci ısı yükseldikçe düşer. Buraya kadar herşey gayet güzel, bir ohmmetre sorunu çözecek gibi görünüyor ama pek öyle kolay değil çünkü termistör LM35 ısı sensörünün aksine linear değil non-linear çalışır. Linear çalışma her 1 birime karşılık 1 birimlik değişim demektir. Non-Linear çalışma ise 1 birime karşılık 10 birim veya daha farklı bir değişim miktarının gözlenmesidir. Böyle bir özellikte algılayıcıyı bir mikroişlemci ile kullanmanın birkaç yolu vardır. En basit yöntem bir look-up yani karşılaştırma tablosu yapmaktır. Bu tabloda her birime karşılık gelen değer belli bir aralıkla yer alır ve mikroişlemci girişte olan sinyali bu tablodaki değerlerle karşılaştırıp buna göre çıkışın ne olması gerektiğine karar verir. Giriş ve karşılık çıkış değerleri denemelerle tek tek bulunmalı ve mikroişlemci programına yazılmalıdır. Bu hem çok zahmetli hem de çok program hafızası kullanan bir yöntemdir. PIC 16F84 ne yazık ki böyle bir yöntemi uygulmak için çok küçük bir hafızaya sahip... İkinci yöntem ise giriş ile çıkış arasındaki ilişkiyi matematiksel olarak ifade etmek ve bu ifadenin denklemini kullanarak mikroişlemcinin hesap yaparak giriş değerine karşılık gelen çıkış değerini bulmasını sağlamaktır. Tabii bu N- serisinden bir non-linear polinomun bir mikroişlemci tarafından hesap yapma yöntemi olarak benimsenmesi demektir. Buradaki zorluk makine kodu ile çalışan ve çarpma yapmayı bile tek komutla beceremeyen bir aptala kare aldırmaktır. Kısaca termistorden gelen değerler incelendiğinde denklem:
PIC üzerinde bu işlemi yapmaksa başka bir başağrısı ama hafıza alanı yetip iş bitince tüm zorluklar unutulur. Bir direnç değerini pic ile okumanın en klasik yolu bir kondansatörü şarj edip direnç üzerinden boşaltarak boşalma zamanını ölçmektir. Bu zaman direnç değeriyle doğru orantılıdır. Devre şemadan görüldüğü gibi yaptığı işe oranla çok basittir. Ölçülen değerleri bir COM port aracılığıyla PC terminal emülasyon programında görebilirsiniz. Daha evvel yayınladığım RS232 uygulamalarını okuyanlar bu iş için en uygun programın win95/98 içinde bulunan accessories deki HYPER-TERMINAL olduğunu hatırlayacaklardır. Devreyi hatasız yapıp voltaj vermeden önce bazı ayrıntılara dikkatinizi çekmek istiyorum:
Şimdi terminal programının SETUP’ına göz atalım:
|
| < Prev | Next > |
|---|
| Elektro Teknoloji |
|