top of page

FunProject - Arduino ile Oyun Oynarken CPU Sıcaklığı ve FPS Değer Göstergesi Yapımı

Güncelleme tarihi: 24 Tem 2020



Herkese merhaba yine bir eğlencelik proje ile karşınızdayım. Bu projede oyun oynarken Arduino ile fiziksel olarak CPU sıcaklığını ve FPS değerlerini gösteren bir panel yaptım. Ayrıca ekran parlaklığını da ayarlayabileceğiniz bir rotary encoder kullanarak biraz daha işlevsellik kattım.


Kullanılan Malzemeler

  • Arduino UNO

  • Orta boy breadboard

  • Micro servo (2 adet)

  • Rotary encoder


Cihaz Görüntüsü


Üstteki gösterge bilgisayar sıcaklığını gösterirken alttaki gösterge FPS değerini göstermekte.

Devre Şeması



Arduino Kodlarının Yazımı


Projede iki adet 180 derecelik micro servo kullandım. Servo motorlarım dokuzuncu ve onuncu pinlere bağladım. Ekran parlaklığı için kullandığım rotary encoder da altıncı ve yedinci pinlere bağladım.


Burada özellikle servo motorlarımı byte veri alış verişiyle kodladım çünkü string veri alışverişlerinde veri kaybı yaşamaktaydım. Bu yüzden de dört byte lik Int32 veri alışverişi ile servo motorlarımı hareket ettirdim.


Gelen değerlerden iki motoru ayırt etmek için ilk motorumun verisine 1000 ekleyerek gönderiyorum. İkinci motoruma da 2000 ekleyerek gönderiyorum. Böylece 1000 ile 2000 arasında bir değer geldiğinde birinci motora, 2000 ile 3000 arasında bir değer geldiğinde ikinci motora ait olduğunu anlıyorum.


Motor sıfır değeri en sağ da olduğu için bende göstergelerimin en soldan başlamasını istediğim için 180 değerinden çıkartarak göstergemdeki ibreyi oynatıyorum. Böylece ibrem soldan sağa doğru hareket ediyor.


Ekran parlaklığı için kullandığım rotary encoderı da ise, hareket ettiği her bir adımda sayacı bir arttırarak bilgisayarıma bilgiyi gönderiyorum.



Bu projede kullandığım teknolojiler ve kütüphaneler:

Backend

Backend Kodlarının Yazımı


Arka uç noktaya baktığınızda iki ana kısımdan oluşmakta. Birincisi Arduino dan verilerin okunması ikincisi bilgisayardan verilerin okunarak Arduino ya gönderilmesi.


GammaLight class: Bu class ekran parlaklığını değiştirmek için kullandığım class.

FPSAndCPUTemperature class: Bu class CPU sıcaklığını ve ayarladığım oyunun FPS değerlerini alarak Arduino cihazına göndermekte. FPS değerleri uygulamadan uygulamaya değiştiği için siz ayarlayacağınız oyunun ismini bularak burada adı bu ise şeklinde eşitlemelisiniz.

ArduinoMachine class: Bu classta diğer projelerimde olduğu gibi Dakota frameworkü kullandım. Arduinodan aldığım verileri ekran parlaklığını ayarlamak için kullanıyorum.


Kaynaklar

Kaynak Kodlar


186 görüntüleme0 yorum

Son Yazılar

Hepsini Gör
bottom of page