Robotik kol manipülatörü. Robot manipülatör mekanik kolu Robot manipülatör projesinin genel açıklaması

Merhaba Giktimes!

uFactory'nin uArm projesi iki yıldan fazla bir süre önce Kickstarter'da fon topladı. Başından beri böyle olacağını söylediler projeyi aç ancak kampanyanın bitiminden hemen sonra kaynak kodunu yayınlamak için aceleleri yoktu. Pleksiglas'ı sadece çizimlerine göre kesmek istedim ve bu kadar, ancak kaynak malzeme olmadığından ve öngörülebilir gelecekte buna dair bir işaret olmadığından, tasarımı fotoğraflardan tekrarlamaya başladım.

Artık robot kolum şuna benziyor:

İki yıl içinde yavaş yavaş çalışarak dört versiyonunu yapmayı başardım ve oldukça fazla deneyim kazandım. Projenin açıklamasını, geçmişini ve tüm proje dosyalarını kesim altında bulabilirsiniz.

Deneme ve hata

Çizimler üzerinde çalışmaya başladığımda sadece uArm'ı tekrarlamak değil, onu geliştirmek istedim. Bana öyle geliyordu ki benim koşullarımda dayanaksız yapmak oldukça mümkündü. Ayrıca elektroniğin manipülatörün tamamıyla birlikte dönmesi hoşuma gitmedi ve menteşenin alt kısmının tasarımını basitleştirmek istedim. Ayrıca onu hemen biraz daha küçük çizmeye başladım.

Bu giriş parametreleriyle ilk versiyonu çizdim. Ne yazık ki, manipülatörün bu versiyonunun hiçbir fotoğrafına sahip değilim (ki bu, sarı renk). Buradaki hatalar epikti. İlk olarak, montajı neredeyse imkansızdı. Kural olarak manipülatörden önce çizdiğim mekanikler oldukça basitti ve montaj sürecini düşünmeme gerek kalmıyordu. Ama yine de onu monte ettim ve çalıştırmayı denedim ve elim neredeyse hiç hareket etmedi! Tüm parçalar vidaların etrafında dönüyordu ve daha az boşluk olacak şekilde onları sıktığımda hareket edemiyordu. Hareket edebilmesi için gevşetirsem inanılmaz bir oyun ortaya çıktı. Sonuç olarak konsept üç gün bile ayakta kalamadı. Ve manipülatörün ikinci versiyonu üzerinde çalışmaya başladı.

Kırmızı zaten iş için oldukça uygundu. Normal bir şekilde monte edildi ve yağlama ile hareket edebiliyordu. Üzerindeki yazılımı test edebildim ama yine de yatakların olmayışı ve farklı itme kuvvetlerinde büyük kayıplar onu çok zayıf kılıyordu.

Daha sonra proje üzerinde çalışmayı bir süreliğine bıraktım ama kısa süre sonra projeyi hayata geçirmeye karar verdim. Daha güçlü ve popüler servolar kullanmaya, boyutları büyütmeye ve rulmanlar eklemeye karar verdim. Üstelik her şeyi aynı anda mükemmel yapmaya çalışmayacağıma karar verdim. Çizimlerin eskizini çizdim hızlı eller, güzel bağlantılar çizmeden ve şeffaf pleksiglastan kesim siparişi vermeden. Ortaya çıkan manipülatörü kullanarak montaj sürecindeki hataları ayıklayabildim, ilave güçlendirme gerektiren alanları belirledim ve rulmanların nasıl kullanılacağını öğrendim.

Şeffaf manipülatörle çok eğlendikten sonra son beyaz versiyonu çizmeye başladım. Yani artık tüm mekaniklerin hataları tamamen ayıklandı, bana uyuyorlar ve bu tasarımda başka hiçbir şeyi değiştirmek istemediğimi söylemeye hazırım:

uArm projesine temelde yeni bir şey getirememek beni üzüyor. Son versiyonu çizmeye başladığımda, 3D modelleri zaten GrabCad'de kullanıma sunmuşlardı. Sonuç olarak pençeyi biraz basitleştirdim, dosyaları uygun formatta hazırladım ve çok basit ve standart bileşenler kullandım.

Manipülatörün özellikleri

uArm ortaya çıkmadan önce, masaüstü manipülatörleri Bu sınıftan oldukça üzgün görünüyordu. Ya hiç elektronikleri yoktu ya da dirençlerle bir tür kontrolleri vardı ya da kendi özel yazılımları vardı. İkincisi, genellikle paralel menteşelerden oluşan bir sisteme sahip değillerdi ve çalışma sırasında tutacağın kendisi konumunu değiştirdi. Manipülatörümün tüm avantajlarını toplarsanız oldukça uzun bir liste elde edersiniz:
  1. Güçlü ve ağır motorların manipülatörün tabanına yerleştirilmesine ve tutucunun tabana paralel veya dik tutulmasına olanak tanıyan bir çubuk sistemi
  2. Pleksiglastan satın alınması veya kesilmesi kolay basit bir bileşen seti
  3. Manipülatörün neredeyse tüm bileşenlerindeki rulmanlar
  4. Montajı kolaydır. Bunun gerçekten zor bir görev olduğu ortaya çıktı. Tabanın montajı sürecini düşünmek özellikle zordu
  5. Kavrama konumu 90 derece değiştirilebilir
  6. Açık kaynak ve belgeler. Her şey erişilebilir formatlarda hazırlanmıştır. 3D modeller, kesim dosyaları, malzeme listesi, elektronik ve yazılım için indirme bağlantıları sağlayacağım
  7. Arduino uyumludur. Arduino'yu eleştiren birçok kişi var ama bunun kitleyi genişletmek için bir fırsat olduğuna inanıyorum. Profesyoneller yazılımlarını kolayca C dilinde yazabilirler - bu, Atmel'in sıradan bir denetleyicisidir!

Mekanik

Montaj için 5 mm kalınlığındaki pleksiglastan parçaları kesmeniz gerekir:

Bütün bu parçaları kesmem için benden yaklaşık 10 dolar ücret aldılar.

Taban büyük bir yatağın üzerine monte edilmiştir:

Montaj süreci açısından temel olarak düşünmek özellikle zordu, ancak uArm'daki mühendislere göz kulak oldum. Külbütörler 6 mm çapında bir pimin üzerine oturur. Dirsek çekişimin U şeklinde bir tutucu üzerinde tutulduğu, uFactory'nin ise L şeklinde bir tutucu üzerinde tutulduğu unutulmamalıdır. Farkın ne olduğunu açıklamak zor ama sanırım daha iyisini yaptım.

Kavrama ayrı olarak monte edilir. Kendi ekseni etrafında dönebilmektedir. Pençenin kendisi doğrudan motor miline oturur:

Makalenin sonunda fotoğraflarda süper ayrıntılı montaj talimatlarına bir bağlantı vereceğim. İhtiyacınız olan her şey elinizin altındaysa, birkaç saat içinde hepsini güvenle bir araya getirebilirsiniz. Ayrıca 3 boyutlu bir model hazırladım. ücretsiz program SketchUp. İndirebilir, oynayabilir ve neyin ve nasıl birleştirildiğini görebilirsiniz.

Elektronik

El işi yapmak için tek yapmanız gereken beş servoyu Arduino'ya bağlamak ve onlara iyi bir kaynaktan güç sağlamaktır. uArm bir çeşit motor kullanıyor geri bildirim. Tutucuyu kontrol etmek için üç normal MG995 motor ve iki küçük metal dişli motor kurdum.

Burada anlatımım önceki projelerle yakından iç içe geçmiş durumda. Bir süre önce Arduino programlamayı öğretmeye başladım ve hatta bu amaçlar için kendi Arduino uyumlu kartımı bile hazırladım. Öte yandan bir gün ucuza tahta yapma fırsatı buldum (bunun hakkında da yazdım). Sonunda her şey benim kendi Arduino uyumlu kartımı ve manipülatörü kontrol etmek için özel bir kalkan kullanmamla sona erdi.

Bu kalkan aslında çok basittir. Dört değişken direnci, iki butonu, beş servo konnektörü ve bir güç konnektörü vardır. Bu, hata ayıklama açısından çok uygundur. Bir test taslağı yükleyebilir ve kontrol için bazı makrolar veya buna benzer şeyler kaydedebilirsiniz. Yazının sonunda board dosyasını indirmeniz için link de vereceğim fakat metalize delikli imalata uygun olduğundan ev üretimi için pek kullanışlı değildir.

Programlama

En ilginç şey manipülatörü bir bilgisayardan kontrol etmektir. uArm, manipülatörü kontrol etmek için kullanışlı bir uygulamaya ve onunla çalışmak için bir protokole sahiptir. Bilgisayar COM bağlantı noktasına 11 bayt gönderir. Birincisi her zaman 0xFF, ikincisi 0xAA ve geri kalanlardan bazıları servolara yönelik sinyallerdir. Daha sonra bu veriler normalleştirilir ve işlenmek üzere motorlara gönderilir. Servolarım 9-12 numaralı dijital giriş/çıkışlara bağlı, ancak bu kolayca değiştirilebilir.

uArm'ın terminal programı, fareyi kontrol ederken beş parametreyi değiştirmenize olanak sağlar. Fare yüzey boyunca hareket ettikçe manipülatörün XY düzlemindeki konumu değişir. Tekerleğin döndürülmesi yüksekliği değiştirir. LMB/RMB - pençeyi sıkıştırın/sıkıştırmayı açın. RMB + tekerlek - kolu döndürün. Aslında çok uygun. Dilerseniz manipülatör ile aynı protokolü kullanarak haberleşecek herhangi bir terminal yazılımını da yazabilirsiniz.

Burada eskizler vermeyeceğim - bunları makalenin sonunda indirebilirsiniz.

Çalışma videosu

Ve son olarak manipülatörün videosu. Bir farenin, dirençlerin ve önceden kaydedilmiş bir programın nasıl kontrol edileceğini gösterir.

Bağlantılar

Pleksiglas kesim dosyaları, 3 boyutlu modeller, satın alma listesi, pano çizimleri ve yazılımlar çalışmamın sonunda indirilebilir.

MeArm robotik kolu, endüstriyel kolun cep versiyonudur. MeArm, kurulumu ve kontrolü kolay bir robottur. mekanik kol. Manipülatörün dört serbestlik derecesi vardır, bu da çeşitli küçük nesneleri kavramayı ve hareket ettirmeyi kolaylaştırır.

Bu ürün montaj için kit olarak sunulmaktadır. Aşağıdaki parçaları içerir:

  • montaj için şeffaf akrilik parça seti mekanik manipülatör;
  • 4 servo;
  • Arduino Pro mikro mikrodenetleyicisinin ve Nokia 5110 grafik ekranının bulunduğu kontrol panosu;
  • iki adet iki eksenli analog joystick içeren joystick kartı;
  • USB güç kablosu.


Mekanik manipülatörü monte etmeden önce servoları kalibre etmek gerekir. Kalibrasyon için Arduino kontrol cihazını kullanacağız. Servoları buna bağlıyoruz Arduino kurulu(gerekli dış kaynak güç kaynağı 5-6V 2A).

Servo orta, sol, sağ, pençe; // 4 Servo nesnesi oluştur

Kurulumu geçersiz kıl()
{
Seri.begin(9600);
middle.attach(11); // platformu döndürmek için pin 11'e bir servo bağlar
left.attach(10); // sol omuzdaki pin 10'a bir servo bağlar
right.attach(9); // sağ omuzdaki pin 11'e bir servo bağlar
Claw.attach(6); // pin 6 pençesine bir servo bağlar (yakalama)
}

geçersiz döngü ()
{
// servo konumunu büyüklüğe göre (derece olarak) ayarlar
middle.write(90);
left.write(90);
right.write(90);
Claw.write(25);
gecikme(300);
}
Bir işaretleyici kullanarak servo motor gövdesi ve iş mili boyunca bir çizgi çizin. Servo montaj kitinde bulunan küçük vidayı kullanarak kit içerisinde bulunan plastik külbütörü aşağıda gösterildiği gibi servoya bağlayın. MeArm'ın mekanik kısmını monte ederken bunları bu pozisyonda kullanacağız. İş mili konumunu hareket ettirmemeye dikkat edin.


Artık mekanik manipülatörü monte edebilirsiniz.
Tabanı alın ve bacakları köşelerine takın. Daha sonra üzerlerine dört adet 20 mm'lik cıvata ve vidalı somunlar takın (toplam uzunluğun yarısı).

Şimdi merkezi servoyu iki adet 8 mm'lik cıvata ile küçük bir plakaya tutturuyoruz ve ortaya çıkan yapıyı 20 mm'lik cıvatalar kullanarak tabana tutturuyoruz.

Yapının sol bölümünü birleştiriyoruz.

Yapının doğru bölümünü birleştiriyoruz.

Şimdi sol ve sağ bölümleri bağlamanız gerekiyor. İlk önce adaptör plakasına gidiyorum

O zaman doğru ve şunu elde ederiz

Yapıyı platforma bağlama

Ve “pençeyi” topluyoruz

“Pençeyi” takıyoruz

Montaj için aşağıdaki kılavuzu (İngilizce) veya benzer bir manipülatörün montajı için kılavuzu (Rusça) kullanabilirsiniz.

Pin şeması diyagramı

Artık Arduino kodunu yazmaya başlayabilirsiniz. Manipülatörü kontrol etmek için, kontrolü bir joystick kullanarak kontrol edebilme yeteneğinin yanı sıra, manipülatörü Kartezyen koordinatlarda (x, y, z) belirli bir noktaya yönlendirmek güzel olurdu. Github'dan indirilebilecek ilgili bir kütüphane var - https://github.com/mimeindustries/MeArm/tree/master/Code/Arduino/BobStonesArduinoCode.
Koordinatlar dönme merkezinden mm cinsinden ölçülür. Başlangıç ​​konumu (0, 100, 50) noktasındadır, yani tabandan 100 mm ileride ve yerden 50 mm uzaktadır.
Kartezyen koordinatlarda belirli bir noktaya bir manipülatör kurmak için kütüphaneyi kullanma örneği:

#include "meArm.h"
#katmak

Kurulumu geçersiz kıl() (
arm.begin(11, 10, 9, 6);
arm.openGripper();
}

Geçersiz döngü() (
// yukarı ve sola
arm.gotoPoint(-80,100,140);
// yakalamak
arm.closeGripper();
// aşağı, zarar ve sağ
arm.gotoPoint(70,200,10);
//tutucuyu serbest bırak
arm.openGripper();
//başlangıç ​​noktasına geri dön
arm.gotoPoint(0,100,50);
}

meArm sınıfının yöntemleri:

geçersiz başlamak(int pin tabanı, int iğneOmuz, int pinDirsek, int pin tutucu) - meArm'ı başlatın, orta, sol, sağ, pençe servoları için bağlantı pinlerini belirtin. Kurulumda çağrılmalıdır();
geçersiz openGripper() - tutacağı açın;
geçersiz kapatGripper() - esir almak;
geçersiz gotoPoint(batmadan yüzmek X, batmadan yüzmek sen, batmadan yüzmek z) - manipülatörü Kartezyen koordinatların (x, y, z) konumuna getirin;
batmadan yüzmek getX() - mevcut X koordinatı;
batmadan yüzmek al() - mevcut Y koordinatı;
batmadan yüzmek getZ() - mevcut Z koordinatı.

Montaj Kılavuzu (İngilizce)

Herkese selam!
Birkaç yıl önce, uFactory'nin çok ilginç bir projesi kickstarter'da ortaya çıktı - uArm masaüstü robotik eli. Zamanla projeyi açık kaynak yapacaklarına söz verdiler ama ben daha fazla dayanamadım ve fotoğraflardan tersine mühendislik yapmaya başladım.
Yıllar geçtikçe bu manipülatöre ilişkin vizyonumun dört versiyonunu oluşturdum ve sonunda bu tasarımı geliştirdim:
Bu, beş servo tarafından çalıştırılan, entegre denetleyiciye sahip bir robot koludur. Başlıca avantajı, tüm parçaların satın alınabilmesi veya bir lazer kullanılarak ucuz ve hızlı bir şekilde pleksiglastan kesilebilmesidir.
Açık kaynaklı bir projeyi ilham kaynağı olarak aldığım için tüm sonuçlarımı eksiksiz olarak paylaşıyorum. Tüm kaynakları yazının sonundaki bağlantılardan indirebilir ve istenirse aynısını birleştirebilirsiniz (tüm bağlantılar yazının sonundadır).

Ancak onu bir kez eylem halinde göstermek, ne olduğunu uzun süre anlatmaktan daha kolaydır:

O halde açıklamaya geçelim.
Özellikler

  1. Yükseklik: 300 mm.
  2. Çalışma alanı (kol tamamen uzatılmış halde): taban çevresinde 140 mm'den 300 mm'ye kadar
  3. Kol uzunluğunda maksimum yük kapasitesi, en az: 200g
  4. Akım tüketimi, artık yok: 6A
Ayrıca bazı tasarım özelliklerine de dikkat çekmek isterim:
  1. Manipülatörün tüm hareketli parçalarındaki rulmanlar. Toplamda on bir adet bulunmaktadır: 3 mm'lik bir şaft için 10 adet ve 30 mm'lik bir şaft için bir adet.
  2. Montajı kolaydır. Manipülatörün tüm parçaları vidalamanın son derece uygun olacağı bir montaj sırasının olmasını sağlamaya çok dikkat ettim. Bu özellikle tabandaki güçlü servo tahrik üniteleri için zordu.
  3. Tüm güçlü servolar tabanda bulunur. Yani "alt" servolar "üst" servoları sürüklemez.
  4. Paralel menteşeler sayesinde alet daima yere paralel veya dik kalır.
  5. Manipülatörün konumu 90 derece değiştirilebilir.
  6. Hazır Arduino uyumlu yazılım. Sağ toplanan el fare ile kontrol edilebilir ve kod örneklerini kullanarak kendi hareket algoritmalarınızı oluşturabilirsiniz
Tasarımın açıklaması
Manipülatörün tüm parçaları 3 ve 5 mm kalınlığında pleksiglastan kesilir:

Döner tabanın nasıl monte edildiğine dikkat edin:
En zor olanı manipülatörün altındaki düğümdür. İlk versiyonlarda onu monte etmek çok çaba gerektirdi. Üç servoyu birbirine bağlar ve kuvvetleri kavramaya iletir. Parçalar 6 mm çaplı bir pimin etrafında dönmektedir. Kavrama paralel (veya dik) tutulur çalışma yüzeyi ilave çekiş nedeniyle:

Omuz ve dirsek takılı manipülatör aşağıdaki fotoğrafta gösterilmektedir. Bunun için hala bir pençe ve çubuklar eklememiz gerekiyor:

Pençe ayrıca yataklara da monte edilmiştir. Kendi ekseni etrafında küçülebilir ve dönebilir:
Pençe hem dikey hem de yatay olarak monte edilebilir:

Her şey Arduino uyumlu bir kart ve bunun için bir kalkan tarafından kontrol ediliyor:

Toplantı
Manipülatörün montajı yaklaşık iki saat ve bir sürü bağlantı elemanı alacaktır. Montaj sürecini, her işlemle ilgili ayrıntılı yorumlarla birlikte fotoğraflardaki talimatlar (dikkatli olun, trafik!) şeklinde belgeledim. Ayrıca basit ve ücretsiz bir SketchUp programında detaylı bir 3 boyutlu model yaptım. Böylece her zaman gözünüzün önünde çevirebilir ve garip yerlere bakabilirsiniz:


Elektronik ve programlama
Üzerine servo ve güç konektörlerine ek olarak değişken dirençler taktığım bir kalkan yaptım. Hata ayıklama kolaylığı için. Aslında devre tahtası kullanarak sinyalleri motorlara bağlamak yeterlidir. Ama sonunda bu kalkanı elde ettim ve bunu (ki öyle oluyor) fabrikadan sipariş ettim:

Aslında üç tane yaptım farklı programlar Arduino'nun altında. Biri bilgisayardan kontrol için, biri demo modunda çalışmak için ve diğeri düğmeleri ve değişken dirençleri kontrol etmek için. Bunlardan en ilginç olanı elbette ilkidir. Kodun tamamını burada vermeyeceğim; çevrimiçi olarak mevcuttur.
Kontrol etmek için bilgisayarınıza bir program indirmeniz gerekir. Başlattıktan sonra fare el kontrol moduna geçer. Hareket, XY boyunca hareket etmekten sorumludur, tekerlek yüksekliği değiştirir, LMB/RMB - yakalama, RMB+tekerlek - manipülatörü döndürme. Ve aslında kullanışlı. Yazının başındaki videoda vardı.
Proje kaynakları

İlk etkilenecek Genel Konular, Daha sonra özellikler sonuç, ayrıntılar ve son olarak montaj sürecinin kendisi.

Genel olarak ve genel olarak

Yaratılış bu cihazın Genel olarak herhangi bir zorluğa neden olmamalıdır. Manipüle eden kolun kendisine verilen görevleri yerine getirebilmesi için yalnızca fiziksel açıdan uygulanması oldukça zor olacak mekanik hareketlerin olanaklarını dikkatlice değerlendirmek gerekecektir.

Sonucun teknik özellikleri

Uzunluk/yükseklik/genişlik parametreleri sırasıyla 228/380/160 milimetre olan bir numune dikkate alınacaktır. Kendi elinizle yapılan manipülatör elinin ağırlığı yaklaşık 1 kilogram olacaktır. Kablolu kontrol için kullanılır uzak. Tecrübeniz varsa tahmini montaj süresi 6-8 saat civarındadır. Eğer orada değilse, manipülatör kolunun bir araya getirilmesi günler, haftalar ve göz yummayla aylar sürebilir. Bu gibi durumlarda bunu yalnızca kendi çıkarlarınız için kendi ellerinizle yapmalısınız. Bileşenleri hareket ettirmek için komütatör motorlar kullanılır. Yeterli çabayla 360 derece dönecek bir cihaz yapabilirsiniz. Ayrıca, çalışma kolaylığı için havya ve lehim gibi standart aletlere ek olarak aşağıdakileri stoklamanız gerekir:

  1. Uzun burun pensesi.
  2. Yan kesiciler.
  3. Yıldız tornavida.
  4. 4 D tipi pil.

Uzaktan kumanda uzaktan kumanda düğmeler ve bir mikrodenetleyici kullanılarak uygulanabilir. İsterseniz uzaktan yapın Kablosuz kontrol Manipülatörün elinde bir eylem kontrol elemanına da ihtiyaç duyulacaktır. Ek olarak, yalnızca devrenin stabilize edilmesine ve gerekli büyüklükte bir akımın doğru zamanlarda iletilmesine olanak sağlayacak cihazlara (kapasitörler, dirençler, transistörler) ihtiyaç duyulacaktır.

Küçük parçalar

Devir sayısını düzenlemek için adaptör tekerleklerini kullanabilirsiniz. Manipülatörün elinin hareketini pürüzsüz hale getirecekler.

Tellerin hareketlerini zorlaştırmamasını da sağlamak gerekir. Bunları yapının içine yerleştirmek en uygunudur. Her şeyi dışarıdan yapabilirsiniz, bu yaklaşım zaman kazandıracak ancak potansiyel olarak taşınmada zorluklara yol açabilir. bireysel düğümler veya cihazın tamamı. Ve şimdi: manipülatör nasıl yapılır?

Genel olarak montaj

Şimdi doğrudan manipülatör kolunu oluşturmaya geçelim. Temelden başlayalım. Cihazın her yöne döndürülebilmesini sağlamak gerekir. İyi karar tek bir motorla dönmeye tahrik edilen bir disk platformu üzerine yerleştirilecektir. Her iki yönde de dönebilmesi için iki seçenek vardır:

  1. İki motorun montajı. Her biri belirli bir yöne dönmekten sorumlu olacak. Biri çalışırken diğeri dinleniyor.
  2. Bir motoru, her iki yönde de dönmesini sağlayacak bir devreyle kurmak.

Önerilen seçeneklerden hangisini seçeceğiniz tamamen size bağlıdır. Daha sonra ana yapı yapılır. Rahat çalışma için iki "eklem" gereklidir. Platforma takıldığında eğilebilmelidir farklı taraflarÜssünde bulunan motorların yardımıyla çözüldü. Başka bir veya bir çift, tutacağın bir kısmının koordinat sisteminin yatay ve dikey çizgileri boyunca hareket ettirilebilmesi için dirsek kıvrımına yerleştirilmelidir. Ayrıca maksimum yetenek elde etmek istiyorsanız bileğe başka bir motor takabilirsiniz. Sonraki en gerekli olanıdır, onsuz manipüle edici bir el imkansızdır. Yakalama cihazını kendi ellerinizle yapmanız gerekecek. Burada birçok uygulama seçeneği var. En popüler iki tanesi hakkında ipucu verebilirsiniz:

  1. Tutulacak nesneyi aynı anda sıkıştıran ve açan yalnızca iki parmak kullanılır. Bu en basit uygulamadır ancak genellikle önemli bir yük taşıma kapasitesine sahip olamaz.
  2. İnsan elinin prototipi yaratıldı. Burada tüm parmaklar için tek bir motor kullanılabiliyor ve bu motor yardımıyla bükme/uzatma gerçekleştirilebiliyor. Ancak tasarım daha karmaşık hale getirilebilir. Böylece her parmağınıza bir motor bağlayıp ayrı ayrı kontrol edebilirsiniz.

Daha sonra, bireysel motorların ve çalışma hızlarının etkileneceği uzaktan kumandayı yapmaya devam ediyor. Ve kendi yaptığınız robotik manipülatörü kullanarak denemelere başlayabilirsiniz.

Sonucun olası şematik gösterimleri

DIY manipülatif kol sağlar geniş fırsatlar yaratıcı fikirler için. Bu nedenle kendi uygulamanızı oluşturmanıza temel oluşturabileceğiniz çeşitli uygulamaları dikkatinize sunuyoruz. kendi cihazı benzer amaç.

Sunulan herhangi bir manipülatör devresi geliştirilebilir.

Çözüm

Robotikle ilgili önemli olan şey, işlevsel iyileştirmenin neredeyse hiçbir sınırının olmamasıdır. Bu nedenle dilerseniz gerçek bir sanat eseri yaratmak zor olmayacaktır. Hakkında konuşmak olası yollar Ek bir gelişme vinçtir. Böyle bir cihazı kendi elinizle yapmak aynı zamanda zor değildir; yaratıcı iş, bilim ve tasarım. Ve bunun da gelecekteki yaşamları üzerinde olumlu bir etkisi olabilir. Kendi ellerinizle vinç yapmak zor olacak mı? Bu ilk bakışta göründüğü kadar sorunlu değil. Ek kullanılabilirliğe dikkat etmeye değer mi? küçük parçalarüzerinde döneceği bir kablo ve tekerlekler gibi.


Bağlantı:

Manipülatör parçalarını talimatlara uygun olarak monte ettiyseniz montaja başlayabilirsiniz. elektronik devre. Manipülatör servolarını Trerma-Power Shield aracılığıyla Arduino UNO'ya bağlamanızı ve servoları Trema potansiyometreleri kullanarak kontrol etmenizi öneririz.

  • İlk Trema potansiyometresinin düğmesinin çevrilmesi tabanı döndürecektir.
  • İkinci Trema potansiyometresinin düğmesinin çevrilmesi sol kolu döndürecektir.
  • Üçüncü Trema potansiyometre düğmesinin çevrilmesi sağ kolu döndürecektir.
  • Dördüncü Trema potansiyometre düğmesinin çevrilmesi tutucuyu hareket ettirecektir.

Program kodu (çizim), servolar için koruma sağlar; bu, dönüş aralığının serbest oyun aralığı (iki açı) ile sınırlı olmasından oluşur. Minimum ve maksimum dönüş açıları, her servo için map() fonksiyonunun son iki argümanı olarak belirtilir. Manipülatör ile çalışmaya başlamadan önce yapılması gereken kalibrasyon işlemi sırasında bu açıların değeri belirlenir.

Program kodu:

Kalibrasyondan önce güç uygularsanız manipülatör uygunsuz şekilde hareket etmeye başlayabilir! Önce tüm kalibrasyon adımlarını tamamlayın.

#katmak // Servo servo1 ile çalışmak için Servo kitaplığını bağlayın; //Temel servo sürücü Servo servo2 ile çalışacak bir servo1 nesnesi tanımlayın; //Sol omuz servosu Servo servo3 ile çalışacak bir servo2 nesnesi tanımlayın; //Sağ kol servo Servo servo4 ile çalışacak bir servo3 nesnesi tanımlayın; //Yakalama servosu ile çalışacak bir servo4 nesnesi bildirin int valR1, valR2, valR3, valR4; // Potansiyometre değerlerini saklamak için değişkenleri tanımlayın // Pinleri atayın: const uint8_t pinR1 = A2; // Kontrol potansiyometresinin çıkış numarasından sabiti belirleyin. temel yapı uint8_t pinR2 = A3; // Kontrol potansiyometresinin çıkış numarasından sabiti belirleyin. sol omuz const uint8_t pinR3 = A4; // Kontrol potansiyometresinin çıkış numarasından sabiti belirleyin. sağ omuz const uint8_t pinR4 = A5; // Kontrol potansiyometresinin çıkış numarasından sabiti belirleyin. yakalama const uint8_t pinS1 = 10; // Sabiti temel servo sürücünün pin numarasıyla tanımlayın const uint8_t pinS2 = 9; // Sol kol servo sürücünün pin numarası ile sabiti tanımlayın const uint8_t pinS3 = 8; // Sağ koldaki servo sürücünün pin numarası ile sabiti tanımlayın const uint8_t pinS4 = 7; // Yakalama servo sürücüsünün pin numarasıyla bir sabit tanımlayın void setup())( // Kurulum fonksiyon kodu bir kez yürütülür: Serial.begin(9600); // Seri port monitör servo1.attach'a veri aktarımını başlatın (pinS1); // Servo1'i servo sürücü 1'in nesne kontrolüne atayın servo2.attach(pinS2); // Servo sürücü 2'nin servo2 nesne kontrolüne atayın servo3.attach(pinS3); servo sürücü 3'ün servo4.attach(pinS4); // Servo sürücü 4'ün servo4 nesne kontrolüne atayın) void loop())( // Döngü fonksiyon kodu sürekli olarak yürütülür: valR1=map(analogRead(pinR1), 0 , 1024, 10, 170); servo1.write(valR1); // Tabanla döndür Bu satırda belirtilen açılar: 10 ve 170 değiştirilmesi (kalibre edilmesi) gerekebilir valR2=map(analogRead(pinR2), 0, 1024, 80, 170); // Sol omuzu kontrol edin Bu satırda belirtilen açılar: 80 ve 170'in değiştirilmesi gerekebilir (kalibre edilmesi) ) valR3=map(analogRead(pinR3), 0, 1024, 60, 170); // Sağ omuzu kontrol edin Bu satırda belirtilen açılar: 60 ve 170'in değiştirilmesi (kalibre edilmesi) gerekebilir valR4=map(analogRead(pinR4), 0, 1024, 40, 70); servo4.write(valR4); // Yakalamayı kontrol edin Bu satırda belirtilen açıların: 40 ve 70 olarak değiştirilmesi (kalibre edilmesi) gerekebilir Serial.println((String) "A1 = "+valR1+",\t A2 = "+valR2+",\t A3 = "+valR3+ ", \t A4 = "+valR4); // Köşeleri monitörde göster)

Kalibrasyon:

Manipülatörle çalışmaya başlamadan önce kalibre edilmesi gerekiyor!

    Kalibrasyon, parçaların hareketlerine müdahale etmemesi için her bir servo için dönüş açısının uç değerlerinin belirtilmesinden oluşur.
  • Trema-Power Shield'dan tüm servoların bağlantısını kesin, taslağı yükleyin ve gücü bağlayın.
  • Seri port monitörünü açın.
  • Monitör her servonun dönüş açısını (derece cinsinden) gösterecektir.
  • İlk servoyu (tabanın dönüşünü kontrol eden) D10 pinine bağlayın.
  • İlk Trema potansiyometresinin (pim A2) düğmesinin çevrilmesi ilk servoyu (pim D10) döndürecek ve monitör bu servonun mevcut açısını değiştirecektir (değer: A1 = ...). İlk servonun uç konumları 10 ila 170 derece aralığında olacaktır (döngü kodunun ilk satırında yazıldığı gibi). Bu aralık, döngü kodunun ilk satırındaki map() fonksiyonunun son iki argümanının değerleri yenileriyle değiştirilerek değiştirilebilir. Örneğin 170'in 180 ile değiştirilmesi, servonun belirli bir yöndeki en uç konumunu artıracaktır. Ve 10'u 20 ile değiştirerek aynı servonun diğer uç konumunu azaltacaksınız.
  • Değerleri değiştirdiyseniz çizimi yeniden yüklemeniz gerekir. Artık servo sizin tarafınızdan belirlenen yeni limitler dahilinde dönecektir.
  • İkinci servoyu (sol kolun dönüşünü kontrol eden) D9 pinine bağlayın.
  • İkinci Trema potansiyometresinin (pim A3) düğmesinin çevrilmesi ikinci servoyu (pim D9) döndürecek ve monitör bu servonun mevcut açısını değiştirecektir (değer: A2 = ...). İkinci servonun uç konumları 80 ila 170 derece aralığında olacaktır (döngü taslağının ikinci satırında yazıldığı gibi). Bu aralık ilk servoyla aynı şekilde değişir.
  • Değerleri değiştirdiyseniz çizimi yeniden yüklemeniz gerekir.
  • Üçüncü servoyu (sağ kolun dönüşünü kontrol eden) D8 pinine bağlayın. ve aynı şekilde kalibre edin.
  • Dördüncü servoyu (tutucuyu kontrol eden) D7 pinine bağlayın. ve aynı şekilde kalibre edin.

Manipülatörün montajından sonra kalibrasyonun bir kez yapılması yeterlidir. Yaptığınız değişiklikler (sınır açıların değerleri) çizim dosyasına kaydedilecektir.