Bilgisayar için Ağ Ayarları
Evarobot'a üzerinde bulunan modem sayesinde kablosuz olarak bağlanmak mümkündür. Takip eden bölümde bağlanmak istediğiniz PC'nin ağ ayarlarını yapmak için yapmanız gerekenler anlatılacaktır. Anlatım sırasında kullanılacak PC üzerinde Ubuntu 14.04 işletim sistemi çalışmaktadır ve ROS versiyonu olarak Indigo kullanılmaktadır.
Evarobot'a kablosuz olarak bağlanmak için SSH kullanılacaktır. Bilgisayarınıza kurmak için terminalde aşağıdaki kodu çalıştırmalısınız.
> sudo apt-get install ssh ssh-contact-service ssh-contact-client
Ağ ayarlarını yaparken bilgisayarınızın adını bilmek gerekmektedir. Aşağıdaki kodu terminalde çalıştırdığınızda bilgisayarınızın adını öğrenebilirsiniz.
> hostname
Resimde de gördüğünüz gibi örneğimizde kullanacağımız bilgisayarın hostname'i evarobotserver. Uygulamada <hostname> yazan yere biz evarobotserver yazacağız. Sizde kendi hostname'inizi yazmanız gerekmektedir.
bashrc isimli dosyanın içerisinde ROS_HOSNAME ve ROS_MASTER_URI değişkenlerini tanımlamamız gerekmedir. Bunun için gedit editörü ile ilgili dosyayı açıyoruz.
> gedit ~/.bashrc
Açılan editörde en alltaki satıra kendi hostname'inizi yazmalı ve kaydederek editörü kapatmalısınız.
export ROS_HOSTNAME=<hostname> export ROS_MASTER_URI=http://<hostname>:11311
Uygulamada kullanıdığımız bilgisayar için aşağıdaki gibi ekleme yapıyoruz.
export ROS_HOSTNAME=evarobotserver export ROS_MASTER_URI=http://evarobotserver:11311
bashrc içerisinde herhangi bir değişiklik yapıldığında terminalde değişikliklerin uygulanması için açık terminalleri kapatıp yeniden açmalı ya da açık olan her terminalde aşağıdaki kodun çalıştırılması gerekmektedir.
> bash
ROS değişkenlerini tanımladıktan sonra, host isimlerini ip adresleri ile ilişkilendireceğiz. Bunun için aşağıdaki gibi super kullanıcı olarak 'hosts' isimli dosyayı açıyoruz.
> sudo gedit /etc/hosts
gedit editörü ile açtığımız 'hosts' dosyası içerisine Evarobot ve kendi bilgisayarımız için ip ve hostname bilgilerini giriyoruz. Burada dikkat edilmesi gereken konu, aynı ip birden fazla hostname'e atanmamalıdır.
192.168.3.70 <hostname> 192.168.3.10 evarobotDSK
Örnekte kullandığımız bilgisayar için aşağıdaki gibi ekleme yaptık. Sizde kendi bilgisayarınızın hostname'ine uygun olarak düzeltme yapmalısınız.
192.168.3.70 evarobotserver 192.168.3.10 evarobotDSK
Çoklu roscore çalıştırmak için multimaster_fkie ros paketi kullacağız. Bilgisayar Kurulumu uygulamasında bu paketin indirilmesi anlatılmaktadır. Aşağıdaki kod ile düzeltme yapacağımız launch dosyasını gedit editörü ile açıyoruz.
> roscd master_discovery_fkie/launch/ > gedit master_discovery.launch
Açılan editörde aşağıdaki bilgiyi içeren satırı,
<param name="mcast_group" value="226.0.0.0" />
aşağıdaki gibi değiştirip, kaydederek kapatıyoruz.
<param name="mcast_group" value="224.0.0.0" />
PC NTP Server Ayarları
Evarobot ile bilgisayar arasında zaman eşitlemesinin yapılması gerekmektedir. Bunun için bilgisayarı ntp server olarak ayarlayacağız. Böylece, Evarobot bilgisayara göre saatini ayarlayacaktır.
Ntp'nin indirilmesi için aşağıdaki kodu terminalde çalıştırıyoruz.
> sudo apt-get install ntp
NTP ayarlarını yapmak için 'ntp.conf' dosyası açılır.
> sudo gedit /etc/ntp.conf
Editörde 23. satıra aşağıdaki satırlar eklenir.
server 127.127.1.0 server 127.127.1.0 stratum 10
52. satıra ise aşadaki satırlara eklenir ve dosya kaydedilerek kapatılır.
broadcast evarobotDSK
Bilgisayar bir ağda client gibi çalışarak internetten saatini güncellerken, evarobot_wifi ağına girdiğinde ntp sunucu gibi çalışması için yeniden başlatmak gerekmektedir. Bu sebepten dolayı, evarobot_wifi isimli ağa her girildiğinde aşağıdaki kod terminalde çalıştırılarak ntp sunucunun yeniden başlatılması gerekmektedir.
> sudo /etc/init.d/ntp restart
NTP ağındaki bilgisayarlar hakkında bilgi almak için aşağıdaki kod kullanılabilir.
> ntpq --numeric --peers
evarobot_wifi ağı için ip ayarlarının yapılması
Bu kısımda evarobot_wifi ağından 192.168.3.70 ip'sini statik olarak almak için ayarlar yapacağız. Evarobot'a güç verdiğinizde bir kaç dakika içerisinde evarobot_wifi isimli ağı görebilirsiniz.
Modem bilgileri:
SSID: evarobot_wifi
Şifre: inomuh2015
Aşağıdaki resimlerdeki 'evarobot_wifi' isimli ağa girilir.
Ağdan şu anda dhcp tarafından otomatik bir ip atandı. Aşağıdaki resimlerdeki gibi 'Edit Connections..'a tıklandığında açılan ekran evarobot_wifi seçilerek 'Edit' butonuna basılır.
Açılan ekranda 'IPv4 Settings' sekmesi altında 'Method' Manual seçilerek resimdeki gibi adresler eklenir. Address: 192.168.3.70 Netmask: 255.255.255.0 Gateway: 192.168.3.1
Yeni girilen ayarların aktif olması için resimdeki gibi Wifi Enable ve ardından Disable edilir. Daha sonra evarobot_wifi ağına girilir.
Eğer ayarlamalar hatasız bir şekilde yapıldı ise terminalde aşağıdaki kod çalıştırıldığında resimdeki gibi bilgisayarın 192.168.3.70 no ip'yi almış olması beklenmektedir.
> ifconfig
Böylece bilgisayarınızın Evarobot ile sorunsuz haberleşebilmesi için, bilgisayar tarafında yapılması gerekli olan ayarlamaları yapmış bulunmaktasınız.