MODÜL 03 DERS 4 / 5 · 60 DK

Test: Dört Tekeri Tek Tek Doğrula

Mecanumda "yükle ve sür" yürümez. Dört motordan biri bile ters dönerse robot tuhaf davranır, ve sebebini sürerek bulamazsın. Bu derste bir protokol öğreneceksin: her tekeri havadayken tek tek doğrularsın, desenler tutana kadar robot yere inmez. Bittiğinde robotun ilk kez üç yönde birden kayarak sürülecek.

Kanca: aynı kod, farklı robot (10 dk)

🎬 VİDEO · kanca · 45 sn · aynı mecanum kodu iki robota yüklenir; biri düz ileri gider, diğeri kendi etrafında döner. "Kod aynı. Peki fark nereden?" sorusuyla biter

Videodaki iki robota tıpatıp aynı kod yüklendi. Biri düzgün ileri gitti, diğeri olduğu yerde döndü. Kod aynıysa hata kodda olamaz, değil mi? İşte mecanumun kilit fikri burada: bir mecanum robotta iki ayrı yer bozulabilir. Kod (bir motorun hangi yöne döndüğü) bozulabilir, ya da mekanik (tekerlerin köşelere nasıl yerleştiği) bozulabilir. İkisi de aynı belirtiyi verir: robot yanlış gider.

Sınıfça konuş: senin robotun ileri komutunda düz gitmezse, bunun bir kod hatası mı yoksa bir montaj hatası mı olduğunu nasıl anlarsın? Şu an cevabın yoksa sorun değil, bu dersin tamamı o cevabı veriyor.

Bu yüzden robotu hemen yere koyup sürmeyeceğiz. Önce askıya alıp dört tekeri tek tek sorgulayacağız. Bir robotu havada test etmek, onu yere koyup tahmin etmekten her zaman daha hızlı sonuç verir.

Askıda desen testi: tahmin et, dene, gözle (20 dk)

Robotu yükseltiye al: dört teker de havada dönebilmeli, kablolar toplu olsun. Pili tak, telefondan robotun ağına bağlan, Driver Station'da Init ve sonra Start.

Testin tamamı üç deseni robotunla karşılaştırmaktan ibaret. Aşağıdaki tabloyu yazdır ya da yanında açık tut. FL = ön sol, FR = ön sağ, BL = arka sol, BR = arka sağ köşe.

KomutFLFRBLBR
İleri (sol çubuk yukarı)ileriileriileriileri
Yan kay (sol çubuk sağa)ilerigerigeriileri
Dön (sağ çubuk sağa)ilerigeriilerigeri

Her testte önce tahmin et, sonra dene, sonra gözle. Sırayı bozma, çünkü sıra teşhisin kendisidir.

1. İleri testi. Sol çubuğu hafifçe ileri it. Beklenen: dört teker de robotu ileri götürecek yönde döner. Her köşeye tek tek bak. Ters döneni not et; köşe etiketleri sayesinde hangi motor olduğunu biliyorsun. Ters dönen bir motoru düzeltmek için o motorun iki sinyal pinini kodda yer değiştirirsin (aşağıda nasıl olduğu var). Değiştir, yeniden yükle, tekrar bak. Dört teker de doğru olana kadar bu adımdan çıkma.

2. Yan kayma testi. Sol çubuğu sağa yatır. Beklenen desen tabloda: FL ileri, FR geri, BL geri, BR ileri. Şimdi dikkatli ol: ileri testini geçtin ama bu desen tutmuyorsa, sorun kodda değil. Tekerlerin köşelere yerleşiminde. Ders 1'deki X desenini yeniden kontrol et; büyük ihtimalle iki teker yer değiştirecek.

3. Dönüş testi. Sağ çubuğu sağa yatır. Beklenen: sol taraftaki iki teker (FL, BL) ileri, sağdaki iki teker (FR, BR) geri döner. Robot havada kendi ekseninde dönüyormuş gibi görünmeli.

4. Stop kontrolü. Tekerler dönerken Stop'a bas. Dördü de anında durmalı. Durmuyorsa robotu yere indirme.

Bir motorun pin çiftini kodda yer değiştirmek şöyle görünür. Yazılım dersinden gelen kodda her köşenin iki sinyal pini var:

const int FL_RPWM = 10, FL_LPWM = 11;   // on sol motorun iki sinyal pini
const int FR_RPWM = 12, FR_LPWM = 13;   // on sag motorun iki sinyal pini
const int BL_RPWM = 14, BL_LPWM = 15;   // arka sol motorun iki sinyal pini
const int BR_RPWM = 16, BR_LPWM = 17;   // arka sag motorun iki sinyal pini

Diyelim ön sol teker ileri komutunda geri dönüyor. O motorun iki pin değerini yer değiştir: FL_RPWM = 11, FL_LPWM = 10. Tek yaptığın ileri ve geri sinyallerini takas etmek. Yeniden yükle ve ileri testini tekrarla. Sadece hatalı motora dokun, doğru dönenlere elleme.

Kavram köprüsü: kod mu, mekanik mi? (7 dk)

Şimdi bu protokolün gizli dersini adlandıralım. Her testin ne doğruladığı farklı:

Bu ayrım sana bir teşhis kuralı verir:

Videodaki dönen robotu hatırla. Kod aynıydı ama bir teker ters yerleşmişti. Yani hata mekanikteydi, ve ne kadar kod okusan bulamazdın. İyi bir robotçu hatayı aramaz, hatayı bölgesine sıkıştırır: önce hangi yarıda olduğunu bulur, sonra orada çözer.

Uygulama: bozuk robot istasyonları (15 dk)

Şimdi teşhisçi sensin. Öğretmenin sınıfa 2-3 "bozuk robot" istasyonu kurdu. Her istasyonda bir robot kasıtlı olarak bozuk: bazısında bir motorun pin çifti ters (kod hatası), bazısında bir teker yanlış köşede (mekanik hata).

Küçük gruplar halinde her istasyona uğra ve şu yarışı oyna: bozuk olan desen mi, kod mu? Kural şu, robota ilk dokunuşundan önce tanı koyacaksın.

Her istasyonda üç adım izle:

  1. İleri ve yan kayma testini askıda çalıştır. Hangi desen bozuk, onu bul.
  2. Teşhis kuralını uygula. Sadece yan kayma bozuksa "mekanik" de. İleri bozuksa "kod" de. İkisi de bozuksa hangisini önce düzelteceğini söyle.
  3. Kağıda tanını yaz, sonra düzelt. Kod hatasıysa pin çiftini takas et; mekanik hataysa tekeri doğru köşeye taşı. Robot üç deseni de geçince istasyon çözülmüş sayılır.

Grupların tanılarını sınıfça karşılaştır. En hızlı doğru teşhis kazanır, ama düzeltmeden önce yanlış tanı koyan gruba süre eklenir. Amaç hızlı dokunmak değil, doğru düşünmek.

Ders sonu kontrolü (7 dk)

Kendini yokla. Aşağıdakilerin hepsine "evet" diyebiliyor musun?

Sorun giderme tablosu, takıldığın yerde:

BelirtiMuhtemel nedenÇözüm
İleri komutunda bir teker tersMotor yönü montajdan ters bağlıO motorun iki sinyal pinini kodda yer değiştir
İleri düzgün, yan kaymada robot dönüyorX deseni bozuk: tekerler yanlış köşedeDers 1 şemasına göre çapraz tekerleri yer değiştir
Yan kaymada robot çapraz gidiyorBir sürücü yanlış pin çiftine bağlı, köşeler karışmışEtiketleri kontrol et; her köşeyi sürücü sürücü doğrula
Yan kayma zayıf, tekerler kayıyorZemin uygun değil ya da ağırlık dengesizSert düz zeminde dene; pili merkeze yakın sabitle
Bir motor hiç dönmüyorO sürücünün güç ya da sinyal bağlantısı eksikÖnce güç, sonra sinyal jumperlarını izle; şüpheli sürücüyü sağlam köşeyle değiştirerek arızayı ayır
Yük altında robot resetleniyorDört motorun akımı beslemeyi zorluyorPili şarj et, güç bağlantılarını sık; sinyal kablolarını güç hattından ayır

Günlük hayat bağı: bir teknisyen bozuk bir cihazı hemen açıp parça sökmez. Önce arızayı bir bölgeye sıkıştıracak testler yapar; "sorun güç katında mı, sinyal katında mı?" Senin ileri ve yan kayma testin de tam olarak bu: koca bir problemi iki küçük soruya böler.

Erken bitirene ek görev

Robotun üç deseni de geçtiyse ve zamanın kaldıysa: