İçindekiler:
- Adım 1: Parçalar
- 2. Adım: 3D Basılı Parçalar
- 3. Adım: Kodlayın
- Adım 4: Verileri Alma
- Adım 5: Görüntüleri Etiketleme
- 6. Adım: Eğitim
- Adım 7: Eğitilmiş Modelin Derlenmesi
- Adım 8: Geri Dönüşüm Algılama Modeli
- 9. Adım: Modeli Dağıtın
- Adım 10: Robotik Kolu Oluşturun
- Adım 11: RPI ve Robotik Kolun Bağlanması
- Adım 12: Son Dokunuşlar
- Adım 13: Koşu
- Adım 14: Gelecekteki Çalışma
- Adım 15: Sorular?
Video: Geri Dönüşüm Sıralama Robotu: 15 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:18
Topluluklarda ve işletmelerde ortalama kirlilik oranının %25'e kadar çıktığını biliyor muydunuz? Bu, attığınız her dört geri dönüşüm parçasından birinin geri dönüştürülmediği anlamına gelir. Bu, geri dönüşüm merkezlerindeki insan hatasından kaynaklanmaktadır. Geleneksel olarak, işçiler malzemeye bağlı olarak çöpleri farklı kutulara ayıracaklardır. İnsanlar hata yapmaya ve çöpleri düzgün bir şekilde ayırmamaya mahkumdur ve bu da kirlenmeye yol açar. Kirlilik ve iklim değişikliği günümüz toplumunda daha da önemli hale geldikçe, geri dönüşüm gezegenimizi korumada büyük rol oynuyor. Çöpleri ayırmak için robotları kullanarak, kontaminasyon oranları çok daha ucuz ve daha sürdürülebilir olmasının yanı sıra önemli ölçüde azalacaktır. Bunu çözmek için, farklı geri dönüşüm malzemeleri arasında sıralama yapmak için makine öğrenimini kullanan bir geri dönüşüm sıralama robotu oluşturdum.
Adım 1: Parçalar
Bu eğitimle birlikte takip etmek için aşağıdaki bölümlere sahip olduğunuzdan emin olun:
3D Basılı Parçalar (aşağıdaki adıma bakın)
Ahududu Pi RPI 4 4GB
Google Coral USB Hızlandırıcı
Arduino Uno R3
Raspberry Pi Kamera Modülü V2
5V 2A DC Duvar Güç Kaynağı
DC 12V Güç Kaynağı
SG90 9g Mikro Servolar 4 adet.
M3 x 0,5 mm Paslanmaz Çelik Kendinden Kilitli Naylon Altıgen Kilit Somunu 100 adet.
M3x20 Düğme Başlı Titanyum Vida 10'lu.
MG996R Metal Dişli Tork Analog Servo Motor 4 adet.
Samsung 32GB Seçili Hafıza Kartı
Raspberry Pi Kamera için Adafruit Flex Kablo - 1 metre
M2 Erkek Dişi Pirinç Ara Parçası Standoff Vida Somun Çeşitleri Kiti
60mm 12V Fan
6.69"x 5.12" x 2.95" Proje Kutusu
2. Adım: 3D Basılı Parçalar
Robotik kol için tüm parçaları 3D yazdırmanız gerekecek. Tüm dosyaları burada bulabilirsiniz.
3. Adım: Kodlayın
Lütfen bu eğiticiyi takip etmek için GitHub depomu klonlayın.
Adım 4: Verileri Alma
Farklı geri dönüşüm malzemelerini algılayabilen ve tanıyabilen nesne algılama modelini eğitmek için 2527 görüntü içeren çöp ağı veri setini kullandım:
- 501 cam
- 594 kağıt
- 403 karton
- 482 plastik
- 410 metal
- 137 çöp
Yukarıdaki resim, veri kümesindeki resimlerden bir örnektir.
Bu veri kümesi, bir nesne algılama modelini eğitmek için çok küçüktür. Doğru bir modeli eğitmek için çok az olan sadece yaklaşık 100 çöp resmi var, bu yüzden onu dışarıda bırakmaya karar verdim.
Veri kümesini indirmek için bu google sürücü klasörünü kullanabilirsiniz. dataset-resize.zip dosyasını indirdiğinizden emin olun. Daha hızlı eğitime izin vermek için daha küçük bir boyuta yeniden boyutlandırılmış resim kümesini içerir. Ham görüntüleri kendi beğeninize göre yeniden boyutlandırmak isterseniz, dataset-original.zip dosyasını indirmekten çekinmeyin.
Adım 5: Görüntüleri Etiketleme
Ardından, nesne algılama modelini eğitebilmemiz için farklı geri dönüşüm malzemelerinin birkaç görüntüsünü etiketlememiz gerekiyor. Bunu yapmak için, resimlerdeki nesne sınırlayıcı kutuları etiketlemenize izin veren ücretsiz bir yazılım olan labelImg'i kullandım.
Her görüntüyü uygun etiketle etiketleyin. Bu eğitim size nasıl olduğunu gösterir. Algılama modelinin mümkün olduğunca doğru olmasını sağlamak için her bir sınırlayıcı kutunun her nesnenin sınırına yakın olduğundan emin olun. Tüm.xml dosyalarını bir klasöre kaydedin.
Yukarıdaki fotoğraf, resimlerinizi nasıl etiketleyeceğinizi gösterir.
Bu çok sıkıcı ve zihin uyuşturan bir deneyim. Neyse ki sizin için tüm resimleri sizin için etiketledim! Burada bulabilirsiniz.
6. Adım: Eğitim
Eğitim açısından, Tensorflow kullanarak transfer öğrenimi kullanmaya karar verdim. Bu, büyük miktarda veri olmadan oldukça doğru bir modeli eğitmemizi sağlar.
Bunu yapmamızın birkaç yolu var. Bunu buluttaki yerel masaüstü makinemizde yapabiliriz. Yerel makinemizde eğitim, bilgisayarınızın ne kadar güçlü olduğuna ve güçlü bir GPU'nuz olup olmadığına bağlı olarak çok uzun zaman alacaktır. Bu bence muhtemelen en kolay yol, ancak yine hızın dezavantajı ile.
Transfer öğrenimi hakkında dikkat edilmesi gereken bazı önemli noktalar vardır. Eğitim için kullandığınız önceden eğitilmiş modelin Coral Edge TPU ile uyumlu olduğundan emin olmanız gerekir. Uyumlu modelleri burada bulabilirsiniz. MobileNet SSD v2 (COCO) modelini kullandım. Başkalarıyla da deney yapmaktan çekinmeyin.
Yerel makinenizde eğitim almak için Google'ın öğreticisini veya Windows 10 üzerinde çalışıyorsa EdjeElectronics öğreticisini izlemenizi tavsiye ederim. Şahsen, EdjeElectroncs öğreticisini test ettim ve masaüstümde başarıya ulaştım. Google'ın öğreticisinin işe yarayıp yaramayacağını teyit edemem ama işe yaramazsa şaşırırım.
Bulutta eğitim almak için AWS veya GCP kullanabilirsiniz. Deneyebileceğiniz bu öğreticiyi buldum. Nesne algılama modelinizi süper hızlı eğitebilen Google'ın bulut TPU'larını kullanır. AWS'yi de kullanmaktan çekinmeyin.
İster yerel makinenizde ister bulutta antrenman yapın, eğitimli bir tensorflow modeline sahip olmalısınız.
Adım 7: Eğitilmiş Modelin Derlenmesi
Eğitilmiş modelinizin Coral Edge TPU ile çalışması için onu derlemeniz gerekir.
Yukarıda iş akışı için bir diyagramdır.
Eğitimden sonra, onu donmuş bir grafik (.pb dosyası) olarak kaydetmeniz gerekir. Ardından, onu bir Tensorflow Lite modeline dönüştürmeniz gerekir. Nasıl "Eğitim sonrası niceleme" yazdığına dikkat edin. Transfer öğrenmeyi kullanırken uyumlu önceden eğitilmiş modelleri kullandıysanız, bunu yapmanız gerekmez. Uyumlulukla ilgili tüm belgelere buradan göz atın.
Tensorflow Lite modeliyle, onu bir Edge TPU modeline derlemeniz gerekir. Bunun nasıl yapılacağına ilişkin ayrıntılara buradan bakın.
Adım 8: Geri Dönüşüm Algılama Modeli
Nesne algılama modelini eğitmek, dönüştürmek ve derlemekle uğraşmak istemiyorsanız, geri dönüşüm algılama modelime buradan göz atın.
9. Adım: Modeli Dağıtın
Bir sonraki adım, eğitimli nesne algılama modelini çalıştırmak için Raspberry Pi (RPI) ve Edge TPU'yu kurmaktır.
İlk olarak, bu öğreticiyi kullanarak RPI'yi ayarlayın.
Ardından, bu öğreticiyi izleyerek Edge TPU'yu ayarlayın.
Son olarak, RPI kamera modülünü ahududu pi'ye bağlayın.
Artık nesne algılama modelinizi test etmeye hazırsınız!
Depomu zaten klonladıysanız, RPI dizinine gitmek ve test_detection.py dosyasını çalıştırmak isteyeceksiniz:
python test_detection.py --model recycle_ssd_mobilenet_v2_quantized_300x300_coco_2019_01_03/detect_edgetpu.tflite --labels recycle_ssd_mobilenet_v2_quantized_300x300_coco_2019_01_03/labels.txt
Küçük bir pencere açılmalı ve plastik bir su şişesi veya başka bir geri dönüşüm malzemesi koyarsanız, yukarıdaki resimdeki gibi algılamalıdır.
Programı sonlandırmak için klavyenizdeki "q" harfine basın.
Adım 10: Robotik Kolu Oluşturun
Robotik kol, burada bulduğum 3D baskılı bir kol. Sadece kurulumla ilgili öğreticiyi takip edin.
Yukarıdaki resim robotik kolumun nasıl ortaya çıktığını gösteriyor.
Kodumdaki Arduino I/O pinlerine göre servo pinlerini bağladığınızdan emin olun. Servoları kolun altından üstüne şu sırayla bağlayın: 3, 11, 10, 9, 6, 5. Bu sırayla bağlamamak kolun yanlış servoyu hareket ettirmesine neden olacaktır!
Arduino dizinine gidip basicMovement.ino dosyasını çalıştırarak çalıştığını görmek için test edin. Bu, kolun önüne koyduğunuz bir nesneyi yakalayıp arkasına bırakacaktır.
Adım 11: RPI ve Robotik Kolun Bağlanması
Önce kamera modülünü tırnağın alt kısmına monte etmemiz gerekiyor. Yukarıdaki resim nasıl görünmesi gerektiğini göstermektedir.
Tanınan geri dönüşüm malzemesini alırken hataları en aza indirmek için kamerayı mümkün olduğunca düz bir şekilde hizalamaya çalışın. Malzeme listesinde görüldüğü gibi uzun kamera modülü şerit kablosunu kullanmanız gerekecektir.
Ardından roboticArm.ino dosyasını Arduino kartına yüklemeniz gerekir.
Son olarak, RPI'nin USB bağlantı noktası ile Arduino'nun USB bağlantı noktası arasına bir USB kablosu bağlamamız gerekiyor. Bu onların seri olarak iletişim kurmasını sağlayacaktır. Bunu nasıl ayarlayacağınızla ilgili bu öğreticiyi izleyin.
Adım 12: Son Dokunuşlar
Bu adım tamamen isteğe bağlıdır, ancak tüm bileşenlerimi güzel bir küçük proje kutusuna koymayı seviyorum.
Yukarıdaki resimler nasıl göründüğünü gösterir.
Proje kutusunu malzeme listesinde bulabilirsiniz. Elektroniği monte etmek için birkaç delik açtım ve pirinç ayırıcılar kullandım. Ayrıca, sıcakken RPI ve TPU üzerinden sabit bir hava akışı sağlamak için 4 soğutma fanı da monte ettim.
Adım 13: Koşu
Artık hem robotik kolu hem de RPI'yi çalıştırmaya hazırsınız! RPI'da recycle_detection.py dosyasını çalıştırabilirsiniz. Bu bir pencere açacak ve robotik kol, demo videodaki gibi çalışmaya başlayacaktır! Programı sonlandırmak için klavyenizdeki "q" harfine basın.
Kodla oynamaktan ve eğlenmekten çekinmeyin!
Adım 14: Gelecekteki Çalışma
R. O. S kullanmayı umuyorum. robotik kolu daha hassas hareketlerle kontrol etmek. Bu, nesnelerin daha doğru bir şekilde alınmasını sağlayacaktır.
Adım 15: Sorular?
Herhangi bir sorunuz varsa aşağıya bir yorum bırakmaktan çekinmeyin!
Önerilen:
Plastik Geri Dönüşüm için Otomatik Enjeksiyon Makinesi: 5 Adım
Plastik Geri Dönüşüm için Otomatik Enjeksiyon Makinesi: Merhaba :) Bu Talimat, "plastik geri dönüşüm için otomatik enjeksiyonlu kalıplama makinemiz" hakkındadır. (Akıllı Enjektör olarak adlandırılır)Makinenin arkasındaki fikir, merkezi olmayan bir plastik geri dönüşüm çözümü sunmaktır. Geri dönüşüm genellikle sınırlıdır
Arduino Araba Geri Geri Park Uyarı Sistemi - Adım Adım: 4 Adım
Arduino Araba Geri Geri Park Uyarı Sistemi | Adım Adım: Bu projede Arduino UNO ve HC-SR04 Ultrasonik Sensör kullanarak basit bir Arduino Araba Geri Park Sensörü Devresi tasarlayacağım. Bu Arduino tabanlı Araba Ters uyarı sistemi, Otonom Navigasyon, Robot Mesafesi ve diğer menzil r
Li-Ion Pil Geri Dönüşüm / Şarj Etme: 6 Adım
Li-Ion Pil Geri Dönüşümü / Şarj Ediliyor: Bugün hava bulutlu ve elektronik kutumda bazı kullanılmış/eski şeyler vardı. Bu yüzden gelecekteki projeler için bazı güç paketleri yapmaya karar verdim
KAĞIT AÇ ROBOT - Pringles Geri Dönüşüm Arduino Robotu: 19 Adım (Resimlerle)
KAĞIT AÇ ROBOT - Pringles Recycle Arduino Robot: Bu, 2018 yılında yaptığım Hungry Robot'un başka bir versiyonudur. Bu robotu 3d yazıcı olmadan yapabilirsiniz. Tek yapmanız gereken bir kutu Pringles, bir servo motor, bir yakınlık sensörü, bir arduino ve bazı aletler satın almak. Tüm indirebilirsiniz
Geri Dönüşümlü Su Şişesinden Geri Dönüşüm Hatırlatma Lambası: 7 Adım
Geri Dönüştürülmüş Su Şişesinden Geri Dönüşüm Hatırlatma Lambası: Bu, size geri dönüştürülmüş bir su şişesinden temiz ve basit bir taşınabilir lambayı nasıl yapacağınızı göstereceğim. Sadece saatlerce ışık tutmakla kalmayacak, başkalarını da dünyayı kurtarma mücadelemize katılmaya teşvik edecek bir konuşma parçası yaratacak.Bunları kaydedin