HomeMapIndexSearchNewsArchivesLinksAbout LF
[Top Bar]
[Bottom Bar]
[Foto del Autor] 
Vicente Egea, Jorge Garrido, Roberto Guzmán, Ranko Zotovic 

Roberto Guzman Bilgisayar Bilimi'nde (Fiziksel Sistemler) �st d�zey bir yere sahiptir, Universidad Politecnica de Valencia'daki Sistemler B�l�m�nde ve Otomasyon M�hendisli�i'nde robotikler konusunda profes�r ve ara�t�rmac�, ayr�ca Almanya'da, Hagen de, Fern �niversitesinde ��lem Kontrol� ve D�zenlemesi'nde ara�t�rmac�d�r. Bu anda TMC-Electronics'te Ara�t�rma ve �nceleme b�l�m�nde �al��maktad�r.  

Ranko Zotovic bir end�stri m�hendisidir. Onun robot benzeri makineleri, kesme ve kalite kontrol yapan makineleri tasarlamak ve olu�turmak konular�nda uzun y�llar s�regelen bir deneyimi vard�r. Bu anda Robotikler ve CAD/CAM konular�nda Universidad Politecnica of Valencia'da Otomasyon M�hendisli�i ve Sistemler B�l�m�nde profes�r'd�r. 

Jorge Garrido Serrano Bilgisayar Bilimleri'nde (Fiziksel Sistemler) �st d�zey yere sahiptir. Onun ba�l�ca �al��malar� PCBot'lar i�in yaz�l�m tasarlamak ve d�zenlemektir. End�striyle Ortakla�ma i�in Bancaja �d�l�ne de�er bulunmu�tur. Bu anda, Almanya'da, Hagen'de, Fern �niversitesi'nin Avrupa "MobiNet" (Sa�l�k Koruma Ara�t�rmalar� i�in Gezgin Robotik Teknolojisi, �ngilizcesi: Mobile Robotics Technology for Health Care Research) Projesinin bir par�as� olmaktad�r. 

Vicente Egea Mañas Bilgisayar Bilimleri'nde (Fiziksel Sistemler) �st d�zey yere sahiptir. PCBot'lar i�in donan�mlar tasarlamak ve d�zenlemek nedeniyle End�striyle Ortakla�malar i�in Bancaja �d�l� ile �d�llendirilmi�tir. Bu an TGI'de �al��maktad�r. 
Yazar ile ileti�im:  

��indekiler 
Giri� 
Arac�n Betimlemesi 
Yaz�l�m Mimarisi 
Sonu�lar 

Linux Tabanl� �zyolg�sterimli Bir Ta��t

�eviri: Evren Ergin

�zet: Mobil robotikler alan�nda son y�llarda b�y�k geli�meler olmu�tur. Robotiklerin, Mekatroniklerin ve Yapay Zek�lar�n bir�ok b�l�mleri �al��malar�n bir b�l�m�n� otomatikle�tirilmi� ara�lar �zerine y�nlendirdiler. Bu ana kadar, R & D'deki y�ksek �cret onlar�n uzay, ordu ve n�kleer enerji �zerinde �al��malar�n� k�s�tlamaktad�r. Buna kar��n bu alandaki h�zl� geli�im tar�m, end�stri, servisler, madencilik, ila� sanayii gibi alanlarda tan�t�m�na olanak vermektedir. Bu, b�y�me i�in b�y�k potansiyeli olan bir aland�r.

Tan�t�m

Bu anda varolan tecimsel �zyolg�sterimli ta��tlar onlar� kullan�m�n� R & D'ye k�s�tlayan yap�lara sahiptirler. Di�erlerine g�re, y�ksek fiyatlar, kapal� ve tescilli mimariler, kaynakyaz�land�r�m (dok�mantasyon) eksikli�i, �l�ekleme zorlu�u gibi donan�m ve yaz�l�m d�zeyinde k�s�tlamalar s�z konusudur.

Otomasyon ve Sistemler B�l�m�'nde, yukar�da s�z� edilen uygunsuzluklar� i�ermeyen bir �z�olg�sterimli (autoguided) ta��t yapmaya karar verdik. Fiyat, g��, uyumluluk, �l�eklenebilirlik, ve de donan�m ve yaz�l�m�n elde edilebilirli�i gibi ola�an�st� �st�nl�kleri nedeniyle, ki�isel bilgisayar tabanl� bir yap� kurmaya karar verdik. Linux kullan�m� ve onun ger�ek zaman uygulamas� olan RT-Linux bu proje'nin tamamlanmas�n� olduk�a kolayla�t�rm��t�r.
 

 
�zyolg�sterimli Ta��t PCBot 1.0 

Arac�n Betimlenmesi

Bizim sistemimiz iki g�� destekli tekerlek ve iki de destek tekerle�inden olu�an hbir ara�t�. Onun kinemati�i bir tekerlekli sandalyeninkine veya bir tank�nkine e�de�erdir. Onun merkezinin h�z�n� kontrol etmek i�in her bir tekerle�in h�z�n� ayr� ayr� kontrol etmek ve d�zenlemek gerekiyordu.

Tasar�m� iki ayr� b�lge yaratm��t�: b�t�n mekaniksel ve elektriksel aksam�n bulundu�u alt b�lge ve t�m kontrol ve ileti�imi sa�layan par�alar�n bulundu�u �st b�lge. Alt b�lge al�minyum bir tabaka �zerine kurulmu�tur. Biz bu b�l�me tekerlekleri, indirgemeleri, motoru, d�zg�leyicileri (encoder) g�� arabirimleri ve g�� kaynaklar�n� yerle�tirdik. �st b�l�me ise PC'nin kart� �zerine yerle�tirilen kontrol kartlar� ve disket s�r�c�leri koyduk.
 

 
�zyolg�sterimli Ta��t PCBot'un �nden ve yandan g�r�n��� 
Donan�m mimarisi motora giden g�c�, g�� kartlar�ndan biri �zerinden kontrol eden bir kontrol kart�n� taban almaktad�r. Eksen kontrolu kontrol kart� veya do�rudan PC taraf�ndan yap�labilmektedir. Bu proje i�in kontrol kartlar�n� sistem yaz�l�mlar�n� iste�e ba�l� olarak geli�tirdik.
 
 
Donan�m Mimarisi 
Ta��t kontrol buyruklar� d��ar�daki bir bilgisayar (konak, �ngilizcesi: host) taraf�ndan verilmektedir. Kartlar�n ba�l� oldugu PC uygun hareket buyruklar�n� g�nderir ve kontrol kartlar�n� referans alarak de�erlendirir. Bunlardan sonuncusu, motorlar� besleyen g�� b�l�m�nde y�kseltilen bir voltaj isteminde bulunur. Her eksenin hareketi tek tek bir konum alg�lay�c�s� (d�zg�leyici) taraf�ndan kontrol edilir ve kontrol kartlar�nca kotar�l�rlar (handled).

Yaz�l�m Mimarisi

�zyolg�sterimli bir ta��t�n devreye sokulmas� �ncelikle, kontrol d�zenlemelerini sabit bir zaman s�resi i�in garantileyen bir kapal� devre kontrol sistemi gerektirir. �kinci olarak baz� durum de�i�kenlerinin, s�zgelimi ta��t�n merkezinin konumunu her an belirlemek i�in, peryodik g�ncellenmesini de gerektirir.

Yukar�da belirtilen bu iki gereksinim bizi bir ger�ek zaman i�letim sistemini kullanmak zorunda b�rakmaktad�r. Ger�ek zaman i�letim sistemleri sadece sistemin hesaplamalar�n� de�il sonu�lar�n geldi�i zamanlar� da kontrol ederek do�rular.

Ger�ek zaman uzat�mlar�n� (extension) (s�r�m 0.6) kullanarak Linux 2.0.33 �ekirdek �zerinde PCBot yaz�l�m mimarisini devreye sokmaya karar verdik.

Linux ve RT Linux � kullanmaktaki nedenler di�er otomasyon �irketlerinin de kendi yaz�l�mlar�n� devreye sokmaktaki nedenleriyle ayn�d�r. Bunlar a�a��da verilmektedir:

Ger�ek zaman i�letim sistemi olan RT-Linux New Mexico'daki Madencilik ve Teknoloji Enstit�s�'n�n Bilgisayar Bilimleri B�l�m�'nde Victor Yodaiken ve Michael Barabanov taraf�ndan geli�tirilmi�ti. A�a��daki �izem (diyagram) onun mimarisini g�stermektedir. Ger�ek zaman �ekirde�i donan�ma en yak�n bir d�zeyde �al��maktad�r. Bir sabit �ncelik d�zenleyicisi donan�ma tam eri�ebilen bir dizi ger�ek zaman uygulamas�n� i�letir. Linux'un kendisi de en d���k �ncelikli olan ve zaman bulunduk�a �al��t�r�lan bir di�er ger�ek zaman uygulamas� olarak g�r�lmektedir.
 
 
Ger�ek zaman sistemi RT-Linux 
PCBot i�in yaz�l�m mimarisi bilinen istemci-sunucu modeline dayand�r�lm��t�r. Sunucu, uzaktaki makinalarda �al��an istemcilerden gelen istemleri kotararak, robot �zerinde �al���r. Sunucu ve istemciler aras�ndaki ileti�im TCP/IP �zerinden sa�lan�r.

�leti�imde TCP/IP kullan�m� robotu konak (host) �zerinde �al��makta olan i�letim sisteminden ba��ms�z k�lar. �stemci kullan�c�dan ald��� buyruklar� robota aktar�r. �� �e�it buyruk vard�r: hareket, durum ayar� ve durum iste�i. �stemci giri� buyru�unun s�zdizimini kontrol eder, sunucu i�in uygun bir ileti olu�turur soketleri kullanaraktan onu sunucuya g�nderir.

Sunucu, s�rekli olarak, istemciden gelecek ileti�im i�in bekler. Bir kez ba�lant� sa�land���nda, sunucu, istemci ve kontrol uygulamalar�n� �al��t�ran ger�ek zaman mod�l� aras�nda bir arabulucu haline gelir. Ger�ek zaman mod�l� robot taraf�ndan kabul edilen buyruklar� �al��t�r�r ve ayn� zamanda Watchdog t�r� bir periyodik uygulamala �zerinden sistem b�t�nle�ikli�ini y�netir.
 

 
Yaz�l�m Mimarisi 
Yaz�l�m mimarisini iki ayr� b�l�m birbirinden ay�r�r. Biri Linux i�letim sistemi �zerinde �al��makta ve di�eri ise baz� ge�ici gereksinimlerinden dolay� ger�ek zaman (RT-Linux) �zerinde �al��t�r�lmaktad�r. Sunucu Linux taraf� �zerinde bulunmaktad�r ve ta��t �zerine yerle�tirilen PC �zerine oturtulmu�tur. Kesin zaman gereksinimsiz ikinci bir uygulama olan istemcinin ise, karta yerle�imli (onboard) PC �zerine yerle�tirilmesine gerek yoktur.

Ger�ek zaman mod�lleri bir�ok periyodik ger�ek zaman uygulamas� (hareket etme buyruklar� ve watch dog uygulamalar�) ve anl�k uygulamalardan (s�r ve dur) olu�maktad�r.

Bir ikili uzaktanuyarma (semaphore) ger�ek zaman uygulamalar�n�n donan�ma eri�imlerini koruma alt�na al�r. Bu uzaktanuyarmaya bir�ok nedenden dolay� gereksinim duyar�z. Birincisi, kontrol kartlar� ile ileti�imde yerde�i�tirme yazma�lar� kullan�l�r. E�er bunu kullanan bir uygulama ba�ka bir uygulama taraf�ndan kesilirse (interrupt) o zaman bu yazma�a ge�ersiz bilgiler yaz�l�r. �kincisi, kesilemeyen yazma� d�zeyli protokolllar�n bulunmas�d�r. Ve son olarak da, her iki eksene do�ru olan kontrol etkilerinin olabildi�ince e�zamanl� olarak ger�ekle�tirilmelidir.

�� rt-fifo kuyru�u ger�ek zaman mod�l� ile sunucu aras�ndaki ileti�imi devreye sokar. Sunucu istemcilerden gelen hareket bilgilerini bir kuyru�a yazar. Ger�ek zaman mod�l� daha sonra sunucuya gelen buyru�un ge�irilmesi i�in kalan iki kuyru�u kullan�r ve istemciyi herhangi beklenmeyen duruma kar�� sunucu �zerinden uyar�r.

Tipik bir olaylar dizisi genellikle �u �ekildedir: kullan�c�, PCBot ile kullan�c� aras�nda bir aray�z olacak bir i�lemi istemcide ba�lat�r. Her buyruk giri�inden sonra istemci bu i�lemleri ger�ekle�tirir ve bunlar� sunucuya yollar. Sunucu i�lenmi� iletileri al�r ve bu i�lemleri rt-fifo'ya ba�l� ger�ek zaman mod�l�ne g�ndermeden �nce yeniden i�ler.

RT-fifo'ya ba�l� s�r�c� i�lemi herhangi buyru�u kotar�r ve e�er o bir hareket istemi ise ilgili ger�ek zaman uygulamas�n� ba�lat�r ve sunucuya bir do�rulama g�nderir. Ba�lat�lan uygulama motorlar� hareket ettirmek i�in gerekli etkinlikleri d�zene sokar.

Bir hareket komutunun yan�nda, kullan�c� bir durum istemi ya da durum atamas� isteminde bulunmu� olabilir. Bu durumda ayn� s�r�c� gelen istemleri b�t�neyayg�n durum de�i�kenlerine okuyarak ya da yazarak yan�tlar.

B�t�neyayg�n de�i�kenler, s�r�c� ve t�m ger�ek zaman uygulamalar� taraf�ndan payla��lan bir bellek alan�nda tutulurlar. B�t�neyayg�n de�i�kenler uygulamalar aras�nda h�zl� ve basit bir ileti�ime izin verirler. Watchdog, di�er �eyler aras�nda, ta��t�n durumundaki de�i�ikliklerin ve de herhangi bir anormalli�in de, sunucuya bildirerek �stesinden gelir.
 

 
Yaz�l�m Mimarisi - Sistem Uygulamalar� 

Sonu�lar

PC tabanl� sistem mimarisi, s�zgelimi d���k maliyet, donan�m ve yaz�l�mda kolay geli�tirilebilme, elde edilebilen yaz�l�m �oklu�u nedeniyle esneklik ve i�lemleri yapabilmedeki s��a anlam�nda g�� gibi bir�ok �st�nl��e sahiptir. Hepsinden �te donan�m�n hi�bir zaman modas� ge�mez ��nk� daha yeni bir model ile de�i�tirilmesi kolay olup eski yaz�l�mlarla uyum sorunu yoktur.

Linux ve onun ger�ek zaman geni�letimi olan RT-Linux'un se�imi �ok yerinde bir karard�. wpe (Pencere Programlamas� �evresi, �ngilizcesi: Windows Programing Environment) veya ek �cret gerektirmeyen GNU C derleyicisi gibi �ok g��l� GNU geli�tirim elayg�tlar�n� (development tools) kulland�k.

Linux sistemi g�rb�zl���n�, sadece deneyler s�ras�nda kan�tlamakla kalmad� ayr�ca makine �zerinde olduk�a iyi bir y�netim g�sterdi, �yleki 486 bir PC �zerinde yapt���m�z denemelerde hi�bir hata veya zamanda bir aksama g�rmedik (bu s�rada bir�ok kulllan�c� bu makineye ba�l� durumdayd�). Ger�ekte, sistem kullan�labilirlik incelemelerimiz, en k�t� durum senaryolar�nda bile Merkezi ��lem Birimi zaman�n�n %70'i devreye sokulabilmi�ti.

Bu projede kullan�lan yaz�l�mlar�n t�m� herkesin eri�ebildi�i y�relerden (public domain) al�nm��lard�, bu y�zden kaynaklar her zaman elimizdeydi. Bu bize ger�ek zaman �ekirde�inin �al��malar�n� daha iyi anlama olana�� verdi, bu da bize geli�tirme olanaklar�nda tecimsel ta��tlarda s�z konusu olmayan yeni kap�lar (di�er zaman i�letmenlerini kullanmak, ger�ek zamantaraf�nda s�r�c�ler kullanmak gibi) a�t�.

RT-Linux, �ekirde�in d�zeltiminden depolamaya kadar �e�itli tekniklerle ve de�i�kenleri printk sistem �a�r�s� ile g�rme yoluyla kolayca debug edilebilir.

Geli�tirim s�recinde rt-linux ileti listesindeki �yelerden ald���m�z destek ve olduk�a y�kl� miktardaki kaynakyaz�lar�n bize b�y�k yard�m� oldu.

Kaynaklar

http://www.rtlinux.org

LinuxFocus'te RT-Linux hakk�ndaki di�er yaz�lar:
Ger�ek-Zaman Linux
Ger�ek-Zaman Linux II


Yaz�n�n dergiye g�nderilen asl� �spanyolca'd�r
�ngilizceye �eviri: Miguel Angel Sepulveda
Jose Quesada taraf�ndan g�zden ge�irilip d�zenlenmi�tir.
Bu g�rsel sanaly�renin bak�m�n� Miguel Angel Sepulveda yapmaktad�r.

� Vicente Egea, Jorge Garrido, Roberto Guzmán, Ranko Zotovic 1999
LinuxFocus 1999