İçindekiler:
- Adım 1: Araçlar ve Malzemeler
- Adım 2: İnşa Edin
- Adım 3: Yazılımı Hazırlayın
- Adım 4: Bir Rubik Küpünü Çözün
- Adım 5: Kaynak Kodu
Video: BricKuber Projesi – Raspberry Pi Rubiks Küp Çözme Robotu: 5 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:21
BricKuber, bir Rubik küpünü yaklaşık 2 dakikadan daha kısa bir sürede çözebilir.
BricKuber, kendiniz oluşturabileceğiniz açık kaynaklı bir Rubik küp çözme robotudur
Raspberry Pi ile bir Rubiks küp çözen robot yapmak istedik. Hız için gitmek yerine basitlikle gittik: Bir Raspberry Pi, bir BrickPi kitiniz ve standart bir LEGO Mindstorms EV3 veya NXT Kitiniz varsa, adımlarımızı kolayca takip edebilmelisiniz. Yazılım Python programlama dilinde yazılmıştır. Github'daki tüm kaynak kodunu burada görebilirsiniz.
Arka Plan Rubik küpü yakın zamanda geri dönüş yapmaya başladı. 1974'te icat edildi, dünyanın en çok satan oyuncağı. Ancak bunları çözmek düşünce, çaba ve beceri gerektirir… öyleyse neden bir robotun yapmasına izin vermiyorsun? Bu projede bir Raspberry Pi, bir BrickPi ve bir dizi LEGO Mindstorm alıp bir Rubik küp çözen robot yapıyoruz. Çözücüye çözülmemiş bir Rubik küpü yerleştirin, python programını çalıştırın ve Rubik küpünüz çözüldü! Proje, Rubik küpünü doğrudan çözmek için Pi'yi kullanıyor. BrickPi3, çözülmemiş Rubik küpünü alır ve Raspberry Pi, Raspberry Pi Kamera ile Rubik küpünün her iki tarafının resmini çeker. Pi, renkli karelerin küpte nerede olduklarını gösteren bir metin haritası oluşturur. Küpü tamamen haritalandırdığında, Pi, Rubik küpünü çözmek için gereken hareketleri haritalamak için “kociemba” python kitaplığını kullanır. Bu bilgi, LEGO motorlarını kullanarak Rubik küpünü çözmek için Pi ve BrickPi3 tarafından alınır. Sonuç: çözülmüş bir Rubik küpü.
Adım 1: Araçlar ve Malzemeler
- BrickPi3 – Rubik küp çözücüsünü çözen LEGO motorlarını kontrol etmek için BrickPi'yi kullanacağız.
- Raspberry Pi – Pi, işlemeyi yapacak, fotoğraf çekecek ve BrickPi'ye komuta edecek.
- Raspberry Pi Kamera – Pi Kamera, çözülmemiş Rubik küpünün bir resmini çekecektir.
- Ethernet Kablosu – Makinenizin internete bağlı olması gerekir. Bunu wifi üzerinden yapmak istiyorsanız, bu da sorun değil!
- Raspbian for Robots SD Card – Raspberry Pi'yi çalıştıran yazılım. Bu, bu eğitim için gereken yazılımın çoğuyla birlikte gelir. Ayrıca yazılımı ücretsiz olarak indirebilirsiniz.
- LEGO Mindstorms EV3 Kit (31313) – Bir yığın LEGO ve iki büyük motora, bir servo motora ve Ultrasonik Sensöre ihtiyacınız olacak.
- Bir Rubik Küpü - Burada oldukça özgürce dönen bir tane bulduk. Yine de hemen hemen her 9x9x9 Rubik küpünü kullanabilirsiniz.
Adım 2: İnşa Edin
Çözücüyü Oluşturmak
Bu tasarım, LEGO EV3 için MindCub3r tasarımından ilham almıştır. BricKuber'i oluşturmak için MindCub3r'yi oluşturarak başlayın. Tam LEGO yapım talimatları burada bulunabilir.
Rubiks küp çözücü tasarımının üç ana hareketli parçası vardır. Birincisi, Rubik küpünü tutan bir beşik. İkincisi, Rubik küpünü çevirmek için kullanılan bir kol olan karıştırıcıdır.
Son olarak bir kamera kolu ekliyoruz. MindCubr'un orijinal tasarımında bu, EV3 renk sensörünü Rubik küpü üzerinde tutuyordu. Değiştirilmiş tasarımımızda, Rubik küpü üzerinde bir Raspberry Pi Kamera tutar. Küpü manipüle etmek için iki LEGO Mindstorms motoru kullanıyoruz: ilki, küpü döndürmek için kızağın altına oturur ve ikincisi, küpü zıt bir eksende döndürmek için karıştırıcı kolu hareket ettirir.
BrickPi3'ü birleştirin
BrickPi3 için montaj talimatlarını burada bulabilirsiniz. Kasayı monte etmemiz, BrickPi3'ü, Raspberry Pi'yi, Raspberry Pi Kamerayı takmamız, bir SD Kart eklememiz ve pilleri eklememiz gerekecek. Yazılımın kurulumunu kolaylaştırmak için Raspbian for Robots, zaten kurulum yapmanız gereken yazılımların çoğuyla birlikte gelir. En az 8 GB'lık bir SD Karta ihtiyacınız olacak ve diski SD Kartın tam boyutuna uyacak şekilde genişletmek isteyeceksiniz.
BrickPi3'ü takın
BrickPi3'ü LEGO montajına ekliyoruz. BrickPi3'ü desteklemek ve BricKuber gövdesiyle aynı seviyeye getirmek için LEGO EV3 "kanatlarını" kullandık. Bu, güç paketine 8XAA pil eklemek ve BrickPi3 güç paketini LEGO aksamına takmak için iyi bir adımdır. Programlama için BrickPi3'ü USB gücüyle Raspberry Pi'ye çalıştırabilirsiniz, ancak motorları hareket ettirmek için Güç Paketi ile güç sağlamanız gerekir.
Motorları BrickPi3'e Bağlayın
Shuffler Motorunu “MD” motor portuna takın. Beşik motorunu BrickPi3 üzerindeki “MA” bağlantı noktasına takın. Kamera sensör motorunu “MC” bağlantı noktasına takın (bu daha küçük servo benzeri motordur). Kamerayı hareket ettirmeyecek olsak da, motorları kullanarak kameranın konumunu ayarlamak isteyebilirsiniz.
Raspberry Pi Kamerayı Takın
LEGO Kamera desteğini kullanarak kamerayı takın. Kameranın küçük siyah lensi, iki LEGO ışın desteği arasına sığmalıdır. Kamerayı bir miktar elektrik bandıyla LEGO desteklerine sabitleyin. Bu, kameranın tüm Rubik küpünü yakalayabilecek konumda olduğundan emin olmak için iyi bir zamandır. raspistill komutu ile deneme fotoğrafı çekebilirsiniz.
raspistill -o cam.jpg
Küpün resmin ortasında iyi ortalanmış olup olmadığını kontrol edin.
Adım 3: Yazılımı Hazırlayın
BrickPi3 ile birlikte gelen özel imajımız olan Raspbian veya Raspbian for Robots'un herhangi bir sürümünü kullanabilirsiniz. Raspbian'ın standart bir sürümünü kullanıyorsanız, komutu kullanarak BrickPi3 kitaplıklarını yükleyebilirsiniz.
sudo curl -kL dexterindustries.com/update_brickpi3 | bash
Bu adım, BrickPi3'ü Raspbian Görüntünüzde çalıştırmak için gereken tüm kitaplıkları kuracaktır. Raspbian for Robots kullanıyorsanız bu adımı atlayın: BrickPi3 zaten kurulu.
Son olarak, şu komutu kullanarak tüm proje bağımlılıklarını kurun:
sudo curl https://raw.githubusercontent.com/DexterInd/Brick… | bash
Bu adım için BrickPi3'ünüzün internete bağlı olması gerekir. Rubik küpünü çözmek için kullanılan, Github'da Daniel Walton (@dwalton76) tarafından yazılan bazı önemli kütüphaneler de dahil olmak üzere projenin bağlı olduğu bir dizi kütüphane var.
Adım 4: Bir Rubik Küpünü Çözün
Beşiğe çözülmemiş bir Rubik küpü yerleştirin. komutu çalıştırın
sudo python ~/Dexter/BrickPi3/Projects/BricKuber/BricKuber.py
Robot, küpü her bir yüze çevirecek ve kamera, Küp'ün her iki yanından birer tane olmak üzere 6 fotoğraf çekecektir. Raspberry Pi, altı resimden küp konfigürasyonunu belirleyecektir. Cube konfigürasyonu, verimli bir çözüm bulmak için kociemba Python kütüphanesine iletilecektir. Son olarak robot, Rubik Küpünü çözmek için hamleleri gerçekleştirecek!
Adım 5: Kaynak Kodu
BricKuber için tüm kaynak kodları burada açık kaynak kodlu github depomuzda bulunabilir.
Bu proje, komut tarafından yüklenen aşağıdaki yazılım paketlerini kullanır
Önerilen:
LED Küp Nasıl Yapılır - LED Küp 4x4x4: 3 Adım
LED Küp Nasıl Yapılır | LED Küp 4x4x4: Bir LED Küp, basit 5 mm LED'lerin dijital piksel rolünü oynadığı bir LED ekran olarak düşünülebilir. Bir LED küp, görme kalıcılığı (POV) olarak bilinen optik bir fenomen kavramını kullanarak görüntüler ve desenler oluşturmamıza olanak tanır. Yani,
MP3 Kod Çözme için Arduino Kütüphanesi: 4 Adım
MP3 Kod Çözme için Arduino Kitaplığı: ESP32 ve ARM M serisi MP3 kod çözme gibi hızlı mikro denetleyicilerin artan yaygınlığı nedeniyle artık uzman donanım tarafından yapılması gerekmez. Kod çözme artık yazılımda yapılabilir. Harika bir kütüphane var
Doğruluk Tablolarını Çözme: 10 Adım
Doğruluk Tablolarını Çözme: Doğruluk tablosu, bir sorunun tüm sonuçlarını görselleştirmenin bir yoludur. Bu talimat seti, ayrık matematiğe yeni başlayan kişiler için yapılmıştır. Bugün bu yönergelere özel örnek bir problemle pratik yapacağız. sen
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
Labirent Çözme Robotu (Boe-bot): 5 Adım
Labirent Çözen Robot (Boe-bot): Bu nasıl yapılır, basit malzemeler ve bir robot kullanarak kendi labirent çözme robotunuzu nasıl tasarlayacağınızı ve yapacağınızı gösterecektir. Bu aynı zamanda kodlamayı da içerecektir, bu nedenle bir bilgisayara da ihtiyaç vardır