Bir cümlelik özet
Kodlama, bir sisteme ne yapacağını açık adımlarla anlatmamızı; robotik ise bu komutları sensörler, elektronik parçalar ve hareket mekanizmalarıyla fiziksel dünyada uygulamamızı sağlar.
Bu derste neler öğreneceksin?
Bu dersi tamamladığında:
- Kodlama ile robotik arasındaki ilişkiyi açıklayabilecek,
- Bir robotun temel parçalarını tanıyabilecek,
- Sensör, kontrol birimi ve aktüatör kavramlarını ayırt edebilecek,
- Her otomatik makinenin robot olmadığını anlayabilecek,
- Basit bir robotik sistemin algılama–karar–hareket döngüsünü kurabileceksin.
Neden önemli?
Bir robot gördüğümüzde çoğu zaman ilk dikkatimizi çeken şey onun hareketidir. Oysa hareket, sistemin yalnızca görünen son bölümüdür. Robot önce çevresinden bilgi toplar, sonra bu bilgiyi değerlendirir ve en sonunda bir tepki üretir. Kodlama bu karar mantığını kurar; elektronik parçalar bilgiyi taşır; mekanik sistem ise hareketi gerçekleştirir.
Robotik ve kodlamayı birlikte öğrenmek, yalnızca bir cihaz yapmayı öğretmez. Bir problemi açık biçimde tanımlamayı, çözümü küçük parçalara ayırmayı, denemeyi, ölçmeyi ve hataları düzeltmeyi de öğretir.
Kodlama nedir?
Kodlama, bir bilgisayara, telefona, oyun karakterine veya kontrol kartına hangi adımları uygulaması gerektiğini belirli bir programlama diliyle anlatma işidir.
Örneğin bir oyunda karakterin sağ ok tuşuna basıldığında ilerlemesini istediğimizi düşünelim. İnsan olarak “sağa gitsin” dememiz yeterli görünebilir. Bilgisayar içinse daha açık bir mantık gerekir:
Eğer sağ ok tuşuna basılırsa
karakterin x konumunu 10 artır
Bu kısa örnekte üç önemli fikir vardır:
- Bir olay gerçekleşir: Sağ ok tuşuna basılır.
- Sistem bir koşulu kontrol eder.
- Karakterin konumu değiştirilir.
Kodlama dilleri farklı görünse de temel düşünce aynıdır: Girdiyi al, kurala göre işle ve bir çıktı üret.
Robotik nedir?
Robotik; yazılım, elektronik ve mekanik sistemlerin birlikte çalışarak çevresini algılayan, karar veren ve bir görev gerçekleştiren makineler üretmesini konu alan alandır.
Bir robotik sistemde genellikle şu üç aşama bulunur:
1. Algılama
Sistem çevresinden bilgi toplar. Bunu sensörlerle yapar.
Örnekler:
- Mesafe sensörü önündeki engeli ölçer.
- Işık sensörü ortamın aydınlık olup olmadığını algılar.
- Sıcaklık sensörü ortam sıcaklığını ölçer.
- Düğme, kullanıcının bir komut verdiğini bildirir.
2. Karar
Kontrol birimi sensörden gelen bilgiyi koddaki kurallara göre değerlendirir.
Eğer mesafe 15 santimetreden küçükse
dur
sağa dön
Değilse
ileri git
Arduino, micro:bit veya benzeri bir mikrodenetleyici bu karar bölümünü yürütebilir.
3. Hareket veya çıktı
Sistem kararın sonucunu fiziksel dünyaya aktarır.
- Motor döner.
- Servo belirli bir açıya gider.
- LED yanar.
- Buzzer ses çıkarır.
- Ekranda uyarı görünür.
Bu üç aşamayı kısa biçimde şöyle gösterebiliriz:
ALGILA → KARAR VER → HAREKET ET
Bir robotun temel parçaları
Kontrol birimi
Robotun karar merkezidir. Sensörlerden bilgi alır, programı çalıştırır ve çıkışları kontrol eder. Arduino ve micro:bit bu amaçla kullanılan kartlara örnektir.
Sensörler
Robotun çevresini anlamasını sağlar. Sensör olmadan robot, dış dünyadaki değişiklikleri fark edemez.
Aktüatörler
Elektrik enerjisini harekete, sese veya başka bir fiziksel çıktıya dönüştüren parçalardır. Motor, servo, buzzer ve bazı ışık sistemleri aktüatör örneğidir.
Güç kaynağı
Sistemin çalışması için gerekli enerjiyi sağlar. Pil veya uygun bir düşük gerilim adaptörü kullanılabilir. Güç kaynağının gerilim ve akım değerleri, kullanılan karta ve bileşenlere uygun olmalıdır.
Mekanik yapı
Şasi, tekerlek, bağlantı parçaları, dişliler ve taşıyıcı gövde robotun fiziksel yapısını oluşturur.
Yazılım
Robotun hangi durumda ne yapacağını belirleyen komutlar bütünüdür.
Her otomatik makine robot mudur?
Hayır. Bir cihazın otomatik çalışması onu her zaman robot yapmaz.
Örneğin yalnızca belirli bir sürede açılıp kapanan basit bir lamba otomatik olabilir. Fakat çevresinden bilgi toplamıyorsa ve bu bilgiye göre davranışını değiştirmiyorsa robotik sistem sayılması tartışmalıdır.
Bir robotik sistemde genellikle şunların bir kısmı veya tamamı bulunur:
- Çevreyi algılama,
- Veriyi değerlendirme,
- Karar verme,
- Fiziksel çıktı üretme,
- Değişen koşullara uyum sağlama.
Günlük hayattan robotik sistem örnekleri
Robot süpürge
- Mesafe ve çarpışma sensörleriyle çevreyi algılar.
- Harita veya hareket kurallarına göre yön seçer.
- Motorları çalıştırarak hareket eder.
- Bazı modeller şarj azaldığında istasyona döner.
Otomatik kapı
- Hareket sensörü yaklaşan kişiyi algılar.
- Kontrol sistemi kapının açılması gerektiğine karar verir.
- Motor kapıyı hareket ettirir.
Akıllı sulama sistemi
- Toprak nem sensörü ölçüm yapar.
- Nem belirlenen sınırın altındaysa sistem sulama kararı verir.
- Pompa çalışır ve su akışı başlar.
Çizgi izleyen robot
- Altındaki ışık sensörleri koyu ve açık yüzey farkını algılar.
- Kontrol kartı sağ ve sol motorların hızını ayarlar.
- Robot çizgi üzerinde kalacak biçimde yönünü düzeltir.
Kodlama ve robotik arasındaki fark
Kodlama tek başına ekranda çalışan bir oyun, hesaplama aracı veya web sayfası oluşturabilir. Robotik ise kodu fiziksel bileşenlerle birleştirir.
| Kodlama | Robotik |
|---|---|
| Yazılım ağırlıklıdır | Yazılım + elektronik + mekanik içerir |
| Çıktı ekranda olabilir | Fiziksel hareket veya ölçüm olabilir |
| Bilgisayar yeterli olabilir | Kart, sensör, motor ve güç gerekebilir |
| Hatalar çoğunlukla kod içindedir | Hata kodda, bağlantıda, güçte veya mekanikte olabilir |
Bu iki alan birbirinden ayrı değildir. İyi bir robotik proje için açık algoritma ve doğru kod gerekir.
Mini uygulama: Akıllı gece lambası tasarla
Amaç: Ortam karardığında LED’in yanması, aydınlandığında kapanması.
Gerekli düşünce parçaları
- Girdi: Işık sensörünün ölçümü
- Karar: Ortam karanlık mı?
- Çıktı: LED açık veya kapalı
Sözde kod
Başla
Işık seviyesini ölç
Eğer ışık seviyesi 30'dan küçükse
LED'i aç
Değilse
LED'i kapat
Ölçümü tekrar et
Düşünme soruları
- 30 değeri her ortam için uygun mudur?
- Sensör sürekli değişen değer verirse LED titreyebilir mi?
- Sistemi yalnız gece değil, insan odaya girdiğinde çalıştırmak için hangi sensörü ekleyebilirsin?
Bu sorular robotikte test ve kalibrasyonun neden önemli olduğunu gösterir.
Sık yapılan yanlışlar
Robotu yalnız hareket eden makine sanmak
Bir sistem hareket etmese bile çevreyi algılayıp karar veriyor ve bir çıktı üretiyorsa robotik bir sistem olabilir.
Koda başlamadan problemi tanımlamamak
“Bir robot yapacağım” çok geniş bir hedeftir. “Önündeki engele 15 santimetre kala duracak bir araç yapacağım” daha açık ve test edilebilir bir problemdir.
Güç kaynağını önemsememek
Yanlış gerilim karta veya bileşene zarar verebilir. Motorlar bazen kontrol kartının sağlayabileceğinden daha fazla akım çeker. Bu nedenle motor sürücü ve uygun güç planı gerekebilir.
Her hatayı kodda aramak
Robotik sistemlerde sorun yalnız koddan kaynaklanmaz. Kablo gevşek, sensör ters bağlı, pil zayıf veya tekerlek sıkışmış olabilir.
Güvenlik notu
Bu akademideki fiziksel uygulamalar yalnız güvenli düşük gerilimle yapılmalıdır. Şebeke elektriğine, prizlere veya açık elektrik tesisatına müdahale edilmez. Pil, motor, lehim, kesici araç veya sıcak yüzey kullanılan çalışmalarda yetişkin gözetimi gerekir.
Kontrol soruları
- Robotik bir sistemde sensör, kontrol ve aktüatör hangi görevleri üstlenir?
- Kodlama ile robotik arasındaki ilişkiyi tek bir örnek üzerinden nasıl açıklarsın?
- Bir robot projesine başlamadan önce problemi neden açıkça tanımlamak gerekir?
- Düşük gerilimli eğitim devrelerinde bile hangi güvenlik alışkanlıkları korunmalıdır?
- İlk prototip çalışmadığında hangi üç kanıtı kaydetmek sonraki denemeyi kolaylaştırır?
- Bir projenin Doruk tarafından tamamlanmış sayılması için hangi gerçek kanıtlar bulunmalıdır?
Cevaplar
- Sensör çevreyi ölçer, kontrol birimi veriyi kurallara göre değerlendirir, aktüatör ise hareket, ışık veya ses gibi fiziksel bir çıktı üretir.
- Örneğin mesafe sensörü engeli ölçer; kod mesafe eşikten küçükse durma kararını verir; motor sürücüsü tekerlekleri durdurur.
- Açık problem tanımı, gereksiz özellikleri ayırır ve başarı ölçütünün test edilebilir olmasını sağlar.
- Güç kapalıyken bağlantı yapmak, kısa devreyi kontrol etmek, uygun direnç kullanmak ve yetişkin gözetimi gerektiren işlere tek başına girişmemek gerekir.
- Beklenen sonuç, gerçekleşen sonuç ve değiştirilmeden önceki bağlantı ya da kod sürümü kaydedilmelidir.
- Çalışan kod veya devre, test sonuçları, tarihli proje notları ve yayımlanması onaylanmış fotoğraf ya da video gibi doğrulanabilir kanıtlar gerekir.
Ders özeti
- Kodlama, bir sisteme ne yapacağını açık komutlarla anlatır.
- Robotik; yazılım, elektronik ve mekaniği bir araya getirir.
- Bir robotik sistem genellikle algılar, karar verir ve çıktı üretir.
- Sensörler bilgi toplar; kontrol birimi karar verir; aktüatörler sonucu uygular.
- Başarılı bir proje için problem tanımı, güvenlik, test ve hata ayıklama birlikte düşünülmelidir.
Kontrol testi
- Kodlama ne işe yarar?
- Sensörün görevi nedir?
- Servo motor sensör mü, aktüatör mü?
- Bir robotun “algıla–karar ver–hareket et” döngüsünü örnekle açıkla.
- Her otomatik cihaz neden robot sayılmaz?
- Robotik bir sistemde hata hangi dört farklı alandan kaynaklanabilir?
- Akıllı gece lambasında girdi, karar ve çıktı nedir?
Cevaplar
- Bir bilgisayar veya kontrol sistemine uygulanacak adımları ve karar kurallarını anlatır.
- Çevreden veya sistemden veri toplar.
- Aktüatördür; verilen komuta göre fiziksel konum üretir.
- Örneğin mesafe sensörü engeli ölçer, kart mesafe küçükse durmaya karar verir, motorlar durur.
- Çünkü yalnız zamanlayıcıyla çalışan bir cihaz çevresini algılamayabilir veya koşullara göre karar vermeyebilir.
- Kod, elektronik bağlantı, güç kaynağı ve mekanik yapı.
- Girdi ışık ölçümü, karar ortamın karanlık olup olmadığı, çıktı LED’in açılması veya kapanmasıdır.
Kaynak ve doğrulama notu
“Robotik ve Kodlama Nedir?” dersi için doğrulama odağı Bu derste neler öğreneceksin? ile Robotik nedir? arasındaki ilişkinin örnekler üzerinde tutarlı çalışmasıdır. Bu dersteki algoritmalar, örnek girdiler elle izlenerek ve beklenen çıktılarla karşılaştırılarak doğrulanmıştır. Sözde kod, belirli bir programlama diline bağlı kalmadan düşünme sırasını görünür kılmak için kullanılır.
Sonraki ders
Algoritma Nedir? — Bir robotun veya bilgisayarın uygulayabileceği açık adımları nasıl kurduğumuzu öğren.
Uygulama laboratuvarı: Robotik ve Kodlama Nedir?
Robotik ve Kodlama Nedir? konusunu kalıcı hâle getirmenin en iyi yolu, kavramı küçük ve ölçülebilir bir göreve dönüştürmektir. Bu çalışmada Bu derste neler öğreneceksin? ile Robotik nedir? arasındaki ilişkiyi kullanarak açık bir algoritma, sözde kod ve test tablosu hazırlayacaksın. Amaç yalnız sonucun çalışması değil; hangi kararı neden verdiğini, neyi test ettiğini ve hangi durumda tasarımı değiştireceğini açıklayabilmektir.
Görev senaryosu
Şu senaryoyu ele al: spor antrenmanındaki tekrarları sayan bir karar akışı. Dersin ana hedefi “Kodlama bir sisteme ne yapacağını açık adımlarla anlatır; robotik bu komutları sensör, elektronik ve hareketle fiziksel dünyada uygular” olduğuna göre önce problemi tek cümleyle tanımla. Ardından sistemin alacağı girdiyi, uygulayacağı işlemi ve üreteceği çıktıyı ayrı ayrı yaz. Bilmediğin bir ayrıntı varsa onu varsayım olarak işaretle; varsayımı gerçek bilgi gibi kullanma.
- Planla: Başlangıç durumunu, beklenen sonucu ve kullanacağın kavramları yaz.
- En küçük sürümü kur: Yalnız temel davranışı çalıştır; süsleme ve ek özellikleri sonraya bırak.
- Üç test hazırla: Normal bir durum, sınırda bir durum ve hatalı ya da beklenmeyen bir durum seç.
- Sonucu kaydet: Beklenen ile gerçekleşeni yan yana yaz; fark varsa olası nedeni belirt.
- Tek değişiklik yap: Aynı anda birçok şeyi değiştirmek yerine bir kararı düzeltip testi yeniden çalıştır.
Başarı ölçütleri
- Adımlar açık ve tek anlamlı mı?
- Başlangıç ve bitiş koşulu belli mi?
- Normal, sınır ve hatalı durumlar denendi mi?
- Gereksiz tekrar veya adım var mı?
- Başka biri algoritmayı aynı sonuçla uygulayabiliyor mu?
“Robotik ve Kodlama Nedir?” çalışmasını bitirdiğinde ürünü bir arkadaşına yalnız bölüm başlıklarıyla anlat. Arkadaşın spor antrenmanındaki tekrarları sayan bir karar akışı senaryosundaki adımları ve karar nedenlerini takip edebiliyorsa anlatım yeterince açıktır. Anlaşılmayan noktayı daha fazla terim ekleyerek değil, Bu derste neler öğreneceksin? ve Robotik nedir? ilişkisini daha küçük adımlara bölerek düzelt.