Softivation

ArduPilot SITL kurulum rehberi

SITL, uçuş kartındaki ArduPilot yazılımını bilgisayarınızda çalıştırır. Görev kodunuzu drone uçurmadan dener, kaza riskini masada görürsünüz. Komutlar blog yazılarımızda ve eğitimlerde kullandıklarımızla aynı.

H123$ ./arducopter -S -I0SERIAL0 on TCP port 5760Waiting for connection ....$ python3 gorev.pyheartbeat: sysid 1

Ubuntu

Hazır SITL dosyasıyla birkaç dakikada; tam ortam için ArduPilot deposuyla.

Ubuntu kurulumu

Windows: WSL

Windows içinde Ubuntu. Mission Planner Windows'ta kalır.

WSL kurulumu

Windows: sanal makine

Eğitimdeki yol: VMware içinde Ubuntu.

Sanal makine kurulumu

Ubuntu'da hızlı kurulum: hazır SITL dosyası

Python kodunuzu ve Mission Planner bağlantınızı denemek için ArduPilot'u derlemeniz gerekmez. Blog yazılarımızdaki kodlar bu kurulumla çalışır. Aynı komutlar WSL ve sanal makinedeki Ubuntu'da da geçerli.

  1. Dosyaları indirin

    Kararlı Copter sürümünün Linux için derlenmiş SITL dosyası ve varsayılan parametreler:

    bash
    mkdir -p ~/sitl && cd ~/sitl
    curl -sL -o arducopter \
      https://firmware.ardupilot.org/Copter/stable/SITL_x86_64_linux_gnu/arducopter
    chmod +x arducopter
    curl -sL -o copter.parm \
      https://raw.githubusercontent.com/ArduPilot/ardupilot/master/Tools/autotest/default_params/copter.parm
  2. Aracı başlatın

    bash
    ./arducopter -S -I0 --model + --speedup 1 --defaults copter.parm \
      --sysid 1 --home 37.1591,38.7969,500,0

    -I0 örnek numarasıdır ve portları belirler. --home kalkış noktasını enlem, boylam, irtifa ve yön olarak verir. --speedup 1 simülasyonu gerçek zamanda çalıştırır; mesaj hızını Hz olarak ölçecekseniz şarttır.

    Terminalde Waiting for connection .... satırını görünce araç ilk istemciyi bekliyordur. Bu terminali açık bırakın.

  3. Python için pymavlink kurun

    Ayrı bir terminalde pymavlink'i sanal ortama kurun. Görev kodunuz tcp:127.0.0.1:5760 adresine bağlanır.

    bash
    sudo apt install python3-venv
    python3 -m venv ~/sitl/venv
    source ~/sitl/venv/bin/activate
    pip install pymavlink
    Eğitimde: araca bağlanma, veri akışını isteme, öznitelikler ve ilk komutlar, örnek kodlarıyla. Python ile Sıfırdan İHA Kontrolü: Araca Bağlanma ve Araç Sınıfının Öznitelikleri dersi.
  4. Mission Planner'ı bağlayın

    Bağlantı türünde TCP'yi seçin, adres olarak 127.0.0.1, port olarak 5762 yazın. Görev kodunuz 5760'ı kullanırken Mission Planner'ı aynı porta yollamayın: SITL her portta aynı anda tek istemci kabul eder.

    Eğitimde: port düzeni, ikinci ve üçüncü aracı başlatma, sürü simülasyonu. Yapay Zeka ve İHA Simülasyon Eğitimi: Sürü Drone Simülasyonu dersi.

Tam geliştirme ortamı: sim_vehicle.py ve MAVProxy

Harita, MAVProxy konsolu, uçak ve VTOL gövdeleri ya da Gazebo eklentisi istiyorsanız ArduPilot'u kaynak koduyla kurun. Yapay Zeka ve İHA Simülasyon eğitimindeki yol budur.

  1. Depoyu alt modülleriyle klonlayın

    bash
    sudo apt-get update
    sudo apt-get install git
    git clone --recurse-submodules https://github.com/ArduPilot/ardupilot.git
    cd ardupilot
  2. Gerekli paketleri kurun

    bash
    Tools/environment_install/install-prereqs-ubuntu.sh -y
    . ~/.profile

    ArduPilot'un belgesine göre bu betik standart desteği bitmiş Ubuntu sürümlerinde çalışmaz; belge örnek olarak 20.04'ü veriyor. Yeni kurulumda desteği süren bir LTS sürümü seçin. Ubuntu'yu yükselttiyseniz betiği yeniden çalıştırın.

  3. Simülasyonu başlatın

    İlk çalıştırmada -w ile kayıtlı parametreler silinip varsayılanlar yüklenir:

    bash
    cd ~/ardupilot/ArduCopter
    sim_vehicle.py --console --map -w
    Eğitimde: uçak, VTOL ve tekne gövdeleri, Gazebo ile kameralı, lidarlı ve sonarlı simülasyon. Yapay Zeka ve İHA Simülasyon Eğitimi: Uçak (Plane) Simülasyonu dersi.
  4. Yer istasyonunu bağlayın

    MAVProxy aracı UDP 14550'ye yayınlar; aynı bilgisayardaki Mission Planner'ı UDP 14550'ye bağlayın.

    Eğitimde: başka bilgisayardaki yer istasyonuna yayın, MAVProxy konsolu ve harita, simülasyonun ilk uçuşu. Yapay Zeka ve İHA Simülasyon Eğitimi: ArduPilot SITL Çalıştırma dersi.

Windows: WSL ile kurulum

Windows 10 sürüm 2004 ve sonrası ya da Windows 11 gerekir. Mission Planner Windows'ta, SITL WSL içindeki Ubuntu'da çalışır.

  1. WSL'i ve Ubuntu'yu kurun

    PowerShell'i yönetici olarak açın. Komut WSL'i etkinleştirir ve Ubuntu'yu kurar; bitince bilgisayarı yeniden başlatıp Ubuntu'yu açın, kullanıcı adı ve parola belirleyin.

    PowerShell
    wsl --install
  2. Ubuntu talimatlarını WSL içinde uygulayın

    Hızlı kurulum ya da tam ortam, komutlar aynı. ArduPilot deposunu Windows klasörlerine değil, WSL'in kendi dosya sistemine (ör. ~/ardupilot) klonlayın; derleme çok daha hızlı olur.

    Windows 11'de harita ve konsol pencereleri kendiliğinden açılır. Windows 10'da VcXsrv gibi bir X sunucusu kurun, "Start no Client" ve "Disable access control" seçenekleriyle başlatın.

  3. Mission Planner'ı bağlayın

    bash
    cd ~/ardupilot/ArduCopter
    ../Tools/autotest/sim_vehicle.py --map --console

    MAVProxy konsolu ve haritası açıldıktan sonra Mission Planner'ı başlatın; çoğu zaman kendiliğinden bağlanır. Bağlanmazsa UDP'yi seçip 14550'ye bağlayın. WSL2'de "mirrored" ağ kipini açtıysanız komuta --no-wsl2-network ekleyin.

    WSL2 varsayılan olarak USB'yi görmez: uçuş kartını WSL içinden bağlayamazsınız. Kartla çalışırken Windows'taki Mission Planner'ı kullanın.

Windows: sanal makine ile kurulum

Eğitimde VMware içine Ubuntu kuruyoruz. Sanal disk için en az 20 GB boş alan gerekir, 50 GB öneriyoruz.

  1. Sanal makineyi kurun

    VMware'i kurun, Ubuntu'yu sanal makineye yükleyin, sonra yukarıdaki Ubuntu talimatlarını sanal makinenin içinde uygulayın.

    Kurulumla uğraşmak istemiyorsanız hazır sanal makine kopyası Ubuntu 20.04 üzerinde ArduPilot SITL, Gazebo 11, ROS Noetic, DroneKit ve pymavlink kurulu gelir.

  2. Ana makinedeki Mission Planner'ı bağlayın

    SITL'in TCP portları yalnız 127.0.0.1'de değil, bütün ağ arayüzlerinde dinler. Ağ köprü kipindeyse Mission Planner'dan doğrudan sanal makinenin adresine TCP açın (5760 ya da boştaki 5762). Adresi sanal makinede öğrenin:

    bash
    hostname -I

    sim_vehicle.py ile çalışıyorsanız MAVProxy'de output add ile Windows'un adresine UDP 14550 ekleyin.

Sık hatalar

Mesajın Türkçe karşılığı ve ilk kontrol edilecekler hata mesajları sözlüğünde. Bağlantının neden koptuğunu sırayla bulmak eğitimde: Mission Planner bağlandı diyor, tek bayt gelmiyor.

Eğitimlerde devamı

Kurulumdan sonra: Gazebo'da kameralı drone, sürü simülasyonu ve görev kodu.

PDF olarak e-postanıza gönderelim

Sahaya, atölyeye ya da takım arkadaşınıza götürmek için. Adınızı ve e-postanızı bırakın, kurulum rehberi PDF olarak gelsin.

Yazdırma penceresinde hedef olarak "PDF olarak kaydet"i seçin.

Adınızı ve e-postanızı PDF'i göndermek için aydınlatma metninde anlatıldığı gibi işleriz.