14. hafta / 14
Proje sunumları
Araçlar: Webots, proje deponuz
Bu haftanın sonunda
- Dönem projesinin problemini, mimarisini ve sonuçlarını sunmak
- Kanıt göstermek: testler, kayıtlar, grafikler ve canlı ya da kaydedilmiş bir simülasyon çalıştırması
- Tasarım kararları ve ödünleşimleri hakkındaki soruları cevaplamak
Ders notları
Her takım 10 dakika sunum yapar, ardından 5 dakika soruları cevaplar.
Sunumun yapısı
- Problem: robot ne yapmalı ve başarı nasıl ölçülüyor (öneri belgesindeki kabul ölçütleri).
- Mimari: durum makinesi ya da ROS 2 grafiği, hangi düğüm ya da modül ne yapıyor ve gerçek bir yapımda her Hyvex bileşeni nerede durur.
- Yaklaşım: algılama, planlama ve denetim yöntemleri ve neden alternatiflerine tercih edildikleri.
- Kanıt: Webots çalıştırması (canlı ya da kayıt), grafikler (zamana göre hata, doğruluk, karışıklık matrisi) ve CI test sonuçları.
- Sonraki adımlar: bugün neyin başarısız olduğu ve iki hafta daha olsa ne yapacağınız.
Dönem projesinin notlandırılması (ders notunun %15'i)
| Bölüm | Ağırlık |
|---|---|
| Öneri ve gereksinimler (8. hafta) | %15 |
| Ara kontrol (11. hafta) | %15 |
| Simülasyonda çalışan sistem | %30 |
| Yazılım kalitesi: mimari, testler, CI, depo geçmişi | %20 |
| Rapor ve sunum | %20 |
Derinlemesine
Aşağıdaki örnekler otonom araç parkuru için yazılmıştır (Webots: şerit takibi, dur levhası algılama ve engellerde durma). Sayıları kendi parkurunuza uyarlayın.
Demo kontrol listesi
- Sürümü etiketleyin (
v1.0). Demo temiz bir klondan tek bir komutla başlar ve bir gün önce ikinci bir dizüstü bilgisayarda denenmiştir. - Webots sürümünü, dünya dosyasını ve tüm rastgele tohumları depoda sabitleyin.
- Canlı çalışma başarısız olursa diye eksiksiz ve başarılı bir çalışmanın yedek videosunu kaydedin.
- Etiketli commit'te CI yeşildir; yalnızca rozeti değil, test raporunu gösterin.
- Kanıt grafiklerini hazırlayın: zamana göre yanal kayma, levha dedektörünün karışıklık matrisi ve kontrol döngüsü periyodunun histogramı.
- Bir slayt, "olmalı" önceliğindeki her gereksinimi testine ve ölçülen sonuca eşler.
- Her takım üyesi bir modülü ve bir tasarım ödünleşimini (trade-off) açıklayabilir; sunumu kronometreyle 10 dakikaya göre prova edin.
Gereksinimler ve kabul kriterleri
| ID | Gereksinim | Kabul kriteri | Doğrulama |
|---|---|---|---|
| R1 | Şerit takibi | 3 tur boyunca, 10 Hz'de kaydedilen örneklerin en az %95'inde |yanal kayma| ≤ 0,30 m; şeritten asla çıkmaz | kayıtlar üzerinde test |
| R2 | Dur levhası | 10 denemenin 9'unda dur çizgisinin 0 ile 0,5 m önünde durur ve 3 ± 0,2 s bekler | test |
| R3 | Engel | En fazla 1,5 m/s ile yaklaşırken sabit bir engelden en az 0,4 m uzakta durur | test |
| R4 | Gecikme | Kamera karesinden direksiyon komutuna, 95. yüzdelikte ≤ 100 ms | zaman damgalarının analizi |
| R5 | Yazılım kalitesi | Algılama ve kontrol modüllerinin satır kapsamı ≥ %70 olan birim testleri var; CI geçer | inceleme |
Risk kaydı
Puan = olasılık (0 ile 1 arası) × etki (1 ile 5 arası). Kaydı her hafta gözden geçirin ve önce en yüksek puanlı risk üzerinde çalışın.
| ID | Risk | O | E | Puan | Azaltma |
|---|---|---|---|---|---|
| K1 | Algılama ve kontrol ancak 13. haftada birleştirilir | 0,6 | 4 | 2,4 | Mesaj arayüzünü 10. haftada dondurun; her hafta bir entegrasyon dalında birleştirin |
| K2 | Levha dedektörü karanlık sahnelerde levhaları kaçırır | 0,4 | 5 | 2,0 | Parlaklık artırımı (augmentation); test kümesinde alacakaranlık görüntüleri; renk ve şekil yedeği |
| K3 | Simülasyon demo bilgisayarında çok yavaş çalışır | 0,5 | 3 | 1,5 | Kamera çözünürlüğünü düşürün; gerçek zaman katsayısını erken ölçün; yedek video |
| K4 | Bir dünyada ayarlanan kazançlar başka bir dünyada başarısız olur | 0,3 | 4 | 1,2 | Kabul testlerini iki farklı dünyada çalıştırın |
| K5 | Bir takım üyesi ulaşılamaz hâle gelir | 0,2 | 3 | 0,6 | Her modülde eşli çalışın; modül başına bir README tutun |
Simülasyonlar
Renk ve şerit ayırma
Yapay bir kamera görüntüsü HSV'ye çevrilir ve eşiklenerek maskeye dönüşür. Maskenin ağırlık merkezi (ya da şerit merkezi) bir direksiyon hatasına dönüşür. Aralıkları ayarla, ışığı değiştir, topu sürükle, sonra döngüyü P denetleyiciyle kapat.
Quadrotor uçuş denetimi (2B)
Kaskad denetleyicili düzlemsel quadrotor: dışta konum PID, içte yönelim PD. Hedef koymak için gökyüzüne tıkla, ya da görev kipine geçip ara noktaları yerleştir ve görevi başlat.
Sık yapılan hatalar
- Demoyu, teslim edilen depodan farklı olan ve commit edilmemiş yerel bir daldan çalıştırmak.
- Canlı simülasyon çöktüğünde veya çok yavaş çalıştığında yedek videonun olmaması.
- Sunumu kanıt (grafikler, test sonuçları ve çalışma) göstermek yerine kodda gezinerek geçirmek.
- Simülatör sürümünü, dünya dosyasını ve rastgele tohumları sabitlememek; robot provadakinden farklı davranır.
- Bir gereksinimin karşılandığını onu gösteren veri olmadan iddia etmek.
- Sunum hiç kronometreyle prova edilmediği için 10 dakikayı aşmak.
Yazılım mühendisliği bağlantısı
Demo, projenin kabul testidir: müşteri (öğretim üyesi) sistemi 8. haftada üzerinde anlaşılan kriterlere göre denetler. Profesyonel bir ekibin sürüm zamanında yaptığı her şey burada da geçerlidir.
- Sürüm mühendisliği: etiketli, yeniden üretilebilir bir derleme, bir değişiklik günlüğü (changelog) ve bir yabancının demoyu çalıştırabileceği bir README.
- İzlenebilirlik (traceability): her gereksinimi testlerine ve ölçülen sonuçlara bağlayan bir matris; böylece "bitti" bir görüş değil, bir olgu olur.
- Retrospektif: ne iyi gitti, ne gitmedi ve hangi pratiği sürdürürdünüz. Bunu yazıya döken ekipler bir sonraki projede ölçülebilir biçimde gelişir.
Dönem projesi uygulaması: demodan önce v1.0 etiketini oluşturun; her gereksinim için bir satır (ID, test adı, sonuç, grafiğin bağlantısı) içeren docs/traceability.md dosyasını ve yarım sayfalık bir retrospektifi ekleyin; etiketli commit'in CI çalışmasının yeşil olduğundan emin olun.
Kendini sına
Aşağıdakilerden hangisi araç parkuru için test edilebilir bir kabul kriteridir?
A riskinde O = 0,4 ve etki 5, B'de O = 0,8 ve etki 2, C'de O = 0,6 ve etki 4. En yüksek puandan başlayarak hangi sırayla ele alınmalıdır?
Robot demoda dünkü provadan farklı davranıyor. Bunu büyük olasılıkla ne önlerdi?
Her gereksinimin doğrulandığını hangi belge gösterir?
Bu hafta dönem projesinde
- Otonom kara aracı: Sunum ve rapor. 10 dakikalık sunum, canlı ya da kayıtlı simülasyon, kabul ölçütlerinin her biri için kanıt (grafik, kayıt, test), final raporu ve depo.
- Otonom drone görevi: Sunum ve rapor. 10 dakikalık sunum, canlı ya da kayıtlı simülasyon, kabul ölçütlerinin her biri için kanıt (grafik, kayıt, test), final raporu ve depo.
- Görsel kılavuzlu robot kol: Sunum ve rapor. 10 dakikalık sunum, canlı ya da kayıtlı simülasyon, kabul ölçütlerinin her biri için kanıt (grafik, kayıt, test), final raporu ve depo.
Ödev
Final raporunu ve depo bağlantısını sunumundan önce teslim et.