İçindekiler:
- Adım 1: Donanımı Tasarlamak
- Adım 2: Doğru Motorları Seçmek
- Adım 3: Üssün Oluşturulması
- Adım 4: Donanımın Montajı
- Adım 5: Elektronik
- Adım 6: Yazılım ve Seri Arayüz
- 7. Adım: Sonuç
Video: Q-Bot - Açık Kaynak Rubik Küp Çözücü: 7 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Karıştırılmış bir Rubik Küpünüz olduğunu hayal edin, herkesin sahip olduğu ama kimsenin gerçekten nasıl çözeceğini bilmediği 80'lerden oluşan bulmacayı biliyorsunuz ve onu orijinal kalıbına geri getirmek istiyorsunuz. Neyse ki bu günlerde çözme talimatlarını bulmak çok kolay. Bu yüzden, çevrimiçi olun bir videoya bakın, size neşe getirmek için tarafları nasıl çevireceğinizi öğrenin. Ancak birkaç kez yaptıktan sonra bir şeylerin eksik olduğunu fark edeceksiniz. İçinde doldurulamayacak bir boşluk. İçinizdeki mühendisler/yapımcı/hacker, bu kadar şaşırtıcı bir şeyi bu kadar basit bir şekilde çözmekle yetinemez. Sizin için tüm çözümleri yapan bir makineniz olsaydı çok daha şiirsel olmaz mıydı? Bir şey yapsaydın, tüm arkadaşların hayran kalacak mıydı? Yaratıcılığınızın harikalar yaratmasını ve bir Rubik Küpü çözmesini izlemekten daha iyi olamayacağını garanti edebilirim. Öyleyse gelin ve kesinlikle hiçbir dünya rekorunu kırmayacak, ancak size saatlerce keyif verecek (elbette tüm hayal kırıklıklarını yaşadıktan sonra) açık kaynaklı Rubik Küp Çözücüsü olan Q-Bot'u inşa etmenin harika yolculuğunda bana katılın. inşa sürecinde).
Adım 1: Donanımı Tasarlamak
Tam çözücü, Catia'da CAD ile tasarlanmıştır. Bu şekilde, tasarım hatalarının çoğu, herhangi bir fiziksel bileşeni üretmeden önce bulunabilir ve düzeltilebilir. Çözücünün çoğu, bir prusa MK3 yazıcı kullanılarak PLA'da 3D olarak basıldı. Ayrıca, aşağıdaki donanım kullanıldı:
- 8 adet 8 mm alüminyum çubuk (10cm uzunluk)
- 8 lineer bilyalı rulman (LM8UU)
- 2 m'nin biraz altında GT2 6mm triger kayışı + bazı kasnaklar
- 6 NEMA 17 bipolar step motor
- 6 Polulu 4988 step sürücü
- proje için kontrolör olarak bir Arudino Mega
- 12 V 3A güç kaynağı
- arduino'ya güvenli bir şekilde güç sağlamak için bir düşürücü dönüştürücü
- bazı vidalar ve konektörler
- taban için biraz kontrplak
Donanım açıklaması
Bu bölüm kısaca Q-Bot'un nasıl çalıştığını ve yukarıda bahsedilen bileşenlerin nerede kullanıldığını kapsar. Aşağıda tamamen monte edilmiş CAD modelinin bir görüntüsünü görebilirsiniz.
Q-bot, 3D baskılı tutucularla doğrudan Rubik Küpüne bağlı dört motora sahip olarak çalışır. Bu, sola, sağa, ön ve arkaya doğrudan çevrilebileceği anlamına gelir. Üst veya alt tarafın döndürülmesi gerekiyorsa, küpün tamamı döndürülmeli ve bu nedenle motorlardan ikisi uzaklaştırılmalıdır. Bu, kavrama motorlarının her birinin, lineer bir ray sistemi boyunca başka bir kademeli motor ve bir triger kayışı tarafından tahrik edilen kızaklara bağlanmasıyla yapılır. Ray sistemi, kızaktaki boşluklara monte edilmiş iki adet 8 bilyalı rulmandan oluşur ve tüm kızak iki adet 8 mm'lik alüminyum mil üzerinde hareket eder. Aşağıda, çözücünün bir ekseninin alt montajını görebilirsiniz.
X ve y ekseni temelde aynıdır, yalnızca kayışın montaj noktasının yüksekliğinde farklılık gösterirler, bu, tam olarak monte edildiğinde iki kayış arasında çarpışma olmamasını sağlar.
Adım 2: Doğru Motorları Seçmek
Tabii burada doğru motorları seçmek çok önemli. Ana kısım, bir Rubik küpünü çevirebilecek kadar güçlü olmaları gerektiğidir. Buradaki tek sorun, hiçbir Rubik küp üreticisinin bir tork derecesi vermemesidir. Bu yüzden doğaçlama yapmak ve kendi ölçümlerimi yapmak zorunda kaldım.
Genellikle tork, r mesafesindeki dönme noktasının konumuna dik olarak yönlendirilen kuvvet tarafından tanımlanır:
Yani, eğer bir şekilde kübe uygulanan kuvveti ölçebilseydim, torku hesaplayabilirdim. Bu tam olarak yaptığım şey. Küpümü sadece bir tarafının hareket edebileceği şekilde bir rafa kenetledim. Küpün etrafına bir ip bağlanmış ve altına bir torba bağlanmış. Şimdi yapılması gereken tek şey, küp dönene kadar çantadaki ağırlığı yavaşça artırmaktı. Herhangi bir doğru ağırlık olmaması için patates kullandım ve daha sonra ölçtüm. En bilimsel yöntem değil ama minimum torku bulmaya çalışmadığım için oldukça yeterli.
Ölçümleri üç kez yaptım ve sadece güvende olmak için en yüksek değeri aldım. Ortaya çıkan ağırlık 0,52 kg idi. Şimdi Sir Isaac Newton sayesinde, Kuvvetin kütle çarpı ivmeye eşit olduğunu biliyoruz.
Bu durumda ivme, yerçekimi ivmesidir. Böylece gerekli tork ile verilir
Rubik küpünün köşegeninin yarısı da dahil olmak üzere tüm değerleri eklemek, sonunda gerekli torku ortaya çıkarır.
Muhtemelen aşırıya kaçan 0,4Nm'ye kadar uygulayabilen step motorlarla gittim, ancak güvende olmak istedim.
Adım 3: Üssün Oluşturulması
Taban çok basit bir ahşap kutudan oluşur ve gerekli tüm elektronikleri barındırır. Makineyi açıp kapatmak için bir fişe, açık olup olmadığını gösteren bir LED'e, bir USB B bağlantı noktasına ve güç kaynağının takılması için bir sokete sahiptir. 15 mm kontrplak, bazı vidalar ve biraz yapıştırıcı kullanılarak yapılmıştır.
Adım 4: Donanımın Montajı
Artık, taban da dahil olmak üzere gerekli tüm parçalarla, Q-bot montaja hazırdı. Özel parçalar 3D yazdırıldı ve gerektiğinde ayarlandı. Tüm CAD dosyalarını bu dosyanın sonunda indirebilirsiniz. Montaj, tüm 3D baskılı parçaların satın alınan parçalarla takılmasını, motor kablolarının uzatılmasını ve tüm parçaların tabana vidalanmasını içeriyordu. Ek olarak, biraz daha düzenli görünmesi için motor kablolarının etrafına manşonlar koydum ve uçlarına JST konektörleri ekledim.
İnşa ettiğim tabanın önemini vurgulamak için, montajın nasıl göründüğünün bir öncesi ve sonrası görüntüsü burada. Her şeyi biraz toparlamak büyük bir fark yaratabilir.
Adım 5: Elektronik
Elektroniklere gelince, proje oldukça basit. Motorlara güç sağlayan 3A'ya kadar akım sağlayabilen bir ana 12V güç kaynağı vardır. Arduino'ya güvenli bir şekilde güç sağlamak için bir düşürme modülü kullanılır ve tüm step motor sürücülerini barındıran Arduino için özel bir kalkan tasarlanmıştır. Sürücüler, motorları kontrol etmeyi çok daha kolay hale getirir. Bir step motoru sürmek, belirli bir kontrol sırası gerektirir, ancak motor sürücülerini kullanarak, motorun döneceği her adım için yalnızca yüksek bir darbe üretmemiz gerekir. Ayrıca, motorların bağlanmasını kolaylaştırmak için kalkana bazı jst konektörleri eklendi. Arduino için kalkan ilk olarak bir perfboard üzerine yapıldı ve her şeyin olması gerektiği gibi çalıştığından emin olduktan sonra jlc pcb tarafından üretildi.
İşte prototipin ve üretilen pcb'nin öncesi ve sonrası.
Adım 6: Yazılım ve Seri Arayüz
Q-Bot iki bölüme ayrılmıştır. Bir yanda Arduino tarafından kontrol edilen donanım, diğer yanda mevcut karıştırmaya göre küpün çözüm yolunu hesaplayan bir yazılım parçası var. Arduino üzerinde çalışan ürün yazılımı tarafımdan yazılmıştır ancak bu kılavuzu kısa tutmak için burada bununla ilgili herhangi bir ayrıntıya girmeyeceğim. Ona bir göz atmak ve onunla oynamak isterseniz, git depomun bağlantısı bu belgenin sonunda sağlanacaktır. Çözümü hesaplayan yazılım bir windows makinesinde çalışıyor ve bir meslektaşım tarafından yazılmış, yine kaynak koduna bağlantılar bu kitabın sonunda bulunabilir. İki parça, basit bir seri arabirim kullanarak iletişim kurar. Çözümü Kociemba'nın iki aşamalı algoritmasına göre hesaplar. Çözme yazılımı, çözücüye iki bayttan oluşan bir komut gönderir ve bir 'ACK' döndürmesini bekler. Bu şekilde çözücü, basit bir seri monitör kullanılarak test edilebilir ve hata ayıklanabilir. Tam talimat seti aşağıda bulunabilir.
Her motoru bir adım döndürme komutları, bazı adımlayıcıların güç verildiğinde rastgele küçük sıçramalar gerçekleştireceği bir sorun için bir geçici çözümdür. Bunu telafi etmek için motorlar, çözme işleminden önceki başlangıç konumlarına ayarlanabilir.
7. Adım: Sonuç
Sekiz aylık geliştirme, küfür etme, klavyeye basma ve Q-bot dans etme sürecinin ardından nihayet ilk Rubik Küpünü başarıyla çözdüğü bir noktadaydı. Küpün karıştırılmasının kontrol yazılımına manuel olarak eklenmesi gerekiyordu, ancak her şey iyi çalıştı.
Birkaç hafta sonra bir web kamerası için bir montaj parçası ekledim ve üniversitem yazılımı, çekilen görüntülerden küpü otomatik olarak okuyacak şekilde ayarladı. Ancak, bu henüz iyi test edilmedi ve hala bazı iyileştirmelere ihtiyacı var.
Bu talimat ilginizi çektiyse, tereddüt etmeyin ve kendi Q-bot versiyonunuzu oluşturmaya başlayın. İlk başta göz korkutucu görünebilir, ancak bu çabaya çok değer ve eğer ben yapabildiysem siz de yapabilirsiniz.
Kaynaklar:
Bellenimin Kaynak Kodu:
github.com/Axodarap/QBot_firmware
Kontrol yazılımının Kaynak Kodu
github.com/waldhube16/Qbot_SW
Önerilen:
Raspberry Pi ve OpenCV Kullanan Gerçek Zamanlı Rubik Küp Gözü Kapalı Çözücü: 4 Adım
Raspberry Pi ve OpenCV Kullanan Gerçek Zamanlı Rubik Küp Gözü Kör Çözücü: Bu, Rubik küp aracının gözü kapalı çözmek için yapılmış 2. versiyonudur. 1. sürüm javascript ile geliştirilmiştir, RubiksCubeBlindfolded1 projesini görebilirsiniz, öncekinden farklı olarak, bu sürüm renkleri algılamak için OpenCV kütüphanesini kullanır ve e
Rubik Küp Çözücü için Arduino Mega Step Kalkanı: 4 Adım
Bir Rubiks Küp Çözücü için Arduino Mega Step Kalkanı: Bir süre önce, herhangi bir şifreli 3x3 Rubiks Küpünü otomatik olarak çözen bir makine üzerinde çalışıyordum. Bununla ilgili talimatlarımı burada görebilirsiniz. Projede altı motoru sürmek için polulu step sürücüleri kullanıldı. Bu d bağlantılarını yapmak için iki
Sihirli Küp veya Mikro Kontrollü Küp: 7 Adım (Resimlerle)
Magic Cube veya Micro-controller Cube: Bu Instructables'ta size hatalı Mikro-denetleyiciden nasıl Sihirli küp yapılacağını göstereceğim. Bu fikir, Arduino Mega 2560'tan Hatalı ATmega2560 mikro denetleyicisini aldığımda ve bir küp yaptığımda ortaya çıktı. .Sihirli Küp donanımı hakkında, yaptığım gibi
ARS - Arduino Rubik Çözücü: 13 Adım (Resimlerle)
ARS - Arduino Rubik Çözücü: ARS, Rubik küpünü çözmek için eksiksiz bir sistemdir: evet, küpü çözmek için başka bir robot!ARS, 3D baskılı parçalar ve lazerle kesilmiş yapılar ile yapılmış üç yıllık bir okul projesidir: bir Arduino, oluşturulan doğru diziyi alır ev yapımı bir kanepe tarafından
Rubics Küp Çözücü Botu: 5 Adım (Resimlerle)
Rubik Küp Çözücü Bot: Fiziksel bir Rubik küpünü çözen otonom bir robot yapmak. Bu, Robotik Kulübü, IIT Guwahati kapsamında bir projedir. Kolayca bulunabilen basit malzemeler kullanılarak yapılmıştır. Ağırlıklı olarak Servo motorlar kullandık & Onları kontrol etmek için bir Arduino, Akrilik o