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.
��indekiler:
|
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 |
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 |
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 sistemi RT-Linux |
�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 |
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� |
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.
LinuxFocus'te RT-Linux hakk�ndaki di�er yaz�lar:
Ger�ek-Zaman Linux
Ger�ek-Zaman Linux II
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 |