İçindekiler:

Otomatik Çöp Kovası: 7 Adım
Otomatik Çöp Kovası: 7 Adım

Video: Otomatik Çöp Kovası: 7 Adım

Video: Otomatik Çöp Kovası: 7 Adım
Video: Siyah Çöp Kovası Mı😍 sizce nasıl duruyor ? :) #kutuaçılımı #kargo #shorts #trendyol 2024, Haziran
Anonim
Otomatik Çöp Kovası
Otomatik Çöp Kovası
Otomatik Çöp Kovası
Otomatik Çöp Kovası

Bu, hareket algılayan otomatik açılan bir çöp tenekesidir. Wifi bağlantısı vardır ve dolduğunda bir metin mesajı gönderir. Bu, Massachusetts Üniversitesi - Amherst'te ECE-297DP için yapılmıştır. Bu kursun temel amacı, akranlarımdan geride olduğumu hissettiğim ve derslerimden öğrendiklerimi deneysel çalışmalarla birleştirmeme fayda sağlayacağı için uygulamalı elektronik ile deneyim kazanmaktı.

İhtiyac duyulan malzemeler:

- 1x Arduino Uno

- 1x ESP-8266

- 2x Mikroservo

- 2 adet Ultrasonik HC-SR04 Hareket Dedektörü

- 1x RBG LED'i

- 3x 330 Ω dirençler

- 1x 3.3 Voltaj Regülatörü

- 2x 100 uF Elektrolitik Kondansatör

- 1x 0.1 uF Seramik Kondansatör

- 1x Corona Ekstra 12'li Uzun Boyunlu Şişe Bira Kabı

Adım 1: Orijinal Planlar ve İlerleme

Orijinal Planlar ve İlerleme
Orijinal Planlar ve İlerleme
Orijinal Planlar ve İlerleme
Orijinal Planlar ve İlerleme
Orijinal Planlar ve İlerleme
Orijinal Planlar ve İlerleme
Orijinal Planlar ve İlerleme
Orijinal Planlar ve İlerleme

Dönemin başında, yapmak istediklerime dair hiçbir planım yoktu. Aklımda bir fikir olmadan bu sınıfa atladım. Başlamak için, hobi elektroniği dünyasında kendimi yavaş yavaş geçmem için kolay bir yol geliştirdim.

Adımlar:

1. Arduino'nun temellerini öğrenin

- Bu, başlangıç kitiyle birlikte gelen SparkFun mucit kılavuzu izlenerek yapıldı. Arduino ile dirençlerin, LED'lerin, piezo elemanlarının (ses), algılamanın ve genel kodlamanın temellerini öğrenmeme izin verdi.

2. Çevrimiçi kendin yap Arduino projelerine bakın

- Bu, yaratıcı ve kullanışlı elektronikler yapmak için biraz ilham bulmaktı.

3. Yapmak istediğim şeyi bulmak için ilhamı kullanın

- Tembel biri olduğum ve gelecek dönem kalacağım arkadaşlarımın temizlikleri pek iyi olmadığı için otomatik çöp kutusu yapmaya karar verdim.

Bunun için orijinal plan, Akran Mentorlarımdan biri olan, başka bir Bilgisayar Mühendisliği öğrencisi olan Bryan Tam ile konuşmakla geldi. Tasarımlarımı eleştirirken onunla yüksek sesle tartışmak, tasarım sürecini anlamama yardımcı oldu. Bir problemi ele alma ve ne kadar imkansız olursa olsun bir çözüm düşünme ve ardından söz konusu projenin nasıl yapılacağını tartışma süreci. Bana mühendislikte tasarım yapmak için hırs ve yaratıcılığın çok önemli olduğunu öğretti.

Başlangıçta, otomatik olarak, çöp kutusunun ne zaman dolduğunu algılayan ve ardından torbayı kapatan veya saran bir çöp kutusu yapmak istedim. Bunu tasarlamanın olası yollarını araştırdıktan sonra, bunun elimde olmadığını fark ettim. Böylece hedefi biraz değiştirdim - dolduğunda metin gönderebilecek bir çöp kutusu yapmak.

Dönemin sonuna yaklaşırken, metni göndermek için WiFi bileşenini entegre etmekte sorun yaşıyordum ve endişeliydim, bu yüzden alarm sistemi olarak başka alternatifler düşündüm. Belki de çöp atılana kadar durmayacak sinir bozucu bir ses çıkarmak için piezo öğelerine baktım. Ayrıca, çöp seviyesini belirtmek için farklı renkler yapmak için LED'leri kullanmayı düşündüm.

Bunu oluşturmak için iki sensöre ihtiyaç duyulacaktır: Biri dışarıdaki bir elin ne zaman açıldığını algılaması için, diğeri ise içeride bulunan çöp seviyesini algılaması için. Başlangıçta, yalnızca WiFi modülü metni bir alarm olarak gönderirdi, ancak dönemin sonuna doğru, bunu desteklemek için çöp kutusunun üstüne bir ışık eklemeye karar verdim.

Bu benim takıldığım ve sonuna kadar gittiğim proje tasarımı.

2. Adım: Araştırma

Bu çileye hazırlanmak için birçok şeyi araştırdım.

İlk önce Arduino'yu kodlamanın genel yolunu araştırıyorum. SparkFun mucit kiti ile pratik yapmak çok yardımcı oldu; pinleri Arduino'ya bağlamaya ve bir breadboard'un nasıl kullanılacağına alışmamı sağladı.

Ardından, kapağı döndürmek için bu şekilde kontrol etmem gerektiğini bildiğim için özellikle servo kullanımı üzerinde çalıştım. İlk önce, zamanlamalarını kontrol etme alıştırması yapıyorum ve sonra, ne zaman aktive olduklarını kontrol edebilmem için kullanımı koşullu ifadelerle birleştiriyorum.

Sonra hangi sensörleri kullanacağımı araştırdım. İki tip vardı: Ultrasonik sensör (HC-SR04) ve kızılötesi sensör (PIR Hareket Sensörü). Ultrasonik sensör, daha sonra geri dönen ve HC-SR04 tarafından okunan bir darbe gönderir ve bu aralıktaki süreyi hesaplayarak, kendisi ile sıçramanın yeri arasındaki mesafeyi belirler. Özellikle çöp çok fazla radyasyon yaymadığı için algılama mesafesinin daha yararlı olacağı için iç sensör için ultrasonik sensörü kullanmaya karar verdim. Sonra hem iç hem de dış sensör için sadece bir HC-SR04 kullanmanın daha kolay olacağına karar verdim.

ESP-8266 hakkında araştırma yaparak, wifi'nin nasıl çalıştığı hakkında çok şey öğrendim. Erişim noktaları ve istasyon noktaları hakkında bilgi edindim. Web sunucularını da olası bir seçenek olarak öğrendim. Sonunda. ESP, Arduino'dan tamamen ayrı olarak programlanabilen kendi kartıdır. Böylece, tüm bu projeyi sadece onu kullanarak yapmak bile mümkün. ESP'yi programlamak için, onu Arduino'ya bağladım ve onu devre dışı bırakmak ve ESP ile USB kablosu arasında bir iletişimci olarak hareket etmesini sağlamak için GND'yi Arduino'ya bağladım.

Daha sonra, ESP'yi bir web sitesinden veriye erişmek veya veri talep etmek isteyen bir müşteri olarak hareket ettirebileceğimi öğrendim. Bunu bilerek, bir olay tetiklendiğinde (bir müşteri belirli bir URL'den veri istediğinde, bir metin gönderecek şekilde) web kancalarını SMS mesajlaşmalarına bağlamak için bir uygulama oluşturmak için IFTTT.com web sitesini kullandım.

Araştırdığım diğer bir şey voltaj regülatörleri, diyotlar ve dirençlerdi. LED'in LED'i Arduino'ya bağlaması için dirençlere ihtiyaç vardı. Diyotlar ve voltaj regülatörleri, ESP-8266'ya güç sağlamak için olası çözümlerdi, çünkü Vcc için kesinlikle 3,3V alır. Voltaj regülatörü en kolay çözümdü. Arduino'da 3.3V seçeneği olmasına rağmen daha fazlasını öğrenmek için bir fırsat olarak değerlendirdim.

Bunu takiben, çalışan bir voltaj regülatörü için gerekli olan kapasitörleri öğrendim. Kondansatörler, çok fazla "sıçraması" veya "hıçkırması" durumunda voltajı dengelemeye yardımcı olur. Voltaj regülatörleri için normal kurulum 2 elektrolitik ve 1 seramik kondansatördür.

Araştırmanın çoğu, yaptığım gibi çok fazla hata olduğu için kodumda hata ayıklamaya çalışıyordu.

3. Adım: Karşılaştığım Zorluklar ve Bunları Nasıl Yendim

Dönemin başındaki zorlukların çoğu deneyimsiz olmamdan kaynaklanıyordu. Daha önce bir şey inşa etmeyi hiç düşünmemiştim, bu yüzden çok hırslı ya da çok basit olmaktan korktum. Bu yüzden bir fikir seçmeyi bu kadar uzun süre erteledim.

Bunun üstesinden gelmek için deneyimli bir kıdemli ile konuşmak kesinlikle yardımcı oldu. Bryan fikirlerimi eleştirebildi ve bana hangilerinin doğru, hangilerinin yanlış yöne gittiğini söyledi. Beceri düzeyimi, erişebildiğim kaynakları ve zaman yönetimini dikkate almam gerektiğini anlamama yardımcı oldu.

Zaman yönetimi de benim için çok zordu. Zaman yönetimi konusunda bir zaafım olduğunu zaten biliyorum, özellikle bu dönem 21 krediyle aşırı yüklendiğim için inanılmaz derecede dolu olduğu için.

Projem üzerinde çalışmaktan fedakarlık etmek zorunda kaldığım zamanlar oldu, ancak bunun üstesinden gelmek için hafta sonları en az bir saat araştırmayı proje üzerinde çalışmaya ve hafta sonları da iki haftada bir M5'e gitmeye adadım.

Karşılaştığım bir diğer zorluk da birçok parça hakkında bilgi eksikliğimdi. Nasıl çalıştıklarını veya hangi kabloların nereye bağlandığını bilmiyordum. Bunun üstesinden gelmek için, gerekli voltaj girişinin ne olduğunu ve VCC, GND ve girişlerin nereye bağlanması gerektiğini anlamama yardımcı olan çevrimiçi veri sayfalarına bakmanın değerli varlığını öğrendim. Servoları hareket dedektörlerine bağlamaya çalıştığımı ve servolar hiç çalışmadığı için hayal kırıklığına uğradığımı özellikle hatırlıyorum.

Bu, onlarda bir sorun olduğunu umarak farklı servoları denememe neden oldu. Ancak yine de çalışmadılar, bu da ya benim kablolamam ya da benim kodum olması gerektiği anlamına geliyordu. Daha sonra servoları 4 AA pile bağlayarak harici bir güç kaynağı kullanmayı denedim, çünkü bazen bir PC'deki USB'nin onlara güç vermek için yeterli voltaj vermediğini okumuştum. Sonunda, sadece veri sayfasına bakmaya karar verdim ve bunun, kablolamamın her zaman yanlış olmasından kaynaklandığını fark ettim.

Bu konudaki en zor engelim WiFi bileşenini Arduino'ya entegre etmeye çalışmaktı. Çevrimiçi olarak birçok öğreticiye bakıyordum ve programlamayı anlamak benim için kavramak zordu. Ancak, belirli bir web sitesi bana yardımcı oldu ve beni IFTTT ile tanıştırdı. Bir zafer kazandığıma inanıyordum, ancak panoların ayrı olduğunu fark etmedim ve panoları farklı kodlarla programladım. Bir hafta boyunca onları nasıl bağlayacağımı bulmaya çalıştım ama internet yardımcı olmadı. Bu engeli aşmak için sonunda Dr. Malloch'tan yardım istedim. Ben çok gururlu bir insanım ve işleri yalnız yapmak isteme eğilimindeyim. Daha önce bana yardım etmişti, ancak bu benim için bir sorun değildi, daha ziyade projeme yaklaşmanın olası yollarının tartışılmasıydı. Sadece Dr. Malloch'a sormak, ESP-8266'mı entegre etmeyi hemen çözdü.

Bu proje benim yerime geçmeme yardımcı oldu ve mühendislik tek başına bir proje değil, bir ekip dinamiği olduğu için daha fazla çalışmam ve insanlardan yardım istemem gerektiğini fark ettim.

4. Adım: Öğrenme Sürecini Kolaylaştıracak M5'te Yapılan Değişiklikler

Öğrenme Sürecini Kolaylaştırmaya Yardımcı Olmak İçin M5'te Yapılan Değişiklikler
Öğrenme Sürecini Kolaylaştırmaya Yardımcı Olmak İçin M5'te Yapılan Değişiklikler

M5 bu dönem benim için harika bir araçtı. Zaten yeni kaşifler ve deneyimli gaziler için birçok kaynakla birlikte geliyor.

M5'in daha geniş bir konu yelpazesi hakkında daha fazla atölye çalışması düzenleyerek ve onları daha fazla duyurulmasını sağlayarak öğrenme sürecini kolaylaştırmaya yardımcı olabileceğini düşünüyorum. M5'te yapılan atölyeleri zar zor duymuştum ve bildiğim tek şey lehim atölyeleriydi.

"Tasarım nasıl yapılır" veya "3D Yazıcı nasıl kullanılır" gibi diğer atölye çalışmaları da yardımcı olacaktır. Belki bu atölyeleri vardır ama ben onlardan hiç haber alamadım.

Adım 5: Sonunda Başardıklarım

Otomatik çöp tenekesi yapabildim

Daha da önemlisi zaman yönetiminin önemini, devrelerin nasıl kurulacağını ve elektronik parçaların nasıl kullanılacağını öğrendim. Arduino, dalgalar ve algılama, dirençler, devre tahtaları, WiFi, ESP-8266, web sunucuları, voltaj düzenleyiciler, diyotlar vb. hakkında bilgi edindim. Tam olarak aklımdakileri gerçekleştirebildim. Elektronik ve devre hakkında uygulamalı düzeyde bir anlayış kazanmak.

Bu projeyi yaratmak bazen son derece sinir bozucu olsa da, yapmak çok eğlenceli ve ödüllendirici olduğu için bende de yaratıcı bir ateş yaktı. Sonunda bir parçanın nasıl çalıştığını anlamak veya kodun istediğim gibi çalışmasını sağlamak, saatlerce süren ince ayar ve değişikliklere değdi. Yapmak istediğim şeyin bu olduğunu anlamama yardımcı oldu. Dönem başında Elektrik ve Bilgisayar Mühendisliği konusunda deneyimim olmadığı için sevip sevmediğim konusunda tereddütlüydüm. Birinin bir sporu, video oyununu veya hobisini denemeden sevip sevmediğini bilmemesi gibi.

Bu konudaki en büyük başarım, Elektrik ve Bilgisayar Mühendisliğine devam etmek istediğimi güvenle söyleyebilmek oldu.

Adım 6: Başka Biri Benim Adımlarımı Nasıl Takip Edebilir?

Eğer birisi benim dönem başında bulunduğum durumdaysa, "Orijinal Planlar ve İlerleme" bölümünde özetlediğim adımların aynısını yapmanı tavsiye ederim. Bu gerçekten ne yapmak istediğimi ve ne yapabileceğimi yavaşça belirlememe yardımcı oldu.

Spesifik olarak, bu proje için nasıl yapılacağını aşağıda özetleyeceğim.

Adım 1: IFTTT.com'a gidin, telefon numaranızı kaydedin ve ardından bir uygulama oluşturun. Web kancası olarak "if"i ve SMS olarak "o"yu seçin. Oluşturulduktan sonra, arama kutusunda Maker Webhooks'u arayın ve belgelere tıklayın. Bilgileri kendi etkinlik adınızla doldurun ve URL'yi kopyalayın. Bu, altta bulunan ESP-8266 kodu için kullanacağınız URL'dir.

Adım 1: ESP-8266'yı şu şekilde bağlayın:

RXD -> RX

TXD -> TX

VCC -> VCC

CH_PD VCC

GPIO0 -> GND

GND -> GND

Ardından, devre dışı bırakmak için Arduino üzerindeki GND'yi üzerindeki Sıfırlama'ya bağlayın.

Adım 2: En alttaki kodu girin ve ESP-8266'ya yükleyin (önce esp-8266 kartını IDE'ye indirin). Ardından ESP-8266'nın fişini çekin.

Adım 3: Arduino'daki pin 8 ve pin 9'a servoları bağlayın

Adım 4: İlk HC-SR04 sensörünü pin 10 ve 13'e bağlayın (sırasıyla trig ve eko için). Ardından ikincisini 11 ve 12 pinlerine bağlayın (yine sırasıyla trig ve echo için).

Adım 5: RGB LED'i 4 (kırmızı), 5 (yeşil) ve 6 (mavi) pinlerine bağlayın.

Adım 6: GPIO2'yi pin 2'ye bağlayın

Adım 7: En alttaki (ECE_297_DP) kodu girin ve Arduino'ya yükleyin.

Adım 8: Eski bir geri dönüştürülmüş bira kutusu ve kapak için bir parça karton bulun. Buzlu şeker çubuklarını servolara sıcak yapıştırın ve ardından servoları her iki taraftaki botun içine sıcak yapıştırın. Kapağı dondurma çubuklarına bantlayın. İki sensörü kapağa bantlayın (iç kısım çöpü algılayacak olandır (pim 11 ve 12) ve dış kısım hareketi algılayacak olandır (pim 10 ve 13). Ardından LED'i kapağın üstüne bantlayın. Ve çirkin kabloları gizlemek için kabloları kutunun arkasına bantlayın.

7. Adım: Daha Sonra Ne Yapacağım

Projede ilerlerken, LED'e ek olarak sesli bir alarm uygulamak için bazı fikirlerim vardı. ESP-8266'yı çalıştırdığım için çalışmamaya karar verdim. Ancak, ilerleyecek olsaydım, bir tane eklemek ilginç olurdu ve insanları çöpü dışarı çıkarmaya teşvik ederdi.

Ayrıca, daha kesin bir proje üzerinde çalışmak isterdim, çünkü bu çoğunlukla bir kavram kanıtı projesidir. İlerleyecek olsaydım, gerçek bir çöp kutusu veya daha ağır bir plastik kap kullanırdım. Ek olarak, çok dağınık olduğu için kablolamada daha verimli olmayı isterdim.

ESP-8266'ya bir alternatif, entegre edememekten endişe duyduğum sırada bir Bluetooth modülü kullanmaktı. Arkadaşım Sean bana daha önce projesinden telefonuna veri göndermek zorunda olduğu bir proje yaptığını ve bir Bluetooth modülü kullandığından bahsetmişti. Nispeten kolay olduğunu söyledi. Ancak, ciddi bir dedektiflik çalışması yapmadan önce WiFi modülünü çalıştırdım. Sanırım bu yolun beni nereye götüreceğini görmek ilginç olurdu.

Bunun dışında "otomatik çöp poşeti sarma" kısmını uygulamayı çok isterdim, ancak bu şu an için hala ligimin dışında. Belki gelecekte bu projeyi tekrar gözden geçirip daha verimli hale getirmeye çalışacağım.

Önerilen: