İçindekiler:
Video: Esp32'li Otomatik Jel Alkol Dispenseri: 9 Adım
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Öğreticide, tam bir prototipin nasıl yapıldığını, esp32 ile otomatik bir jel alkol dispenserinin nasıl monte edileceğini göreceğiz, adım adım montaj, elektronik devre ve ayrıca tüm adım adım açıklanan kaynak kodunu içerecektir.
Adım 1: Devre
Bu projenin devresi, bir esp32-t modülü olan TCRT5000L olan yansıtıcı bir optik sensöre sahip ky-033 modülünden oluşmaktadır, ancak herhangi bir görünümünde bir Arduino'yu da kullanabiliriz. kaynak kodunda yapılan değişiklikler, 360 derecelik versiyonunda bir MG995 servo motor, yüksek tork ile tam bir dönüş yapabilmemiz için, içinde metal dişliler ve tabii ki bırakacağım baskılı bir devre var. Aşağıdaki gerber dosyasını ücretsiz olarak indirebilmeleri için.
Adım 2: ESP32-T Modülünün Özellikleri
bağlantı
ESP32 modülü tüm wiFi çeşitlerine sahiptir:
- 802.11 b/g/n/e/i/n
- Wi-Fi Direct (P2P), P2P Keşfi, P2P Grup Sahibi modu ve P2P Güç Yönetimi
Bu yeni sürüm, düşük güçlü Bluethoot bağlantısı içerir
- Bluetooth v4.2 BR/EDR ve BLEBLE İşaretçisi
- Ayrıca SPI, I2C, UART, MAC Ethernet, Host SD protokollerini kullanarak haberleşebilirsiniz.
Mikrodenetleyici özellikleri
CPU, aşağıdaki özelliklere ve belleğe sahip bir Tensilica LX6 Model SoC'den oluşur
- 160 MHz hızında çift 32 bit çekirdek
- 448 kByte ROM
- 520kByte SRAM
48 Pin var
- 18 12 bit ADC
- 2 8 bit DAC
- 10 pinli kontak sensörleri
- 16 PWM
- 20 Dijital giriş/çıkış
Güç ve tüketim modları
ESP32'nin düzgün çalışması için 2,8V ile 3,6V arasında bir voltaj sağlamak gereklidir. Kullandığınız enerji, çalışma moduna bağlıdır. Uyku modunda temel görevlerin (ADC, PSTN…) gerçekleştirilmeye devam edildiği Ultra Düşük Güç Çözümü (ULP) modunu içerir.
Adım 3: Servo MG995 360 derecelik Versiyon
mg995 – 360o, sürekli dönüşlü bir servodur (360o), servoya gönderdiğimiz sinyalin geleneksel servolarda olduğu gibi açısal konum yerine dönüş hızını kontrol ettiği normal servoların bir çeşididir.
Bu sürekli dönüşlü servo, kontrol servonun kendisine entegre edildiğinden, DC motorlarda olduğu gibi kontrolörler veya kodlayıcılar gibi ek cihazlar eklemek zorunda kalmadan veya adım adım hız kontrollü bir motor elde etmenin kolay bir yoludur.
Özellikler
- Dişli malzemesi: Metal
- Dönüş Aralığı: 360
- Çalışma voltajı: 3 V ila 7,2 V
- Yüksüz çalışma hızı: 0.17 saniye / 60 derece (4,8V); 0.13 saniye / 60 derece (6.0V)
- Tork: 15 kg/cm
- Çalışma sıcaklığı: -30oC ila 60oC
- Kablo uzunluğu: 310 mm
- Ağırlık: 55g
- Boyutlar: 40,7 mm x 19,7 mm x 42,9 mm
İçerir:
- 1 Servomotor Tower Pro Mg995 sürekli dönüş.
- Montaj için 3 Vida
- .3 Çiftler (boynuzlar).
Adım 4: Ky-033 Hat Dedektörü/Takip Sensörü Modülü
Açıklama
KY-033 HAT DEDEKTÖRÜ/TAKİPÇİ SENSÖR MODÜLÜ Bu modül, kolay, hızlı ve doğru hat tespiti için özel olarak tasarlanmış olup, hat takip robotlarını bir araya getirmenizi kolaylaştırır. Bu modül Arduino ve 5V pinli herhangi bir Mikrodenetleyici ile uyumludur. Çalışma voltajı: 3.3 – 5 VDC Çalışma akımı: 20mA Algılama mesafesi: 2-40mm Çıkış sinyali: TTL seviyesi (düşük seviyede engel var, Yüksek seviye engel ile) Hassasiyet ayarı: potansiyometre. IC Karşılaştırıcı: LM393 IR Sensör: TCRT5000L Çalışma Sıcaklığı: -10 ila +50oC Boyutlar: 42x11x11mm Efektif Açı: 35o
Adım 5: Kaynak Kodu
#include Servo myservo;
const int sensorPin = 12;//Pin del sensor infrarrojo optik refectivo
int değeri = 0;
geçersiz kurulum() {
myservo.attach(23);//Pin para el servo motor MG995 de 360 derece
pinMode(sensorPin, INPUT); // pin como girişini tanımla
}
boşluk döngüsü () {
değer = digitalRead(sensorPin); // lectura dijital de pin del sensör infrarrojo
if (değer == DÜŞÜK) {//Si, nesnel olmayan bir nesneyi saptadı
actuador();//Lama bir la función actuador
}
}
geçersiz aktüatör(){
myservo.write(180);//Baja el actuador lineal
gecikme(700);
myservo.write(90);//Detiene al servo motor
gecikme(600);
myservo.write(0);//Sube el actuador lineal
gecikme(500);
myservo.write(90);//Detiene al servo motor
gecikme(2000);//Esperamos 2 segundos para que no se vuelva a ctivar el servomotor inmediatamente
}
6. Adım:
Bu kod herhangi bir Arduino ile kullanılabilir, ancak pin 23'ün (arduino mega ile sorun değil) kullanımını 2'den 13'e (eksi 12 çünkü yansıtıcı optik sensör için kullanıldığından) herhangi bir Arduino pini ile değiştirmeye dikkat etmeliyiz. örneğin Arduino'da bir veya nano pin 23 mevcut olmadığından.
Bu proje için kullanılacak servo 360 derecedir, bu yüzden -myservo.write(180)- yönünde 180o değerini koyarak tümleyenleri döndürür, -myservo.write(90)- ile durdururuz ve döneriz -myservo.write(90)- ile ters yöndedir, bu nedenle lineer aktüatörün istenilen konuma hareket etmesi için gecikmeli kısa bir süre beklemek çok önemlidir.
7. Adım: Dosyalar
ST dosyaları
rogerbit.com/wprb/wp-content/uploads/2020/10/Archivos-STL.zip
Veya bunları orijinal arabadan indirebilirsiniz, ancak yukarıdaki dosya, videoya bakan bir STL dosyasında bir değişiklik içerir.https://www.thingiverse.com/thing:3334797
Gerber dosyası
rogerbit.com/wprb/wp-content/uploads/2020/10/Gerber_PCB_ESP32.zip
Adım 8: Esp32 ile Uyumlu Servo Kitaplığı
Motoru kontrol etmek için uygun darbe genişliğine sahip 50 Hz'lik bir sinyal göndererek ESP32'nin PWM özelliklerini kullanabilirsiniz. Veya bu görevi çok daha basit hale getirmek için bir kitaplık kullanabilirsiniz.
rogerbit.com/wprb/wp-content/uploads/2020/04/ServoESP32-master.zip
9. Adım: Son
Gördüğünüz gibi, bu montajı çok basit bir proje, ancak montajı için bir 3D yazıcıya sahip olmaları veya baskı parçaları yapmaları gerekecek. Bileşenlerin çıkarılması elektronik mağazalarında elde edilebilir ve hatta PCB'yi yapmak zorunda kalmadan her şeyi bir protokole monte edebilirler.
ÖNERİLEN PROJE
www.youtube.com/watch?v=vxBG_bew2Eg