ROBOTECH-10
va
di
.c
om
ROBOTIC TECHNOLOGIES APPLICATIONS BOARD
tro
1. Genel Tanım
el
ek
Robotech-10 kartı, Teknik okullarda, üniversitelerde ve robot kulüpleri olan liseler ile bu işi
hobi olarak yapan kullanıcılar için robot teknolojinin ve çeşitli sensörlerin kullanımının öğrenilmesini
kolaylaştırmak amacı ile tasarlanmış bir karttır. Amaç, robot tasarımlarında kullanılan giriş
(sensörler) ve çıkış (motorlar) birimlerinin kontrollerinin öğrenilmesi için gereken donanımı hazır
olarak sağlamaktır. Böylelikle kullanıcıların direk olarak yazılım üzerine yoğunlaşması sağlanmış olur.
ww
w.
Kart üzerinde Arduino Uno R3 Mikrodenetleyici kartı vardır. Mikrodenetleyici kartının analog
girişleri için 5 adet analog sensör , dijital girişleri için iki adet dijital sensör ve Ultrasonik sensör,
çıkışlar için ise bir adet DC motor ile bir adet servo motor bağlanmıştır. Tüm bağlantılar dip-anahtar
ile aktif ya da pasif hale getirilebilir.
www.elektrovadi.com
Sayfa 1
2. KONTROL KARTI
2.1. Arduino Uno R3 kartı
Mikrodenetleyici kartı olarak Arduino UNO R3 kartı kullanılmıştır. RoboTech-10 kartındaki
tüm uygulamalar bu karta göre yazılmıştır. Kullanıcılar Arduino uyumlu her türlü kartı
Robotech-10 kartına bağlayarak kullanabilirler.
3. ANALOG SENSÖRLER
3.1. GP2Y0A21
3.1.1.Sensör Bilgisi
va
di
.c
om
Sharp GP2Y0A21 Mesafe Algılayıcı birimi, robotik
uygulamalarda ve projelerde en çok tercih edilen
mesafe algılayıcı birimidir. Algılayıcı sürekli olarak
mesafe okuması alır ve aldığı mesafe okumasını analog
voltaj değeri olarak iletir. Ölçüm aralığı 10-80cm olan
algılayıcı, 5V besleme voltaj seviyesine sahiptir. Labirent
Çözen, Yangın Söndüren, Sumo , Devriye Robotu gibi
orta mesafede engel algılaması gereken robot projelerinde kullanılabilir.
Teknik Özellikler:
el
ek
tro
Çalışma Voltajı: 4.5 V to 5.5 V
Akım: 30 mA (ortalamal)
Algılama Mesafesi: 10 cm - 80 cm (4" - 32")
Çıkış: Analog çıkış (çıkış voltajı ölçülen mesafeyle oranlıdır)
Tepki Süresi: 38 ± 10 ms
Ağırlık: 3.5 g (0.12 oz)
ww
w.
3.1.2.Sensör Nasıl Çalışır
SHARP sensörün yaydığı IR ışık engele çarpıp geri yansır ve yansıyan IR ışık SHARP
sensörün alıcısı tarafından algılanır. Engel ile SHARP sensör arasındaki mesafeye
bağlı olarak IR ışığın yansıma açısı ve ışığın dedektör üzerinde düştüğü nokta
değişir.
Dedektör bu veriyi okur ve analog voltaj değeri olarak çıkış verir. Bu değer
kontrol kartı tarafından işlenerek mesafe hesabı yapılır.
www.elektrovadi.com
Sayfa 2
.c
om
di
va
ww
w.
el
ek
tro
3.1.3.Robotech-10 kartı bağlantısı
Arduino kartının Analog girişi olan A4 pinine bağlıdır.
Analog Sensörler DipSwitch konumu
www.elektrovadi.com
Sayfa 3
3.1.4.Örnek uygulama kodu
//Analog uzaklık sensörü deneyi
//Sensörün bağlandığı giriş pini
int analogInPin4 = A4; // Analog input pin4
//Değişkenler
float sharp_volts,sharp_distance; //sharp analog
.c
om
void setup()
{
Serial.begin(9600);
}
va
di
void loop()
{
sharp_volts = analogRead(analogInPin4)*0.0048828125; // sensörden değeri oku ve
sharp_distance = 65*pow(sharp_volts, -1.10);
// uzaklığa çevir.
ek
tro
// uzaklığı yazdır
Serial.print("uzaklik=");
Serial.print(sharp_distance);
Serial.println("cm");
}
ww
w.
el
3.2. Kontrast Sensörleri
3.2.1.CNY70
3.2.1.1.
Sensör Bilgisi
CNY 70 basitçe, çoğu kontrast sensöründe olduğu gibi, ışık yayan ve yaydığı ışığın
yansıyıp yansımadığını kontrol etme prensibiyle siyah ve beyazı ayırt eder. Yansıma
prensibini kullandığı için kısa mesafelerde cisim varlığını belirlemekte de kullanılabilir.
Bu özellikler CNY70 sensörünü; çizgi izleyen, mini sumo, sumo ve özel projeler için
ideal bir sensör haline getirir.
www.elektrovadi.com
Sayfa 4
Sensör Nasıl Çalışır
.c
om
3.2.1.2.
ww
w.
el
ek
tro
va
di
CNY70’in anod ve katot(A-C) pinlerinden güç verildiğinde gönderilen ışık yansıtıcı
yüzeyden geri yansır ve sensörün yapısındaki fototransistör (C-E)tarafından algılanır. Eğer
cisim siyah ya da koyu renkli ise ışığı soğuracağı için fototransistör tarafından algılanmaz. Eğer
cisim beyaz ya da açık renkli ise ışık geri yansıyacağından fototransistör tarafından algılanır.
Yüzeyin yansıtıcılık miktarına göre fototransistörün algıladığı ışık miktarı değişeceği için,
yüzeyin yansıtıcılığına göre farklı voltaj değerleri verir. Hazırladığınız devreye göre, istediğiniz
renk için(siyah-beyaz), farklı voltaj değerleri (5v-0v) alabilirsiniz.
www.elektrovadi.com
Sayfa 5
Robotech-10 kartı bağlantısı
.c
om
3.2.1.3.
ww
w.
el
ek
3.2.2.TCRT5000
3.2.2.1.
Sensör Bilgisi
tro
va
di
Analog Sensörler DipSwitch konumu
Çalışma prensibi, çoğu kontrast sensöründe olduğu gibi, yansıyan ışığı algılamaya
dayanır. TCRT5000 sensörü, çizgi ve cisim sensörü olarak çizgi izleyen, sumo, mini sumo
başta olmak üzere birçok robotik ve elektronik projede kullanabileceğiniz bir kontrast
sensörüdür. Algılama mesafesi CNY 70’ten bir miktar daha fazladır. TCRT5000 0,2mm ile
15mm arasında sağlıklı şekilde çalışmaktadır.
www.elektrovadi.com
Sayfa 6
Sensör Nasıl Çalışır
.c
om
3.2.2.2.
ww
w.
el
ek
tro
va
di
TCRT5000’in anod ve katot(A-C) pinlerinden güç verildiğinde gönderilen ışık yansıtıcı
yüzeyden geri yansır ve sensörün yapısındaki fototransistör (C-E)tarafından algılanır.
Yüzeyin yansıtıcılık miktarına göre fototransistörün algıladığı ışık miktarı değişeceği için,
yüzeyin yansıtıcılığına göre farklı voltaj değerleri verir. Hazırladığınız devreye göre,
istediğiniz renk için(siyah-beyaz), farklı voltaj değerleri (5v-0v) alabilirsiniz.
www.elektrovadi.com
Sayfa 7
Robotech-10 kartı bağlantısı
.c
om
3.2.2.3.
ek
tro
va
di
Analog Sensörler DipSwitch konumu
ww
w.
el
3.2.3. QRD1114
3.2.3.1.
Sensör Bilgisi
www.elektrovadi.com
Çalışma prensibi, çoğu kontrast sensöründe olduğu gibi, yansıyan
ışığı algılamaya dayanır. QRD1114 sensörü, çizgi ve cisim sensörü
olarak çizgi izleyen, sumo, mini sumo başta olmak üzere birçok
robotik ve elektronik projede kullanabileceğiniz bir kontrast
sensörüdür. Dış ortamdan etkilenmeme açısından CNY 70’ten
daha avantajlıdır. TCRT5000 0,2mm ile 15mm arasında sağlıklı
şekilde çalışmaktadır.
Sayfa 8
3.2.3.2.
Sensör Nasıl Çalışır
ww
w.
el
ek
tro
va
di
.c
om
QRD1114 anod ve katot(Pin3 ve Pin4)
pinlerinden güç verildiğinde gönderilen ışık
yansıtıcı yüzeyden geri yansır ve sensörün
yapısındaki fototransistör (Pin1 ve Pin2)
tarafından algılanır. Yüzeyin yansıtıcılık
miktarına göre fototransistörün algıladığı ışık
miktarı değişeceği için, yüzeyin yansıtıcılığına
göre farklı voltaj değerleri verir. Hazırladığınız
devreye göre, istediğiniz renk için(siyah-beyaz),
farklı voltaj değerleri (5v-0v) alabilirsiniz.
www.elektrovadi.com
Sayfa 9
Robotech-10 kartı bağlantısı
.c
om
3.2.3.3.
el
ek
3.2.4. QRT-1A
3.2.4.1.
Sensör Bilgisi
tro
va
di
Analog Sensörler DipSwitch konumu
ww
w.
Çalışma prensibi, çoğu kontrast sensöründe olduğu gibi, yansıyan ışığı algılamaya dayanır. QRT-1A
sensörü, çizgi ve cisim sensörü olarak çizgi izleyen, sumo, mini sumo başta olmak üzere birçok robotik
ve elektronik projede kullanabileceğiniz bir kontrast sensörüdür. Kompakt yapısı sayesinde encoder
uygulamalarında da sıklıkla tercih edilmektedir.
Tekerlek encoder şablonu
www.elektrovadi.com
Sayfa 10
3.2.4.2.
Sensör Nasıl Çalışır
Robotech-10 kartı bağlantısı
Analog Sensörler DipSwitch konumu
ww
w.
el
ek
tro
va
3.2.4.3.
di
.c
om
QRT-1A anod ve katot(Pin1 ve Pin2) pinlerinden güç verildiğinde
gönderilen ışık yansıtıcı yüzeyden geri yansır ve sensörün
yapısındaki fototransistör (Pin3 ve Pin4) tarafından algılanır.
Yüzeyin yansıtıcılık miktarına göre fototransistörün algıladığı ışık
miktarı değişeceği için, yüzeyin yansıtıcılığına göre farklı voltaj
değerleri verir. Hazırladığınız devreye göre, istediğiniz renk
için(siyah-beyaz), farklı voltaj değerleri (5v-0v) alabilirsiniz.
www.elektrovadi.com
Sayfa 11
3.2.5. Örnek uygulama kodu
//kontrast sensörleri deneyi
int analogInPin0 = A0;
int analogInPin1 = A1;
int analogInPin2 = A2;
int analogInPin3 = A3;
// Analog giriş pin0
// Analog giriş pin1
// Analog giriş pin2
// Analog giriş pin3
int sensorValue = 0;
.c
om
void setup() {
Serial.begin(9600);
}
ek
tro
// AN1 okunuyor..
sensorValue = analogRead(analogInPin1);
Serial.print("sensor1 = " );
Serial.print(sensorValue);
Serial.print(" && ");
va
// AN0 okunuyor..
sensorValue = analogRead(analogInPin0);
Serial.print("sensor0 = " );
Serial.print(sensorValue);
Serial.print(" && ");
di
void loop() {
w.
el
// AN2 okunuyor..
sensorValue = analogRead(analogInPin2);
Serial.print("sensor2 = " );
Serial.print(sensorValue);
Serial.print(" && ");
}
ww
// AN3 okunuyor..
sensorValue = analogRead(analogInPin3);
Serial.print("sensor3 = " );
Serial.println(sensorValue);
www.elektrovadi.com
Sayfa 12
4. Dijital Sensörler
4.1. GP2Y0D340K
4.1.1.Sensör Bilgisi
.c
om
Küçük boyutlardaki bu dijital sensör 1 ile 40 cm aralığındaki
cisimlerin varlığını algılayabilmeniz için kullanabileceğiniz hızlı tepki
süresine ve düşük güç tüketimine sahip sensördür. Menzili içinde bir
cisim varsa Başta mini sumo olmak üzere, birçok robotik projede
sıklıkla kullanılmaktadır. Bununla beraber çeşitli endüstriyel
uygulamalarda ve hobi çalışmalarında da kullanılabilir.
4.1.2.Sensör Nasıl Çalışır
ww
w.
el
ek
tro
va
di
GP2Y0D340K, dahili pozisyon dedektörü, Infrared LED ve sinyal işleme birimi barındıran bir
sensördür. Nesnelerin yansıtıcılık özelliklerinden, ortam sıcaklığından ve çalışma süresinden
etkilenmez. Belirtilen menzilde bir nesne olması durumunda sensör çıkışı LOW (0v)
seviyesinde kalır. 40 cm’lik menzilde nesne bulunmaması durumunda sensör çıkışı HIGH (5V)
seviyesinde kalır.
www.elektrovadi.com
Sayfa 13
4.1.3.Robotech-10 kartı bağlantısı
di
.c
om
Dijital I/O DipSwitch konumu
tro
ek
int sayisal_sharp_state =0; //sayisal sharp
va
4.1.4.Örnek uygulama kodu
//sayısal sharp sensor
int sayisal_sharp=4;
int led = 13;
void setup() {
ww
w.
el
Serial.begin(9600);
pinMode(led, OUTPUT);
pinMode(sayisal_sharp, INPUT);
}
void loop() {
// giriş pinini oku
sayisal_sharp_state = digitalRead(sayisal_sharp);
if (!sayisal_sharp_state)//cisim var!
{ digitalWrite(led, HIGH);
Serial.println("cisim var...");
}
else//cisim yok!
{ digitalWrite(led, LOW);
Serial.println("cisim yok...");
}
}
www.elektrovadi.com
Sayfa 14
4.2. MOTION SENSÖR (PIR)
4.2.1.Sensör Bilgisi
.c
om
PIR sensörleri cisimlerin yaydığı orta frekanstaki infrared ışınlara
duyarlıdır. Sensörden herhangi bir enerji çıkışı olmaz. Bu sebepten
dolayı Pasif InfraRed ismini almıştır. Alıcı ve verici gibi bir gereksinimi
olmadığı için güvenlik uygulamaları için idealdir.
di
4.2.2.Sensör Nasıl Çalışır
el
ek
tro
va
Pır sensörleri etki alanını genişletmek için Fresnel Lens ile
kullanılırlar. Lensten geçen ışınlar sensöre düştükten sonra küçük
genlikte bir sinyal oluşturur. Sensör kartı üzerindeki yükselteçler
sayesinde sinyal okunabilir bir hale dönüştürülür. Yükseltilmiş sinyal,
sensör kartı üzerindeki karşılaştırıcı devrelerde eşik değeri ile
karşılaştırılır ve cismin olup olmadığına karar verilir. Karşılaştırıcıların
çıkışına göre dijital bir çıkış verilir.
ww
w.
4.2.3.Robotech-10 kartı bağlantısı
Dijital I/O DipSwitch konumu
www.elektrovadi.com
Sayfa 15
4.2.4.Örnek uygulama kodu
//pır_detector_deneyi
int pir_detector = 2;
int led = 13;
int pir_detector_state = 0;
di
ek
tro
va
// giriş pinini oku
pir_detector_state = digitalRead(pir_detector);
if (pir_detector_state)//cisim var!
{ digitalWrite(led, HIGH);
Serial.println("cisim var...");
}
else//cisim yok!
{ digitalWrite(led, LOW);
Serial.println("cisim yok...");
}
.c
om
void setup() {
Serial.begin(9600);
pinMode(pir_detector, INPUT);
}
void loop(){
}
ww
w.
el
4.3. HC-SR04 ULTRASONIC SENSOR
4.3.1.Sensör Bilgisi
Ses dalgaları sınıflandırılmasında 20Khz-1Ghz aralığındaki ses
sinyalleri ultrasonik ses olarak tanımlanmıştır. HS-SR04 sensörü
40Khz frekansında ultrasonik ses üretmektedir. Ultrasonik Sensörler
yüksek frekansta ses dalgası gönderip, cisimden yansıyan dalganın
geri gelme süresini hesaplayarak uzaklığına karar verir.
4.3.2.Sensör Nasıl Çalışır
Sensör üzerinde vcc,gnd,trig,echo isminde 4 adet
pin bulunur. Sensör 40Khz frekansında bir sinyal
üretip 8 adet palsı ses üretecine gönderir. Ses
dalgası bir cisme çarpıp geri dönene kadar echo
pini HIGH seviyesinde kalır. Kullandığımız işlemci
ile echo pininin HIGH seviyesinde kalma süresini
ölçerek basit matematiksel işlemlerle cismin
uzaklığını bulabiliriz.
www.elektrovadi.com
Sayfa 16
4.3.3.Robotech-10 kartı bağlantısı
di
.c
om
Dijital I/O DipSwitch konumu
4.3.4.Örnek uygulama kodu
tro
va
//ultrasonik
int ultrasonik_trigPin= 6;
int ultrasonik_echoPin=5;
long ultrasonik_duration, ultrasonik_distance; //ultrasonik
ek
void setup() {
}
ww
void loop() {
w.
el
Serial.begin(9600);
pinMode(ultrasonik_trigPin, OUTPUT);
pinMode(ultrasonik_echoPin, INPUT);
digitalWrite(ultrasonik_trigPin, LOW);
delayMicroseconds(2);
digitalWrite(ultrasonik_trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(ultrasonik_trigPin, LOW);
ultrasonik_duration = pulseIn(ultrasonik_echoPin, HIGH);
ultrasonik_distance = (ultrasonik_duration/2) / 29.1;
Serial.print("uzaklik=");
Serial.print(ultrasonik_distance);
Serial.println(" cm");
}
www.elektrovadi.com
Sayfa 17
5. MOTORLAR
5.1. DC MOTOR
5.1.1.Motor Bilgisi
.c
om
Robotik uygulamalarda sıkça kullanılan bu küçük motorlar, 3-9V
arasında rahatça çalışabilirler. Küçük voltajlar motoru fazla etkilemese
de, yüksek voltajlar motorun ömrünü kısaltmaktadır. Motorun
sunduğu hızı veya torku kullanım amacına göre arttırıp azaltmak için
motorların miline küçük metal dişlilerden oluşan dişli kutuları eklenir.
Bu dişli kutuları 5:1 oranından 1000:1 oranına kadar geniş bir
yelpazede üretilmektedir.
va
tro
w.
el
ek
Çalışma Voltajı: 6V
Hız: 350Rpm
Boşta Çektiği Akım: 60mA
Zorlanma Akımı: 1.5A
Gücü: 9W
Motor Çapı: 12-10mm
Redüktör Çapı: Kare 12x10mm
Mil: 3mm D Şaft Ortadan Çıkışlı
Mil Uzunluğu: 9mm
Uçtan Uca Uzunluk: 36mm
Ağırlık: 12 gr
ww











di
Motor özellikleri:
5.1.2.Motor nasıl çalışır
www.elektrovadi.com
Manyetik alan içinde kalmış bir iletken tel üzerinden
akım geçirildiğinde iletken tel üzerinde bir kuvvet
oluşumu gözlemlenir. DC motorların elde ettiği hareket
enerjisi bu temel prensibe bağlıdır. Motorun dönen
kısmı olan rotorun üzerinde belli açılarla sarılmış
iletkenlerin üzerinden, fırçaların kollektöre temas
etmesiyle akım geçirilir. Üzerinden akım geçen iletken,
statorun üzerindeki sabit mıknatısların oluşturduğu
manyetik alan sayesinde belirli bir yönde kuvvete maruz
kalır. Bu işlem sıra ile bütün açı dilimlerindeki sarımlar
için gerçekleşir ve sürekli bir dönme sağlanır.
Sayfa 18
w.
el
//dc_motor kontrol
int mtr_ctrl_1 = 8;
int mtr_ctrl_2 = 9;
int mtr_pwm = 10;
ek
5.1.4.Örnek uygulama kodu
tro
va
di
.c
om
5.1.3.Robotech-10 kartı bağlantısı
ww
void setup() {
pinMode(mtr_pwm,OUTPUT);
pinMode(mtr_ctrl_1,OUTPUT);
pinMode(mtr_ctrl_2,OUTPUT);
}
Dijital I/O DipSwitch konumu
void loop() {
digitalWrite(mtr_ctrl_1,LOW);
digitalWrite(mtr_ctrl_2,HIGH);
digitalWrite(mtr_pwm,HIGH);
delay(1000);
digitalWrite(mtr_pwm,LOW);
delay(1000);
}
www.elektrovadi.com
Sayfa 19
5.2. SERVO MOTOR
5.2.1.Servo Bilgisi
.c
om
Servo motorlar; DC elektrik motor, sürücü ve kontrol devresi,
potansiyometre, dişli çarklar ve hareket kolu gibi sistemleri bir
arada bulundururlar. Servo motorlar, giriş olarak verilen açı
değeri ile anlık açı değeri arasındaki farklı algılayarak kontrol
devresi sayesinde hatayı gideren sistemlerdir. Hassasiyeti ve
kolay kullanımı sebebi ile robotik kol uygulamalarında en çok
tercih edilen motorlardır. 3.7 gramlık mikro servolardan, 1000
HP’lik devasa boyutlarda servo motorlara kadar geniş bir
yelpazede üretilirler.
ww
w.
va
el
5.2.2.Servo nasıl çalışır
tro
Çalışma Voltajı : 4.8~6.0V
Çalışma Akımı : 100mA
Çalışma Hızı : 0.12sec/60degree (4.8V)
TTork : 0.7kg/cm (4.8V)~0.8kg/cm (6.0V)
Sıcaklık Aralığı : -30~+60℃
Servo Tipi : Analog Servo
ek






di
SUPER LIGHT 3.7G MICRO SERVO Özellikleri
www.elektrovadi.com
Servo motorların içerisinde hareket sağlamak için DC
motor, pozisyon algılamak için potansiyometre, motora güç
kazandırmak için redüktör mekanizması ve kontrol için
sürücü / mikrodenetleyici bileşenleri bulunur. Sinyal
girişinden verilen PWM dalgasının döngü uzunluğuna göre
referans açı değeri alınır.
Sayfa 20
ww
tro
w.
el
ek
5.2.3.Robotech-10 kartı bağlantısı
va
di
.c
om
Kontrol devresi, potansiyometreden alınan açı bilgisi ile sinyal girişinden verilen referans açı değeri
arasındaki hatayı yok edecek şekilde DC mtoru çalıştırır ve servo motor kolu istenilen açı değerine
gelir.
www.elektrovadi.com
Dijital I/O DipSwitch konumu
Sayfa 21
5.2.4.Örnek uygulama kodu
#include <Servo.h>
Servo myservo;
int srv = 11;
int sensorValue = 0;
void setup() {
myservo.attach(srv);// servo bağlantısı/
.c
om
}
void loop() {
tro
va
di
myservo.writeMicroseconds(500); // set servo to 0-point
delay(1000);
myservo.writeMicroseconds(1450); // set servo to mid-point
delay(1000);
myservo.writeMicroseconds(2400); // set servo to 180-point
delay(1000);
ww
w.
el
ek
}
www.elektrovadi.com
Sayfa 22
Download

www.elektrovadi.com