Robot Kol Bitirme Tezi Projesi
Merhabalar,
2010 yılında bitirme tezi olarak hazırladığım robot kol projemin tüm detaylarını yararlanmanız için aşağıda paylaşıyorum. PIC yazılımı için iletişime geçebilirsiniz.
Metinde bulunan alıntılar dışında tüm anlatım özgün olup bana aittir.
1.GİRİŞ
Otomasyonun
temel taşlarını oluşturan bu yapılar sayesinde insan hep daha farklısını
düşünüp hayal ederek ve hemen uygulamaya geçirerek düşündükleriyle yeni şeyler
yapmaya çalışmıştır. Bunun sonucunda teknoloji günden güne gelişmiş ve artık
işin içine bilgisayar teknolojisi de eklenerek uzun yıllar önce bir hayal
olarak gözüken birçok şeyin başarılması sağlanmıştır.
Bilgisayar
destekli tasarım ve bilgisayar destekli üretim gibi tekniklerin bulunmasıyla,
endüstriyel otomasyon sistemleri kısa zamanda çok hızlı gelişmiştir. Bu hızlı
gelişmenin sonucunda endüstriyel robotların kullanımı ivme kazanmıştır.
Günümüze kadar büyük aşama kaydeden robotlar, madde taşınması(konveyör
sistemler), boyacılık, kaynak endüstrisi, tıp vs. gibi birçok sektörde
kullanılmaktadır[1].
Robotların
bir kısmı otonom olup yapacakları hareketlere önceden yüklenen direktiflere
göre otomatik olarak yaparlar. Diğer bir kısım robotlar ise insanlara yardımcı
olmak üzere insanlar tarafından kontrol edilen cihazlardır. Robotlar doğru
yapıldıkları ve programlandıkları sürece hata yapmayan makinelerdir[2].
Robot
kolu, dönel veya kayar eklemlerle birbirine bağlanmış “uzuv” adı verilen
eğilmez cisimlerden meydana gelen açık çevrimli bir zincirdir. Çevrimin bir ucu
bir desteğe(temele) bağlanmış, diğer ucu ise serbesttir. Eklemler birbirine
bağlı uzuvların izafi hareketine izin vermektedirler. Bu hareketlerin çözümü
için robot kinematiğinden yararlanılır[4].
Kinematik
kavramı robot biliminin temelini oluşturur. İki farklı yöntem izlenebilir
kinematikte. Birincisi tabandan en uc noktaya ulaşmaya çalışmaktır ki bu işleme
ileri kinematik hesabı denir. Diğeri ise en uç noktadan başlayarak sabit
noktaya ulaşmay çalışmaktır. Bu yönteme de ters kinematik denir[5]. Ancak benim
projemde kullanılan motorlar tamamen bireysel kontrol edilmişlerdir. Bu yüzden
robot kinematiği kullanılmamıştır.
Robot
bilim ise, matematik, fizik, kontrol, makine, elektronik ve bilgisayar
mühendisliği gibi birçok bilim dalını içine alan bir bilimdir. Bu bilimlerden
makine mühendisliği robotların dinamik ve statik yapısını incelerken, matematik
robotların hareketlerini tanımlayıp modelini çıkarır. Kontrol mühendisliği
kontrol algoritmalarını geliştirerek sistemin istenilen hareketi
geçekleştirmesini sağlar. Elektronik mühendisliği, eyleyicilerin ve algılayıcıların
tasarımıyla ilgilenir. Bilgisayar mühendisliği ise gerekli robot programlarının
yapılmasında katkı sağlar[1].
Görüldüğü
gibi birçok bilimle alakası bulunan bu teknoloji ürünlerinin tüm sektörlere
yayılmaması için hiçbir neden bulunmamaktadır. Bu doğrultuda bitirme tezi
olarak bir robot kol yapma fikri bende oluşmuş ve sonuç olarak bu ortaya
çıkmıştır.
Benim bu projemde ki amacım, robot tekniğini kullanarak insan hayatının riske girebileceği noktalardan biri olan endüstriyel sistemlerde ki delme işlerinin yapılmasını sağlamaktır. Yazılan program sayesinde ister elle kontrol olsun isterse 2 adet sensor vasıtasıyla kolayca kontrol edilebilen bir sistem tasarlanmıştır. Bundan sonraki bölümlerde bu projede kullanılan teknikler, programlar ve materyaller hakkında bilgiler verilecektir.
2.GENEL OLARAK BİR ROBOT KAVRAMI
Robot, mekanik sistemleri ve bunlarla ilişkili kontrol ve algılama sistemleriyle bilgisayar algoritmalarına bağlı olarak akilli davranan makinelerdir. Genel bir enstitü tarafından ise robot su şekilde tanımlanmaktadır: Robot Yeniden programlanabilen; maddeleri, parçaları, aletleri, programlanmış hareketlerle yapılacak ise göre taşıyan veya isleyen çok fonksiyonlu makinelerdir". (Robot Institute of America, 1979)
Robot nedir? Robot, bir kaide üzerinde en az bir kol, tutma organları(genellikle pensler, vantuzlar veya elektromıknatıslar), pnömatik, hidrolik veya elektriksel sensorlar ile konumu ve basınç algılayıcılarıyla, bilgi işlem organlarıyla donatılmış kontrollü-mekanik maniplelerdir."
Yukarıdaki
tanımlarda görüldüğü gibi robot temel bir işlemi yerine getirebilen, yetileri
olan yeniden programlanabilen aygıtlardır. Temel olarak bir robotun aşağıdaki
özelliklerinin olması gerekir:
- İşlem yapma yetisi :Bir işlemi fiziksel veya farazi olarak yerine getirebilmelidir yoksa robot olmaz sadece bir madde olur.
- İşlemin sonucunu belirleme yetisi: İşlemi yaptıktan sonra mutlak olarak işlemin sonucunu belirlemelidir ki işlem tam olarak yapılmış olsun.
- Karar verme yetisi : İşlemin sonucuna göre yada dış etmenlere göre mutlaka bir yargı kurabilmelidir.
İste bu yapıları içeren her sisteme genel olarak
robot diyebiliriz. Örneğin sınav robotu, ışık izleyen robot, vana açıp kapayan
robot veya robot kol gibi. Fakat ası-l robot kavramı bu yapıların çok daha
ilerisine giderek doğada en karmaşık yapı olan insanoğlunun yetilerini taklit
etmek için yapılan makinelerdir. Robot kavramı da onlar üzerine kurulmuş
olmasına rağmen tanım genel olarak farazi yapıları da içermektedir.
Çeşitli
ileri gelen dünya ülkeleri tarafından robot çeşitli şekilde tanımlanmış olmakla
beraber hepsinin buluştuğu nokta “Robotlar yeniden programlanabilen mekanik aksamlardır”
olmuştur. Bu kurumların ayrıldıkları nokta algılama ve sonuca varma yetisidir.
Japon konseyi bu konuda algılama ve karar verme mekanizması olmayan robot kavramını
kabul ederken İngiliz ve Amerikan Enstitüsü buna karşı çıkmaktadırlar[7].
3.ENDÜSTRİYEL ROBOTLAR
Genel anlamda bir robotun fiziksel yapısı insan kolunu andırır ve üzerinde çeşitli eklemler bulundurur. Bu eklemlerin hareket sayısı robotun kaç serbestlik derecesine sahip olduğunu belirtir. Serbestlik derecesi sayısına bağlı olarak robotun hareket kabiliyeti ortaya çıkmaktadır. Bilindiği gibi insan kolu 6 serbestlik derecesine sahiptir(2 omuz, dirsek, 3 bilek) ve her türlü hareketi yapacak şekildedir[1]. Bu nedenle endüstride kullanılan robotların çoğu da yapacakları işlere göre kaç serbestlik derecesi gerektirdiği hesabı yapılarak imal edilmektedirler.
![]() |
Şekil 3.1 Robot ile insan benzetimi |
Şekil 3,1 de 6 serbestlik derecesine sahip bir endüstriyel robot kol gösterilmiştir. Bu tip bir endüstriyel robot dört ana kısımdan meydana gelir:
1.Bir mekanik yapı yada eklemlerle birbirine
bağlanmış sıralı sert cisimlerden(uzuvlardan) oluşan manipülatör ; manipülatör
, serbestliği sağlayan bir koldan(arm) , el becerisi sağlayan bir
bilekten(wrist) ve robotun yapması gereken görevi tamamlayan
sonlandırıcıdan(end effector) oluşmaktadır.
2.Eklemlerin
hareketlenmesiyle manipülatörün hareketini sağlayan
hareketlendiriciler(actuators-motors)
3.Manipülatörün
veya çevrenin durumunu gözleyen algılayıcılar(sensors)
4.Manipülatör
hareketini kontrol eden ve yöneten bir kontrol sistemi
Robot teknolojisinde üretim ve tasarım sırasında dikkate alınması
gereken yapılardır. Bu yapılar bir simülasyon programında tasarlandıktan sonra
üretimine geçilebilir. Bu sayede milimetrik hatalar engellenmiş olacaktır.
Robotun ana parçaları manipülatör, kontrol ünitesi ve güç
kaynağıdır (Sürücüler ve sürücü mekanizması)[6].
Robotu oluşturan temel elemanlar sırasıyla:
• Eklemler ve manipülatörler
• Bilek
• El ya da uç elemanı
• Sürücüler ve sürücü mekanizması
• Kontrol mekanizması
• Sensörler
• Arabirimler
3.1.1 Eklemler ve
Manipülatörler
Genelde
ağırlığı azaltmak ve vites aksamı, elektriksel kablolama, kontrol işareti
hatları ve hava boşluklarına yer sağlamak için içi boş olarak yapılırlar.
Kolun doğru şekilde konumlandırılabilmesi
için eklemler hassas olarak yapılmalıdır. Eklemlerin doğru ve yumuşak şekilde
hareket etmeleri için bilyeli yataklar kullanılır[9].
- Döner ( Revolute – R ) Eklemler: Menteşeye benzer ve iki uzuv arasında dönme hareketine izin verir.
![]() |
Şekil 3.2 Döner tip eklem |
2. Kayar
( Prismatic – P ) Eklemeler:
İki uzuv arasında doğrusal harekete izin verir.
![]() |
Şekil 3.3 Kayar tip eklem |
3.1.2 Bilek
Bilekler kolun sonuna monte edilirler
ve iki ya da üç bağlantı yeri içerirler. Genelde tek bir birim olarak
yapılırlar. Bileğin üç hareketi (dönme, yuvarlanma, atma) mevcuttur. Robotun
işi verimli ve hassas şekilde yapabilmesi bilek tasarımına bağlıdır[9].
3.1.3 El ya da Uç
Elemanı
Bileğin üzerinde bulunan bir
yerleştirme elemanıyla bilek ile birçok uç elemanının kullanılması mümkündür.
Genelde kullanılan uç elemanları, kavrayıcılar, pençeler, kaynak tabancaları,
havalı tutuculardır. Bu projede uç eleman olarak bir DC motor kullanılmıştır.
3.1.4 Sürücüler
ve Sürücü Mekanizması
Manipülatörleri bağlantı yerlerinin
etrafında hareket ettirmek için elektrik motorları, hidrolik sistemler ve
pnömatik sistemler kullanılmaktadır[9].
Robotun
kullanacağı alana ya da gerek duyduğu güce göre tahrik sistemleri 3
çeşittir[8]. Genellikle sanayide kullanılan bu sistemler:
1-
Hidrolik sistem
2- Elektrikli sistem
3- Pnömatik sistem
3.1.4.1 Hidrolik Sistem
Bu tip
robotlar daha çok ağır endüstride kullanılırlar. Ürettikleri yüksek torka
oranla tükettikleri güç düşüktür[1].
Hidrolik tahrik sistemi, robota büyük hız ve güç
verir. Bu sistem, mafsalların doğrusal ve dairesel hareket etmesini sağlayacak
şekilde tasarlanır. Hidrolik sistemin temel dezavantajı robotun fazla yer işgal
etmesidir. Ayrıca, sızıntı problemi vardır. Yüksek hız ve güç sağladığından bu
sistem birçok endüstriyel robotta kullanılmaktadır. Sprey boyamadaki gibi elektrikli
sistemlerin yangın çıkartma tehlikesi yüksek olan alanlarda hidrolik robotlar
kullanılmaktadır[6].
3.1.4.2 Elektrikli Sistem
Hidrolik sistemlerle karşılaştırıldığında, elektrikli
sistemler, daha az hız ve güç sağlarlar. Bundan dolayı elektrikli sistemler
daha küçük robotlarda kullanılır. Fakat bu sistemler daha hassas ve daha iyi
tekrarlanabilme kabiliyetinde ve kullanımı daha temizdir. En yaygın olarak
endüstride bu tip robotlar kullanılır. Nümerik kontrollü tezgâhlarda olduğu
gibi bu tip robotlar iki grupta sınıflandırılır: Adım motorlular ve doğru
akımlı servo motorlulardır. Adım motorlu robotların çoğu açık döngü tipindedir,
fakat geri besleme döngüleri bu robotlarda ortaktır. Step Motorlar, diğer motorlara göre sürücü ünitelerinin ucuz olmasından
dolayı tercih edilirler. Ayrıca konum kontrolünde daha hassas kontrol
yapmaktadır. Daha çok robot tutucularında kullanımı yaygındır [9].
Servo sistemli
robotlar, sistem ile robot arasında sabit olan geri besleme döngülerine
sahiptirler[6]. AC Servo Motorlar, DC Servo motorlara
göre daha ucuzdurlar, bakıma az ihtiyaç duyarlar ve sessiz çalışma özellikleri
vardır. DC servo motorların robotlarda kullanılmasının en önemnli nedeni düşük
gerilimde yüksek tork üretmeleridir[1].
3.1.4.3 Pnömatik Sistem
Pnömatik sistemler birçok endüstriyel robotta tahrik sistemi olarak
kullanılmakta olup, maliyetleri oldukça düşüktür. Ancak kontrolleri oldukça
karmaşıktır[9]. Robot uygulamalarında en basit tasarıma sahip sürücülerdir[1]. Basit
yapılı robotlarda eksen hareketlerinin tahrikinde kullanılırken, gelişmiş
robotların tutucu kısımlarının tahrik edilmesinde yaygın olarak
kullanılmaktadır[9].
Pnömatik tahrikli sistemler, genellikle daha küçük
robotlarda kullanılır. Bu robotlar daha az serbestlik dereceli ve malzemeleri
bir yerden alıp başka bir yere nakletme işlemlerinde kullanılır. Bu işlemler
genellikle basit ve kısa sürelidir. Bunlar, sınırlı hareketler yapan sıra
robotlardır. Bu robotların büyük avantajı basit modüler yapıda olduğundan
standart mevcut parçaların kullanılmasıdır. Bu da, bir firma için maddi açıdan
önemli ölçüde kazanç sağlar[6].
Kontrol mekanizmaları deyimi, kollar,
bilekler ve uç elemanlarını uyumlu bir şekilde hareketini sağlamak ve
yönlendirmekte kullanılan tüm cihazları içine alır.
Yönetim PLC (Programmable Logic
Controller) devreler ve son zamanlarda bilgisayarlar ile yapılır. Ancak sanayi
söz konusu olunca PLC daha çok tercih edilir[9].
Çünkü PLC’ler entegre devrelerden
oluşur ve komutları harfiyen yerine getirir.
3.1.6
Sensörler
Robot sisteminin en önemli özelliği çevresini
algılayabilmesi ve sonuçları değerlendirip harekete geçmesidir[9]. Kontrolleri
sırasında, robotların çevresindeki karakteristik özelliklerine duyarlı
olmalıdırlar. Bu karakteristikler, kontrol sistemlerinin, manipülatör
hareketlerinin verimli olmasını mümkün kılmak için geri besleme sağlar ve
robotlara da daha çok esneklik verir[6]. Kullanılan sensörler robotun yapması istenilen
işe ve işin hassasiyetine göre seçilir. En çok kullanılan sensörler basınç,
sıcaklık, optik ve lazer sensörleridir[9].
3.1.7 Arabirimler
Arabirimler, robotun dış dünyayla olan bağlantılarıdır. Yardımcı
cihazlar, bilgisayarlar ve dış duyargalardan elektriksel işaretlerin alınmasını
içerir[9].
4. ROBOTLARIN SINIFLANDIRILMASI
Robotlar,
serbestlik derecelerine, kontrol yöntemlerine, eyleyicilerin kullandığı güç
kaynağına, kesinlik derecelerine ve ikili harf kodu olmak üzere beş farklı
şekilde sınıflandırılabilir[1].
Robotlar
kapsama alanlarına göre Kartezyen, kutupsal ve silindirik olabilirler[8].
Anlaşıldığı kadar bir robotun sınıflandırılmasındaki en önemli kaide robotun
çalışma alanı olduğudur. Endüstride jkullanılan robotların genelinde ilk olarak
çalışma alanının verimliliği öne çıkmaktadır. Buna paralel olarak çeşitli
tiplerde robotlar üretilmiş ve kullanıma sunulmuştur.
4.1
Serbestlik Derecelerine Göre Robotlar
Günümüz
endüstrisinde genellikle altı serbestlik dercesine sahip robotların
kullanılması tercih edilmektedir. Robotlar serbestlik derecesine göre
sınıflandırılırken ilk 3 bağın eklem özelliği dikkate alınır. Eğer ilk 3 bağın
tamamı prizmatik eklemlere sahipse, sonuçta oluşan kinematik düzleşime
Kartezyen(PPP), ilk bağ döner, ikinci ve
üçüncü bağ prizmatik eklemlere sahipse, bu tip sınıflandırma silindirik(RPP), ilk iki bağ döner üçüncü bağ prizmatik
eklemlere sahipse ve bütün eklemler birbirine paralelse, SCARA(RRP), ilk iki
bağ döner üçüncü bağ prizmatik eklemlere sahipse küresel(RRP), ilk üç bağın
tamamı döner eklemlere sahipse sonuçta oluşan kinematik düzleşime ise
dönel(articulated-RRR) sınıflandırma denir[1].
4.1.1 Kartezyen(PPP) Düzleşim
![]() |
Şekil 4.1 Kartezyen düzleşimde çalışan robot kol |
![]() |
Şekil 4.2 Kartezyen robotun çalışma alanı |
![]() |
Resim 4.1 Kartezyen Robot |
4.1.2 Silindirik(RPP) Düzleşim
Silindirik düzleşime
sahip bir robotun ilk eklemi dönel, ikinci eklemi birinci ekleme paralel ve
prizmatik, üçüncü eklemse ikinci ekleme dik ve prizmatiktir[1]. Bu tip robotlar
temel bir yatak etrafında dönebilir ve diğer uzuvları taşıyan gövdeye sahip
özelliktedir[10]. Kolun birkaç hareketli kısmı vardır. Bu hareketli parçalar
kolu yukarı-aşağı ve içeri dışarı harekete geçirir[6]. Hareket düşeyde ve ana
gövde eksen kabul edildiğinde radyal olarak sağlanır ayrıca genellikle mekanik
özelliklerden dolayı gövde tam olarak 360° dönemez[10].
![]() |
Şekil 4.3 Silindirik düzleşimli robot |
![]() |
Şekil 4.4 Silindirik robotun çalışma alanı |
4.1.3 SCARA(RRP) Düzleşim
SCARA (Selective Compliant Articulated Robot for Assembly)
düzleşimine sahip bir robot eklem yapısı(RRP) itibariyle kürsel düzleşime
benzemesine rağmen eklemlerin geometrisi açısından tamamen küresel robottan
farklıdır[1]. Kol kısmının birkaç hareketli kısmı vardır. Bu hareketli kısımlar
koklu yukarı-aşağı ve içeri-dışarı hareket ettirir ve bilek kısmının dönmesini
sağlar[8]. Scara tipi robot, çok yüksek
hıza ve en iyi tekrarlama kabiliyetine sahip olan bir robot çeşididir[10].
Şekil 4.5 da verilen SCARA robotun üç genel özelliği vardır:
- Doğruluk,
- Yüksek hız,
- Kolay montaj
![]() |
Şekil 4.5 SCARA tipi robot |
![]() |
Şekil 4.6 SCARA robotun çalışma alanı |
4.1.4 Küresel(RRP) Düzleşim
![]() |
Şekil 4.7 Küresel robotun çalışma alanı |
![]() |
Resim 4.2 Stanford Arm küresel robotu |
Dönel düzleşime
sahip bir robotun üç eklemi de döneldir[1]. Bağlantı parçalarında oluşan bu
robot kollar genellikle antropomorfik veya mafsallı robot diye
adlandırılır[10]. İnsan yapısına benzer şekilde tasarlanmıştır. Robotun, insan
omuzu, dirsekl ve bilek mafsallarının yaptığı hareketlere benzer hareketler
yapabilmesi için hareketli parçalar mafsallarla birleştirilmiştir[6]. Bu
robotlar altı eksende de rahatça hareket ederler. Bu altı eksenden 3 y-tanesi
kol hareketi için, diğer üç tanesi ise bilek hareketi içindir[10]. Yaygın bir
şekilde kullanılır çünkü otomotiv endüstrisindeki nokta kaynağı ve boyama
işlerinde olduğu gibi hareketleri yapabilecek kabiliyettedir[8].
![]() |
Şekil 4.8 Dönel düzleşime sahip robot kol |
![]() |
Resim 4.3 Mafsallı Robot |
4.2 Kontrol Yöntemlerine Göre Robotlar
Kontrol yönünden iki alt sınıfa ayrılırlar.
4.2.1 Noktasal Kontrol Edilen Robotlar
Bu sınıfa giren robotların serbestlik dereceleri genelde altıdan düşüktür. Bir nesneyi bir yerden başka bir yere yerleştirmede (pick and place) kullanılır[1].
4.2.2 Sürekli Yörünge Kontrollü Robotlar
Bu robotlar belirli bir yörüngeyi izleyecek şekilde bir kullanıcı tarafından kontrol edilirler[1]. Yol boyunca tüm noktalar, robotun denetim belleğinde kesin olarak kaydedilmelidir. Düz hat eylemi bu tip robot için en basit örnektir[6]. Kaynak işlerini gerçekleştiren robotlar bu sınıfa girer[1]
4.3 Kesinlik Derecelerine Göre Robotlar
4.3.1 Çözünürlük
Bir robotun çözünürlüğü, robotun iş hacmini bölebildiği hareketinin en küçük artışıdır[6]. Çok küçük yer değiştirmeyi gerçekleştirme yeteneği olan çözünürlük endüstriyel gelişmelere paralel olarak her geçen gün artmaktadır[1].
4.3.2 Doğruluk
Doğruluk bir robotun hareket edebilmesi için yazılan proğramın, uç işlevci tarafından gerçekleştirilme dercesidir[1]. Doğruluk çözünürlükle doğrudan ilişkilidir. Çünkü uzaydaki bir noktaya ulaşmak için robotun kabiliyeti, mafsal hareketlerini küçük artışlara bölme özelliğine bağlıdır[6].
4.3.3 Tekrarlanabilirlik
Robotun uç
işlevcisinin birçok işlemi gerçekleştirdikten sonra tekrar aynı noktaya
gelebilme özelliğidir[1]. Şekil 4.11a'daki
uzaysal çözünürlüğün sınırlarından dolayı hassasiyet, B noktası olacaktır. A ve
B noktaları arasındaki mesafe, uzaysal çözünürlükten dolayı robotun
sınırlandırılmış hassasiyetinin bir sonucudur. Robota B noktasına gitmesi
söylendiğinde, onun yerine C noktasına gidecektir. B ile C noktaları arasındaki
mesafe, robotun tekrarlanabilirlik sınırlarının üzerindeki bir sonuçtur. Bu
arada, robota B noktasına gitmesi söylendiğinde, robot, her zaman C noktasına
gitmeyecektir. Bunun yerine C noktası civarında bir kümeleşme olacaktır.
Tekrarlanabilirlik hataları genellikle normal dağılım şeklinde farz edilir.
Bahsedilen hata kümesi geniş ise burada hassasiyet düşüktür denilir. Bu arada,
hataların standart sapması düşük olursa bu durumda da tekrarlanabilirliğin
yüksek olduğu söylenir[6].
![]() |
Şekil 4.9 a) Çözünürlük ve tekrarlanabilirlik b) Yüksek çözünürlük ve yüksek tekrarlanabilirlik c) Yüksek çözünürlük düşük tekrarlanabilirlik d)Düşük çözünürlük düşük tekrarlanabilirlik |
5.
İŞ HACMİ VE BENZETİM
5.1 İş Hacmi
Görüldüğü
gibi gelişen dünya teknolojisinde bugün artık neredeyse tüm sektörlere girmiş
olan robot kollar öne çıkmaktadır. Bununla beraber bu kadar farklı üretimin
içinden benzer olan robot kollar arasından seçim yapmakta zorlaşmaktadır. Seçim
yaparken gerekli olan robot kolun iş hacmini belirleme kısmı öne çıkmaktadır.
Çalışma hacmi veya çalışma zarfı olarak da
bilinen iş hacmi, robot kolunun ulaşabildiği noktaları içeren hacimdir. Robotun
ulaşamadığı yerler iş kapsamı içinde düşünülemez. Uygun bir robot seçiminde iş
hacmi en önemli karakteristiklerden birisidir[6]. Çünkü uygulama alanı seçilen
iş hacmi dışına çıkmamalıdır. Örneğin bir kartezyen konfigürasyonunun iş hacmi
dikdörtgendir. Silindirik konfigürasyonun iş hacmi ise içi boş silindir
şeklindedir.
İş
hacminin belirlenebilmesi için ise seçimi yapılacak robot kolunun bir
benzetiminin yapılması gerekmektedir. Benzetimle iş hacmi belirlenip daha sonra
bu benzetime uygun robot kolunun seçimi sağlanabilir. Ayrıca benzetim sayesinde
robot kol için yazılan programın doğruluğu da her hangi bir zarar oluşmadan
test edilebilir.
5.2 Benzetim
Benzetim
fiziksel bir etkinliği gerçekleştirmeden önce bilgisayar ortamında gerekli
programlar yardımıyla olayı canlandırma işlemine denir[1]. Robot programları gerçek
robotlar üzerinde denenmeden önce benzetim programları vasıtasıyla test
edilebilir. Yazılan robot programının eksik olması durumunda robot beklenmeyen
hareketler yaparak kendine ve çevresine zarar verebilir. Benzetim sayesinde
robotun yapabileceği hareketleri önceden simülasyon ortamında görerek
oluşabilecek tehlikeler ortadan kaldırılmış olur. Böylece bu programlar hem
ekonomik hem de zamandan tasarruf sağlar[1]. Benzetim programları çevrimiçi ve
çevrimdışı olmak üzere ikiye ayrılmaktadır.
Çevrimiçi
programlama tamamen üretim aşamasında gerçekleştirilir. Çevrimiçi programlama
robotun çalışma alanının çok karmaşık ve değişken olduğu ortamlarda avantaj
sağlar.
Çevrimdışı
programlama tamamen bilgisayar ortamında yapılmaktadır. Bu tür programlama
kullanıcıya doğruyu bulana kadar deneme imkanı sağlar. Bu programlama sayesinde
robotun her parçası üç boyutlu olarak bilgisayar ortamında modellendiğinden
çarpışma ihtimali ortadan kalkar[1].
5.
SERVO KONTROLLÜ ROBOT KOL
Daha önceki bölümlerde genel bir robot kavramı
üzerinde durulmuş ve ayrıntılı olarak çeşitleri ve kullanım alanlarından
bahsedilmiştir. Metnin bundan sonraki kısımlarında BALDEL2010 isimli proje
üzerinde durulacak, kontrol devreleri ve bu devrelere bağlı olan yan devre ve
elemanlar hakkında bilgiler verilecektir. Şimdi BALDEL2010 ‘un nasıl çalıştığına
bir göz atalım.
Resim 5.1 Seçim ekranı
Resim
5.1 de görüldüğü gibi proje iki modda çalışmaktadır. Bunlardan biri sensorlu
mod diğeri ise butonlu mod dur. Aşağı
ya da yukarı butonlara basarak seçim
yapılmaktadır.
Sensorlu
modda mikrodenetleyici sensörlerden veri alış verişinin olup olamadığını
sürekli kontrol etmektedir. Gelen bilgilere bağlı olarak hangi sensörden veri geliyorsa
onun için program içinde hazırlanan bölüm devreye girmekte ve mikro denetleyici
uygun komutları vererek sırasıyla servo motorları çalıştırmaktadır. En sonunda
DC motor çalışmakta ve görev gerçekleştirilmiş olmaktadır. Kol konumunu
sensörden veri kesilene kadar korumaktadır. Ne zaman ki sensör veri
göndermemeye başladı işte o zaman mikro denetleyici DC motoru durdurmakta ve
kısa sürede servo motorları sıfır konumuna geri getirmektedir.
![]() |
Resim 5.2 Sensörlü mod bekleme |
![]() |
Resim 5.3 Sensö2 devrede |
Sensörlü mod seçildikten sonra
karşımıza gelen ekran Resim 5.2 de görülmektedir. Bu ekran sensörlerden
herhangi birinden veri gelene kadar bu şekilde kalmaktadır. Resim 5.3 de ise
sensör1 den veri geldiğini ve bu veriye bağlı olarak gerçekleşen işlem görülmektedir.
DC motor sensörden veri geldiği sürece çalışacaktır. Sensör 0 konumuna
geçtiğinde Dc motor duracak ve servolar sıfırlanacaktır.
Manüel
mod yani butonlarla kontrol edilen modda ise 4 servo motor için 3 adet konum
tanımlanmıştır. İki tane servo motor kolun omuz kısmını kontrol etmektedir.
Ağırlığın büyük kısmının buraya düşeceği düşünülerek bu iki motor buraya bağlanmıştır.
Konum1 tabandaki yani görünmeyen bölge olarak nitelendirdiğim en alt kısmı
kontrol etmektedir. Konum2 omuz diye adlandırdığım iki adet servonun bulunduğu
noktayı kontrol etmektedir. Ve son olarak Konuım3 ise dirsek kısmındaki servo
motorun konumudur. Butonlu modda bunlar sırasıyla en fazla iki defa
girilebilmektedir. Her konum ayarlandıktan sonra kayıt butonuna basılarak
motorun o anki konumu kaydedilmektedir. En sonunda DC motor çalışmakta ve delme
işlemi başlamaktadır.
Aşağıdaki
resimlerde sırasıyla konumların girilmesini ve en sonunda DC motorun
çalıştığını gösteren ekran resimleri bulunmaktadır. Konumlar girildikten sonra
Konum2 tekrar girilmesi istenmektedir. Bunun amacı delme sırasında kolun yüzeye
bastırılmasını sağlamaktır. Böylece oluşan kuvvetle DC motor delme işlemini
gerçekleştirebilecektir. Delme işlemi tamamlandıktan sonra Kaydet butonuna
basıldığında servo motorlar sıfırlanacak ve bekleme konumuna geçilecektir.
![]() |
Resim 5.4 Konum1 giriş ekranı |
![]() |
Resim 5.5 Konum2 giriş ekranı |
![]() |
Resim 5.6 Konum3 giriş ekranı |
![]() |
Resim 5.7 DC aktif Konum2 bekleniyor |
Şimdi sırasıyla devre kartının çalışmasını sağlayan programlama dili olan JAL hakkında kısaca bir bilgiye yer verilecektir daha sonra ise kontrol devrelerini ve bu devrelere bağlı olan elemanlardan bahsedilecek ve aşağıdaki soruların cevapları aranılacaktır.
- Mikro Servo motor nedir? Nasıl çalışır? Yapısı nasıldır?
- Sensör nedir? Nasıl çalışır? Devredeki sensörlerin yapısı nasıldır?
- DC motor nedir? Nasıl çalışır? Yapısı nasıldır
- Güç kaynağı nedir? Nasıl yapılmıştır? Özellikleri nelerdir?
- Kontrol kartı nedir? Çalışma şekli nasıldır? Üzerinde bulunan PIC16F877A özellikleri
- nelerdir? Nasıl çalışır?
- Kontrol kartı devresi nasıl yapılmıştır?
7.
JAL PROGRAMLAMA DİLİ
BALDEL2010 projesinde Jal programlama dili
seçilmiştir. Bunun sebebi olarak da daha önce programlama dili bilinmemesi ve
proje isteklerine en kısa zamanda cevap verebilecek temel bilginin
alınabileceği bir programlama dili olarak bunu görülmesidir. Araştırmalar
sonucu bu bilgi elde edilmiş ve kitabı alıp okunduğunda gerçekten işe
yarayacağı anlaşılmıştır. Bu andan itibaren deneme yanılma yoluyla projenin ana
hatlarını tamamlanmıştır. Aşağıda JAL programlama dili ile ilgili biraz bilgi
verilmiştir.
JAL, PIC mikro denetleyicileri için geliştirilmiş
ücretsiz, yüksek seviyeli ve açık kaynak koduna sahip bir derleyicidir. JAL
ücretsiz olması sebebiyle internet üzerinden rahatlıkla indirilebilir ve lisans
problemi yaşamadan gönül rahatlığı ile kullanılabilir. JAL’ın açık kaynak kodlu
olması sebebiyle kullanıcılar JAL’ın kaynak kodlarından yararlanıp programlar
yazabilir veya JAL’ın kaynak kodlarını geliştirebilirler. JAL yazım kuralları
olarak PASCAL ve C’yi temel almış olup oldukça sade ve anlaşılır bir
program yazım tekniği kullanır. Dolayısıyla önceden PASCAL veya C kullanan
kişiler hızla JAL’a uyum sağlayabileceklerdir. Yeni başlayanlar ise kolay yazım
kuralları sebebiyle uyum sağlamakta zorluk çekmeyeceklerdir.
JAL kullanarak PIC16C84, PIC16F84, PIC16F877,
PIC12C509A, PIC12C508, PIC12CE674, PIC16F628, PIC18F252, PIC18F242, PIC18F442,
PIC18F452, PIC12F629, PIC12F675, PIC16F88 isimli PIC’ler için program
yazılabilir. Ayrıca temel mimarisi aynı olan mikro denetleyiciler için de
program yazılmasına imkan sağlar. Örneğin PIC16F628 için yazılacak bir JAL
programı, PIC16F628 ile aynı emel özelliklere sahip PIC16F627 ve PIC16F648 için
de kullanılabilir.
JAL, en büyük açık kaynak kodu geliştirme
organizasyonu olan sorceforce.net tarafından geliştirilmektedir. JAL hakkında
yeni bilgilere http://jal.sourceforge.net/ adresinden ulaşılabilir.. JAL
hakkında internette bulunan birçok haber grubu ve web sitesi sayesinde de
kullanıcılar rahatlıkla istedikleri bilgiye ulaşabileceklerdir [11].
8.
MİKRO(RC) SERVO MOTOR
Resim
8.1 Mikro servo motor
“Servo”
otomatik kontrol sistem için kullanılan genel bir addır. Latin kökenli bir
kelime olan “servus” yani “köle” den gelmektedir[14].
RC
servo model uçak, araba, tekne ve küçük güçteki robot uygulamalarında kullanılan
motor çeşitlerindendir[12]. Servo motorlar torsiyonu yüksek, devirleri düşük, hassasiyetleri yüksek
mekanik kontrol elemanlarıdır[13]. Servo motorun üç bağlantı ucu vardır. Bunlar
bu projede kullanılan motorlar için sırasıyla Kahverengi(toprak), Kırmızı(+5V)
ve Sarı(sinyal) uçlarıdır.
Bir servo motor içerisinde:
-
DC motor
-
Çıkış şaftı ve dişliler
-
Pozisyon sensörü
-
Kontrol devresi
bulunmaktadır[14].
![]() |
Resim 8.2 Servo mekanik görünüm |
![]() |
Resim 8.3 Servo elektronik denetim PCB |
Bu tip sistemler besleme terminallerine gerekli voltaj değeri verilir
verilmez çalışmazlar. Çalışmaları için ayrıca besleme terminalleri dışında yer
alan kontrol terminaline de PWM işaret yollamanız gerekir[13].
DC motor RC servo motora hareketi sağlayan elemandır. Dişliler motordan aldığı
hareketin devrini düşürüp güçlendirmek için kullanılırlar. Servonun gücü
motorun gücü ve dişlilerin devir düşürme oranına bağlıdır. Potansiyometre RC
servonun milinin konumunu anlamakta kullanılır. Elektronik devre sinyal
hattından gelen sinyali çözer bu sinyal ile potansiyometreden aldığı RC
servonun o anki konumunu karşılaştırarak RC servoyu gerekiyorsa yeni konumuna
yönlendirir[12].
Şekil
8.1 Şervo motor denetim çevrimi
Bu
proje için alınan servolar TowerPro SG91R ½ metal dişli olan servolardır. Ve
özellikleri:
Ağırlık: 12g
Boyutlar:23*12.2*29mm
Tork: 2kg/cm(4.8V)
Çalışma
hızı:
0.1s/60derece(4.8V)
Çalışma
gerilimi: 4.8V
Çalışma
sıcaklığı: 0℃_ 55℃ (TowerPro)
Bu
değerlerden anlaşılacağı kadar servonun kolundan
Bunun
için şu tablo geçerlidir:
Vuru genişliği |
Açı |
Yorum |
0.6 ms |
-90 derece |
Minimum
vuru uzunluğu |
1.5 ms |
0 derece |
Merkez
vuru |
2.4 ms |
+90 derece |
Maksimum
vuru uzunluğu |
Çizelge
8.1 Mikro servo vuru denetim süreleri
Tablodaki
değerler açıklanacak olursa, robot kol
da bulunan bir servoya 0.6ms pwm işareti uygulandığında motor en sağ konumda
yani yaklaşık olarak -90 derece civarında olacaktır. Eğer servoya 0.6ms den
daha büyük 1.5ms den küçük bir süre boyunca pwm işareti uygulanırsa servo sola
doğru hareket etmeye başlayacaktır. 1.5ms işaret uygulandığında ise 0 derece
yani tam ortaya gelecektir. 2.4ms ye kadar artırıldığında ise en sol kısma yani
+90 derece konumuna gelmiş olacaktır.
9.
SENSÖRLER
Sensörler(Algılayıcılar) fiziksel
ortam ile elektrik ortam arasında haberleşmeyi sağlayan aygıtlardır. Ortamdan
aldığı fiziksel bilgiyi elektriksel bilgiye dönüştürerek sistemin kararlı
çalışmasını sağlamaktadırlar. Günümüzde üretilmiş yüzlerce tip algılayıcıdan söz edilebilir. Mikro
elektronik teknolojisindeki inanılmaz hızlı gelişmeler bu konuda her gün yeni
bir buluş ya da yeni bir uygulama tipi geliştirilmesine olanak
sağlamaktadır[15].
Aşağıdaki şekilde görüldüğü gibi bir sensör çevresine karşı duyarlıdır. Sensör tarafından dış dünyadan sensöre gelen
ya da yansıyan fiziksel bir olay gerilime yada akıma çevrilmekte daha sonra bu
gerilim veya akım işaretleri örneklenmektedir(filtreleme). AD dönüştürücü ile
işaretler ikili (0 ya da 1) sayı koduna çevrilerek bilgisayar ara birim kartı
ile verilerin okunması sağlanmaktadır. Burada bilgisayarın yerini bu projede
bir mikroişlemci üstlenmiştir.
Şekil 9.1 Sensör-
Mikrodenetleyici(bilgisayar) çalışma şeması
Aşağıda bazı algılayıcılar ve hangi özellikleri ölçtüklerini
görebilirsininiz[16].
- · Kontak temas, anahtar
- · Uzaklık ultrasound, radar, infrared
- · Işık parlaklık seviyesi photocell, kamera
- · Ses şiddeti mikrofon
- · Dönme enkoder
- · Magnetizm pusula
- · Koku kimyasal
- · Sıcaklık termal
- · Basınç basınç odacıkları
- · Yükseklik altimetre
·
Ve diğerleri…
Günümüzde çok çeşitli sensörler üretilmektedir. Fakat belli başlı sensör
tipleri vardır. Bu bölümde sadece sensörlerin aktif ve pasif karakterlerine
göre ayrım yapılacaktır. Pasif algılayıcılar çalışırken dışarıdan enerjiye
ihtiyaç duyan elemanlardır. Aktif algılayıcılar ise çalışmak için dışarıdan bir
enerji kaynağına ihtiyaç duymazlar[18].
Aşağıda aktif ve pasif algılayıcılara örnekler verilmiştir:
Pasif Algılayıcılar
- Anahtar tipi algılayıcı
- Kontak algılayıcı
- Limit algılayıcı
- Işık algılayıcı
- Dirençsel pozisyon algılayıcı
- Potansiyometre
- Piezoelektrik film algılayıcı
- Sıcaklık algılayıcı
- Basınç algılayıcı
- Şaft pozisyon algılayıcı
- Infra Red algılayıcı
- Yakınlık algılayıcı
- Ultrasonik uzaklık algılayıcı
Baldel2010 projesinde bir ışık algılayıcı kullanılmıştır. Bu algılayıcı
bizzat kendim tarafından yapılmış olup basit bir algılama düzeneğine sahiptir.
Bundan iki adet yapılmış ve BALDEL2010’un iki yanına monte edilmiştir. Bu
algılayıcılar vasıtasıyla sistem kontrollü bir şekilde çalışmaktadır. Şimdi bu
algılayıcıların nasıl yapıldığının anlatılmasına geçilecektir.
Algılayıcının çalışma prensibi alıcı ve verici arasındaki ışığın bir cisim
tarafından kesilmesi ve algılayıcının var-yok diğer bir ifadeyle 1-0 ikili sayı
sistemine dayanmaktadır. Bu bir adet foto diyot ve bir adet fototransistor
aracılığıyla sağlanmıştır. Fototransistor foto diyottan aldığı ışık vasıtasıyla
çalışmaktadır. Piyasada H21A1 adı altında kolayca temin edilebilmektedir.
![]() |
Resim 9.1 Baldel2010 sensörü |
![]() |
Şekil 9.2 Sensör yapısı |
Yukarıdaki resimde proje için yapılan algılayıcı görülmektedir. Ve yanında
içeriğinde ne olduğu açıkça gösterilmiştir. Şimdi bunun kontrol devremize nasıl
bağlandığını gösteren Proteus çizimini gösterelim.
![]() |
Şekil 9.3 Sensör devre bağlantısı |
Bu devre ile sensörden alınan bilgi PIC girişinin pic bacağına bağlanmasıyla doğrudan mikroişlemciye bildirilmektedir. Yapılan algılayıcı aslında bir optocouplerdür. Arada bulunan ışığın kesilmesiyle algılama işlemi yapılmaktadır. Bu algılayıcı normalde lojik 0 çıkışı verirken araya bir cismin girmesiyle ışınım kesildiği için transistor iletimde olamayacak ve 47kohm direncine bağlı olan +5V gerilimi doğrudan mikroişlemci bacağına uygulanarak bu bacağın durumunu lojik 1 yapacaktır.
10. DC KONTROL BİRİMİ
Şekil 10.1 DC motor yapısı
DC motorları doğru akım enerjisini hareket enerjisine
çevirirler.
Bu tarz motorlar yapısına göre fırçalı
ve fırçasız olmak
üzere iki grupta incelenebilir. Şekil
10.1’de fırçalı dc motor görülmektedir. DC motorlar
mikrodenetleyicilere genellikle
bir
sürücü devre ile bağlanırlar.
Bunun nedeni mikrodenetleyicilerin motor için gerekli akımı sağlayamamasıdır. Motor
sürücü devresi, mikrodenetleyici ve motor arasına uygun bir şekilde bağlanır. Mikrodenetleyici, sürücü devreyi
kontrol ederek motorun hızını
ve yönünü tayin edecektir.
DC motoru tek yönlü çalıştırmak için tek bir transistor yeterlidir. Motorun
çalışması için gerekli akım BDX53 isimli 8 amperlik bir darlington güç
transistoru üzerinden geçer[12]. Motorların içerisinde bobinler bulunur ve
bobinler üzerinden akım geçirildiğinde bobin üzerinden geçen akıma zıt bir
gerilim indüklenmesi olur. Bu gerilim besleme gerilimi ile birleşip kontrol
elemanı olan transistor veya FET gibi elemanları bozabilir. Motora paralel
bağlanacak bir diyot, motor üzerinde oluşabilecek bu zıt gerilim indüklenmesini
üzerinden deşarj ederek engellemektedir[12].
Resim 10.1 DC motor ve sensör kontrol devresi
Resimdeki devrede bir adet BDX53 transistoru ve buna bağlı 47kohm, 100ohm
ve 1n4001 diyotu vardır. Bunların haricinde sensör bağlantıları da bu devre
üzerinde gerçekleştirilmektedir. İki adet sensör için dişi girişler mevcuttur.
Ve DC motor için de ayrı yeten bir bağlantı vardır. Bu devre Dc motoru sürmekte
ve sensörleri besleyerek onları uygun gerilim değerlerinde tutmaktadır.
![]() |
Şekil 10.2 BDX53 transistor |
BDX53, 8 ampere kadar dayanıklı Darlington güç transistörüdür. Genel amaçlı
amfi devreleri ve düşük hızda anahtarlama için dizayn edilmiştir. Bu devrede DC
motor için anahtarlama yapmaktadır.
Şekil 10.4 DC motor ve sensörlerin devre bağlantı şeması
11.
GÜÇ KAYNAĞI
Güç kaynakları devreyi akımla besleyen kısımlardır.
Devrenin ihtiyacına göre tasarlanırlar.
Güç kaynakları dört bölümden oluşur[19]:
- AC gerilimi düşürme
- AC gerilimi doğrultma
- Dalgalı DC gerilimi filtreleme
- Regüle etme
Şekil 11.1Güç kaynağı blok şeması
Birinci
bölüm transformatörlerle gerçekleştirilir. Transformatörler AC gerilimi düşürür
veya yükseltirler. Besleme katındaki transformatör gerilim düşüren
transformatörlerdendir. Güç kaynağı ile çalışacak devrenin çalışma gerilimi ve
çekeceği maksimum akım düşünülerek, transformatörün gücü ve çıkış gerilimi
belirlenir.
İkinci
bölüm ise düşürülen AC gerilimin doğrultma işlemi yapılmaktadır. Güç
kaynaklarında genelde tam dalga doğrultma kullanılır.
Tam
dalga doğrultma devrelerinde en çok tercih edilen metot ise köprü tipi tam
dalga doğrultmadır.
Üçüncü
bölümde ise doğrultucudan geçen dalgalı DC gerilimin filtreleme işi yapılır.
Güç kaynaklarında genelde ön filtreleme için kondansatörler kullanılır. Filtre
devreleri diyotların çıkışındaki salınımlı DC’yi filtreleyerek düzleştirmeye
yararlar[20].
Dördüncü
bölümde ise DC gerilimi regüle etme(sabitleme) işlemi yapılır. Regüle devreleri
kararlı ve düzgün bir DC gerilim oluşturur[20]. Regüle etme yük tarafından
çekilen akımların elde edilmesini sağlayabilmek, aynı zamanda gerilim düşmesine
engel olmaktır. Regüle devrelerinde genelde kullanılan elemen Zener Diyot ve
transistor dür. Regüle işlemi için entegreli gerilim regülatörleri de
kullanılmaktadır[19].
BALDEL2010 için hazırlanan güç
kaynağı bir adet 25W trafo tarafından beslenmektedir. Bu trafo gereğinden fazla
güçlüdür yani kullanılması için özellikle seçilmemiştir. Tek sebep malzeme
olarak elde bunun olmasıdır. Bu trafonun 7.5V çıkışından alınan bir hattın
doğrultucu ve filtre devreleri vasıtasıyla 7805 regülatörüne bağlanarak 5V
çıkış gerilimi elde edilmektedir. Güç kaynağı, devre çalışır durumdayken fakat
hiçbir işlem yapmazken 90mA akım çekmektedir. Çekilen bu akım sayesinde
motorlar her an hazır tutulmaktadır. Servo motorlar çalışmaya başladığında ise
yaklaşık olarak 250mA akım çekilmektedir. Akım uçtaki DC motorun zorlanması
veya servo motorların zorlanmasıyla maksimum olarak 600mA olabilmektedir. Bu
güç kaynağı ile dört adet servo motor, bir adet DC motor ve iki adet sensör
beslenmektedir. Ayrıca güç kaynağı maketin alt kısmına konulmuş ve böylece
ağırlık olarak da kullanılması amaçlanmıştır. Aşağıda güç katının devre şeması
verilmiştir.
Şekil
11.5 Güç kaynağı devre şeması
Yukarıdaki
devrede tam dalga doğrultucu devresi kullanılmıştır. Daha sonra doğrultularak
elde edilen DC gerilimin daha kararlı olmasını sağlamak için filtreleme
yapılmıştır. Bunun için 2200uF kondansatör ve bunun çıkışındaki parazitleri yok
etmek için 330nF değerinde bir başka kondansatör bağlanmıştır. Sonra çıkış
regülatör entegresine bağlanarak 7.5V DC gerilim 5V DC gerilime düşürülmüştür.
Bundan sonra yine bir filtreleme yapılarak çıkış kullanılabilir duruma
getirilmiştir. Aşağıda bu güç kaynağına ait resimler vardır.
Resim 11,1 Güç kaynağı devresi üstten görünüşü
7805 regülatörünün üzerine soğutucu
takılmıştır. Bununla regülatörün fazla ısınması engellenmeye çalışılmıştır. Tam
dalga doğrultucu olarak bir adet bütünleşik diyot kullanılmıştır.
Resim 11.2 Transformatör ve devre
Şekil
12,1’de görülen kontrol devresinin üzerinde bulunan elemanların dökümü:
- PIC16F877A
- BDX53
- 2 X 16 LCD
- 2 ADET KARŞILIKLI OPTİK
ALGILAYICI
- 4 ADET MİKRO SERVO MOTOR
- DC MOTOR
- 1N4001
- 1N4148
- 4MHz KRİSTAL
- 10KOHM, 1KOHM, 47KOHM VE 100OHM
DİRENÇLER
- 22pF KONDANSATÖRLER
- KIRMIZI VE YEŞİL LED’LER
Aşağıdaki
şekilde görülen Proteus programında çizilen kontrol kartı devresi 4 adet
alkaline pil ile beslenmektedir.
Şekil
12.1 BALDEL2010 devre şeması
Şimdi
bu devrede öne çıkan elemanların özelliklerine göz atalım.
12.1.1 PIC16F877A MİKRODENETLEYİCİSİ
Mikro denetleyici,
bir bilgisayarın temel özelliklerini içeren tek bir silikon kılıf
içerisinde toplanmış bir tüm
devre olarak düşünülebilir. Genel olarak bir mikro denetleyici, bir mikroişlemci çekirdeği, program ve veri belleği, giriş/çıkış birimleri,
saat darbesi üreteçleri, zamanlayıcı/sayıcı birimleri, kesme
kontrol birimi, analog-dijital ve dijital-analog çeviriciler, darbe genişlik üreteci, seri haberleşme birimi
ve daha özel uygulamalar için kullanılan diğer
çevresel birimlerden meydana gelmektedir. Mikrodenetleyici temel olarak dört bileşenden
oluşmaktadır. Bunlar mikroişlemci,
bellek, giriş/çıkış birimi ve saat darbe üretecidir[21].
12.1.2 Mikrodenetleyici Mimari Özellikleri
Mikroişlemci ve mikro denetleyiciler bellek kullanımı
açısından
Von Neuman ve Harvard; komut işleme
açısından ise RISC ve CISC olarak adlandırılan mimariler temel alınarak tasarlanırlar.
Program belleği, program çalışırken
kullanılacak kodun saklı tutulduğu hafıza alanıdır.
Veri belleği, çalışma
esnasında saklanması gereken verilerin tutulduğu bellek
alanıdır. Von Neuman mimaride,
program ve veri bellekleri aynı
yapının içindedir. Harvard mimarisinde ise program ve veri bellekleri ayrı yapılar olarak
tasarlanmıştır. Başlangıçta
Von Neuman mimari yapısı kullanılmasına rağmen,
günümüzde Harvard mimarisi yaygınlık kazanmıştır.
Karmaşık
komut kümeli bilgisayar anlamına gelen CISC(Complex Instruction Set
Computer) mimaride donanımın, her zaman
yazılımdan daha hızlı çalıştığı
gerçeği temel alınmıştır. CISC mimarisinde
her işlem için farklı bir komut
oluşturulmuştur.
Bu,
programlayıcı açısından daha kısa programlar yazarak sonuca ulaşmak anlamı taşısa
da karmaşık donanımsal
yapısı, mimarinin
dezavantajı olmaktadır.
Azaltılmış komut kümeli bilgisayar anlamına gelen RISC(Reduced Instruction Set Computer) mimaride
ise daha basit ve az sayıda komutlar kullanarak tüm devre karmaşıklığı azalmıştır. RISC
mimaride kullanılan
daha az, basit ve hızlı komutlar,
uzun, karmaşık ve daha yavaş CISC komutlarından
daha verimlidir[21].
12.1.3 PIC16F877A Özellikleri
Microchip firmasının
üretmiş olduğu PIC16F877A mikrodenetleyicisi, PIC16FXXX ailesinin
bir üyesidir. Komut işleme açısından RISC mimari, bellek kullanımı açısından Harvard mimarisi tercih edilerek tasarlanmıştır. Bu mikrodenetleyicinin genel özellikleri Çizelge
12.1’den incelenebilir.
Özellikleri |
PIC16F877A |
Çalışma hızı |
DC-20 Mhz |
Program belleği |
8Kx14 words Flash bellek |
Veri belleği(RAM) |
368x8 bytes |
EEPROM veri belleği |
256x8 bytes |
Giriş/çıkış port sayısı |
33 |
Timer/Counter |
Timer0, Timer1, Timer2 |
2x Capture, Compare ve PWM Modülleri |
16bits, 16 bits, 10 bits |
Seri Çevresel Arayüz |
SPI (Master mod) ve I2C (Master/Slave)
SPI Port (senkron seri port) |
USART/SCI |
9 bits adresli |
Paralel Slave port |
8 bits, harici RD,WR ve CS
kontrollü |
Analog özelliği |
10 bits 8-kanal A/D çevirici |
Çizelge
12.1 PIC16F877A
genel özellikler
Mikrodenetleyicide,
15 farklı olay için interrupt (kesme) özelliği
tanımlanmıştır. Ayrıca
8 katlı tasarlanmış
stack (yığın) yapısı iç içe sekiz alt program çağırılmasını mümkün kılmaktadır.
PIC16F877A mikrodenetleyicisinin bellek yapısı
üç ayrı bloktan oluşur. Flash
bellek, uzun ömürlü, fakat mikrodenetleyiciye
yazma süresi uzun olan, programın
kayıt edildiği bellektir. Programların kullandığı değişkenler için kullanılan
bellek alanı ise statik
RAM bellektir.
RAM bellek, enerji
kesildiğinde sahip olduğu verileri kaybeder. Son bellek bloğu ise yazılması
ayrıca
bir
programlama tekniği gerektiren EEPROM bellektir [21].
Mikrodenetleyicide tüm aritmetik ve lojik işlemlerin gerçekleştirildiği kaydediciye “akümülatör” denilmektedir. PIC16F877A mikrodenetleyicisinde bu görevi “W” kaydedicisi yapmaktadır. Merkezi işlem birimi tarafından yürütülecek komutun adresini tutan
özel tanımlı kaydediciye program sayacı
denir.
12.1.4 PIC16F877A Pin
Tanımlamaları
Mikrodenetleyici 33
adet giriş-çıkış pinine sahiptir. 40 pinli PDIP
paketi Şekil 12.2’de görülmektedir. PIC16F877; 6 bitlik A portu, her biri 8 bitlik B,C ve D
portları ve 3 bitlik E portu olmak üzere 5 porta sahiptir. I/O pinlerinin
gerekli konfigürasyonlar yapılarak başka amaçlarla kullanılması da mümkündür.
Şekil 12.2 PIC16F877A 40-pinli PDIP görünümü[22].
Giriş-çıkış
pinleri dışındaki pinler besleme
gerilimi, osilatör, reset(MCLR) gibi mikrodenetleyicinin çalışması
için gerekli donanıma
ayrılmıştır. PIC16F877A mikrodenetleyicisinin
MCLR bağlantısı, reset ve programlama anlarını normal
çalışmadan ayırmaya yarar.
Mikrodenetleyici, bu pinine 5V verildiği
andan itibaren içindeki programı çalıştırma moduna girer. 13V verildiğinde
içine yeni program yüklenmeye hazır
hale
gelir, toprağa bağlanırsa mikrodenetleyici resetlenir. Vss bacağı toprak girişidir, Vdd bacağı 5V besleme
girişidir. OSC1 ve OSC2 pinleri mikrodenetleyicinin
çalışma frekansını belirleyen kristal veya RC osilatörü bağlantısı için
ayrılmıştır.
PORTA
“6 bit”lik hem giriş hem çıkış özelliğine
sahip bir porttur. TRISA kaydedicisinde, “
PORTB hem giriş
hem çıkış özelliğine
sahip
“8 bit”lik bir porttur.
RB3/PGM, RB6/PGC ve RB7/PGD pinleri programlayıcı veya devre üzerinde hata ayıklayıcı uçlar olarak da seçilebilir. PORTB’nin
en önemli özelliği RB0 kesme girişi ve RB4-RB7 arasında pinlerin değişikliğinde oluşan kesme durumudur. RB0 kesme girişi
olarak kurulduğunda isteğe göre, yükselen kenarda veya düşen
kenarda bir kesme üretebilmektedir. Portun diğer bir özelliği ise giriş
sırasında seçeneğe bağlı olarak entegre içerisinden pull-up direnci
kullanılabilmesidir. Böylece dışarıdan direnç bağlamaya gerek kalmamıştır.
PORTB çıkış olarak yönlendirildiğinde bu dirençler kendiliğinden iptal olur. PORTB uçları programlama ve hata ayıklama dışındaki amaçlarda
kullanıldıkları sürece PORTA’da olduğu
gibi TTL gerilim seviyelerinde çalışır.
Giriş olduğunda çektiği akım, çıkış olduğunda verebileceği akım
PORTA ile aynıdır.
PORTC, mikrodenetleyicinin en çok özelliğine sahip olan portudur. Tüm girişler schmitt - trigger tampona sahiptir. Bunun
sebebi, tüm pinlerin değişik seri haberleşme fonksiyonlarına sahip olmasıdır. Seri haberleşme, eğer TTL devrelerle yapılırsa kararsız bölge oldukça geniş bir bölgeyi işgal ettiği için
yanlış veri aktarımı daha olasıdır. Bu portun TRISC kaydedicisi çevresel özelliklerin doğru
kullanılabilmesi için dikkatli
bir şekilde koşullandırılmalıdır. PORTD ve PORTE genelde birlikte kullanılan iki porttur. Mikrodenetleyici veri
yollarıyla 8 bit paralel iletişim için kullanılır. PORTD, 8 bit veri ve adres yolunu oluştururken,
PORTE kontrol uçları olarak ayrılmıştır.
Tüm girişler, paralel iletişim
sırasında TTL seviyelerde, giriş-çıkış olarak kullanıldığında schmitt-trigger seviyelerde
çalışır. PORTE aynı zamanda PORTA gibi analog giriş olarak da seçilebilmektedir[21].
12.2 BASKI DEVRE ÇIKARIMI
Elektronik devre elemanlarının
üzerine yerleştirildiği ve bu elemanlar arasındaki elektriksel ilişkinin
bakırlı yüzde oluşturulan yollarla sağlandığı plakalara baskı devre denir.
Baskı
devrelerde yalıtkan plaket üzerine ince bir bakır tabakası güçlü ve dayanıklı
bir yapıştırıcı ile tutturulmuştur[23]
Resim 12.1 Bakır plaket
Baskı devrelerde bakır yüzeyin bir bölümü eritilerek
bakır yollar meydana getirilir. Baskı devre üzerine yerleştirilen devre
elemanlarının bacakları deliklerden geçirilir ve alt bölümdeki bakırlı bölgeye
lehimlenir. Elektronik devre elemanları bu bakırlı yollar aracılığıyla
birbirine bağlanır. Böylece devre elemanı hem fiziki hem de elektriksel olarak
devreye bağlanmış olur[23].
Elektronik devrelerin baskı devrelerinin
hazırlanması için birçok yöntem geliştirilmiştir. Bütün yöntemlerde baskı devre
şekilleri asite dayanıklı boya ile bakır plakete geçirilir. Üzerine şekil
geçirilmiş plaket özel bir asit karışımına atılır. Bu asit karışımı üzerinde
boya olmayan bakır yüzeyi eritmekte ve sonuçta boyalanmış alandaki bakır yüzey
korunmuş olmaktadır. Baskı devre yöntemlerinin büyük çoğunluğu baskı devre
şeklinin bakır plakete geçirilmesi yönünden farklılık göstermektedir.
Serigrafi, pozitif 20 gibi yöntemler en sık kullanılan baskı devre
yöntemlerindendir. Fakat ev ortamında bunların uygulanması oldukça zordur[2].
Bu bölümde BALDEL2010
projesinin yapımında kullanılan baskı devre çıkarma yöntemi anlatılacaktır.
Kontrol kartına ait devrenin yapımında Serkan AYYILDIZ tarafından yazılan Kendi
Robotunu Kendin Yap isimli kitap kaynak olmuştur. Bu devre üzerinde gerekli
oynamalar yapılarak BALDEL2010 için hazır hale getirilmiştir.
Resim
12.2 Asetat üzerinde baskı devre şekli
Yukarıdaki resimde
asetat üzerine fotokopi makinesiyle çıkarılmış olan baskı devre çizimini
görmekteyiz. Bu çizim Proteus programının Ares kısmında hazırlanmıştır. Asetat
üzerindeki bu resim aslında devrenin ters halidir. Bakırlı plaket üzerine
tonerli kısım yapıştırıldığında devrenin asıl yüzeyi ortaya çıkmaktadır.
Bunun için izlenen
adımlar şöyledir:
1.
Asetat
üzerine çıktısı alınan baskı devre şemasını bakırlı plakete geçirmek için ütü
kullanılacaktır. Yapılan işlemde ütü ile ısı transferi gerçekleştiği için ısıya
dayanıklı bir bakır plaket seçilmelidir. Kullanılacak plaketin ayrıca iyice
temizlenmesi ve kuru olması gerekmektedir.
2.
Temizlenen
plaket üzerine asetat doğru bir şekilde yerleştirilmelidir. Asetatın
tutunabilmesi için şeffaf bant kullanılabilir ama ben yapıştırdığımda bant
hemen erimişti ve ütüye yapışmıştı. En iyisi asetatı biraz büyük kesip
kenarlarından kısa bir süre tutmak oldu.
3.
Daha
sonra ütüleme işlemine geçilir. Ütü tarafından verilen sıcaklıkla asetat
üzerindeki toner bakır plakete geçmektedir.
4.
Ütünün
ısı ayarı 3. Kademede olabilir. Çok ısındığında asetatın erimesine neden
olacağından ben birkaç kez denedikten sonra yapabildim. Ütülemenin kolay
olmasını sağlamak için asetatla ütü arasına kağıt konulabilir. Bu ütünün
kolayca kaymasını sağlayacaktır. Ütüleme işlemi iyice bastırılarak ve onurluk
her kenarına gidilerek en az 5 dakika yapılmalıdır. Ancak burada dikkat
edilmesi gereken nokta çok fazla ütüleme sonrasında bakır yüzeye geçen tonerin
dağılmasına engel olmaktır. Dağıldığında elde edilen sonuç sadece 0 olacaktır.
Eğer toner dağılırsa yapılacak tek işlem plaketin soğumasının ardından tinerle ya
da bulaşık süngeri yardımıyla temizlenerek tekrar kullanılabilir hale getirmek
olacaktır.
5.
Ütüleme
bittikten sonra plaket soğutulur. 5-10 dakika beklenebilir ya da benim gibi
beklemek istemeyenler soğuk bir tabaka üzerine plaketi koyabilirler. Daha çabuk
soğuyor böylece. Soğuduktan sonra asetat yavaşça çıkarılır ve bozuk olan
kısımlar CD kalemi ve cetvel yardımı ile düzeltilir.
6.
Hazırlanan
plaket artık eritilmeye başlanabilir. Bunun için özel bir çözelti
hazırlanacaktır. Bu çözelti tuz ruhu ve perhidrol karışımıdır. Karışım oranı
ise 3 kapak tuz ruhu ve 1 kapak perhidroldür.
7.
Hazırlanan
çözeltiden mümkün olduğunca uzak durulmalı ve el ile temasından kaçınılmalıdır.
Elde temas edilen noktalar tüm gün boyunca inanılmaz bir acı vermektedir ve
oluşan beyazlık hiç gitmemektedir. Karışıma plaket bir cımbız yardımıyla
bırakılmalıdır. Ayrıca çözelti metallere karşı duyarlı olduğu için plastik bir
kapta hazırlanmasında fayda vardır. Balkırın erimesi sırasında çıkan zararlı
gazlardan korunmak gerekir.
8.
Eriyen
plaket çözeltiden alınır ve durulandıktan sonra yine en iyi olduğuna inandığım
ince zımpara ile iyice temizlenir.
9.
Temizlenip
kurulandıktan sonra artık plaketimiz delmek için hazır hale getirilmiştir. Son
aşamada 0.7mm ya da 1mm matkap ucu ile delikler delinerek lehimleme için hazır
hale getirilir.
Resim 12.3 Bakır plakete basılmış kontrol devresi
Yukarıdaki
resimde baskı devrenin son hali görülmektedir. Baskı yapıldıktan sonra delinmiş
ve elemanlar yerleştirilerek lehimleme yapılmıştır. Üzerindeki bantların
yanlarından devrenin hatları açıkça belli olmaktadır. Aşağıdaki resimde ise
kontrol kartının üstten görünüşü vardır.
Resim 12.4 Kontrol devresini üstten görünümü
Plaket üzerine baskı yapıldıktan
sonra her bir eleman tek tek lehimlenmiştir. Montajın kolay olması için
bağlantı kabloları erkek-dişi soket şeklinde yapılmıştır. Bu karta sensörlerin
ve DC motorun kontrol edildiği minik kartta bağlanmaktadır. Bu karta ait
bilgiler daha önceki bölümlerde verilmiştir. Kontrol kartının dış etmenlerden
korunmasını sağlamak amacıyla bir kutuya koyulması düşünülmüş ve sonuç olarak
Kumanda diye de tabir edebileceğimiz bir yapı ortaya çıkmıştır. Bu yapı
aşağıdaki resimde gösterilmektedir.
Resim 12.5 Kontrol kartının bulunduğu kumanda
Tüm
bu yapıların birleştirilmesi sonucu BALDEL2010 oluşmuş ve kullanıma hazır hale
getirilmiştir. Bu projenin kontrol kartına ait program ise sonraki kısımda
verilecektir. Aşağıda tamamlanan projenin son haline ait resim görülmektedir.
13. KONTROL KARTI PROGRAMI
KAYNAKLAR
[1] Birgül, Z., Küçük, S., (2005), “Robot Tekniği I”, Birsen Yayınevi, İstanbul
[2] Ayyıldız, S., (2006), “Kendi Robotunu Kendin Yap”, Altaş Yayıncılık, İstanbul
[3] Barutçuoğlu, E. I., (2001), “Robotların Tarihçesi”
[4] Mühürcü, A., Durmuş, B., “Beş Eklemli Bir Robot Koluna Ait İleri Kinematik
Hesaplama Yönteminin YSA İle Çözümü”
[5] Saeed, B. Niko, “Intruduction To Robotics Analysis Systems, Applications”
[6] Mumcu, H., “Robotik Sistemler”, D.P.Ü. Simav Teknik Eğitim Fakültesi
[7] Türksever, Z. C., (2003), “Robot Kol Tasarımı”
[8] “Robotik”, Megep, (2007)
[9] Danacı, T., “Robotlara İlişkin Birkaç Söz”, İTÜ İşletme Mühendisliği Bölümü
[10] “Robotik Notları”, http://websitem.gazi.edu.tr/rborklu
[11] “Robot Nedir?”, www2.omu.edu.tr
[12] Ayyıldız, S.,(2008), “Jal İle Pic Programlama”, Altaş Yayıncılık, İstanbul
[13] Dinç, B.,”Servo Motor Nasıl Kontrol Edilir”, www.bolatdinc.com
[14] “Intro to RC Servos”, http://www.horrorseek.com
[15] Gürsoy, H., “Algılayıcılar”, www.bilgiustam.com
[16] “Algılayıcılar”, robot.metu.edu.tr
[17] “Sensör nedir?”, www.robotiksistem.com
[18] “Sensörler ve Transdüserler”, Megep, (2007)
[19] ”Güç Kaynağı”, Megep, (2007)
[20] “Güç Kaynağı Yapımı”, www.t-robot.info
[21] Ünlü, B., “İnternet Üzerinden Mobikl Robotun Kontrolü”,
[22] www.microchip.com
[23] “Lehimleme ve Baskı Devre”, Megep
Hiç yorum yok: