İçeriğe geç

Menü

Berk Akademi
Yorumlar Google yorumları Özel Ders Başvuru Ücretsiz ön görüşme Ana Sayfa

micro:bit ile Termometre Nasıl Yapılır? Sıcaklık Sensörü Kullanımı

microbit-ile-termometre-sicaklik-sensoru-kullanimi
Bu yazıda neler var?
  1. micro:bit sıcaklığı nasıl ölçer?
  2. MakeCode ile sıcaklığı ekranda göster
  3. A düğmesine basınca ölçüm alan termometreyi kur
  4. Aynı termometreyi MicroPython ile yaz
  5. Ölçüm ve ekran sorunlarını nasıl kontrol edersin?
  6. Sık Sorulan Sorular

micro:bit ile termometre yapmak için harici bir sıcaklık sensörüne ihtiyaç duymadan kartın yerleşik sıcaklık ölçümünden yararlanabilirsin. MakeCode içindeki sıcaklık bloğundan alınan değer, micro:bit’in LED ekranında santigrat derece cinsinden gösterilebilir.

Bu ölçüm, kartın işlemcisindeki sıcaklık bilgisinden yararlanarak bulunduğu ortam hakkında yaklaşık bir fikir verir. Bu nedenle proje, ortamın sıcak olup olmadığını karşılaştırmak için kullanışlıdır; hassas ölçüm yapan bir ortam termometresi gibi yorumlanmamalıdır.

micro:bit sıcaklığı nasıl ölçer?

micro:bit üzerindeki sıcaklık ölçümü, kartın işlemcisinin sıcaklığını temel alır. İşlemci, kart çalışırken çevresindeki havaya yakın bir sıcaklıkta bulunabildiği için bu değer ortam sıcaklığına dair yaklaşık bir sonuç verebilir. Konuyla ilgili ayrıntıları micro:bit’in resmî sensör açıklamasında inceleyebilirsin.

Bunu günlük hayattaki termometreye benzetebilirsin. Bir termometre bulunduğu ortamdan sıcaklık bilgisi alıp sayısal bir değer gösterir. micro:bit de benzer şekilde bir sıcaklık değeri üretir, ancak ölçümün kaynağı kartın işlemcisidir. Bu yüzden kartın bulunduğu yer, çalışma şekli ve çevresindeki koşullar gösterilen değeri etkileyebilir.

Örneğin micro:bit’i uzun süre elinde tutarsan elinin sıcaklığı karta geçebilir. Kart yoğun çalıştığında kendi işlemcisi de biraz ısınabilir. Daha anlamlı bir karşılaştırma yapmak için micro:bit’i bir süre aynı ortamda sabit bırakıp ardından ölçüm almak daha uygun olur. Sonucu yorumlarken tek bir sayıya kesin ölçüm gözüyle bakmak yerine farklı ortamlardaki değerleri karşılaştırabilirsin.

MakeCode ile sıcaklığı ekranda göster

MakeCode ile sıcaklığı ekranda göster

MakeCode’da sıcaklık değerini göstermek için Giriş kategorisindeki sıcaklık bloğunu, Temel kategorisindeki sayı gösterme bloğunun içine yerleştirebilirsin. Sıcaklık bloğu karttan sayısal bir değer alır, sayı gösterme bloğu da bu değeri LED ekranında kaydırarak gösterir.

  1. MakeCode editörünü aç ve yeni bir micro:bit projesi oluştur.
  2. Temel kategorisinden sürekli döngüsü bloğunu çalışma alanına ekle.
  3. Temel kategorisinden sayı göster bloğunu bulup sürekli döngüsünün içine yerleştir.
  4. Giriş kategorisini aç ve sıcaklık bloğunu sayı göster bloğunun sayı alanına sürükle.
  5. Programı simülatörde çalıştır veya micro:bit’e yükle.

Sıcaklık değeri santigrat derece, yani °C cinsinden okunur. Örneğin ekranda 24 görünüyorsa bu değer yaklaşık 24 °C anlamına gelir. Sayı iki basamaklı olduğunda LED’ler sınırlı olduğu için değer ekranda soldan sağa doğru kayarak okunur. MakeCode’daki sıcaklık bloğunun çalışma biçimi ve sayı gösterme davranışı resmî MakeCode açıklamasında örneklerle gösterilir.

Blokların metin karşılığı şu şekildedir:

basic.forever(function () {
    basic.showNumber(input.temperature())
})

Sıcaklık ölçümünü sürekli döngüye bekleme bloğu eklemeden koyduğunda micro:bit ölçüp göstermeyi arka arkaya sürdürür. Sayı ekranda kayarken yeni ölçümün başlaması, değeri takip etmeyi zorlaştırabilir. Bu nedenle daha sonra ölçümü bir düğmeye basınca başlatmak, sonucu okumak için daha rahat bir kullanım sağlayabilir.

A düğmesine basınca ölçüm alan termometreyi kur

A düğmesine basınca ölçüm alan termometreyi kur

Termometreyi, A düğmesine her bastığında sıcaklığı bir kez okuyacak ve ölçüm sonucuna göre bir simge gösterecek şekilde kurabilirsin. Bunun için ölçtüğün değeri bir değişkende saklayıp hem sayı gösteriminde hem de karşılaştırmalarda kullanacaksın.

Değişkeni, üzerine son ölçüm sonucunu yazdığın bir not gibi düşünebilirsin. Yeni bir ölçüm yapıldığında eski değerin yerine yenisi yazılır.

  1. MakeCode'da Girdi bölümünden A düğmesine basılma olayını çalışma alanına ekle. Aşağıdaki blokları bu olayın içine yerleştir.
  2. Değişkenler bölümünde sicaklik adında bir değişken oluştur. Değişkene değer atayan bloğa, Girdi bölümündeki sıcaklık değerini yerleştir.
  3. Temel bölümünden sayı gösterme bloğunu ekle ve içine sicaklik değişkenini koy. Sayı gösterildikten sonra ekranı temizleyen bloğu ekle.
  4. Mantık bölümünden bir eğer bloğu ekle. Koşulu sicaklik > 28 olarak kur ve koşulun içine LED'lerle güneşe benzeyen bir şekil çiz.
  5. İlk koşulun altına ayrı bir eğer bloğu ekle. Koşulu sicaklik < 15 olarak kur ve içine kar tanesine benzeyen bir şekil çiz.

Ölçüm 29 °C ise önce 29 sayısı kayar, ardından güneş şekli görünür. Ölçüm 15 °C ise yalnızca sayı gösterilir; 15 ve 28 değerlerinde, ayrıca bu iki değer arasında ek simge gösterilmez.

Koşulları kurarken kullandığın karşılaştırma ve sıralama becerilerini Algoritmik Düşünme Testi ile de inceleyebilirsin.

Aynı termometreyi MicroPython ile yaz

MicroPython ile aynı işlemi yapmak için A düğmesini döngü içinde kontrol edebilir, basıldığında sıcaklığı bir değişkene kaydedebilirsin. Aşağıdaki örnekte simgeler, LED ekranın üzerinde özel olarak çizilir.

from microbit import *

gunes = Image("90909:09990:99999:09990:90909")
kar = Image("90909:09990:99999:09990:90909")

while True:
    if button_a.was_pressed():
        sicaklik = temperature()
        display.scroll(str(sicaklik))
        display.clear()

        if sicaklik > 28:
            display.show(gunes)
        elif sicaklik < 15:
            display.show(kar)

    sleep(50)

was_pressed(), son kontrolden bu yana A düğmesine basılıp basılmadığını bildirir. temperature() bir kez çağrılır; ekranda gösterilen ve koşullarda karşılaştırılan değer aynı ölçümdür.

Ölçüm 29 °C olduğunda önce 29 kayar, ardından güneş simgesi görünür. Ölçüm 15 °C olduğunda 15 kayar ve ekran temizlenir; ek bir simge gösterilmez.

Ölçüm ve ekran sorunlarını nasıl kontrol edersin?

Beklemediğin bir sıcaklık değeri veya simge görürsen hem ölçüm koşullarını hem de programın sırasını kontrol edebilirsin.

  • Kartı elinden bırakarak ölçümü tekrarla: Kartı bir yüzeye koyup bir süre elinde tutmadan bekle. Ardından A düğmesine basarak yeni değeri önceki ölçümle karşılaştır.
  • Sıcaklık değişkenini kontrol et: A düğmesine basıldığında sıcaklığın bir kez okunup değişkene kaydedildiğinden emin ol. Sayıyı gösterirken ve koşulları değerlendirirken aynı değişkeni kullanırsan simge, ekranda gösterdiğin ölçüme göre seçilir.
  • Ekrandaki gösterimi izle: Birden fazla basamak içeren sayılar ekranda kayarak gösterilir. Başka bir döngü veya olay ekrana yazıyorsa sayının gösterimini kesip kesmediğini kontrol et; yeni gösterimi önceki gösterim tamamlandıktan sonra başlatacak şekilde programı düzenle.
  • Sınır değerlerini dene: Koşulları sınamak için sıcaklık değişkenine geçici olarak 15 ve 28 değerlerini ver. Her değerde hangi koşulun çalıştığını izle ve <, >, <= ve >= işaretlerinin eşitlik durumunu nasıl etkilediğine bak.

Kartı aynı ortamdaki güvenilir bir termometreyle karşılaştırmak da farkları görmene yardımcı olabilir. Ancak micro:bit sıcaklığı çiplerinin ısısından yararlanarak belirlediği için kartın kendi ısınması ve bulunduğu ortam sonucu etkileyebilir; bu karşılaştırma kesin bir doğruluk testi olarak kullanılmamalıdır.

MakeCode'daki sayı gösterme bloğunun çok basamaklı değerleri nasıl kaydırdığını incelemek istersen MakeCode sayı gösterme açıklamasına bakabilirsin.

Sık Sorulan Sorular

micro:bit sıcaklığı hangi birimde gösterir?

micro:bit'in sıcaklık değeri Santigrat derece (°C) cinsindendir. Örneğin ekranda 22 görüyorsan okunan sıcaklık 22 °C'dir.

Sıcaklık 15 veya 28 derece olduğunda hangi simge görünür?

15 veya 28 derecede görünen simge, programındaki koşullara ve bu koşullara bağladığın simgelere bağlıdır. Örneğin sıcaklık < 15 koşulu 15'te, sıcaklık > 28 koşulu da 28'de sağlanmaz; eşitliği kapsamak istersen ilgili koşulda <= veya >= kullanabilirsin.

Ölçümü ve sınır değerlerini denedikten sonra koşulları istediğin sıcaklık aralıklarına göre düzenleyebilirsin.

Bu içerik aradığın cevabı verdi mi?
Yanıtın, hangi yazıları geliştirmemiz gerektiğini anlamamıza yardımcı olur.
Bu içeriğin üretilmesinde yapay zeka araçlarından destek alınmıştır.

Bu konudan sonra ne okuyabilirsin?

Tüm yazılar

İlgili Eğitimler

Berk Keskin, yazılım geliştirici ve eğitmen
Yazar

Berk Keskin Kimdir?

Yazılıma 12 yaşında başladı; İzmir Ekonomi Üniversitesi'ni bölüm birincisi ve yüksek şeref öğrencisi olarak tamamladı. Bugün yalnızca eğitim vermekle kalmıyor, sektörde aktif olarak yazılım projeleri geliştiriyor ve gerçek dünya deneyimini birebir derslerine taşıyor. Ezberden uzak, mühendislik zihniyetini merkeze alan sürdürülebilir öğrenme sistemleri tasarlayarak sorgulayan, üreten ve problem çözebilen yeni nesil yazılımcılar yetiştiriyor.

Sektörel Deneyim & Projeler

  • Ticarify Entegrasyon Yazılım logosu CEO Ticarify Entegrasyon YazılımPazaryerleri ve e-ticaret sitelerine otomatik e-fatura kesimi, sipariş ve kargo takibi hizmetleri sunan e-Dönüşüm platformunun API mimarisini ve yazılım ekibini yönetmektedir.
  • Benim Düğünüm logosu CEO Benim DüğünümDijital etkinlik ve anı paylaşım platformu.
  • Siberdizayn logosu Yazılım Ekibi Lideri SiberdizaynYüksek anlık oyuncu trafiğine sahip oyun kontrol panelleri ve sunucu altyapıları geliştiren yazılım ekibine liderlik etmektedir.
  • MEDYOGRAFYA 360° Dijital Çözümler logosu Dijital Strateji Lideri MEDYOGRAFYA 360° Dijital ÇözümlerŞirketlerin dijital çözümlerde uzun vadede nasıl ilerlemesi gerektiği ve dijital dönüşüm süreçlerinin yönetilmesine destek olmaktadır.
  • İzmir Ekonomi Üniversitesi logosu Danışma Kurulu Üyesi İzmir Ekonomi ÜniversitesiMezun olduğu üniversitesinde, Bilgisayar Programcılığı bölümünün akademik müfredatını güncel sektör ihtiyaçlarına göre şekillendirmek adına Danışma Kurulu'nda görev almaktadır.
WhatsApp Hemen Ara