LeRobot documentation

SO-101

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.7.0).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

SO-101

SO-101 SO-101

Aşağıdaki adımlarda, amiral gemisi robotumuz olan SO-101'in nasıl monte edileceğini açıklıyoruz.

Parçaları temin edin

Bu README dosyasını takip edin. Parçaların temin edileceği bağlantıyı içeren malzeme listesini ve parçaların 3D baskı talimatlarını içerir. Ayrıca, ilk kez baskı yapıyorsanız veya bir 3D yazıcınız yoksa size öneriler sunar.

LeRobot 🤗'u Yükle

LeRobot'u yüklemek için Yükleme Kılavuzumuza göz atın

Bu talimatların yanı sıra Feetech SDK'sını da kurmanız gerekir (LeRobot'u PyPI'den kurduysanız bunun yerine pip install 'lerobot[feetech]' komutunu çalıştırın):

pip install -e ".[feetech]"

Adım Adım Montaj Talimatları

Takipçi kol, 1/345 oranlı 6 adet STS3215 motor kullanır. Lider kol ise, kendi ağırlığını taşıyabilmesi ve çok fazla kuvvet gerektirmeden hareket ettirilebilmesi için üç farklı dişli oranına sahip motor kullanır. Hangi eklem için hangi motorun gerektiği aşağıdaki tabloda gösterilmektedir.

Lider-Kol EkseniMotorDişli Oranı
Taban / Omuz Pan11 / 191
Omuz Kaldırma21 / 345
Dirsek Bükme31 / 191
Bilek Esneme41 / 147
Bilek Döndürme51 / 147
Gripper61 / 147

Motorları yapılandırın

1. Her kolun ilişkili olduğu USB portlarını bulun

Her bus servo adaptörü için portu bulmak için MotorBus'ü USB ve güç üzerinden bilgisayarınıza bağlayın. Aşağıdaki betiği çalıştırın ve istendiğinde MotorBus'ü ayırın:

lerobot-find-port
Mac
Linux

Örnek çıktı:

Finding all available ports for the MotorBus.
['/dev/tty.usbmodem575E0032081', '/dev/tty.usbmodem575E0031751']
Remove the USB cable from your MotorsBus and press Enter when done.

[...Disconnect corresponding leader or follower arm and press Enter...]

The port of this MotorsBus is /dev/tty.usbmodem575E0032081
Reconnect the USB cable.

Bulunan port: /dev/tty.usbmodem575E0032081, lider veya takipçi kolunuza karşılık gelir.

2. Motor kimliklerini ve baud oranlarını ayarlayın

Her motor, bus üzerinde benzersiz bir id ile tanımlanır. Sıfır kilometre motorlar genellikle 1 varsayılan id ile gelir. Motorlar ile denetleyici arasındaki iletişimin düzgün çalışması için önce her motora benzersiz, farklı bir id atamamız gerekir. Ayrıca, bus üzerinden veri iletim hızı baudrate ile belirlenir. Birbirleriyle iletişim kurabilmeleri için denetleyici ve tüm motorların aynı baudrate ile yapılandırılması gerekir.

Bu amaçla, öncelikle bu ayarları yapmak için kontrolcü üzerinden her bir motora ayrı ayrı bağlanmamız gerekiyor. Bu parametreleri motorların dahili belleğinin (EEPROM) kalıcı bölümüne yazacağımız için, bunu yalnızca bir kez yapmamız yeterli olacaktır.

Başka bir robottan motorları yeniden kullanıyorsanız, kimlikler ve baudrate muhtemelen eşleşmeyeceği için bu adımı da gerçekleştirmeniz gerekecektir.

Aşağıdaki video, motor kimliklerini ayarlama adımlarının sırasını göstermektedir.

Motor kurulumu videosu

Takipçi

Bilgisayarınızdan ve güç kaynağından gelen USB kablosunu takip kolunun kontrol kartına bağlayın. Ardından, önceki adımda aldığınız portu kullanarak aşağıdaki komutu çalıştırın veya API örneğini çalıştırın. Takip kolunuza id parametresiyle bir ad da vermeniz gerekecektir.

Komut
API örneği
lerobot-setup-motors \
    --robot.type=so101_follower \
    --robot.port=/dev/tty.usbmodem585A0076841  # <- paste here the port found at previous step

Aşağıdaki talimatı görmelisiniz

Connect the controller board to the 'gripper' motor only and press enter.

Talimatlar doğrultusunda, kavrayıcının motorunu takın. Panoya bağlı tek motorun bu olduğundan ve motorun henüz başka bir motora daisy-chain (sıralı) olarak bağlanmadığından emin olun. [Enter] tuşuna bastığınızda, betik o motorun id ve baudrate değerlerini otomatik olarak ayarlayacaktır.

Troubleshooting

Bu noktada bir hata alırsanız, kablolarınızı kontrol edin ve doğru şekilde takıldıklarından emin olun:

  • Güç kaynağı
  • Bilgisayarınız ile kontrol kartı arasındaki USB kablosu
  • Kontrol kartından motora giden 3 pinli kablo

Waveshare kontrol kartı kullanıyorsanız, iki jumper'ın B kanalında (USB) olduğundan emin olun.

Ardından aşağıdaki mesajı görmelisiniz:

'gripper' motor id set to 6

Bunu bir sonraki talimat izler:

Connect the controller board to the 'wrist_roll' motor only and press enter.

3 pinli kabloyu kontrol kartından çıkarabilirsiniz, ancak diğer ucundaki gripper motoruna bağlı bırakabilirsiniz, çünkü zaten doğru yerdedir. Şimdi, başka bir 3 pinli kabloyu bilek yuvarlama motoruna takın ve kontrol kartına bağlayın. Önceki motorda olduğu gibi, kartın yalnızca bu motora bağlı olduğundan ve motorun kendisinin başka hiçbir motora bağlı olmadığından emin olun.

Talimatlar doğrultusunda işlemi her motor için tekrarlayın.

Enter tuşuna basmadan önce her adımda kablajınızı kontrol edin. Örneğin, anakartı manipüle ederken güç kablosu bağlantısı kopabilir.

İşiniz bittiğinde betik basitçe sona erer ve bu noktada motorlar kullanıma hazır hale gelir. Artık her motorun 3 pinli kablosunu bir sonraki motora, ilk motorun (id=1 olan ‘omuz pan’) kablosunu ise kontrol kartına takabilirsiniz; bu kart artık kolun tabanına bağlanabilir.

Lider

Lider kol için aynı adımları uygulayın.

Komut
API örneği
lerobot-setup-motors \
    --teleop.type=so101_leader \
    --teleop.port=/dev/tty.usbmodem575E0031751  # <- paste here the port found at previous step

Temiz Parçalar

3D yazdırılmış parçalardan tüm destek malzemesini kaldırın. Bunu yapmanın en kolay yolu, destek malzemesinin altına küçük bir tornavida sokmaktır.

Montajı devam ettirmeden önce, motorun içine yerleştirildikten sonra bir adet 3 pinli kablo takılması önerilir.

Birleşik 1

  • Her iki motor kornasını da takın. Üst kornayı bir M3x6mm vida ile sabitleyin. Alt korna için vida gerekmez.
  • İlk motoru tabana yerleştirin.
  • Motoru 4 adet M2x6mm vida ile sabitleyin (en küçük vidalar). İki tanesini üstten, iki tanesini alttan takın.
  • İlk motor tutucusunu kaydırın ve her iki taraftan birer adet olmak üzere iki M2x6mm vida ile sıkıştırın.
  • Omuz kısmını takın.
  • Omuz kısmını üstte 4 adet M3x6mm ve altta 4 adet M3x6mm vida ile sıkın
  • Omuz motor tutucusunu ekleyin.

Birleşik 2

  • Her iki motor kornasını da takın. Üst kornayı bir M3x6mm vida ile sabitleyin. Alt korna için vida gerekmez.
  • İkinci motoru üstten içeri kaydırın.
  • İkinci motoru 4 adet M2x6mm vida ile sabitleyin.
  • Üst kolu her iki tarafta 4 adet M3x6mm vida ile sabitleyin.

Birleşik 3

  • Her iki motor kornasını da takın. Üst kornayı bir M3x6mm vida ile sabitleyin. Alt korna için vida gerekmez.
  • Motor 3'ü takın ve 4 adet M2x6mm vida ile sıkın.
  • Ön kolu her iki tarafta 4 adet M3x6mm vida kullanarak motor 3'e bağlayın.

Birleşik 4

  • Her iki motor kornasını da takın. Üst kornayı bir M3x6mm vida ile sabitleyin. Alt korna için vida gerekmez.
  • Kayar motor tutucu 4.
  • Motor 4'te kaydırma.
  • Motor 4'ü 4 adet M2x6mm vida ile sıkıca sabitleyin.

Birleşik 5

  • Motor 5'i bilek tutucusuna yerleştirin ve 2 adet M2x6mm ön vida ile sabitleyin.
  • Sadece bilek motoruna bir motor kornası takın ve M3x6mm korna vidasıyla sabitleyin.
  • Bileği, her iki tarafta 4 adet M3x6mm vida kullanarak motor 4'e sabitleyin.

Kavrama / Kulp

Takipçi
Lider
  • Gripper'i 5 numaralı motora, bilekteki motor boynuna 4 adet M3x6mm vida kullanarak bağlayın.
  • Gripper motorunu yerleştirin ve her iki tarafta 2 adet M2x6mm vida ile sabitleyin.
  • Her iki motor kornasını da gripper motoruna takın. Üst kornayı M3x6mm vida ile sabitleyin; alt korna için vida gerekmez.
  • Gripper pençesini takın ve her iki tarafta 4 adet M3x6mm vida ile sabitleyin.

Kalibre

Ardından, lider ve takipçi kollarının aynı fiziksel konumda olduklarında aynı konum değerlerine sahip olmasını sağlamak için robotunuzu kalibre etmeniz gerekecektir. Kalibrasyon süreci, bir robot üzerinde eğitilen bir sinir ağının başka bir robot üzerinde de çalışabilmesini sağladığı için çok önemlidir.

Takipçi

Takipçi kolunu kalibre etmek için aşağıdaki komutu veya API örneğini çalıştırın:

Komut
API örneği
# Use the port of your follower arm, and give the arm a unique name with --robot.id
lerobot-calibrate \
    --robot.type=so101_follower \
    --robot.port=/dev/tty.usbmodem58760431551 \
    --robot.id=my_awesome_follower_arm

Aşağıdaki video, kalibrasyonun nasıl yapılacağını göstermektedir. Öncelikle robotun, tüm eklemlerin hareket aralıklarının ortasında olduğu konuma taşınması gerekir. Ardından Enter tuşuna bastıktan sonra her bir eklemin tam hareket aralığı boyunca hareket ettirilmesi gerekir.

Kalibrasyon videosu

Lider

Lider kolu kalibre etmek için aynı adımları izleyin, aşağıdaki komutu veya API örneğini çalıştırın:

Komut
API örneği
# Use the port of your leader arm, and give the arm a unique name with --teleop.id
lerobot-calibrate \
    --teleop.type=so101_leader \
    --teleop.port=/dev/tty.usbmodem58760431551 \
    --teleop.id=my_awesome_leader_arm

Tebrikler 🎉, robotunuz kendi başına bir görev öğrenmeye hazır. Eğitimine bu öğreticiyi izleyerek başlayın: Gerçek dünya robotlarıyla başlangıç

Herhangi bir sorunuz varsa veya yardıma ihtiyacınız varsa, lütfen Discord üzerinden bize ulaşın.

Update on GitHub