ROBOTKODLA
ROBOTKODLA Genç Mucit

Eğlen, Kodla, Geleceği Tasarla

🧩 Algoritma 20 Ekim 2026

Robotik Kodlamada Algoritma Nedir? Akış Şemaları ve Örnekler

Robotik kodlamada algoritma mantığı nasıl kurulur? Akış şeması standart sembolleri, sözde kod (pseudocode) ve 3 otonom robot algoritması analizi.

Robotik Kodlamada Algoritma Nedir? Akış Şemaları ve Örnekler

Robotik kodlama dünyasında donanım parçaları ne kadar pahalı, motorlar ne kadar güçlü veya sensörler ne kadar hassas olursa olsun; sistemin kalbinde doğru kurgulanmış bir algoritma yoksa o robot yalnızca bir hurda yığınından ibarettir.

Tarihte algoritma kavramı; 9. yüzyılda cebirin kurucusu kabul edilen büyük İslam bilgini El-Hârizmî (Al-Khwarizmi) tarafından ortaya atılmış ve günümüz bilişim çağının temeli olmuştur. Robotik bağlamında algoritma; bir robotun belirli bir problemi çözmek veya hedeflenen görevi başarıyla tamamlamak için izlemesi gereken sonlu, açık, net ve adım adım sıralanmış mantıksal işlem basamaklarıdır.

Bu kapsamlı rehberde; robotik düşünce yapısını, akış şeması (flowchart) çizim kurallarını, sözde kod (pseudocode) yazımını, otonom robotların karar mekanizmalarını ve C++ kod eşleşmelerini tüm ayrıntılarıyla inceleyeceğiz.

📐 Bir Robotik Algoritmanın 5 Altın Özelliği

Bir algoritmanın robot mikrodenetleyicisine başarıyla yüklenebilmesi için şu 5 temel kriteri karşılaması gerekir:

  • Kesinlik (Definiteness): Her adım yoruma kapalı ve net olmalıdır. "Biraz ileri git" bir algoritma adımı olamaz; "Motorlara %70 güç vererek 500 milisaniye ileri git" kesin bir adımdır.
  • Girdiler (Inputs): Algoritma dış dünyadan veri almalıdır (örneğin mesafe sensöründen gelen 12 cm bilgisi).
  • Çıktılar (Outputs): Yapılan işlem fiziksel bir sonuca dönüşmelidir (LED'in yanması, motorun dönmesi, rölenin çekmesi).
  • Sonluluk (Finiteness): Belirli bir alt görev sonsuz kilitlenmeye girmeden sonuca ulaşmalıdır (Hata durumları öngörülmelidir).
  • Etkinlik ve Verimlilik (Effectiveness): İşlemciyi gereksiz yere dondurmayan, sensör gecikmelerini minimize eden sade bir mantıkla çalışmalıdır.
  • 🔣 Akış Şeması (Flowchart) Standart Sembolleri

    Algoritmalar kod yazmaya başlanmadan önce uluslararası standart şekillerle şematize edilir:

    Geometrik ŞekilStandart Sembol AdıRobotikteki Anlamı ve Kullanım Alanı
    Oval / Yuvarlak ElipsBaşla / Bitir (Terminal)Robotun enerjisinin açılması (setup) veya programın sonu
    ParalelkenarGirdi / Çıktı (I/O)Sensör verisini okuma (digitalRead) veya ekrana yazı basma
    Dikdörtgenİşlem / Eylem (Process)Matematiksel hesaplama, motorlara voltaj verme, değişken atama
    Eşkenar Dörtgen (Baklava)Karar / Şart (Decision)Eğer (If) sorgusu. İki çıkış oku vardır: EVET (Doğru) veya HAYIR (Yanlış)
    AltıgenDöngü (Loop / Preparation)Sayacın belirli sayıda dönmesi (for döngüsü)
    Ok ÇizgileriAkış Yönü (Flowlines)Talimatların hangi sırayla işleneceğini gösteren hatlar

    🤖 3 Somut Otonom Robot Algoritması ve Akış Çözümlemesi

    1. Algoritma: Engelden Kaçan Robot Karar Mantığı

    #### Problemin Tanımı:

    Robot tekerlekleriyle ileri doğru giderken önüne 20 cm'den yakın bir nesne çıkarsa çarpmamalı, güvenli bir yöne dönüp seyrine devam etmelidir.

    #### Adım Adım Metin Algoritması:

  • Adım 1: Başla ve motor/sensör pin ayarlarını yap.
  • Adım 2: İki motoru da ileri yönde tam güçle çalıştır.
  • Adım 3: Ultrasonik sensörden ön mesafeyi ($M$) oku.
  • Adım 4: Karar: $M \le 20$ cm mi?
  • HAYIR: Adım 2'ye geri dön (İlerlemeye devam et).
  • EVET: Adım 5'e geç.
  • Adım 5: Motorları derhal durdur (dur()).
  • Adım 6: 200 ms geri git (Engelle arayı aç).
  • Adım 7: Sol motoru geri, sağ motoru ileri çalıştırarak 400 ms sağa dön.
  • Adım 8: Adım 3'e dön ve mesafeyi tekrar kontrol et.
  • #### Arduino C++ Kod Karşılığı:

    void loop() {
      int mesafe = mesafeOku();
      
      if (mesafe <= 20 && mesafe > 0) {
        motorDurdur();
        delay(100);
        motorGeri(180);
        delay(200);
        motorSagaDon(200);
        delay(400);
      } else {
        motorIleri(200);
      }
    }

    2. Algoritma: 2 Sensörlü Çizgi İzleyen Robot Mantığı

    #### Doğruluk Tablosu (Truth Table):

    Robotun altındaki iki kızılötesi sensör: Sol Sensör (S) ve Sağ Sensör (R).

    (Beyaz zemin = 0, Siyah çizgi = 1)

    Sol Sensör (S)Sağ Sensör (R)Durum AnaliziRobotun Yapacağı Eylem
    0 (Beyaz)0 (Beyaz)Çizgi tam iki sensörün ortasındaDüz İleri Git
    1 (Siyah)0 (Beyaz)Robot sağa kaymış, çizgi solda kalmışSola Dön (Düzeltme Yap)
    0 (Beyaz)1 (Siyah)Robot sola kaymış, çizgi sağda kalmışSağa Dön (Düzeltme Yap)
    1 (Siyah)1 (Siyah)Bitiş çizgisi veya yatay kavşakMotorları Durdur (Görev Tamamlandı)

    3. Algoritma: Akıllı Yangın Söndürme Robotu

    #### Sözde Kod (Pseudocode):

    BAŞLA
      AlevSensörPin = Giriş
      SuMotoru = Çıkış
      DÖNGÜ:
        Alev = AlevSensörüOku()
        EĞER (Alev == VAR) İSE:
          RobotuDurdur()
          SuPompasiniBaslat()
          BEKLE 3 Saniye
          SuPompasiniDurdur()
        DEĞİLSE:
          OdayiDevriyeGez()
        DÖNGÜYÜ_TEKRARLA
    BİTİR

    ⚡ Algoritmadan Koda Geçiş: Sözde Kod (Pseudocode) Nedir?

    Bir problemi çözerken doğrudan C++ veya Python sözdizimiyle yazmaya başlamak sık sık mantık hatalarına yol açar. Profesyonel mühendisler önce problemi Sözde Kod (Pseudocode) ile kağıda döker. Sözde kod; ne tam günlük dildir ne de tam programlama dilidir. İkisinin arasında, herhangi bir programlama diline 10 dakikada çevrilebilecek yarı yapılandırılmış bir taslaktır.

    Örnek Sözde Kod Kalıpları:

  • EĞER (koşul) İSE ... DEĞİLSE ... -> if (...) { ... } else { ... }
  • SÜREKLİ TEKRARLA ... -> while (true) { ... }
  • SAYAC = 1'DEN 10'A KADAR ... -> for (int i=1; i<=10; i++) { ... }
  • ⚠️ Robotik Algoritmalarda En Sık Yapılan 4 Hata

  • Sonsuz Kilitlenme (Infinite Blocking Loop):delay(5000) gibi uzun bekletmeler işlemciyi kör eder. Robot 5 saniye boyunca beklerken sensörleri okuyamaz ve bir duvara veya uçuruma doğru son sürat ilerleyebilir. Profesyonel algoritmalar millis() zamanlayıcısıyla yazılır.
  • Giriş Parazitleri (Floating Pin / Bounce): Buton ve sensör sinyallerinde pull-up/pull-down direnci veya yazılımsal filtreleme (debouncing) yapılmazsa algoritma saniyede 100 kez hatalı karar üretebilir.
  • Eşik Değerinin Aşırı Dar Olması:Mesafe == 15 cm gibi katı eşitlikler robotik dünyasında neredeyse hiç tutmaz. Sensör gürültüsü yüzünden değer 15.2 cm gelebilir. Her zaman Mesafe <= 15 gibi aralıklı mantıklar kurulmalıdır.
  • Histeresis (Aralık Payı) Bırakmamak: Akıllı termostatta hedef 25 derece ise, 24.9'da açıp 25.1'de kapatmak motoru veya röleyi saniyede defalarca açıp kapatarak yakar. 23 derecede açıp 26 derecede kapatacak histeresis toleransı verilmelidir.
  • ❓ Sıkça Sorulan Sorular (SSS)

    Kod yazmaya başlamadan önce mutlaka akış şeması çizmek gerekir mi?

    Küçük deneylerde (LED yakma vb.) şart değildir. Ancak hareketli bir robot, çoklu sensör veya yarışma aracı tasarlarken kağıt üzerinde akış şeması çizmek; mantık hatalarını kod yazmadan önce görmenizi sağlar ve günlerce sürecek hata ayıklama zamanından tasarruf ettirir.

    Algoritma ile Kod arasındaki fark nedir?

    Algoritma; bir problemin dilden bağımsız mantıksal çözüm fikridir (Örn: "Hava karanlıksa lambayı yak"). Kod ise bu fikrin C++, Python veya Java gibi belirli bir programlama dilinin sözdizimi kurallarıyla bilgisayara yazılmış halidir.

    Algoritmik düşünme becerisi nasıl geliştirilir?

    Satranç oynamak, Rubik küp çözmek, labirent bulmacaları çözmek ve Scratch üzerinde adım adım küçük oyunlar geliştirmek algoritmik düşünme reflekslerini inanılmaz derecede hızlandırır.

    Doğrulanmış Rehber İçeriği Son Revizyon: Ekim 2026

    RobotKodla STEM & Teknoloji Editör Heyeti

    Bu rehber; bilişim eğitimcileri ve gömülü sistem mühendisleri tarafından pedagojik doğruluk, güncel teknoloji standartları ve tarafsızlık ilkelerine uygun şekilde kaleme alınmıştır.

    Pedagojik Rehber
    Tarafsız Kıyaslama
    Uzman Onaylı
    Herkese Açık Kaynak
    💡

    Robotik Kodlamada Algoritma Nedir? Akış Şemaları ve Örnekler Hakkında Merak Edilenler

    Bu konuyla ilgili öğrencilerin ve velilerin en çok sorduğu soruların yanıtları

    Bu rehber yazıda anlatılan yöntemleri uygulamak için neler gereklidir?▼
    İçerikte belirtilen açık kaynaklı yazılım araçlarını ve temel donanım bileşenlerini temin etmeniz yeterlidir. Tüm adımlar pratik uygulamalarla desteklenmiştir.
    Bu uygulamada devre bağlantısı yaparken en çok yapılan hata nedir?▼
    Ortak toprak (GND) hattının bağlanmaması, LED ve sensör bacaklarının ters kutupla takılması ya da pin numaralarının koddaki dijital/analog tanımlarla uyuşmaması en sık karşılaşılan durumlardır. Şemadaki pin numaralarını iki kez kontrol etmek sorunu çözer.
    Robotik Kodlamada Algoritma Nedir? Akış Şemaları ve Örnekler çalışmasını tamamladıktan sonra nasıl daha ileri bir seviyeye taşıyabilirim?▼
    Bu çalışmaya ek sensörler (kablosuz Bluetooth/Wi-Fi modülü, OLED ekran veya sesli buzzer uyarısı) entegre edebilir; verileri internet ortamına aktararak Nesnelerin İnterneti (IoT) tabanlı akıllı bir sisteme dönüştürebilirsiniz.