Arduino ile birçok uygulama ve proje yapılıyor. Yapmış olduğum uzaktan kumandalı tank internette bulunmasını istediğim bir projeydi ve bende açık kaynak olarak Arduino ile uzaktan kumandalı tank yapımı bu makalede anlatıyorum.

Arduino ile yapmış olduğum Uzaktan Kumandalı Tank hakkında

 

Kullanılan Malzemeler

Alıcı:

  • Arduino Nano
  • Nrf24l01
  • Palet Seti(2 motor 2 palet)
  • TT motor
  • L298N motor sürücü 2 adet
  • BreadBoard

Verici:

  • Arduino Uno
  • Joystick Shield
  • Nrf24l01

Kullanılan Bataryalar:

  • 3.7 V  3 adet (2’si Taret , 1’i Nano için)
  • 7.2 V (palet motorları için)

Dikkat: Tüm Bataryaların gnd’sini(-)  aynı hatta (+)’i ise farklı bataryalrdan kullandım.

Kodlar

alıcı:

#include <SPI.h> //Uzaktan Kumandalı Tank Yapımı
#include <nRF24L01.h>
#include <RF24.h>

#define CE_PIN 9
#define CSN_PIN 10

int motor1 = 2;
int motor11= 3;
int motor2 = 5;
int motor22= 4;
const int motorPin1 = 7;
const int motorPin2 = 8;
const int e1 = 6;
const uint64_t pipe = 0xE8E8F0F0E1LL;
RF24 radio(CE_PIN, CSN_PIN);
int data[3];

void setup()
{
pinMode(motor1, OUTPUT);
pinMode(motor2, OUTPUT);
pinMode(motor11, OUTPUT);
pinMode(motor22, OUTPUT);

pinMode(motorPin1, OUTPUT);
pinMode(motorPin2, OUTPUT);
pinMode(e1, OUTPUT);

Serial.begin(9600);
radio.begin();
radio.openReadingPipe(1,pipe);
radio.startListening();;
}

void loop()
{
if ( radio.available() ) //Eğer sinyal algılarsan…
{
radio.read(data, sizeof(data));
Serial.print(“data[0]=”);
Serial.println(data[0]);
Serial.print(“data[1]=”);
Serial.println(data[1]);
hareket(data[0],data[1],data[2]);
}
} // ( Arduino ile uzaktan kumandalı tank yapımı )

void hareket(int x_axis, int y_axis, int xpin)
{
if (y_axis > 900&& x_axis > 400&& x_axis <600) //ileri
{
digitalWrite(motor1 , HIGH); //Uzaktan Kumandalı Tank Yapımı
digitalWrite(motor11 , LOW);
digitalWrite(motor2 , HIGH);
digitalWrite(motor22 , LOW);
}
else if (y_axis < 200&& x_axis <600&& x_axis > 400) //geri
{
digitalWrite(motor1 , LOW);
digitalWrite(motor11 , HIGH);
digitalWrite(motor2 , LOW);
digitalWrite(motor22 , HIGH);
}
else if (x_axis > 900&& y_axis > 400&& y_axis < 600) //sağ
{
digitalWrite(motor1 , HIGH);
digitalWrite(motor11 , LOW);
digitalWrite(motor2 , LOW);
digitalWrite(motor22 , HIGH);
}
else if (x_axis > 900&& y_axis > 800) //sağ ileri
{
digitalWrite(motor1 , HIGH); //Uzaktan Kumandalı Tank Yapımı
digitalWrite(motor11 , LOW);
digitalWrite(motor2 , LOW);
digitalWrite(motor22 , LOW);
}
else if (x_axis < 200&& y_axis < 600&& y_axis > 400) //sol
{
digitalWrite(motor1 , LOW);
digitalWrite(motor11 , HIGH);
digitalWrite(motor2 , HIGH);
digitalWrite(motor22 , LOW);
}
else if (x_axis < 200&&> 800) //sol ileri
{
digitalWrite(motor1 , LOW);
digitalWrite(motor11 , HIGH);
digitalWrite(motor2 , LOW);
digitalWrite(motor22 , LOW);
}
else
{
digitalWrite(motor1 , LOW);
digitalWrite(motor11 , LOW);
digitalWrite(motor2 , LOW);
digitalWrite(motor22 , LOW);
}
if(xpin > 800)
{
digitalWrite(motorPin1,HIGH);
digitalWrite(motorPin2,LOW);
analogWrite(e1, 190);
}
else if(xpin < 300)
{
digitalWrite(motorPin1,LOW);
digitalWrite(motorPin2,HIGH);
analogWrite(e1, 190);
}
else
{
digitalWrite(motorPin1,LOW);
digitalWrite(motorPin2,LOW);
analogWrite(e1, 0);
}
}

// ( Arduino ile uzaktan kumandalı tank yapımı )

verici:

#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>

#define CE_PIN 9
#define CSN_PIN 10

const uint64_t pipe = 0xE8E8F0F0E1LL;
RF24 radio(CE_PIN, CSN_PIN);
int data[3];

#define x_axis A0 // x axis
#define y_axis A1 //y axis
#define xpin A2
void setup()
{
pinMode(xpin , INPUT);
pinMode(xpin , INPUT);
Serial.begin(9600);
radio.begin();
radio.openWritingPipe(pipe);
}

void loop()
{
data[0] = analogRead(x_axis);
data[1] = analogRead(y_axis);
data[2] = analogRead(xpin);
radio.write(data, sizeof(data));

//HATA AYIKLAMA (DEBUG)
Serial.print(analogRead(x_axis));
Serial.println(” “);
Serial.print(analogRead(y_axis));
Serial.println(” “);
}

XK2 BLACK PANTHER

Gerçek bir XK2 Black Panther Hakkında:

K2 Black Panther (Hangul: K2 ‘흑표’, hanja: K2 ‘黒豹’), Güney Kore Cumhuriyeti’nin Hyundai-Kia Automotive Group şirketinin bünyesinde bulunan ROTEM tarafından geliştirilmekte olan ve envanterinde bulunan M48 Patton ve K1 AMT’larının yerini alması planlanan bir Ana Muharebe Tankıdır. ( Uzaktan Kumandalı Tank Yapımı yazının devamındadır kapamayınız )

3 adet mürettebata sahip,55 ton ağırlığında olması planlanan,120mm yivsiz tank topuna,aynı zamanda 12.7mm makinalı tüfek ve 7.62mm koaksial makinalı tüfeğe sahip,1500hp motorla donatılmış,430 km menzil mesafesi bulunan bir tank.tamamı yerli olmamakla birlikte,arge çalışmaları sonucu %100 yerli üretim hedeflenen bir proje.

tank başı 8.5 milyon dolar gibi bir fiyatla, piyasadaki “ünite başına en pahalı tank” başarısını elinde tutmaktadır. m1a2 kıvamında bir tank olsada, m1a2 de bulunan seyreltilmiş uranyum zırh kaplaması, bu tankta yoktur. (Uzaktan Kumandalı Tank Yapımı)

K2 Black Panther
Çeşidi Ana Muharebe Tankı
Uyruğu  Güney Kore
Hizmet geçmişi
Hizmet 2014- günümüz
Üretim tarihi
Üretildiği tarih 2013- günümüz
Üretim adedi 100 (200 planlanan)
Özellikler
Uzunluk 7,5 m;
10,8 m (top öne doğru yöneltilmiş iken)
Genişlik 3,60 m
Yükseklik 2,40 m
Mürettebat 3 (Komutan, Sürücü, Nişancı)


Zırhı Çeşitli reaktif anti-füze tabakaları ve modüler yeni bilinmeyen zırh tipi
Ana silahı Rheinmetall 120-mm-yivsiz tank topu L/55
Diğer silahları 1 x 12,7-mm-K6-makinalı tüfek (tepesinde) ve
1 x 7,62-mm- makinalı tüfek (koaksial)
Motor V-12 MTU MB-883 Ka500 Dizel
1500 beygir (1.100 kW)
Kaldırma kapasitesi 27,3 beygir/ton
Süspansiyon donanımı hidrolik pnömatik
Boş ağırlık 55,0 ton
Harekat menzili 430 km
Azami hızı 70 km/h