ROS Ortam Yapılandırması

      1. ROS’u Kurma

Bu bölüme başlamadan önce şu yazıyı takip ederek ROS kurulum adımlarını takip edin.

Note: Eğer ROS’u ‘apt’ gibi bir paket yöneticisinden indirdiyseniz, bu paketler yazılabilir olmayacak ve kullanıcı tarafından düzenlenemeyecektir. ROS paketlerini kaynaktan çalışmak istediğinizde veya yeni bir ROS paketi oluşturma kararı aldığınızda bu işlemi her zaman erişilebilir olduğunuz bir adresten, home klasörü gibi, yapın.

      2. Ortamı Yönetme 

ROS yüklenmesi sırasında, birkaç *sh kurulum dosyasını ve hatta bu ‘kaynak’ları bir başlangıc betik(script) olarak shell’e eklemeniz istenir.
Bu işlem ROS’un shell ortamını kullanarak boşlukları doldurma kavramına dayanması nedeniyle gereklidir. Bu ROS’un farklı sürümlerine veya farklı paket kümelerine karşı geliştirmeyi kolaylaştırır.

Eğer ROS paketlerinizi bulmakla veya kullanmakla ilgili bir problem yaşıyorsanız, ortamınızı doğru bir şekilde kurduğunuzdan emin olun.

Bunu kolay bir şekilde kontrol etmenin bir yolu da ortam değişkenlerinin ROS_ROOT ve ROS_PACKAGE gibi, doğru bir şekilde kurulduğuna emin olmak.

>printenv | grep ROS

Eğer bir sorun varsa, bazı *sh kurulum dosyalarını ‘kaynak(source)’ almanız gerekebilir.

Ortam kurulum dosyaları sizin için kurulur, ancak farklı yerlerden de gelebilirler:

  • Paket yöneticileri ile kurulan ROS paketleri *sh kurulum dosyalarını sağlar.
  • rosbuild çalışma alanı rosws gibi araçları kullanarak *sh kurulum dosyalarını sağlar.
  • *sh kurulum dosyaları catkin paketleri kurulduğunda yan ürün olarak oluşturulur.

Note: Bu yazılar boyunca ‘rosbuild’ ve ‘catkin’ için referanslar bulacaksınız. ROS kodlarınızı oluşturmak için ve organize etmek için iki uygun metod var. ‘rosbuild’ artık tavsiye edilip muhafaza edilmiyor ama kayıt için saklanmaya devam ediliyor. ‘catkin’ ise kodlarınızı organize etmek için önerilen yoldur. Daha standart CMake kuralları kullanır ve özellikle harici kod tabanlarını entegre etmek isteyen veya yazılımlarını yayınlamak isteyenler için daha esneklik sağlar.

Eğer ROS’u Ubuntu üzerinde ‘apt’ kullanarak kurduysanız, *sh kurulum dosyalarına sahip olup, aşağıdaki kod ile kaynak alabilirsiniz.

>source /opt/ros//setup.bash

Yukarıdaki kodda yer alan kısmına kendi kullandığınız ROS dağıtımının kısa adını yazmanız gerekli. Örnek olarak:

>source /opt/ros/kinetic/setup.bash

ROS komutlarına erişim sağlamak için her yeni shell açtığınızda bu komutu çalıştırmaya ihtiyacınız var, taa ki bu satırı .bashrc’ye ekleyene kadar. Bu işlem aynı bilgisayara birden fazla ROS dağıtımını yüklemeye ve dağıtımlar arasında geçiş yapmaya izin verir.

Diğer platformlarda ise bu *sh kurulum dosyalarını ROS nerede kurulu ise orda göreceksiniz.

      3. ROS Çalışma Alanı Oluşturmak

Not: Aşağıdaki talimatlar ROS Groovy ve sonrasındaki dağıtımlar içindir. ROS Fuerto ve önceki dağıtımlar için ‘rosbuild’ kullanmalısınız.

Hadi ‘catkin çalışma alanı’ oluşturalım:

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make

catkin_make komutu ‘catkin çalışma alanları’ ile çalışmak için yararlı bir araçtır. Çalışma alanınızda ilke defa çalıştırdığınızda, ‘src’ klasöründe bir ‘CmakeLists.txt’ dosyası oluşturacaktır. Ek olarak, eğer mevcut dizine bakarsanız ‘build’ ve ‘devel’ klasörlerini de görmüş olmalısınız. ‘devel’ klasörünün içinde birkaç yeni *sh kurulum dosyasını görebilirsiniz. Bu dosyalardan herhangi birini kaynak almak, bu çalışma alanını ortamınızın üzerine yerleştirecektir. Bu konuyu daha fazla anlamak için genel catkin dökümanına bakabilirsiniz: catkin. Devam etmeden önce *sh kurulum dosyanız:

>source devel/setup.bash

Çalışma alanının, kurulum scripti tarafından doğru bir şekilde yüklendiğinden emin olmak için, ROS_PACKAGE_PATH ortam değişkeninin bulunduğunuz dizini içerdiğini kontrol edin.

echo $ROS_PACKAGE_PATH
/home/youruser/catkin_ws/src:/opt/ros/kinetic/share

 

Kaynak: Installing and Configuring Your ROS Environment

Total Views: 589 ,

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.