Test: yük altında dene
Bu modülde robotuna üçüncü bir motor ve bir dişli mekanizması ekledin. Artık robotun yalnız gezmiyor, iş de yapıyor. Ama iş yapan bir motorun gezen bir motordan önemli bir farkı var: yükle karşılaşır. Yük altında bir motor bambaşka davranır ve bunu güvenli biçimde görmenin tek yolu, doğru sırayla test etmektir. Bu ders sana o sırayı ve yük altında neye dikkat edeceğini öğretiyor.
Kanca: motor neden inledi? (10 dk)
Boşta dönen bir motorun sesi hafif ve tizdir. Videoda mekanizma serbestken motor rahatça dönüyordu. Sonra biri onu dişlinin gidebileceği son noktaya kadar zorladı ve ses değişti: kalınlaştı, inledi ve sonunda bir "klik" ile sigorta attı. Motor yanmadan önce sistem kendini korudu.
Burada gözle görülmeyen bir şey oldu. Motor dönmeye çalıştıkça ama dönemedikçe, üzerinden geçen elektrik akımı hızla arttı. Akım arttıkça pil zorlandı, gerilimi düştü ve 30 amperlik sigorta "burada bir sorun var" deyip hattı kesti. Bu, kötü bir kaza değil, iyi bir koruma. Ama bir robotçu bu noktaya gelmeden çok önce durur.
Tartışma sorusu: Boşta rahatça dönen bir motor, yük binince neden zorlanır? Kolunla bir şeyi havada sallamakla ağır bir kovayı kaldırmak arasındaki farkı düşün. Grubunla 2 dakika konuş, sonra tahtada toplayalım.
Bugün mekanizmanı önce güvenli biçimde test edecek, sonra ona bilerek yük verip motorun ne dediğini dinleyeceğiz.
Askıda buton testi (20 dk)
Sürüş motorlarını test ederken öğrendiğin kural burada da geçerli: önce askıda. Robotu kutunun ya da kitap yığınının üstüne, tekerler ve mekanizma hiçbir yere değmeyecek şekilde yerleştir. Mekanizma serbestçe hareket edebilsin, kimseye ya da bir yere çarpmasın.
Bağlan ve başlat: pili tak, anahtarı aç, telefonu robotun WiFi ağına bağla, tarayıcıda http://192.168.4.1 adresini aç, kumandada bir tuşa basıp tanıt, sonra Init ve Start yap.
Şimdi her adımı önce tahmin et, sonra dene, sonra gözle.
Adım 1 - İleri sar. Tahmin et: RB tuşuna basılı tutunca mekanizma ne yapmalı? Doğru cevap, mekanizmanın bir yöne dönmesi. Dene ve gözle. Kodda o yönü şu satır veriyor:
const int MEK_RPWM = 21, MEK_LPWM = 22; // ucuncu motorun iki sinyal pini
// ... teleopLoop icinde, surus satirlarinin hemen altinda ...
if (js.getRB()) surMotor(MEK_RPWM, MEK_LPWM, 0.6f); // basiliyken ileri sar
else if (js.getLB()) surMotor(MEK_RPWM, MEK_LPWM, -0.6f); // basiliyken geri sar
else surMotor(MEK_RPWM, MEK_LPWM, 0.0f); // birakinca dur
Adım 2 - Geri sar. Tahmin: LB tuşuna basınca? Mekanizma ters yöne dönmeli. Dene. Yön beklediğinin tersiyse panik yok; çözümünü kavram köprüsünde konuşacağız, şimdilik not al.
Adım 3 - Bırakınca dur. İki tuşu da bırak. Mekanizma anında durmalı. Durmuyorsa else satırının motoru sıfırladığından emin ol. Bu tuşların bir özelliğine dikkat et: sen bastığın sürece döner, bıraktığın an durur. Kalıcı bir düğme değil, anlık bir kontrol.
Adım 4 - Sürüş hâlâ çalışıyor mu? Sol çubukla robotu hafifçe sür. Sürüş motorlarının mekanizma eklendikten sonra da aynı çalıştığını doğrula. Üçüncü motor, ilk ikisinin işine karışmamalı.
Dört adım da askıdayken temiz geçmeden bir sonraki bölüme, yani yük testine geçme.
Kavram köprüsü: dişli, yük ve akım (7 dk)
Az önce çalıştırdığın şeyin içinde üç fikir var.
Dişli mekanizması ve çevrim oranı. Motorun mili hızlı ama zayıf döner. Mekanizmadaki dişliler bu dönüşü çevirir: küçük bir dişli büyük bir dişliyi döndürünce çıkış yavaşlar ama güçlenir. Buna çevrim oranı denir, yani girişteki dönüşle çıkıştaki dönüş arasındaki takas. İş yapan mekanizmalar bu yüzden dişli kullanır: hızdan feragat edip güç kazanırsın. Senin mekanizman da motorun ham dönüşünü, yükü çevirmeye ya da taşımaya yetecek güce dönüştürüyor.
Yük altında akım artışı. Bir motor ne kadar zorlanırsa üzerinden o kadar çok akım geçer. Boşta dönen motor az akım çeker; yük binince akım artar; hiç dönemeyecek kadar sıkışırsa akım en yükseğe çıkar. Kanca videosundaki inleme tam olarak buydu: dönemeyen motor, çok akım çekiyordu. O akımı pil karşılar, ama karşılarken kendi gerilimi düşer. İşte bu yüzden mekanizma zorlanınca aynı anda sürüş motorların da zayıflar; hepsi aynı pilden içiyor ve pil o an düşmüş durumda.
Buton anlık kontroldür. RB ve LB, çubuklardan farklı çalışır. Çubuk bir değer verir; buton yalnız basılı mı değil mi der. Mekanizmayı basılı tuttukça çevirmek, tam da uç noktaya çarpmadan durabilmen için doğru seçim: parmağını çekersen mekanizma o an durur.
Yön ters çıktıysa. Adım 2'de mekanizma beklediğin yönün tersine döndüyse, o motorun ileri ve geri sinyalleri yer değişmiş demektir. Çözüm kabloyu sökmek değil: koddaki MEK_RPWM ve MEK_LPWM sabitlerinin değerlerini birbiriyle takas et, yeniden yükle, testi tekrarla.
Uygulama: yük altında dene (15 dk)
Şimdi mekanizmaya iş verip motorun ne dediğini dinliyoruz. Robot hâlâ askıda kalsın.
Yükle karşılaştır. Önce mekanizmayı yüksüz çalıştır ve motorun sesini kulağına kazı: hafif, tiz, rahat. Şimdi mekanizmaya küçük bir direnç ver. Bunu elinle mekanizmaya hafifçe karşı koyarak ya da öğretmeninin verdiği küçük bir ağırlıkla yapabilirsin. Tuşa bas ve üç şeyi aynı anda gözle:
- Ses: Motor sesi kalınlaşıyor, inlemeye başlıyor mu?
- Sürüş motorları: Aynı anda sürüşe hafif gaz ver. Havadaki tekerler, mekanizma zorlanırken yavaşlıyor mu? Bu, pil geriliminin düştüğünün gözle görülür işaretidir; henüz telemetrin yok, ama robotun davranışı sana pilin durumunu söylüyor.
- Durum ışığı: Kartın durum ışığı, ağır yükte zayıflıyor ya da titreşiyor mu? Sönmesi, gerilimin tehlikeli biçimde düştüğü anlamına gelir.
Yükü artırdıkça bu üç işaretin de belirginleştiğini göreceksin. Bu, motorun sana "zorlanıyorum" demesidir.
Güvenlik kuralı: mekanizmayı uçta zorlama. Bu kiti dinle çünkü bunu ezberlemen gerekiyor. Bu mekanizmada bir limit switch yok, yani mekanizma uç noktaya geldiğinde kendini durduran bir anahtar bulunmuyor. Uca gelmiş bir mekanizmaya tuşa basmaya devam edersen, motor dönemez ama dönmeye çalışır: akım fırlar, motor inler, ısınır ve devam edersen sigorta atar. Uca gelmeden parmağını tuştan çek. Mekanizmayı sınırına dayayıp orada tutmak, motora yapabileceğin en kötü şeydir.
Gözlem fişine yaz: yüksüzken ses nasıldı, yük binince ses ve sürüş nasıl değişti, en ağır yükte durum ışığına ne oldu.
Sorun giderme tablosu
Bu tablo mekanizmanı test ederken başvuru kaynağın. Belirti sütununu bul, o satırı oku. Bir belirtiyi birden çok neden verebilir; en kolay kontrol edilenden başla.
| Belirti | Muhtemel neden | Çözüm |
|---|---|---|
| Mekanizma motoru hiç dönmüyor | Üçüncü sürücüye güç yok ya da sinyal pinleri bağlı değil | B+/B- bağlantısını, VCC ve EN köprüsünü, 21 ve 22 sinyal jumperlarını Elektronik dersinden yeniden izle |
| Tuşa basınca hiçbir şey olmuyor ama sürüş çalışıyor | RB/LB satırları teleopLoop'a eklenmemiş ya da yanlış tuş | Koddaki getRB ve getLB satırlarının teleopLoop içinde ve sürüş satırlarının altında olduğunu kontrol et |
| Mekanizma yalnız tek yöne dönüyor | Tek bir sinyal pini (21 ya da 22) gevşek ya da yanlış GPIO'da | O pinin jumperını yeniden tak; her iki yönün ayrı bir pinden geldiğini hatırla |
| Mekanizma ters yöne dönüyor | Kodda MEK_RPWM ve MEK_LPWM sabitleri ters | İki sabitin değerini kodda yer değiştir, yeniden yükle |
| Motor dönüyor ama zayıf, yükü çeviremiyor | Pil düşük ya da mekanizma mekanik olarak sıkışıyor | Önce pili şarj et; sonra mekanizmayı elle çevirip bir yere sürtünüp sürtünmediğine bak |
| Yük binince her şey yavaşlıyor, ışık zayıflıyor | Pil gerilimi yük altında düşüyor (normal), ama pil zayıfsa aşırı düşüyor | Pili şarj et; mekanizmayı uçta zorlamadığından emin ol |
| Test sırasında sigorta attı | Mekanizma uçta zorlandı, akım sınırı aşıldı | Anahtarı kapat, sigortayı kontrol et/değiştir, uçta zorlamama kuralına dön |
Pekiştirme ve değerlendirme (6 dk)
Kendini kontrol et:
- Yeni bir mekanizmayı test ederken ilk yapılan şey nedir, neden askıda?
- Bir motor zorlanınca akımına ne olur ve bunu, telemetri olmadan hangi üç işaretten anlarsın?
- Mekanizmada limit switch olmadığına göre uç noktada motoru neyin koruması gerekiyor?
- Mekanizma ters yöne dönüyorsa kabloya dokunmadan koddan nasıl çözersin?
Günlük hayat bağı: Bir vinç operatörü, kaldıramayacağı bir yükü zorlamaz; motoru dinler, kabloyu dinler ve sınıra dayanmadan durur. Senin "mekanizmayı uçta zorlama" kuralın da aynı ustalıktır: makineyi dinleyip sınırından önce durmak.
Erken bitirene ek görev
- Yük merdiveni: Mekanizmaya kademe kademe artan yükler ver ve her kademede sesin nasıl değiştiğini gözlem fişine yaz. Motorun "rahat", "zorlanıyor" ve "artık kaldıramaz" seslerini birbirinden ayırabiliyor musun? Bu üç sesi arkadaşına dinlet.
- Güç mü hız mı: Dişlinin neden çıkışı yavaşlatıp güçlendirdiğini bir arkadaşına, iki farklı boy dişliyi elinle çevirerek anlat. Hangi durumda güç, hangi durumda hız istersin?