Polo Robot APK sı ve arduino programı
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;
}
//———————————-
}
Related Posts
Manyetik Tren
Mıknatısların kutuplarını öğrenmek ve bunların birbirine etkisini görmek için yapılan bir projedir. İlgili
Hırsız Alarm Sistemi
Tübitak 4006 projeleri kapsamında hırsız alarm sistemi yapımına örnek bir proje yaptık. Kapı açıldıktan sonrakiRead More
Sesli Harita
Sesli harita Sosyal bilgiler dersi 4006 projeleri kapsamında yapabileceğiniz bir projedir. Butonlara basılınca ilgili bölgeRead More
Comments are Closed