31 Ekim 2015 Cumartesi

Anakart(Kit, İşlemci)

Anakartlar çok çeşitli ve değişken özelliklere sahip parçalardır. Bu nedenle anakart seçimi quadcopterin stabilizasyonuna, şekline, sensörlerine göre farklılaşacak bir tercihtir. Burada dikkat edilecek ana öğe anakartın quadcopter ile yani 4 pervaneli bir multikopter ile uyumlu olup olmadığıdır.           

Şekil 1: Quadcopter APM anakart

Gyro : Bu sensör sayesinde quadcopter havada daima dengede kalmaya çalışacaktır. Quadcoptere çok gaz verdik ve öne doğru yatmaya başladı burada devreye gyro sistemi girer ve daha fazla yatmasına izin vermeyerek, hız sebebiyle oluşan bu dengesizliği ortadan kaldırır.

Accelerometer : Bu sensör cihazın dış etkenlerden (rüzgar, dengesiz yük v.b) minimum düzeyde etkilenmesini sağlar. Cihazı sürekli yere paralel tutmaya çalışır. Sağdan gelen rüzgarı soldan yapacağı hareket ile bertaraf ederek, cihazın yer ile ilişkisini stabil kılar.

Barometer: Basınç sensörüdür. Havadaki basınç değişimini algılayarak, cihazın sürekli aynı yükseklikte asılı kalmasını sağlar. Kumandadan gaz verildiğimizde multikopter yükselmek isteyecektir ancak basınç sensörü sayesinde yükselen basınç değeri algılanır ve multikopter aynı basınç değerinde kalma direnci gösterir.

Magnetometer: Pusula sensörüdür. Multikopterin sağa sola dönmesini engeller ve kumandayı bıraktığımızda hangi yöne doğru bakıyorsa oraya bakmaya devam etmesini sağlar. Kumandadan multikopterin kendi ekseni etrafında dönmesini istersek, kumandayı bıraktığımızda da bu harekete devam edebilirdi. Ancak pusula sensörü sayesinde cihaz hareketi tamamladığında, bırakılan yöne sabitlenir. 

Quadcopter yönünü belirleme de ana kart çok önemlidir. Quadcopterin X veya  + gibi modlar belirlenir, Quadcopterin ileri veya geri yön hareketinde hangi motorların haraket edeceği bu şekilde belirlenmiş olur.


Şekil 2: Quadcopter Configuration



29 Ekim 2015 Perşembe

Hız Kontrol Ünitesi (ESC)

ESC quadcopterin üzerindeki brussless motorları sürebilmek için gerekli elektronik elemandır. Data girişlerine verilen PWM sinyaline göre motor hızını ayarlarlar. Bunu akım kontrolü ile yaparlar. ESC seçiminde dikkat edilmesi gereken en önemli şey motorun maksimum akım değerinden düşük ESC seçmemektir. ESC seçerken dikkat edilecek unsurlar;
- Programlanabilir olması,


- ESC’nin verebildiği maksimum akım değeri şeklindedir.
Şekil 1: Hız Kontrol Ünitesi (ESC) 

ESC seçimi yapılacak quadcopter için çok önemli konulardan biridir. Şöyle ki: Örneğin akım değeri 10.5 A olan bir motor için alınması gereken ideal ESC en az 11-11.5 A olmalıdır ki üstü tavsiye edilir. ESC’nin verebildiği maksimum akım değeri ise motorun özelliğine göre gerekli akım(A) değerini desteklemelidir.

Lipo pilden geçecek bütün akım ilk olarak esc den geçer daha sonra motordan geçer. Farz edelim seçilen esc akım değeri motorun kin den daha büyük, bundan dolayı motorunuz aşırı yüklenmeden dolayı yanması kaçınılmaz bir olaydır 

6 Ekim 2015 Salı

Arduino LCD Ekran Sicaklik Değerini Yazdirma

Kullanılan malzemeler

LM35
LCD ekran(1602D2)
10k potansiyometre
Arduino uno

 LM35 Sicaklik Sensörü


Sicaklik ölçüm sensörüdür. -55 ile 150 derece arasindaki sicaklikları ölçer. Hassas ve doğrusaldır. Giriş gerilimi 4-30V arasında çalışır.


Şekil 1 LM35 Sensörü 

Not: Arduino da ADC 10 bitliktir. 5000 mV  1024 parçaya işlemcimiz böler.  Her 10 mV bize 1 °C 'yi verecek şekilde programımız yazıldı.

Arduino kodları

#include <LiquidCrystal.h>

float sicaklik;
float gerilim;
int sicaklikpin=0;

LiquidCrystal LCD(2,3,4,5,11,12);

void setup(){
  LCD.begin(16,2);
  LCD.print("Sicaklik");
}

void loop(){

  gerilim= analogRead(sicaklikpin);
  gerilim= (gerilim/1023)*5000;         //mV cinsi
  sicaklik= gerilim/10.0;                     // 20 C *10 mV= 200 mV
  
  LCD.setCursor(0,0);
  LCD.print("Sicaklik");
  LCD.setCursor(9,0);
  LCD.print("Gerilim");
  LCD.setCursor(0,1);
  LCD.print(sicaklik);
  LCD.setCursor(9,1);
  LCD.print(gerilim);
  delay(1500);
}


Şekil 2 Arduino devre şeması


Şekil 3 Arduino devre şeması

     








2 Ekim 2015 Cuma

Arduino RGB Led Buton İle parlaklık Kontrolü

Kullanılan malzemeler

3 adet buton iki bacaklı
RGB led
3 adet 470 ohm direnç

Arduino kodları 

int kirmizipin=11;
int yesilpin=10;
int mavipin=9;

int kirmizibuton=7;
int yesilbuton=6;
int mavibuton=5;

int kirmizi=0;
int yesil=0;
int mavi=0;

void setup(){
  pinMode(kirmizipin, OUTPUT);
  pinMode(yesilpin, OUTPUT);
  pinMode(mavipin, OUTPUT);

  pinMode(kirmizibuton, INPUT_PULLUP);
  pinMode(yesilbuton, INPUT_PULLUP);
  pinMode(mavibuton, INPUT_PULLUP);
}
void loop(){

  if(digitalRead(kirmizibuton)==LOW)
  {
    kirmizi++;
    if(kirmizi>255) kirmizi=0;
  }
   if(digitalRead(yesilbuton)==LOW)
  {
    yesil++;
    if(yesil>255) yesil=0;
  }
  if(digitalRead(mavibuton)==LOW)
  {
    mavi++;
    if(mavi>255) mavi=0;
  }
  analogWrite(kirmizipin, kirmizi);
  analogWrite(yesilpin, yesil);
  analogWrite(mavipin, mavi);
  delay(10);
}

Şekil 1 Arduino devre şeması

Şekil 2 Arduino devre şeması




1 Ekim 2015 Perşembe

Arduino Dc Motor Kontrolü

Arduino ile DC motor uygulamasında kullanılacak malzemeler;

BC547 Transistör
10 kohm 
1N4001 diyot
Arduino uno

Arduino kodları:

int motorpin = 3;
void setup() 

  pinMode(motorpin, OUTPUT);
  Serial.begin(9600);
  while (! Serial);
  Serial.println("Speed 0 to 255");

void loop() 

  if (Serial.available())
  {
    int hiz = Serial.parseInt();
    if (hiz >= 0 && hiz <= 255)
    {
      analogWrite(motorpin, hiz);
    }  }   

Bağlantı şeması aşağıdaki gibi olucaktır.


                                                   Şekil 1  Arduino serial monitör 



Şekil 2 Arduino serial monitör 


Python Pyqt5 ile Hesap Makinası

from PyQt5.QtWidgets import * from PyQt5.QtGui import * from mainUI import * from PyQt5.QtCore import * import sys # ----------------------U...