Biraz ısınıyor, yaz ve tüm bunlar. Masamda Çinli bir hayranım var, ama yeni büyük masamın farklı uçlarında çalışıyorum ve fan neredeyse her zaman esiyor ve her seferinde onu çevirmek bir şekilde üzücü. Yani bugün otomatik olarak hedefe yönelik bir fan yapacağız.
Bu nedenle, fanın diğer nesnelere yönelik olmaması için, masadaki durumu dikkate alarak hedefin konumunu izlememiz gerekir. İdeal olarak, elbette, bir kamera ile ahududu pi mini bilgisayar alabilir ve hareketleri veya parlak bir tişörtü tanımak için bir makine görme kütüphanesi kullanabilirsiniz.
Ancak bu oldukça zor bir iş ve kurulun kendisi platformdan 10 kat daha pahalı arduino, hangi kamera ile baş edemez. Ancak kameranın yanı sıra, hedefi belirlemek için başka yollar da var, örneğin bir kuruş ultrasonik mesafe sensörü.
Bir kez internette rastladı arduino ve bu sensöre dayalı ilginç bir proje "radar". Projenin kendisi oldukça işe yaramaz, ancak fikrin kendisi harika - mesafe sensörünü döndürmek ve alanı taramak, dönme açısına bağlı.
Bu projeyi eğlenmek için tekrar edelim ve sonra devam edeceğiz.
Bu, sensörün döndürülmesi gerektiği anlamına gelir, bunun için normal model servo kullanılır (kim bilmez, servo, şanzımana ve açıya geri beslemeye sahip bir motordur, yani dönüş açısını ayarlayabiliriz ve açılacaktır).
Akıllı olmayalım ve sadece bisiklet odasındaki halkayı kullanarak sensörü sabitleyin.
Devreyi bir breadboard üzerinde birleştiriyoruz.
Hepsi bu, arduino'daki bellenimi indirmek için kalır. Bu sürüm daha hızlı bir kütüphane kullanıyor.
Kaynakları proje sayfasından indirebilirsiniz, bağlantı videonun altındaki açıklamada bulunabilir. Orada tüm ayrıntılı talimatları bulacaksınız, özellikle arduino'yu ilk almış olanlar için büyük bir makale. Genel olarak firmware'i panoya yüklüyoruz ve radarımız canlanıyor. Şimdi bilgisayarda radardan veri alacak bir program çalıştırmanız gerekiyor (aynı zamanda proje klasöründe, ancak başlatmak için bir işleme ortamına ihtiyacınız var, resmi web sitesinden indirebilirsiniz).
Başlıyoruz ve burada sadece bir anı yapılandırmanız gerekiyor - arduino'nun bağlı olduğu bağlantı noktası numarası. Bu, arduino ide programında seçilenle aynı sayıdır, sadece manuel olarak girmeliyiz.
Başlıyoruz.
İşte bu, radarımız harika çalışıyor ve bulunan engellere olan mesafeyi gösteriyor. Gördüğünüz gibi, sadece bir kişi veya kafa şeklinde büyük bir hedefi tespit etmek için yeterli doğrulukla değil, aynı zamanda ilginç deneyler için bir alan haline gelebilecek küçük şeylerle de başa çıkıyor. Herkes ahududu pi ile eğlenirken, kendime meydan okumaya ve hedefi tanımak ve hedeflemek için tam anlamıyla kör bir sistem öğretmeye karar verdim. Bu, arduino başlangıç kitinin yardımıyla bile tekrarlanabilecek harika bir proje olacak. Yapalım ve iş algoritmasını düşünelim.
Bu nedenle, sistemin yetenekleri neredeyse sınırlıdır. Sadece radardan uzaklaşıyoruz, ancak her boyutun hangi açıya karşılık geldiğini biliyoruz. Akla ilk gelen şey bir çalışma alanı haritası oluşturmak. Yani, bir geçiş yaparız ve mesafenin hangi açıda olduğunu hatırlarız. Şimdi, sonraki geçişlerde, haritamıza göre her açı için farkı bulabiliriz. Ve böylece zaten bilinen değerlerin arka planında öne çıkacak yeni bir nesne görebiliriz. Şimdi sistemi hedefleri tanımlamayı öğretmelisiniz. Bu seçeneği deneyelim: birbiri ardına bulunan ayırt edici noktaların sayısını ele alacağız, yani hayatta, radarın taradığı belirli bir alan olacak.
Hedefi ele alacağız - alan belirli bir boyuttan daha büyük. Bu, tüm ölçüm gürültüsünü derhal filtreler. Ayrıca, bir alanı tararken sistemi birkaç hata için affetmeyi öneriyorum, çünkü ultrasonik sensör mükemmel değil.
Radar geniş bir alanı tanıyabilir, yani bu bölgenin başlangıcının açısını ve koordinat sistemindeki uç açısını bilir. Sadece bu alanın ortasını hesaplamak ve radarı oraya yönlendirmek ve artık hareket etmemesini sağlamak. Bu bir tutma modu olacaktır.
Mesafeyi ölçmeye devam edeceğiz ve ölçülen nokta aniden radarın görünürlük aralığını terk ederse, bir süre sonra tekrar hedef arama moduna geçeceğiz. Anlamayanların hepsi bu, bilgisayara artık ihtiyaç duyulmuyor, arduino her şeyi kendi başına yapacak. Sadece 5 voltluk bir güç kaynağından güç almak yeterlidir. Ürün yazılımı proje klasöründedir, oynayabileceğiniz ve her şeyi kendiniz için yapılandırabileceğiniz bir dizi ayar vardır.
Böylece sistemi başlatıyoruz. İlk olarak, kalibrasyon kenardan kenara gider. Sistem, koordinat sistemindeki kalibrasyon dizisindeki mesafeyi hatırlar. Sonra iş derhal başlar, alanı tararız, eğer hedefi fark edersek, açısal boyutunu ve ortadaki amacını buluruz. Bir saat gibi çalışır ve neredeyse hedefin merkezine yöneliktir.
Bu arada, tüm zaman gecikmeleri yapılandırılabilir, özellikle de hedeflerin kaybı ile yeni bir taramanın başlaması arasındaki zaman, aksi takdirde sistemin yavaşladığını düşünebilirsiniz - böyle bir şey yok, sadece ayarlayın. Genel olarak, fan için beyinler hazır, demir toplayalım.
Bu fan yaklaşık 5 yıl önce aliexpress tarafından satın alındı. Kompakt, USB ile çalışıyor ve bu proje için harika. Ayrıca, sabit fiyatlı veya ev eşyalarında bir usb fan arayabilirsiniz.
Bu fana bir bakalım ve durumunda kendi elektronikleriyle tıkanabilecek boş alan olup olmadığını görelim.
Arduino nano, maalesef buraya uymuyor, ancak aynı şey, ancak daha küçük ve gemide bir programcı olmadan bir arduino pro mini var, ama mükemmel uyuyor.
Ve neden arduino ile fanın gücünü kontrol edip yerel düğmeyi atmıyorsunuz? Yeterli alan yok, röle sığmayacak, bu nedenle bir alan etkili transistör kullanacağız.
Hala 100 ohm ve 10 kOhm'luk iki dirence ihtiyacı var. Düğmeye müdahale etmemesi için düğmeyi tamamen kaldırıyoruz. Bağlantı şeması şöyle görünecektir:
Mesafe bulucuyu sabit sürücüden bir kabloyla bağlayalım.
Ayrıca devrede bir kapasitör var, gerekli değil, ama çok arzu edilir, çünkü servo sürücü usb için oldukça belirgin akım yükselmeleri veriyor ve bu mesafe ölçümlerini etkileyebilir.
Ürün yazılımını pro mini'de indirmek için harici bir programcıya ihtiyacınız var, Çinlilere bir kutu bira gibi mal oluyor ve şöyle bağlanıyor:
Başka bir şey yapmanıza, indir düğmesine tıklamanıza ve ürün yazılımı her zamanki gibi nano kartına yüklenmesine gerek yoktur.Muhafaza kapanır ve tüm teller anahtardaki deliklerden çıkar.
Ardından, servoyu düzeltmeniz gerekir. Fanı bir rafa asmaya ve servoyu bir köşeye tutturmaya karar verildi.
Köşenin dönmesini önlemek için çift taraflı bant kullanıyoruz, ancak bisiklet kamerasından elastik daha iyi olurdu.
Sensör için alan biraz genişletilmelidir. Servo ile birlikte verilen vidalara sabitleyin.
Son dokunuş, her şey, açın ve kalibrasyonun homing fanının geçmesini ve tadını çıkarmasını bekleyin.
Çok komik bir şey çıktı. Başlangıçta bir mock-up olarak tasarlandı, ancak Çinliler ve fanın içindeki büyük bir boş bölme sayesinde, neredeyse hiç çıkıntılı tel ve sümük içermeyen bitmiş bir cihaz yapmak mümkün oldu, bu çok hoştu. Bu arada, eğer fan bir süre hedefi bulamazsa, merkezde yükselir ve kapanır. Açmak için sadece elinizi kaldırmanız gerekir ve fan hedefe nişan alıp tekrar soğutmaya hazırdır.
Servo ucuz plastik olduğu ortaya çıktı, şanzıman her yere asıldı, bu yüzden hareket seğiriyor, ama ne yapabilirim. Proje sayfasında daha iyi bir servo bağlantısı var, metal dişli kutusu var. Proje, basitliği - bir sensör, bir sürücü, ancak sonuç olarak, bölge haritası üzerinde tam teşekküllü hedef arama ve dokunmatik kontrol nedeniyle oldukça havalı ve ilginç çıktı.
İlginiz için teşekkürler. Yakında görüşürüz!
video: