Arduino-IRremote etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Arduino-IRremote etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

31 Mayıs 2020 Pazar

Joystick ve Arduino ile Servo Motor Kullanımı


Joystickten aldığımız açı bilgisine göre Servo Motorları kullanacağız.Joystick Modülü, temel olarak 2 adet potansiyometre ve 1 adet push button’dan oluşmaktadır. Arduino’ya 0 ve 1023 değerleri arasında veriler gönderebiliyor. Ve servo motorlarımıza bu veriyi açı olarak yansıtabilmemiz için map(0-1023) fonksiyonunu kullanarak bu değerleri 0 ile180 derece açısı arasında hareket elde etmemiz gerekiyor.

Sg90 Rc Servo Motor 180°

joystick

Bağlantı şeması





Devrenin montajı anlatıldığı gibi yapılırsa çalışmasında bir sorun çıkmaz.
Joystick den gelen bilgileri anolog okuma yapmak için anolog pinlerinden ikisini Arduino da bulunan anolog pinlerine A0 ve A5 pinleri arasında iki tanesine şöntleyeceğiz biz iki adet servo motor süreceğimize göre Kod da belirtiğimiz gibi A0 ve A1 pinlerinden anolog okumayı yapacağız joystikc in Artı ucuna  +5 volt uygulayacağız. Negatif yani GND ucunada  - voltaj Yani GND ucuna baglayacağız diğer kalan Buton ucunu da arduino nun dijital uçlarından 2 ila 11 arasındaki herhangi bir pine bağlamamız gerekir. bu yaptığımız devreye dışarıdan voltaj verebiliriz o zaman arduino nun sadece  GND ucunu dışarıdan voltaj verdiğimizde Voltajın Gnd ucu ile irtibatlandırmamız gerekir yoksa arduinoyu kullanamayız . iki adet servo motorun kırmızı kablolarına +5volt kahverengi kablolarını  GND ile şöntleyeceğiz sinyal uçlarını da arduino uno nun dijital pinlerinin bulunduğu taraftaki 3  numaralı dijital pine servomuzun birinin sinyal kablosunu diğer servomuzun sinyal kablosunuda dijital 5pinine bağlayacağız joystikc den gelen verileri alarak motorların yön ve hareketini sağlayacağız motorlara dışarıdan + 5 volt verebiliriz Devreyi anlattığımız gibi kurarsanız çeşitli aletlerin demosunda kullanabilirsiniz. .




Arduino Uno ya yüklenecek 

Kod:

#include <Servo.h> // Servo motorlarımızı kullanmamız için gerekli olan kütüphaneyi dahil ediyoruz

Servo servo1;         // İlk servomuza servo1 ismini veriyoruz
Servo servo2;         // ikinci servomuza servo2 ismini veriyoruz
int x_ekseni = 0;    // X eksenimizin Analog 0 pinine bağlı olduğunu tanımlıyoruz
int y_ekseni = 1;    // Y eksenimizin Analog 1 pinine bağlı olduğunu tanımlıyoruz
int servoDeger;      // Servo motorlarımıza açı verecek olan değişken ismini servoDeger olarak tanımlıyoruz

void setup() 
{
  Serial.begin(115200);
  servo1.attach(3);        // İlk servomuzun Dijital 3 pinine bağlandığını tanımlıyoruz
  servo2.attach(5);        // İkinci servomuzun Dijital 5 pinine bağlandığını tanımlıyoruz
}
    
void loop()
{
  servoDeger = analogRead(x_ekseni);   // Joystick modülümüzün X ekseninden gelen verilerini okuyoruz ve servoDeger değişkenine tanımlıyoruz
  Serial.println("x_degeri:");
  Serial.println(servoDeger);
  servoDeger = map(servoDeger, 0, 1023, 0, 180);   // Joystick modülümüzden gelen verileri 0 ve 180 derece açıları arasına dönüştürüyoruz
  Serial.println("x_aci:");
  Serial.println(servoDeger);
  servo1.write(servoDeger);    //0 ve 180 derece açıları arasına dönüştürdüğümüz değeri servomuza yazdırıyoruz

  servoDeger = analogRead(y_ekseni);   // Joystick modülümüzün Y ekseninden gelen verilerini okuyoruz ve servoDeger değişkenine tanımlıyoruz
  Serial.println("y_degeri:");
  Serial.println(servoDeger);
  servoDeger = map(servoDeger, 0, 1023, 0, 180);    // Joystick modülümüzden gelen verileri 0 ve 180 derece açıları arasına dönüştürüyoruz
  Serial.println("y_aci:");
  Serial.println(servoDeger);
  servo2.write(servoDeger);    // 0 ve 180 derece açıları arasına dönüştürdüğümüz değeri servomuza yazdırıyoruz
  
  delay(30);     // Verilerin sağlıklı bir şekilde okunması için 30 milisaniye bekleme süresi tanımlıyoruz
}

30 Mayıs 2020 Cumartesi

NTC Sensörü ile Sıcaklık ölçümü ve Buzzer Kullanarak yangın alarmı yapımı

NTC ısıya duyarlı bir sensördür. Bu uygulamamızda NTC Sensörü ile Sıcaklık ölçümü yapıp ve Buzzer Kullanarak bir yangın alarmı uygulaması yapacağız.

 Malzeme listesi:

1. Arduino Uno
2. BreadBoard
3. 1 adet Buzzer
4. 1 adet NTC Sensörü
5. Jumper Kablolar
6. 1 adet Led

Arduino NTC sensör kiti



















NTC sıcaklık sensörü kartı, üzerinde direnç bağlantılarının yapılmış olduğu ve besleme ve sinyal çıkışının rahat bir şekilde yapılabilmesi için kart haline getirilmiş bir modüldür. Kart üzerinde yer alan karşılaştırıcı devre ile üzerindeki trimpot ile ayarlanan referans değerine göre dijital çıkış alınabilmektedir.

Isı ölçüm cihazları, termostat, oda sıcaklığı ölçümü ve akıllı ev sistemi gibi projelerde rahatlıkla kullanılabilen bu sensör Arduino başta olmak üzere bir çok mikrodenetleyeci sistemi ile beraber kullanılabilmektedir.




10k NTC Sensör



Breadboard'muza eklediğimiz Buzzer'ın artı  bacağından jumper kablo ile ardunio uno malzememizdeki 3  nolu dijital pine bağlantı kuruyoruz. Buzzer'ın kısa bacağını ise yine jumper kablo ile Ardunio Uno'da bulunan GND nün ucuna bağlıyoruz. NTC Sensörü 2 adet pini  var.. pin in bir ucunu artı  5 Volta bağlıyoruz diğer  pinini 10 k lık direnc  ile Arduino Analog pinlerinden. A0 pinine
 bağlantısını yapıyoruz direncin birucunu Arduino nun GND (negatif) pinine bağlıyoruz. Led'in ise artı bacağına 220 ohm direnç bağlıyoruz. Bu uçtan ise Arduino nun 2nolu dijital pine jumper kablo  ile bağlanıyor. Negative bacağını ise GND ucuna bağlıyoruz devre resmi aşağıda gösterilmiştir.
aptığınız devrenin çalıştığını deneyebilmek için( if sıcaklık değerini < 30 > ) derece olarak yazabilirsiniz



















#define led 2
#define buzzer 3


void setup() {
  Serial.begin(115200);
  pinMode(led,OUTPUT);
pinMode(buzzer,OUTPUT);

}


double Termistor(int analogOkuma){

 double sicaklik;
 sicaklik = log(((10240000 / analogOkuma) - 10000));
 sicaklik = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * sicaklik * sicaklik)) * sicaklik);
 sicaklik = sicaklik - 273.15;
 return sicaklik;
}


void loop() {

  
  int deger = analogRead(A0);
  double sicaklik = Termistor(deger);
  Serial.println(sicaklik);

  if(sicaklik > 60){
    digitalWrite(led,HIGH);
    digitalWrite(buzzer,HIGH);
  }
  else{
    digitalWrite(led,LOW);
    digitalWrite(buzzer,LOW);
  }

  delay(250);
}
  
  










8 Mayıs 2020 Cuma

Arduino ve IR Kumanda (TV kumandası) ile LED Kontrolü

Kullanılan Malzemeler:


1 Ardiuno uno
2 Led ( Yeşil,Mavi,Kırmızı,Sarı) 4 Adet.
3 Kablolama yapmak için jumper kablo.
4 IR uzaktan kumanda (TV kumandası ) olabilir.
5 IR alıcı sensor. (Arduino IR Receiver 3 pin 38 khz Receiver ) .
6 Resistor (   4 adet 220 ohm ) .
7 DEVRE TAHTASI (BREAD BOARD).

           
Devrenin montajı ve kullanılabilmesi için gerekenler


        Bu elemanlar ile bu devreyi kurabiliriz . Bu devrenin sorunsuz çalışması için gerekli olan bir diğer elemanlarda şunlar.

           1 Bilgisayar 
           2 Bilgisayar ile Arduino nun  bağlantısını sağlayacak olan bir adet bağlantı kablosu bu genelde Arduino ile birlikte verilir .
          3  Arduino ya  programı yükleyebilmek için arduino sitesinden indirdiğimiz ve bilgisayara daha önceden kurduğumuz program.  

Arduino sketch programına yüklemek için gerekli kodları burada paylaşacağım 

www.arduino.cc/en/Main/Donate

Kütüphane indirme linki aşağıda
https://github.com/z3t0/Arduino-IRremote

Yukarıda ki siteden Arduino programını indirip bilgisayarınıza kurun .

İndirdiğiniz derleyici son sürüm ise IR Remote kütüphanesi yüklü gelmektedir .

Aşağıdaki kodu  programı Açılan sketch yazıp onu Arduino uno ya yükleyip program Arduino tarafından kullanmak için anlaşılır hale gelmiş olur.

(#include ) Infrared (IR) kütüphanesinin  Yüklenmesi 

 int RECV_PIN = 2; )  2 nci pini (IR) Alıcı için Dijital giriş  ( input olarak ) Tanıttık

bu aşağıda gösterilen   define kodlarını elinizde kullandığınız uzaktan kumandanın tuşlarına basarak  Bilgisayar ekranında göreceğiniz kodları girmeniz gerekmektedir .
Aşağıda gösterilen define kodları sizin kumandanızda bulunan tuşlarınızın tamamında olmaya bilir ona göre define tuşlarının olmayanı silinebilir ve ya adı değiştirilebilir. 

ÖRNEK :



#define BUTON1 0xFF30CF


#define BUTON2 0xFF18E7


#define BUTON3 0xFF7A85


#define BUTON4 0xFF10EF


 // (#define (CH1) Bu CH 1 tuş adı olup bu sizin kumandanızda yoksa silinebilir veya başka isimli tuş varsa onla değiştirilebilir


# include  < IRemote.h >


int RECV_PIN = 2;
IRrecv irrecv(RECV_PIN);
decode_results results;

#define CH1 
#define CH 
#define CH2 
#define PREV   
#define NEXT 
#define PLAYPAUSE 
#define VOL1 
#define VOL2 
#define EQ 
#define BUTON0 
#define BUTON100 
#define BUTON200 
#define BUTON1 
#define BUTON2 
#define BUTON3 
#define BUTON4 
#define BUTON5 
#define BUTON6 
#define BUTON7 
#define BUTON8 
#define BUTON9 

int yesil = 4;
int mavi = 5;
int sari = 6;
int kirmizi =7;

void setup()

{
 Serial.begin(9600);
 irrecv.enableIRIn();

  pinMode(yesil, OUTPUT);
  pinMode(mavi, OUTPUT);
  pinMode(sari, OUTPUT);
  pinMode(kirmizi, OUTPUT);
  
  irrecv.enableIRIn();
}
void loop() {

  if (irrecv.decode(&results))
  {
    if (results.value == BUTON1) //   kumandanın 4 numaralı tuşu yeşil ledi yakar . 
    {digitalWrite(yesil, HIGH);}
     
    if (results.value == BUTON2) //  kumandanın 5 numarlı tuşu mavi ledi yakar .
    {digitalWrite(mavi, HIGH);}
      
    if (results.value == BUTON3) //  kumandanın 6 numaralı tuşu sarı ledi yakar .
    {digitalWrite(sari, HIGH);}
     
    if (results.value == BUTON4) //  kumandanın 7 numaralı tuşu kırmızı ledi yakar .
    {digitalWrite(kirmizi, HIGH);}
     
    if (results.value == BUTON0)  //  kumandanın 0 numaralı tuşu bütün yanan ledleri söndürür.
    {
      digitalWrite(yesil, LOW);
      digitalWrite(mavi, LOW);
      digitalWrite(sari, LOW);
      digitalWrite(kirmizi, LOW); 
    }
    irrecv.resume();
  }





Devreyi Brodboard üzerinde nasıl kuracağız 

Ledin Katod ve Anot bacaklarını gösterir resim  aşağıda
























38khz IR ledin bacaklarını gösterir resim Aşağıda gösterilmektedir




















Arduino pinleri ni gösterir resim



















               Brodboard Üstünde sırası ile Yeşil ,Mavi , Sarı , Kırmızı  şeklinde peşpeşe bord un üstündeki deliklere bacaklarını takalım  bunların  Katod ve Anot yönleri aynı sırada düzgün bir şekilde takılsın 

Ledlerin uzun bacağına  direnç bağlayacağız .

38khz lik IR sensöründe ön yüzü bize bakacak şekilde bord un deliklerine düzgün bir şekilde takılacak. 

Kablolama yapmaya başlayacağız  


Arduino nun üzerinde bulunan  power kısmında bulunan  negatif pininden Bord un mavi ile işaretli kısmını jumper kablosu  ile bağlayacağız daha sonra borda taktığımız elemanları arduino üzerinde bulunan dijital pinlerin bulunduğu kısım ile kablolamasını yapacağız . Aşağıdaki resimde gösterildiği gibi




















bordun üstünde bulunan  38khz lik arduino sensörün eksi ucu bordun negatif ucu ile şöntlenecek sinyal ucu arduino nun dijital kısmında bulunan 2 numaralı pini ile şöntleyeceğiz  38 khz lik sensörün voltaj bacağıda ardiuno power kısmında bulunan voltaj .
pini  ile şöntleyeceğiz.

Arduino dijital pin kısmındaki 7. pin , 6. pin , 5. pin , 4 . pin ledlerin ayaklarına bağlamış olduğumuz dirençler ile jampur kabloları ile şöntleyeceğizledin diğer ayağıda negatif enerjinin bulunduğu yerle şöntleyeceğiz . bundan sonra program arduino ya yüklendiyse enerjiyi verdiğimizde yapmış olduğumuz devre çalışmaya başlayacak . yapmak isteyenler buradan aldıkları bilgi ve kendi araştırma yateneklerini de kullanarak bunu yapa bilirler herkese kolay gelsin. bir başka devrede görüşene kadar hoşça kalın.  

İzleyiciler

LED DİRENÇ HESAPLAMA

All LEDs require current limiting, without a current limiting mechanism the LED will usually burn out in under a second. Adding a simple resistor is the easiest way to limit the current. Use the calculator below to find out the value of resistor you require.

For example if you are wanting to power one of our_blank">red LEDs in an automotive application you would see that the typical forward voltage is 2.0 Volts and the maximum continuous forward current is 30mA. Therefore you would enter 14.5, 2.0 and 30 into the Single LED calculation box. After calculating you get 470ohm 1 watt as the result. Here is a that allows you to enter a resistor value and generate the corresponding color code.

Note: For automotive applications use the actual system voltage, not 12 Volts. Most 12 Volt system actually operate at around 14.5 Volts.

Supply Voltage
VOLTS
Voltage Drop Across LED
VOLTS
Desired LED Current
MILLIAMPS



Calculated Limiting Resistor
OHMS
Nearest higher rated 10% resistor

Calculated Resistor Wattage
WATTS
Safe pick is a resistor with
power rating of (common values are .25W, .5W, and 1W)
WATTS

LEDs in series

Several leds in series with one resistor
Supply Voltage
VOLTS
Voltage Drop Across LED
VOLTS
Desired LED Current
MILLIAMPS
How many LEDs connected




Calculated Limiting Resistor
OHMS
Nearest higher rated 10% resistor

Calculated Resistor Wattage
WATTS
Safe pick is a resistor with
power rating of (common values are .25W, .5W, and 1W)
WATTS
LM317 UYGULAMA DEVRELERİ HESAPLAMASI

 




Çıkış Voltajı
R1 resistor

R2 resistor

R1 resistor
R2 resistor

Çıkış Voltajı


Lm317 uygulama devreleri ve detayli bilgiye Buradan ulasabilirsiniz

LM555 - ASTABLE OSCILLATOR CALCULATOR

LM555 - ASTABLE OSCILLATOR CALCULATOR
Value Of R1 Ohms Value Of R2 Ohms
Value Of C1 Microfarads
Output Time HIGH SECONDS Output Time LOW SECONDS Output Period HIGH + LOW SECONDS Output Frequency HERTZ Output Duty Cycle PERCENT
Resistor values are in Ohms (1K = 1000) - Capacitor values are in Microfarads (1uF = 1)

NOTE: The leakage currents of electrolytic capacitors will affect the actual output results of the timers. To compensate for leakage it is often better to use a higher value capacitor and lower value resistances in the timer circuits.

LM555 Astable Oscillator Circuit Diagram


LM555 - ASTABLE CAPACITOR CALCULATOR

The next calculator can find the capacitance needed for a particular output frequency if the values of R1 and R2 are known.

Value Of R1 Ohms Value Of R2 Ohms
Frequency Desired Hertz
Capacitance uF
s

VOLT AMPER OHM ve WATT HESAPLAMA

Current:
kA (kiloamps) A (amps) mA (milliamps) µA (microamps)
Voltage:
kV (kilovolts) V (volts) mV (millivolts) µV (microvolts)