Skip to main content

Esneklik Sensörü ile Servo Kontrolü - Arduino

Çalışmalarımızda yavaş yavaş temel elektronik malzemelerden sensörlere geçiş yapıyoruz. Artık temel malzemelerden potansiyometre, LED, Servo, Motor vs. nasıl kullanılır, kodlarını nasıl hazırlarız biliyoruz.

Bugünkü çalışmamızda ise daha önce yapmış olduğumuz servo kontrolü uygulamalarımıza bir yenisini ekleyip esneklik sensörü kullanarak servomuzu hareket ettirmeye çalışacağız.


Öncelikle esneklik sensöründen bahsetmek gerekirse, kendisini kademeli direnç olarak düşünebiliriz.Dik durumda iken direnç değeri çok düşük fakat eğildiği zaman direnç değeri artıyor ve sistemimiz bunu bir sinyal olarak algılıyor. Bu sayede bir şeyleri kontrol etmede kullanabiliyoruz.

Dipnot ekleyecek olursak esneklik sensörü tek taraflı çalışan bir sensördür. Yani dik konumdayken bir tarafa esnediği zaman sinyalimizi sağlarken tam tersi esnemelerde her hangi bir tepki oluşturmuyor.

Esneklik sensörü fiyat itibariyle biraz pahalı, eğer projeniz için fazlaca ihtiyacınız varsa kendiniz de yapabilirsiniz. Buyurun: http://www.imagesco.com/articles/flex/sensor-pg1.html

Uygulamamıza geçecek olursak bağlantıları şekildeki gibi yapmamız gerekiyor: Sensörün bacaklarının nasıl bağlanacağına lütfen dikkat edelim.

























Kodumuzu inceleyecek olursak daha önce yapmış olduğumuz potansiyometre ile servo kontrolünden neredeyse hiç bir fark olmadığını göreceğiz.


Koda direkt ulaşmak için:


//Esneklik sensörü ile servo kontrolü
//M.Furkan BAHAT

#include <Servo.h>  // Servo kütüphanesini ekliyoruz.
const int pot=A0;   // Esneklik sensörünü bağlayacağımız analog giriş.
Servo myservo;      // Bu komutla servo kontrol nesnemizi oluşturduk.
int flexdurum=0;     
int pos = 0;       

void setup(){
  myservo.attach(9); // Servomuzu bağlayacağımız pini belirledik.

void loop(){
  flexdurum=analogRead(pot);
  pos= map(flexdurum,0,1023,0,180);//Sensörden okunan değeri  180e oranlıyoruz.
  { 
    myservo.write(pos); // Yukarıdaki oranladığımız değeri servoya yazdırıyoruz.
  }
}


Comments

  1. kullandığımız sensörün direnç değer aralığı önemlimi

    ReplyDelete
    Replies
    1. Direnç aralığını arduino ile okuyup ona göre servoya map yapmamız gerekiyor. Bu işlemi yaptığınız müddetçe problem değil. Örneğin sensör direnç aralığı 0-2023 arasında ise onu 0-180 e sıkıştırmamız gerekiyor.

      Delete
  2. merhaba bende benzer bir proje yapıyorum.benim direnç aralığım 5k ohm ve 5 ohm arası cıktı sizce bu normal mi?bir de direnç aralığını arduino ile okumaktan bahsetmişsiniz. bundan kastınız ne?

    ReplyDelete
  3. net bir şekilde fotoraf veya vidyo atabilir misiniz servo motor kablolarını baglanışını

    ReplyDelete

Post a Comment

Popular posts from this blog

Artificial Horizon and Compass Using Arduino-Processing-MPU6050

Hi everyone, Today we will realize our artificial horizon using Arduino, Processing and MPU 6050 IMU. In this application I use Arduino Uno, If you should use different card, you should examine i2c communication for your card. For Arduino Uno connections will be like that: MPU6050 Pins       Arduino Uno Pins Vcc                        3.3V Gnd                       Gnd SCL                       A5 SDA                      A4 INT                       2 (Digital Pin) This my MPU6050, if you want more information about it: http://www.invensense.com/mems/gyro/documents/PS-MPU-6000A-00v3.4.pdf After it we connecting the MPU6050 to Arduino. If our Arduino-MPU6050 sy...

Onuncu Yıl Marşı - Arduino

Bir önceki çalışmamızda sizlere Arduino'nun hazır melodilerinden dinletiler sunmuştuk. Bu gün ise sınırları biraz daha zorlayıp Nokia 3310 Besteleyici deneyimime güvendiğim için kodları kurcalayarak bestelediğim Onuncu Yıl Marşı'nı bayrak sallayarak dinletmek istiyorum. Eğer gerçekten Onuncu Yıl Marşı olarak dinlerseniz öyle oluyor, lütfen biraz ön yargı :) (3310'nun besteleyisinden kat be kat zor bir iş olduğunu itiraf etmeliyim) Servo ucuna bağladığım bayrağı sürekli olarak bir sağa bir sola sallama isteğim, Tone.h kütüphanesinin Servo.h kütüphanesini yanında barındırmak istememesi üzerine sekteye uğradı. Timer hatası sebebiyle bunu yapamadım, fakat yılmadım servo'yu direkt melodi sinyalinin geldiği bacağa bağladım. Bu ise her ne kadar dolu dolu bir bayrak sallayış olmasa da gönlümüzü etmeye yetiyor :) Gerekli malzemeler: Servo Hoparlör Bağlantı Kabloları Olmazsa olmazımız bayrağımız. Bağlantının nasıl yapılacağına gelecek olursak Hoparlörün si...

Arduino ile Brushless Motor Kontolü

Merhabalar, Bu uygulamamızda ise Arduino kullanarak Brushless yani fırçasız motorumuza hareket vermeye çalışacağız. Gerekli malzemeler: Brushless DC Motor Electronic Speed Controller (ESC) Potansiyometre Bağlantı Kabloları Güç Kaynağı (Kaynak olmadan da Arduino besleyebiliyor fakat motor devri çok düşük kalıyor) Ve tabi ki Arduino :) Bağlantılarımızı aşağıdaki resmide belirtildiği şekilde yapmalıyız:  Bağlantıları yaptıktan sonra sıra Arduino'yu programlamaya geliyor: Koda direkt ulaşmak için: