Apk yı buradan indirebilirsiniz.
Uygulamayı android bir cihaza yüklediğinizde yapmanız gerekenler:
1- Robotun pil kablosunu takıp enerjisini veriniz.
2- Telefon ya da tabletinizin bluetooth özelliğini açıp, diğer cihazları aratınız.
3- Robotunuz HC-05 ismiyle ya da A8:223:01:D5:67 gibi uzun bir rakam-harf ismiyle görünecektir. Üzerine tıkladığınızda eşleştirmek için bir kerelik sizden şifre isteyecek. ŞİFRE: 1234 (Eşleşme sağlandığında robot üzerinde hızlı hızlı yanıp sönen led, arada bir göz kırpmaya başlar)
4- Pencereyi kapatıp uygulamamızı açınız.(Uygulamayı bu sayfanın üstünde yer alan resme tıklayarak indirebilirsiniz).
5- Üst ortada yer alan mavi bluetooth simgesine tıklayarak açılan pencereden eşleştirdiğimiz HC-05 i seçip bekliyoruz.
6- Artık robot emrinizde
NOT: Telefon ya da tabletinizin sesini açarsanız NOS yazan tuşa bastığınızda çıkacak olan ses hoşunuza gidecek 🙂 Bu tuş, robotun 1 saniyeliğine hızlanmasını sağlar. Aşağıdaki arduino programında sarı ile işaretli olan delay(1000) komutunu, delay(3000) yaptığınızda 3 saniyeliğine hızlanmış olur.
Arduinoya yüklenecek program aşağıdadır
#include <Servo.h>
#include <Wire.h>
#include <SoftwareSerial.h> // Seri haberleşme kütüphanesi
SoftwareSerial mySerial(7,8); // Bluetooth bağlanacak pinler
Servo sopa;
#define sol_aktif 3
#define sol_ileri 2
#define sol_geri 4
#define sag_aktif 5
#define sag_ileri A4
#define sag_geri A5
#define led 6
int x=0; int pos = 0;
int t=200;
int state; int flag=0; int stateStop=0;
int pwm=150;
void setup()
{
sopa.attach(A0); // servonun data ucu A0 nolu pine takılacak.İstediğiniz pine takabilirsiniz.
mySerial.begin(9600);
pinMode(sol_aktif,OUTPUT); pinMode(sol_ileri,OUTPUT);pinMode(sol_geri,OUTPUT);
pinMode(sag_aktif,OUTPUT); pinMode(sag_ileri,OUTPUT);pinMode(sag_geri,OUTPUT);
pinMode(led,OUTPUT);
digitalWrite (led,0);
sopa.write(pos);
}
//**********************************************************************
void loop()
{
if(mySerial.available() > 0)
{
state = mySerial.read();
if (state>=100 && state<255)
{
pwm=state; // uygulamadaki sürüklenebilir çubuktan gelen değeri okuyup motor hızını ayarlıyoruz
analogWrite(sol_aktif, pwm); analogWrite(sag_aktif, pwm);
}
digitalWrite (led,1);
}
//————————————-
// ileri
if (state == 44) {
analogWrite(sol_aktif, pwm); analogWrite(sag_aktif, pwm);
//—– SOL —— —— SAĞ ——–
digitalWrite(sol_ileri, 1); digitalWrite(sag_ileri, 1);
digitalWrite(sol_geri, 0); digitalWrite(sag_geri, 0);
if (state>=100 && state<255) pwm=state;
}
//————————————-
// Nos
if (state == 47) {
analogWrite(sol_aktif, 255); analogWrite(sag_aktif, 255);
//—– SOL —— —— SAĞ ——–
digitalWrite(sol_ileri, 0); digitalWrite(sag_ileri, 0);
digitalWrite(sol_geri, 1); digitalWrite(sag_geri, 1);
delay(1000); // 1 sn hızlı git sonra yavaşla
pwm=150; state=0;
analogWrite(sol_aktif, pwm); analogWrite(sag_aktif, pwm);
}
//————————————-
// sola dön
else if (state == 41) {
analogWrite(sol_aktif, pwm); analogWrite(sag_aktif, pwm);
//—– SOL —— —— SAĞ ——–
digitalWrite(sol_ileri, 0); digitalWrite(sag_ileri, 1);
digitalWrite(sol_geri, 1); digitalWrite(sag_geri, 0);
if (state>=100 && state<255) pwm=state;
}
//————————————-
// Stop
else if (state == 40) {
analogWrite(sol_aktif, 0); analogWrite(sag_aktif, 0);
//—– SOL —— —— SAĞ ——–
analogWrite(sol_ileri,1); analogWrite(sag_ileri, 1);
analogWrite(sol_geri, 1); analogWrite(sag_geri, 1);
digitalWrite (led,0);
}
//————————————-
// sağa
else if (state == 42) {
analogWrite(sol_aktif, pwm); analogWrite(sag_aktif, pwm);
//—– SOL —— —— SAĞ ——–
digitalWrite(sol_ileri, 1); digitalWrite(sag_ileri, 0);
digitalWrite(sol_geri, 0); digitalWrite(sag_geri, 1);
if (state>=100 && state<255) pwm=state;
}
//————————————-
// geri
else if (state == 43) {
analogWrite(sol_aktif, pwm); analogWrite(sag_aktif, pwm);
//—– SOL —— —— SAĞ ——–
digitalWrite(sol_ileri, 0); digitalWrite(sag_ileri, 0);
digitalWrite(sol_geri, 1); digitalWrite(sag_geri, 1);
if (state>=100 && state<255) pwm=state;
}
//————————————-
// servo ileri
else if (state == 45) {
/*
for (pos=0;pos<100;pos++) // pos<100 yerine pos<180 yazarsanız robot üzerindeki kol 180 derece döner
{
sopa.write(pos);
delay(5);
}
*/
pos=100; sopa.write(pos);
state=0;
}
//————————————-
// servo geri
else if (state == 46) {
/*
for (pos=100;pos>=0;pos–) // pos=100 yerine pos=180 yazarsanız kol, 180 derece geri döner
{
sopa.write(pos);
delay(10);
}
*/
pos=0; sopa.write(pos);
state=0;
}
//———————————-
}