Sanal laboratuvar

Robotik Simülasyon Araçları

Devre yakmadan, robot düşürmeden, bir kuruş harcamadan deneyin. Tinkercad ile tarayıcıda Arduino devreleri kurun; Gazebo, CoppeliaSim ve Webots ile fizik motoru olan 3D dünyalarda robotlarınızı test edin. Her araç için kurulum, ilk deneme kodu ve uygulama görevleri bu sayfada.

Hangisinden başlamalı?

Deneyiminize göre önerilen sıra:

Tinkercadİlk devre ve Arduino kodu · tarayıcıda
Webotsİlk 3D robot simülasyonu · Python ile
CoppeliaSim / GazeboRobot kolu, ROS 2 ve ileri projeler
Karşılaştır
1

Neden Simülasyon?Sanal ortamda test etmenin beş nedeni

Robotik projelerde bir hatanın bedeli yanan bir LED olabileceği gibi masadan düşen bir robot kolu da olabilir. Simülasyon, kodunuzu ve tasarımınızı gerçek donanıma dokunmadan denemenizi sağlar. NASA'dan otonom araç şirketlerine kadar profesyoneller de bir algoritmayı gerçek robota yüklemeden önce binlerce kez simülasyonda çalıştırır.

GüvenliKısa devre, düşme, çarpışma yok. Hata yapmak serbest.
ÜcretsizBu sayfadaki dört aracın hepsi eğitim için ücretsiz kullanılabilir.
HızlıRobotu yeniden kurmadan yüzlerce deneme; zamanı hızlandırma.
Herkese erişilebilirSınıftaki herkes aynı anda, kendi bilgisayarında çalışır.
ÖlçülebilirKonum, hız ve sensör verilerini kesin olarak kaydedin.
Hayal edilemeyeni deneElinizde olmayan LiDAR, robot kolu veya drone ile çalışın.

Dört aracın karşılaştırması

ÖzellikTinkercad CircuitsWebotsCoppeliaSimGazebo
Ne simüle eder?Elektronik devre ve Arduino / micro:bit kodu3D mobil robot, kol, araç, drone3D robot kolu, mobil robot, fabrika hücresi3D robot, sensör ve çoklu robot dünyaları
Çalıştığı yerTarayıcıWindows, macOS, LinuxWindows, macOS, LinuxEn iyi Ubuntu Linux
ProgramlamaBloklar, Arduino C++Python, C, C++, Java, MATLABLua, Python ve harici APIC++ eklentiler, ROS 2 (Python / C++)
LisansÜcretsiz hesapAçık kaynak (Apache 2.0)Eğitim için ücretsiz Edu sürümüAçık kaynak (Apache 2.0)
SeviyeBaşlangıç (8+ yaş)Orta (lise, üniversite)Orta–ileriİleri (ROS bilgisi gerekir)
En güçlü yanıKurulumsuz, sınıf yönetimiHazır robot kütüphanesi, kolay başlangıçRobot kolu, ters kinematik, hızlı prototipROS 2 ile tam entegrasyon, endüstri standardı
Kısa yol: Elektronik ve Arduino öğreniyorsanız Tinkercad yeterli. İlk 3D robot simülasyonunuz için Webots'u seçin. Robot kolu ve ters kinematik çalışacaksanız CoppeliaSim, ROS 2 ile profesyonel bir yazılım yığını kuruyorsanız Gazebo doğru adres.
2

Tinkercad CircuitsAutodesk · tarayıcıda devre ve Arduino simülasyonu

Tinkercad, Autodesk'in ücretsiz tarayıcı tabanlı tasarım platformudur. Circuits bölümünde sanal bir breadboard üzerine Arduino Uno, LED, direnç, sensör ve motorlar sürükleyip bırakarak devre kurabilir, yazdığınız kodu gerçek karttaymış gibi çalıştırabilirsiniz. Hiçbir şey kurmanıza gerek yoktur.

Neler yapılabilir?

  • Arduino Uno ve micro:bit ile devre kurma
  • Blok, blok + metin veya yalnızca Arduino C++ ile kodlama
  • Seri Port Ekranı ve adım adım hata ayıklama
  • Multimetre ve osiloskopla ölçüm yapma
  • Öğretmen sınıfları ve öğrenci hesapları oluşturma

Sınırları

  • Yalnızca hazır listedeki bileşenler kullanılabilir
  • Harici kütüphane yükleme desteği çok sınırlıdır
  • Raspberry Pi, ESP32 gibi kartlar yoktur
  • Fiziksel hareket (robotun yürümesi) simüle edilmez
  • Zamanlama gerçek karttan biraz farklı olabilir

İlk devrenizi 5 adımda kurun

  1. Hesap açın

    tinkercad.com adresinden ücretsiz kayıt olun. Öğretmenseniz sınıf oluşturup öğrencilerinizi e-posta gerektirmeyen bir sınıf koduyla ekleyebilirsiniz.

  2. Yeni devre oluşturun

    Panelde Oluştur › Devre seçeneğine tıklayın. Sağdaki bileşenler panelinden "Arduino Uno R3" ve bir "Breadboard" sürükleyin.

  3. Bileşenleri bağlayın

    Bileşenlerin bacaklarına tıklayıp sürükleyerek kablo çekin. Kabloya tıklayıp rengini değiştirin: kırmızı 5V, siyah GND. Direncin değerini üzerine tıklayıp ayarlayın.

  4. Kodu yazın

    Üstteki Kod düğmesine basın. Açılır menüden "Metin" seçip aşağıdaki kodu yapıştırın; ya da "Bloklar" ile sürükle-bırak programlayın.

  5. Simülasyonu başlatın

    Simülasyonu Başlat düğmesine basın. Seri Port Ekranı kod panelinin altındadır. Sensörlere tıklayınca çıkan kaydırıcıyla mesafe, ışık veya sıcaklığı değiştirebilirsiniz.

Örnek: Mesafeye göre renk değiştiren uyarı

Bileşenler: Arduino Uno, 4 pinli ultrasonik mesafe sensörü (HC-SR04), yeşil ve kırmızı LED, iki adet 220 Ω direnç. Bağlantı: Trig → D9, Echo → D10, yeşil LED → D5, kırmızı LED → D6. Simülasyon sırasında sensöre tıklayıp önündeki nesneyi sürükleyerek mesafeyi değiştirin.

tinkercad_mesafe.inoArduino C++
// Tinkercad: HC-SR04 ile mesafe uyarısı
const int trigPin = 9;
const int echoPin = 10;
const int yesilLed = 5;
const int kirmiziLed = 6;

void setup() {
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(yesilLed, OUTPUT);
  pinMode(kirmiziLed, OUTPUT);
  Serial.begin(9600);
}

long mesafeOlc() {
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  return pulseIn(echoPin, HIGH) * 0.034 / 2;
}

void loop() {
  long cm = mesafeOlc();
  Serial.print("Mesafe: ");
  Serial.print(cm);
  Serial.println(" cm");

  bool yakin = cm < 50;
  digitalWrite(kirmiziLed, yakin);
  digitalWrite(yesilLed, !yakin);
  delay(200);
}

Uygulama görevleri

KolayDirenç dedektifi

Multimetreyle LED'in akımını ölçün. Direnci 220 Ω, 1 kΩ ve 10 kΩ yaparak akımın nasıl değiştiğini tabloya yazın.

KolayTrafik lambası

Üç LED ile trafik lambası kurun ve kodlayın; ardından yaya butonu ekleyin.

OrtaAkıllı termometre

TMP36 sıcaklık sensörü ve LCD ekranla sıcaklığı gösterin; 30 °C'nin üstünde buzzer çalsın.

OrtaServo kapı

Potansiyometreyle servo motoru kontrol edin; sonra PIR sensörüyle otomatik kapıya dönüştürün.

ZorBozuk devreyi bul

Öğretmen bilerek hatalı bir devre paylaşır; öğrenciler multimetreyle hatayı bulup düzeltir.

ZorGerçeğe aktar

Tinkercad'de çalışan devreyi gerçek malzemelerle kurun ve sonuçları karşılaştırın.

Sitemizdeki Arduino başlangıç projelerinin çoğu Tinkercad'deki bileşenlerle kurulabilir. Malzemeleri almadan önce projeyi simülasyonda denemek, hem parayı hem zamanı korur.
3

GazeboAçık kaynak · ROS 2'nin varsayılan simülatörü

Gazebo, Open Robotics tarafından geliştirilen ve ROS (Robot Operating System) dünyasında standart kabul edilen açık kaynaklı 3D robot simülatörüdür. Fizik motoru, kamera, LiDAR, IMU ve GPS gibi sensör modelleri ve aynı dünyada birden çok robot çalıştırabilmesiyle araştırma ve endüstride yaygın olarak kullanılır.

Sürüm karışıklığına dikkat: İnternetteki eski eğitimlerin çoğu artık desteklenmeyen Gazebo Classic (gazebo11, gazebo komutu) içindir. Yeni Gazebo'da (eski adıyla Ignition) komut gz sim'dir. Güncel önerilen eşleşmeler: Ubuntu 24.04 + ROS 2 Jazzy + Gazebo Harmonic veya Ubuntu 26.04 + ROS 2 Lyrical + Gazebo Jetty. ROS 2 sürümünüzle eşleşmeyen bir Gazebo kurmak çoğu sorunun kaynağıdır.

Temel kavramlar

KavramAçıklama
Dünya (world)Zemin, ışık, yerçekimi ve tüm nesneleri içeren sahne. .sdf uzantılı dosyada tanımlanır.
ModelRobot veya nesne. Bağlantılardan (link) ve eklemlerden (joint) oluşur.
SDF / URDFRobotu tanımlayan XML dosya biçimleri. ROS tarafında genellikle URDF, Gazebo'da SDF kullanılır.
Eklenti (plugin)Modele davranış ekleyen kod: diferansiyel sürüş, sensör, eklem kontrolü.
Konu (topic)Gazebo ve ROS'ta programların mesajlaştığı adlandırılmış kanallar.
ros_gz_bridgeGazebo konularını ROS 2 konularına bağlayan köprü programı.

Kurulum ve ilk çalıştırma (Ubuntu 24.04 + ROS 2 Jazzy)

  1. ROS 2 Jazzy'yi kurun

    docs.ros.org adresindeki Jazzy kurulum rehberini izleyerek ros-jazzy-desktop paketini kurun.

  2. Gazebo köprüsünü kurun

    Aşağıdaki ilk komut, ROS 2 ile uyumlu Gazebo Harmonic sürümünü ve köprü paketlerini birlikte kurar.

  3. Örnek dünyayı açın

    gz sim diff_drive.sdf komutu iki küçük araçlı bir dünya açar. Alt soldaki turuncu Oynat düğmesine basarak fiziği başlatın.

  4. Robotu hareket ettirin

    Yeni bir terminalde mavi araca hız mesajı gönderin; araç dairesel bir yol çizmeye başlar.

terminalBash
# 1) ROS 2 Jazzy ile eşleşen Gazebo ve köprü paketleri
sudo apt install ros-jazzy-ros-gz

# 2) İki araçlı örnek dünyayı aç
gz sim diff_drive.sdf

# 3) (yeni terminal) Mavi araca ileri ve dönüş hızı gönder
gz topic -t "/model/vehicle_blue/cmd_vel" -m gz.msgs.Twist -p "linear: {x: 0.5}, angular: {z: 0.3}"

# Aracı durdurmak için
gz topic -t "/model/vehicle_blue/cmd_vel" -m gz.msgs.Twist -p "linear: {x: 0.0}, angular: {z: 0.0}"

ROS 2 düğümüyle robotu sürmek

Gerçek projelerde robotu terminal komutlarıyla değil, ROS 2 düğümleriyle (node) kontrol edersiniz. Önce köprüyü başlatın; ardından aşağıdaki Python düğümü mavi araca saniyede 10 kez hız komutu gönderir. Aynı düğüm, aynı konuyu dinleyen gerçek bir robotta da değişiklik yapmadan çalışır; simülasyonun asıl gücü budur.

terminalBash
# ROS 2 Twist mesajlarını Gazebo'ya aktaran köprü
source /opt/ros/jazzy/setup.bash
ros2 run ros_gz_bridge parameter_bridge /model/vehicle_blue/cmd_vel@geometry_msgs/msg/Twist]gz.msgs.Twist
surucu.pyPython · ROS 2
# ROS 2 düğümü: aracı 5 saniye ileri sürüp döndürür
import rclpy
from rclpy.node import Node
from geometry_msgs.msg import Twist

class Surucu(Node):
    def __init__(self):
        super().__init__("surucu")
        self.yayinci = self.create_publisher(Twist, "/model/vehicle_blue/cmd_vel", 10)
        self.sayac = 0
        self.create_timer(0.1, self.gonder)   # Saniyede 10 kez

    def gonder(self):
        mesaj = Twist()
        if self.sayac < 50:          # İlk 5 saniye: düz git
            mesaj.linear.x = 0.5
        else:                         # Sonra: yerinde dön
            mesaj.angular.z = 0.8
        self.yayinci.publish(mesaj)
        self.sayac += 1

def main():
    rclpy.init()
    rclpy.spin(Surucu())

if __name__ == "__main__":
    main()

Düğümü çalıştırmak için ROS ortamını yükledikten sonra python3 surucu.py yazmanız yeterli. Ayrı bir terminalde ros2 topic echo /model/vehicle_blue/cmd_vel ile gönderilen mesajları izleyebilirsiniz.

Uygulama görevleri

KolayDünyayı keşfet

Gazebo arayüzünden kutu, küre ve silindir ekleyin; kütle ve sürtünme değerlerini değiştirip düşme davranışını gözlemleyin.

OrtaKare çizen araç

Python düğümünü, aracın 2 metrelik bir kare çizip başladığı yere döneceği şekilde düzenleyin.

OrtaKendi dünyan

Örnek SDF dosyasını kopyalayıp duvarlardan bir labirent ekleyin.

ZorLiDAR ile engelden kaçma

Araca LiDAR sensörü ekleyip ölçümleri köprüyle ROS 2'ye aktarın; engele yaklaşınca dönen bir düğüm yazın.

Gazebo 3D grafik kartını yoğun kullanır. Sanal makinede veya zayıf dizüstü bilgisayarlarda yavaş çalışabilir. Windows kullanıcıları için en pratik yol, WSL2 üzerinde Ubuntu kurmak veya laboratuvarda Ubuntu yüklü bir bilgisayar ayırmaktır.
4

CoppeliaSimCoppelia Robotics · eski adıyla V-REP

CoppeliaSim, özellikle robot kolları ve endüstriyel otomasyon simülasyonunda güçlü olan, Windows, macOS ve Linux'ta çalışan bir robot simülatörüdür. İçinde ABB, KUKA ve UR gibi gerçek endüstriyel robotların modelleri, konveyörler, tutucular ve sensörler hazır gelir. Eğitim kurumları ve öğrenciler için CoppeliaSim Edu sürümü ücretsizdir.

Ters kinematikUç noktayı hedefe sürükleyin, eklem açılarını yazılım hesaplasın.
Çoklu fizik motoruBullet, ODE, Vortex, Newton ve MuJoCo arasında seçim.
Gömülü betiklerHer nesneye Lua veya Python betiği eklenebilir.
Uzaktan APIHarici Python programınızdan simülasyonu yönetin.
Görme sensörleriKamera görüntüsü, derinlik ve yakınlık sensörleri.
Hazır model kütüphanesiMobil robotlar, kollar, tutucular, konveyörler.

Arayüzü tanıyın

  1. Kurulum

    coppeliarobotics.com adresinden işletim sisteminize uygun Edu sürümünü indirip kurun.

  2. Model tarayıcısı

    Sol taraftaki model tarayıcısında robots › mobile klasöründen "Pioneer p3dx" modelini sahneye sürükleyin.

  3. Sahne hiyerarşisi

    Hiyerarşi panelinde robotun altında sol ve sağ motor eklemlerini (leftMotor, rightMotor) ve ultrasonik sensörleri görün.

  4. Simülasyonu başlatın

    Üst menüdeki Oynat düğmesine basın. Pioneer modeli, içinde gelen hazır betikle engellerden kaçarak dolaşmaya başlar.

Harici Python programıyla kontrol

CoppeliaSim'i kendi Python programınızdan ZeroMQ tabanlı uzaktan API ile yönetebilirsiniz. Önce istemci kütüphanesini kurun, ardından CoppeliaSim açıkken sahneye bir Pioneer p3dx ekleyin ve aşağıdaki kodu çalıştırın. Modelin içindeki hazır betik kendi hız komutlarını gönderdiği için, denemeden önce robotun alt öğesi olan betiği silmeniz veya devre dışı bırakmanız gerekir.

terminalBash
pip install coppeliasim-zmqremoteapi-client
pioneer_kontrol.pyPython
# CoppeliaSim: Pioneer p3dx robotunu Python'dan sürmek
import time
from coppeliasim_zmqremoteapi_client import RemoteAPIClient

client = RemoteAPIClient()       # CoppeliaSim açık olmalı
sim = client.require("sim")

# Motor eklemlerine erişim (sahnedeki adlarla aynı olmalı)
sol = sim.getObject("/PioneerP3DX/leftMotor")
sag = sim.getObject("/PioneerP3DX/rightMotor")

def sur(sol_hiz, sag_hiz, sure):
    sim.setJointTargetVelocity(sol, sol_hiz)   # rad/s
    sim.setJointTargetVelocity(sag, sag_hiz)
    time.sleep(sure)

sim.startSimulation()

for _ in range(4):           # Kare çiz
    sur(2.0, 2.0, 3.0)       # İleri
    sur(1.0, -1.0, 1.6)      # Yerinde dön

sur(0, 0, 0.5)               # Dur
sim.stopSimulation()
print("Simulasyon tamamlandi.")
Dönüş süresi (1,6 sn) zemine ve fizik motoruna göre değişir; tam 90 derecelik dönüşü deneyerek bulun. Bu, gerçek robotlarda da karşılaşacağınız ayar sürecinin aynısıdır. Eski sürümlerde client.require("sim") yerine client.getObject("sim") kullanılır.

Uygulama görevleri

KolayAl-bırak

Hazır bir robot kolu ve tutucu ekleyin; ters kinematik hedefini sürükleyerek bir küpü masanın bir ucundan diğerine taşıyın.

OrtaKonveyör hattı

Konveyör bandı ve yakınlık sensörü kullanarak, sensör önüne gelen kutuyu durduran bir hat kurun.

OrtaKare çizen Pioneer

Python örneğini kullanarak robotun başladığı noktaya en az hatayla dönmesini sağlayın.

ZorRenk ayıklama hücresi

Görme sensörüyle kutunun rengini algılayıp robot koluyla doğru kutuya ayıran bir fabrika hücresi tasarlayın.

5

WebotsCyberbotics · açık kaynak, başlangıca en uygun 3D simülatör

Webots, 1996'da İsviçre'deki EPFL'de araştırma aracı olarak doğan ve 2018'den beri açık kaynak olan bir robot simülatörüdür. Kurulumu kolaydır, Windows, macOS ve Linux'ta çalışır ve içinde e-puck, TurtleBot, NAO, Pioneer ve DJI Mavic gibi yüzlerce hazır robot modeli bulunur. Python ile robot programlamaya başlamak için en kolay 3D simülatörlerden biridir.

Öne çıkanlar

  • Robot kontrolcüsü Python, C, C++, Java veya MATLAB ile yazılır
  • Kendi içinde kod editörü; ayrı bir geliştirme ortamı gerekmez
  • ROS 2 desteği (webots_ros2 paketi)
  • Simülasyonu web'de paylaşma ve video kaydı

Temel yapı

  • World (.wbt): sahne dosyası
  • Scene tree: sahnedeki tüm nesnelerin ağacı
  • Controller: robotu yöneten program
  • Device: motor, sensör, kamera gibi robot parçaları

Kurulum ve ilk dünya

  1. Webots'u kurun

    cyberbotics.com adresinden kurulum dosyasını indirin. Linux'ta sudo snap install webots komutu da kullanılabilir. Python 3'ün bilgisayarınızda kurulu olduğundan emin olun.

  2. Hazır bir dünya açın

    File › Open Sample World menüsünden robots › gctronic › e-puck klasöründeki e-puck dünyasını açın.

  3. Yeni kontrolcü oluşturun

    Wizards › New Robot Controller ile Python dilinde "engelden_kac" adlı bir kontrolcü oluşturun ve aşağıdaki kodu yapıştırın.

  4. Robota atayın

    Scene tree'de e-puck'ın controller alanına tıklayıp yeni kontrolcünüzü seçin. Kaydedip Oynat düğmesine basın.

Örnek: Engelden kaçan e-puck

e-puck robotunun gövdesinin çevresinde 8 adet kızılötesi mesafe sensörü (ps0–ps7) vardır. Ön sağdaki (ps0–ps2) veya ön soldaki (ps5–ps7) sensörler bir engel algıladığında robot ters yöne döner.

engelden_kac.pyPython · Webots
# Webots: e-puck ile engelden kaçma
from controller import Robot

MAKS_HIZ = 6.28                    # e-puck motor hız sınırı (rad/s)

robot = Robot()
adim = int(robot.getBasicTimeStep())

# Mesafe sensörlerini etkinleştir
sensorler = []
for i in range(8):
    s = robot.getDevice("ps" + str(i))
    s.enable(adim)
    sensorler.append(s)

# Motorları hız kontrol moduna al
sol_motor = robot.getDevice("left wheel motor")
sag_motor = robot.getDevice("right wheel motor")
sol_motor.setPosition(float("inf"))
sag_motor.setPosition(float("inf"))

while robot.step(adim) != -1:
    d = [s.getValue() for s in sensorler]

    sagda_engel = d[0] > 80 or d[1] > 80 or d[2] > 80
    solda_engel = d[5] > 80 or d[6] > 80 or d[7] > 80

    sol_hiz = 0.5 * MAKS_HIZ
    sag_hiz = 0.5 * MAKS_HIZ

    if solda_engel:        # Sağa dön
        sol_hiz = 0.5 * MAKS_HIZ
        sag_hiz = -0.5 * MAKS_HIZ
    elif sagda_engel:      # Sola dön
        sol_hiz = -0.5 * MAKS_HIZ
        sag_hiz = 0.5 * MAKS_HIZ

    sol_motor.setVelocity(sol_hiz)
    sag_motor.setVelocity(sag_hiz)
Kod satırıNe işe yarar?
robot.getBasicTimeStep()Dünyanın simülasyon adım süresini (ms) verir. Sensörler ve döngü bu adımla senkron çalışır.
s.enable(adim)Sensörü açar. Webots'ta sensörler varsayılan olarak kapalıdır ve değer üretmez.
setPosition(float("inf"))Motoru konum kontrolünden çıkarıp sürekli dönen hız kontrol moduna alır.
robot.step(adim) != -1Simülasyonu bir adım ilerletir; simülasyon durdurulunca -1 döner ve döngü biter.
d[0] > 80e-puck sensörlerinde değer engel yaklaştıkça büyür. 80, engel var kabul edilen eşik değeridir.

Uygulama görevleri

KolayEşik deneyi

80 eşik değerini 50 ve 150 yaparak robotun duvarlara ne kadar yaklaştığını karşılaştırın.

OrtaDuvar takibi

Robotun sol duvarı sabit mesafeden takip ederek odanın çevresini dolaşmasını sağlayın.

OrtaÇizgi izleme

e-puck'ın zemin sensörleri eklentisiyle siyah bir pisti takip edin.

ZorSürü robotlar

Sahneye 5 e-puck ekleyip birbirine çarpmadan aynı alanda dolaşmalarını sağlayın.

6

Sanaldan GerçeğeSimülasyonda çalıştı, gerçekte neden çalışmadı?

Simülasyonda kusursuz çalışan bir robotun gerçek dünyada beklenmedik davranması çok yaygındır. Mühendisler buna simülasyon-gerçeklik farkı (reality gap) der. Bu farkı tanımak, simülasyonu doğru kullanmanın en önemli parçasıdır.

FarkSimülasyondaGerçekteNe yapmalı?
Sensör gürültüsüDeğerler temiz ve kararlıÖlçümler titrer, bazen hatalı gelirOrtalama alın; simülasyona yapay gürültü ekleyin.
Sürtünme ve kaymaTekerlekler idealdirZemine, lastiğe ve pile göre değişirSüre yerine enkoder veya jiroskop kullanın.
GecikmeKomut anında uygulanırHaberleşme ve motor tepkisi gecikirYavaş hızlarla başlayıp kademeli artırın.
GüçPil hiç bitmezPil azaldıkça motorlar yavaşlarTestleri dolu pille yapın, voltajı izleyin.
OrtamIşık ve zemin sabitGüneş ışığı ve zemin renkleri sensörü etkilerEşik değerlerini sahada yeniden ayarlayın.

Gerçek robota geçmeden önce kontrol listesi

  • Kod, simülasyonda farklı başlangıç konumlarında da çalışıyor mu?
  • Sensör değerleri sabit sayılar yerine eşik değişkenleriyle mi kontrol ediliyor?
  • Robotu her an durdurabileceğiniz bir "acil dur" yöntemi var mı?
  • İlk denemeyi düşük hızda ve robot tekerlekleri havadayken yaptınız mı?
  • Gerçek ölçümlerle simülasyon sonuçlarını karşılaştırmak için kayıt alıyor musunuz?
7

Sık Sorulan Sorular

Bilgisayarım zayıf, hangi simülatörü kullanabilirim?
Tinkercad tarayıcıda çalıştığı için neredeyse her bilgisayarda ve Chromebook'ta kullanılabilir. 3D simülatörler arasında Webots görece hafiftir ve basit dünyalarda entegre grafik kartıyla da çalışır. Gazebo ve büyük CoppeliaSim sahneleri daha güçlü bir grafik kartı ister.
Bu araçlar gerçekten ücretsiz mi?
Tinkercad ücretsiz bir hesapla kullanılır. Webots ve Gazebo açık kaynaklıdır ve ticari kullanım dahil ücretsizdir. CoppeliaSim'in eğitim kurumları ve öğrenciler için ücretsiz Edu sürümü vardır; ticari projelerde lisans gerekir.
Gazebo'yu Windows'ta çalıştırabilir miyim?
Gazebo'nun Windows desteği sınırlıdır ve ROS 2 ile birlikte en sorunsuz şekilde Ubuntu üzerinde çalışır. Windows kullanıcıları için en pratik yol WSL2 ile Ubuntu kurmaktır. Yalnızca 3D simülasyon öğrenmek istiyorsanız Windows'ta doğrudan çalışan Webots veya CoppeliaSim ile başlayabilirsiniz.
Tinkercad'de yazdığım kod gerçek Arduino'da çalışır mı?
Evet, standart Arduino fonksiyonlarıyla yazılmış kod genellikle değişiklik yapmadan çalışır. Kod panelindeki indirme düğmesiyle .ino dosyasını alıp Arduino IDE'den gerçek karta yükleyebilirsiniz. Yalnızca zamanlamaya çok hassas kodlarda küçük farklar görülebilir.
Eğitimde hangi sırayla ilerlemeliyim?
Ortaokulda Tinkercad ile devre ve Arduino temelleri; lisede Webots ile 3D robot programlama; üniversite ve yarışma ekiplerinde CoppeliaSim ile robot kolu ve Gazebo ile ROS 2 önerilir. Her aşamada simülasyonda çalışan bir projeyi gerçek donanıma aktarmak, öğrenmeyi kalıcı hale getirir.