arduino joystick ile servo motor kontrolü / JOYSTICK İLE SERVO MOTOR KONTROLÜ

Arduino Joystick Ile Servo Motor Kontrolü

arduino joystick ile servo motor kontrolü

     Joystick ler aslında basit olarak iki adet potansiyometreden meydana gelmektedir. Joystick modülleri arduino ile beraber kolayca kullanılabilir ve çeşitli projeler geliştirilebilir. Joystick modülü ile robot kollar, kumandalı araçlar v.b. kontrol edilebilir. Bu projede joystick modülünü kullanarak servo motor kontrolü yapacağız. Bu proje aslında robot kol kontrolünün de temelini oluşturmaktadır.

Kullanılacak Malzemeler:

Arduino

2 eksenli XY joystick modülü

Servo motor

Joystick modülü pin yapısı
Joystick modülü

 

 

 

 

 

 

 

 

 

     Joystick modülünü arduinoya ya kolayca bağlayabiliriz. Joystick deki +5V ve GND arduino da aynı yerlere bağlanmalıdır. VRx ve VRy pinleri X ve Y eksenlerindeki 2 adet potansiyometredir. Potansiyometreler analog giriş olcağı için arduino nun analog input  pinlerine bağlanmalıdır. Joystick deki SW pini ise digital bir pindir ve joystick e basılıp basılmadığı bilgisini saklar. Bu uygulamada bu pini kullanmayacağız.

      Bu uygulamada 2 adet servo motoru kontrol edeceğiz. Servo motorlardan biri joystick in x eksenindeki hareketi ile, diğeri ise y eksenindeki hareketi ile derece arası dönecektir.

Aşağıda uygulamamızın devre şeması ve arduino kodları verilmektedir.

joystick modülarduino- jostick-servo

#include <Servo.h> // Servo kütüphanesi Servo myservo1; // 2 adet servo motor kullanıldı Servo myservo2; int pozisyon_x=0; // Joystick lerden okunan analog değerler bu değişkenlerde tutulacak int pozisyon_y=0; const int x_pin=0; // Joystick in x ve y eksenleri 0 ve 1. pinlere bağlanacak const int y_pin=1; void setup() { seafoodplus.info(9); // Servolar arduinonun 9 ve pinlerine bağlanacak seafoodplus.info(10); seafoodplus.info(); // Seri haberleşme başladı } void loop() { pozisyon_x = analogRead(x_pin); //0. pinden analog veri okundu pozisyon_x = map(pozisyon_x, 0, , 0, ); // değeri değerine çekildi seafoodplus.info(pozisyon_x); // Elde edilen arası açı değeri servoya gönderildi delay(15); // Servonun uygun konuma gelmesi için kısa bir gecikme pozisyon_y = analogRead(y_pin); //1. pinden analog veri okundu pozisyon_y = map(pozisyon_y, 0, , 0, ); // değeri değerine çekildi seafoodplus.info(pozisyon_y); // Elde edilen arası açı değeri servoya gönderildi delay(15); // Servonun uygun konuma gelmesi için kısa bir gecikme seafoodplus.info("Servo 1: "); seafoodplus.info(analogRead(pozisyon_x)); // Servoların kaçar derece döndükleri seri monitörde görüntülenecek seafoodplus.info("\n"); // Alt satır seafoodplus.info("Servo 2: "); seafoodplus.info(analogRead(pozisyon_x)); seafoodplus.info("\n"); delay(); }

Kaynak : seafoodplus.info

 

mBlock serimize tam hızla devam ederken, bugün ki konumuz Joystickle servo motor kontrol uygulaması olacaktır. Bu yapmak üzere olduğumuz uygulama, gerçek anlamda servo motorun çalışma mantığını anlamada ve motorun kontrol mekanizmasını kavramak için çok önemlidir.

Servo Motor Nedir?

Servo Motor, özellikle günümüzde robotik alanında bizlere öncülük etmektedir. Tabii ki de sadece robotik üzerine yoğunlaşmadığı gibi elektronik, hidrolik-pnömatik vb alanlarda da rastlamamız muhtemeldir. Kullanıldığı alanlarda, onu bu kadar öncü yapan şey ise, bize mekaniksel konum, hız ve ivme gibi önemli parametreleri istediğimiz gibi kontrol etme şansı tanımasıdır. Bu konuda iç yapısını biraz daha detaylı incelemek ve PWM gibi kavramlar hakkında bilgi sahibi olmak, bu uygulamayı anlamamızda bizim yararımıza olacaktır.

mBlock ile Arduino! Joystick ile Servo Motor Kontrol joystick ile servo motor kontrolü,joystick ile servo motor kontrolü mblock,joystick ile servo motor kontrolü kodu,arduino joystick ile servo motor kontrolü,joystick ile 2 servo motor kontrolü

Joystick Modülü Nedir?

Joystick Modülü, kontrol amaçlı kullandığımız bir elektronik devre elemanıdır. İçerisinde potansiyometre bulunmaktadır. Potansiyometre yardımı ile Joystick’in dört yöne hareket etme kabiliyeti ve bize elektronik devrelerde kullanma imkânı sağlamaktadır. Joystick 2 adet yatay ve dikey ekseni gösteren, VRx VE VRy olarak isimlendirilmiş pini bulunmaktadır. Ekstradan bir switch, GND, 5V pinleri de bulunmaktadır. Çalışma mantığı ise şöyle olmaktadır.

Joystick’i X ve Y eksenlerinde hareket ettirince, potansiyometrelerden elde edilen analog veriyi okuyup ve ona göre kullanma yoluyla çalışmaktadır.

mBlock ile Arduino! Joystick ile Servo Motor Kontrol joystick ile servo motor kontrolü,joystick ile servo motor kontrolü mblock,joystick ile servo motor kontrolü kodu,arduino joystick ile servo motor kontrolü,joystick ile 2 servo motor kontrolü

Uygulama

Peki, Servo Motorun ve Joystick Modülünün ne olduğunu ve neden tercih edildiğini güzelce anladık. Sırada olan ise onları birlikte kullanarak güzel bir uygulama yapmak olacaktır. Bugün ki uygulamamızda Joystick Modülü ile Servo Motorumuzu istediğimiz gibi kullanabileceğimiz bir uygulama yapacağız.

Malzeme Listesi

  • Arduino
  • Joystick Modül
  • Servo Motor
  • Jumper Kablo

mBlock ile Arduino! Joystick ile Servo Motor Kontrol joystick ile servo motor kontrolü,joystick ile servo motor kontrolü mblock,joystick ile servo motor kontrolü kodu,arduino joystick ile servo motor kontrolü,joystick ile 2 servo motor kontrolü

Bağlantı Şeması

Öncelikle bağlantı şemamızı kurarken, Arduino üzerinde çok fazla bir karmaşıklığa sebep olmamak için, 5V ve GND bağlantılarını breadboard üzerinden kuruyorum. İlk olarak Servo Motorumuzu bağlamak istersek yapmamız gereken tek şey, üzerinde görmüş olduğumuz 3 adet kabloyu bağlamak. Bunlar sırası ile kahverengi, kırmızı ve turuncudur. Peki, bu kablolar nasıl bağlanıyor?

  • Kahverengi- GND
  • Kırmızı- 5V
  • Turuncu- 5(PWM)pini

Ardından Joystick’i bağlamak için yine üzerinde görmüş olduğumuz pinleri bağlamamız gerekiyor. İlk olaran GND pinimizi Arduino üzerinden GND pinimize bağlıyor. Devamında ise 5V PİNİ 5V’ye, X VE Y eksenleri için gerekli olan pinleride A(0) ve A(1) pinlerine takıyoruz. Zaten bugün yapmış olacağımız uygulamada, Servo Motoru hareket ettirmek için tek eksenin girişini yapmak yeterli olacaktır. Şuan için Switch pinine gerek duymuyoruz. Artık bağlantımızda hazır hale gelmiştir. Bağlantımızı Son kez kontrol edip, bir sonraki adım olan, programlama kısmına geçiyoruz.

mBlock ile Arduino! Joystick ile Servo Motor Kontrol joystick ile servo motor kontrolü,joystick ile servo motor kontrolü mblock,joystick ile servo motor kontrolü kodu,arduino joystick ile servo motor kontrolü,joystick ile 2 servo motor kontrolü

Kod Blok Yapısı

Öncelikle Kodlamamızı arduino kipi modunda çalıştıracağımız için ilk almamız gereken kod bloğumuz “Arduino Programı” adlı kod bloğudur. Ardından potansiyometre yardımıyla Joystick Modül’den ölçtüğümüz değeri bir yere atamak için bir değişken tanımlıyoruz. Devamında her zamanki gibi sürekli tekrarla bloğu ile devam ediyoruz. Sonrasında ise analog (0)  pininden okunan değeri 6ya bölmemiz gerekiyor. Bunun sebebi ise normalde analogdan okunan değer 0 ile arasındadır. Ardından Robotlar dizisinde bulunan “Servo pini açısını x eksen yap” bloğunu sürüklüyoruz. En son ise kodumuzun sağlam çalışması için, “0,3 saniye bekle” bloğunu sürükleyip, programlamamızı bitiriyoruz. Son kez kontrol edip, kodumuzu Arduino’ya yülüyebiliriz.

mBlock ile Arduino! Joystick ile Servo Motor Kontrol joystick ile servo motor kontrolü,joystick ile servo motor kontrolü mblock,joystick ile servo motor kontrolü kodu,arduino joystick ile servo motor kontrolü,joystick ile 2 servo motor kontrolü
mBlock ile Arduino! Joystick ile Servo Motor Kontrol joystick ile servo motor kontrolü,joystick ile servo motor kontrolü mblock,joystick ile servo motor kontrolü kodu,arduino joystick ile servo motor kontrolü,joystick ile 2 servo motor kontrolü

nest...

batman iftar saati 2021 viranşehir kaç kilometre seferberlik ne demek namaz nasıl kılınır ve hangi dualar okunur özel jimer anlamlı bayram mesajı maxoak 50.000 mah powerbank cin tırnağı nedir