arduino etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
arduino etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

7 Aralık 2014 Pazar

Raspberry Pi mi Arduino mu?

Raspberry Pi mi Arduino mu?


 Raspberry Pi mı yoksa Arduino kullanmak mı daha mantıklı. Hem bu soruya genel bir cevap olması hem de tercih yapmak üzere olan arkadaşları doğru yönlendirebilmek adına bu yazıyı hazırladık.


En baştan şunu belirtmekte fayda var, Raspberry Pi ve Arduino kartları tam olarak birbirlerine alternatif çözümler değil. Bu nedenle ikisini karşılaştırmak aslında çok doğru bir yaklaşım değil. Örneklendirmek gerekirse Raspberry Pi ve Arduino’yu kıyaslamak bir iş makinası ve binek otomobili kıyaslamak gibi. Hangisini kullanacağınız aslında yapmayı planladığınız projeyle doğrudan ilişkili. İkisinin de güçlü olduğu yönler mevcut. Kararı uygulamanıza göre vermeniz gerekir. Ancak yine de bu iki kartı genel özellikleri bakımından kıyaslamak mümkün. Bu da umuyoruz ki size karar vermenizde yardımcı olacaktır.


Image Hosted by ImageShack.usImage Hosted by ImageShack.us
Arduino Uno ve Raspberry Pi Model B

4 Aralık 2014 Perşembe

ARDUİNO MEGA İLE HC-06 BLUETOOTH MODULE

ARDUİNO MEGA İLE HC-06 BLUETOOTH MODULE


Arduino-Android arasında haberleşme kurmak için HC-06 modülünü kullanacağım.
Öncelikle HC-06′nın teknik özelliklerinden biraz bahsedeyim.
HC-06 Bluetooth-Serial Modül Kartı, Bluetooth SSP(Serial Port Standart) kullanımı ve  kablosuz seri haberleşme uygulamaları için tasarlanmıştır. Hızlı prototiplemeye imkan sağlaması, breadboard, arduino ve çeşitli devrelerde rahatça kullanılabilmesi için gerekli pinler devre kartı sayesinde dışarıya alınmıştır.

3 Aralık 2014 Çarşamba

Arduino ile Röle Kontrolü



Arduino ile Röle Kontrolü


Arduino ile farklı cihazları kontrol etmek istiyorsanız ya da ev kontrol sistemi benzeri sistemler üzerinde çalışıyorsanız röleler vazgeçilmez devre elemanları şüphesiz. Bu yazımda Arduino ile 5v röleleri nasıl kontrol edebileceğinizi anlatmaya çalışacağım. Yazının sonunda da sadece röle devresi kullanarak yapılmış güzel bir örnek paylaşacağım.










Yukarıda verdiğim devre şeması 5v mini PCBröleler için. BC548, 2N2222, 2N3704transistörlerinden birisini kullanabilirsiniz. Daha büyük röleler için TIP102 transistör ve ek bir enerji kaynağı gerekli.

1 Aralık 2014 Pazartesi

DS18B20 Dijital Sıcaklık Sensörünün Arduino ile Kullanımı

DS18B20 Dijital Sıcaklık Sensörünün  Arduino ile Kullanımı



Çevreden veri toplamamızı gerektiren projelerimizde sıcaklık, nem, rüzgar, gürültü sensörleri gibi sensörlere ihtiyaç duyarız. Bu yazıda tek dijital pinle sıcaklık bilgisi sağlayan DS18B20 sıcaklık sensörünü anlatmaya çalışacağım. Yine yazının devamında birden fazla sensörden nasıl veri alınabileceği ile ilgili örnek bir program paylaşacağım.
Gerekli Malzemeler:
  1. 1 adet DS18B20 Dijital Sıcaklık Sensörü
  2. 1 adet 4.7k direnç
  3. Bağlantılar için kablo
Yukarıdaki resimdeki gibi bağlantıları (Tek sensör için bağlantılar bu şekilde, birden fazla sensörü de aynı şekilde farklı dijital pinlere bağlayabilirsiniz.) yaptıktan sonra aşağıdaki bağlantılardan OneWire kütüphanesini indirip yüklüyoruz. (Arduino>libraries klasörüne OneWire klasörünü kopyalıyoruz.) Tek sensör ve birden fazla sensör kullanılan 2 örnek program ile birlikte geliyor kütüphane. Bu 2 örnek programı da anlatmaya çalışacağım burada.

30 Kasım 2014 Pazar

HC-SRO4 MesafeSensörü Kontrolü

Arduino İle HC-SRO4 Uzaklık Sensörü Kontrolü

Uzaklık sensörleri genellikle engel algılamak için kullanılırlar. Örneğin; yapacağınız robotun bazı engellere takılmaması için bir uzaklık sensörüne ihtiyaç duyarsınız. En çok bilinen bir diğer uygulama da su seviyesinin ölçümüdür.
hc-sr04-s
HC-SRO4 uzaklık sensörü, engeli algılamak için ultrasonik ses dalgalarını kullanır. Üzerinde bulunan verici ultrasonik ses dalgası yayar. Bu dalga engele çarpıp yine HC-SRO4’ün üzerinde bulunan alıcıya ulaşır. Sinyalin vericiden çıkıp, alıcıya ulaşması için geçen süreye göre engele olan mesafe hesaplanır.
HCSRO4 için hazırlanmış kütaphanenin örnek programını kullanarak, arduino’nun 13, pinine bağladığımız ledin uzaklığa göre parlaklığını kontrol edeceğiz.
Programımızda engel yaklaştıkça ledin parlaklığının artmasını sağlayacağız.

Servo Motor Kontrolü

Arduino İle Servo Motor Kontrolü

Servo motorlar gönderilen belirli sinyallere göre sahip olduğu şaftı belirli dereceler ile döndürebilen motorlardır. Örneğin 0 ile 180 derece arasında dönebilen şaftı 1 derece aralıklara kadar indirerek kontrol edebiliriz.
robot_arm
Servo motorların en çok kullanıldığı alan robot kollardır. Bilek, parmak vb. pozisyonlarını kontrol etmek için servo motor kullanılarak gerekli açı verilir.
Standart servo motorlarda 3 adet bağlantı kablosu vardı.
* Kırmızı Kablo (+)          4-6V
* Kahverengi Kablo(-)       0V
*Turuncu Kablo              Sinyal.

Kızılötesi Alıcı-Kumanda Kontrolü



Arduino İle Kızılötesi Alıcı-Kumanda Kontrolü

Kızılötesi ışınlar insan gözünün algılayabileceği dalga boyu aralığı dışında çalışan elektromanyetik dalgalardır. Kızılötesi ışınların yoğun olarak kullanıldığı 2 alan vardır. Askeri olarak gece görüşünün sağlanması için kullanılırlar. İnsan da vücut sıcaklığından ötürü belirli bir kızılötesi ışın yayar. En yaygın ikinci uygulama ise kısa mesafe haberleşmedir. Uzaktan kumandalar da kızılötesi ışın kullanılır.
Bu yazımızda Kızılötesi kumanda ve VS1838B kızılötesi alıcıyı kullanarak, arduino aracılığı ile iki adet ledin yanıp sönme durumunu kontrol edeceğiz.
IRremote

Arduino ile Kızılötesi Alıcı Kumanda Kontrolü Devresi

IR

Arduino ile Kızılötesi Alıcı Kumanda Kontrolü Akış Diagramı

Arduino_IR_Flowchart

Arduino ile Kızılötesi Alıcı Kumanda Kontrolü Örnek Kodu


Seri Haberleşme

Arduino İle Seri Haberleşme

Mikrodenetleyiciler, diğer mikrodenetleyicilerle, bilgisayar ile ve cihazlar ile iletişim kurabilir. İletişim seri ve paralel olarak 2’ye ayrılır.Paralel iletişimde 8 bitlik veriler 8 kablo aracılığı ile iletilir.Seri iletişimde veriler 2 kablo aracılığı ile ietilir.Doğal olarak paralel iletişim hızlıdır ancak uzun mesafelerde aşırı kablo kullanımına neden olur.O yüzden seri iletişim tercih edilir. Haberleşme ayrıca kablolu ve kablosuz olarak ikiye ayırılır. Kablosuz haberleşmeye örnek olarak, bluetooth, kızılötesi, wifii örnekleri verilebilir. Arduino Uno üzerinde 1 adet seri haberleşme alıcı-verici çifti bulunmaktadır. Arduino unonun 0. pini alıcı-receiver(RX) 1. pini verici-transmitter (TX) olduğunu kartınıza bakarak rahatlıkla görebilirsiniz. Seri haberleşme üzerinden veriler 0 ve 1 dizileri olarak iletilirler, arduino’yu kullanarak seri haberleşme ile 13. pindeki ledi kontrol edeceğiz.

Arduino ile Seri haberleşme Üzerinden Led Kontrolü

Arduino’nun seri haberleşme için hazırlanmış arayüzünü kullanım 1 gönderdiğimizde 13. pindeki led’ini yanmasını diğer tuşlara basıldığında ledin sönmesini sağlayacağız.

Arduino ile Seri haberleşme Üzerinden Led Kontrolü Devresi

Arduino üzerindeki ledi kullanacağımız için herhangi bir bağlantı yapmamıza gerek yoktur. Çıktı olarak ise arduino serial monitörü kullanacağız.

screen

Arduino ile Seri haberleşme Üzerinden Led Kontrolü Akış Diagramı

ser

LCD Sürme

Arduino İle LCD Kontrolü


LCD ( Liquid Crystal Display)  nedir?


LCD’ler dış dünyaya bilgi aktarmak için kullanılan en yaygın devre elemanıdır. Günümüzde neredeyse her alanda kulllanılır. 2×16, 2×20 gibi birçok çeşidi bulunan LCD(Liquid Crystal Display)  Sıvı Kristal Görüntü Birimi olarak tanımlanabilir. Örnekteki 2 satır sayısını, 16 ise satırda bulunabilecek maksimum karakter sayısını gösterir.
Piyasada yaygın olarak kullanılan LCD’ler Hitachi firmasının HD44780  ve buna uyumlu entegreleri içerir.
LCD’lerde pin sayısı değişmekle birlikte en yaygın kullanılanı 16 pinlik olanıdır.2 pini arka aydınlatma için kullanılan bu tip LCD’lerin geri kalan 14 pin’in tanımları aşağıda yapılmıştır.
arduino_lcd_1

LCD her harf 5×8 birimler halinde oluşur. En altta bulunan kısım imlece ayrıldığı için 5×7 olarakta tanımlanabilir.
Bir mikrodenetleyici ile LCD sürmek istesek satırlarca kütüphane kodu yazmamız gerekmekteydi.
Ancak arduino ile bu zahmetten kurtuluyoruz. Arduino için hazırlanmış “LiquidCrystal.h“  kütüphanesini kodumuza ekleyip kütüphane içindeki tanımlı fonksiyonları doğru şekilde kullanarak LCD sürme işlemini birkaç dakika içinde gerçekleştireceğiz.

Analog Kontrol

Arduino ile Analog Input Output Uygulamaları

Elektronik dünyası analog ve dijital olarak iki kısımdan oluşur.Dijital veriler binary sayıların temeli olan 0 ve 1 sayılarının farklı kombinasyonlarından oluşurken, analog verilerin böyle keskin bir farkı yoktur.Dijital verilerde 0 ve 1’in teoride karşılığı 0V ve 5V iken, pratikte 0V ‘a yakın değerler ve 5V’a yakın değerlerden oluşur.Analog verileri ise 0V ve 5V arasında aklınıza gelebilecek bütün değerler olabilirler.(Genelde çoğu entegre işlemlerini 0-5V aralığında yapar, ististai durumlarda bu sınır değerleri değişebilir.)
Yapacağınız projeye göre kullanıcağınız devre elemanları analog veya dijital olabilirler, bunun için hem dijital hem de analog verilerin nasıl kontrol edildiğini bilmeniz gerekmektedir.

Analog Output

Arduinonun bir nevi analog output görevi gören pwm özelliğine sahip bacaklarını kullanacağız.
1
Arduino kartınızın üzerine bakarsanız, bazı pinlerin yanında “~” işareti bulunmaktadır bu pinler pwm özelliğine sahiptir.
PWM Nedir?
PWM (Pulse Width Modulation) ,darbe-sinyal genişliği modulü olarak çevirebiliriz. Mikrodenetleyiciler dış dünyayı genel yapısı itibari ile yaklaşık 0V ve 5V gibi ara seçeneği olmayan gerilim değerleriyle kontrol etmektedir. Bu durum Pic kullanıcısının ara değerlere ulaşamamasına sebep olur. PWM sayesinde istenen ara değerler elde edilebilir. DC motor uygulamalarında da PWM sıkça kullanılır. Örneğin DC motora 0V veya 5V uygulanması durması ya da çalışması içindir. DC motoru 5 farklı hızda kontrol etmek için pwm’i kullanarak 0 ve 5V arasında istediğiniz gerilim değerin ile elde edebilirsiniz.

İlk Program

              İLK PROGRAM (BLİNK)

Şimdi arduino platformunun ilk uygulaması ile başlayalım.İlk uygulamamızı , arduino platformununda besmele niteliğinde  olan blink programını, yapalım. Blink bir ledin belirlenen sürelerle yanıp söndüğü uygulamadır. Şimdi ilk olarak donanım şemamızı inceleyelim ve açıklayalım.

Donanım Şeması


Burada ledimizin anot bacağını arduinomuzun 10 numaralı terminaline , katoy bacağını ise bir dirençle beraber GND ye bağlıyoruz. Daha sonra yazdığımız program vasıtası ile 10 numaralı terminalden 5v luk gerilim verip vermeme durumunu kontrol ederek ledimizin yanık ve ya sönük olmasını sağlayacağız.

Programlama Mantığı



PROGRLAMA MANTIĞI

                   Arduino programları 2 kısımdan oluşur 

  • void setup() -->    Program bu fonksiyonun içine girip komutları bir defa Yürütür ve bu fonksiyondan çıkar.
  • void loop() :-->    Program bu fonksiyonun içine girdikten sonra komutları yürütür ve sona geldiğinde tekrar bu fonksiyonun ilk komutundan itibaren yürütmeye başlar bir nevi sonsuz döngü bloğudur .


Bir terminali bir kere çıkış olarak ayarlamak yeterli olduğu için setup fonksiyonu içine yazılır.

Blink işleminin bir kere değilde sürekli olması için loop fonksiyonu içine yazılır.








Arduino nedir , ne değildir ?

Arduino uno r3



Arduino Nedir?

Arduino; Bir giriş çıkış kartı ve Processing/Wiring dilinin bir uygulamasını içeren geliştirme ortamından, İtalyan elektronik mühendisleri tarafından açık kaynak kodlu geliştirilen ve isteyen herkesin baskı devreleri indirerek kendi devrelerini basabilecekleri dilerlerse şık bir görüntüye sahip hazır basılmış ve bileşenleri yerleştirilmiş halde alabilecekleri, esnek, kolay kullanımlı donanım ve yazılım tabanlı bir fiziksel programlama platformudur.
Arduino tek başına çalışan interaktif nesneler geliştirmek için kullanılabileceği gibi bilgisayar üzerinde çalışan yazılımlara da bağlanabilir. Hazır üretilmiş kartlar satın alınabilir veya kendileri üretmek isteyenler için donanım tasarımı ile ilgili bilgiler mevcuttur.
Arduino geliştirme kartı üzerindeki mikroişlemci (AtmegaXX) Arduino programlama dili (wiring tabanlı) ile programlanır ve bu program Processing tabanlı Arduino Yazılım Geliştirme Ortamı (IDE) yardımı ile karta yüklenir.