İçindekiler:
- Adım 1: LED'lerin Sınırlandırılması İçin Akım Gerekir
- 2. Adım: Bir El Feneri Yapın
- Adım 3: Bu El Feneri ile Nesnelerin İnterneti?
- Adım 4: MQTT Sunucusunu Kurun
- Adım 5: Bir Yayıncı Hazırlayın
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:20
Bu yazıda, aşağıdaki öğeleri sunacağım:
- LED'lerin sınırlayıcı bir akım devresine ihtiyacı var
- el feneri nasıl yapılır
- taşınabilir pille çalışan bir ışık yapın ve LED'leri MQTT aracılığıyla ESP8266 ile karartın
Video, bunun nasıl çalıştığının özeti ve kısa bir açıklamasıdır,
PIR sensörünü dahil etmeyi planladım, ancak eğitim oldukça uzun sürüyor, bu nedenle PIR sensörü bu konunun ikinci bölümünde sunulacak
Öyleyse başlayalım.
Adım 1: LED'lerin Sınırlandırılması İçin Akım Gerekir
Yeni başlayanlar için, genellikle bir akkor veya flüoresan ampulün nasıl açılacağı düşünüldüğünde bu garip. Endişelenmeyin, raftaki bu LED ampuller zaten AC'den DC'ye güç adaptörü ve sınırlayıcı bir akımla birlikte gelir. Ama sıfırdan bir şeyler yapmak güzel olurdu.
Bir LED'i açmak için bir anahtar, bir akım sınırlama devresidir. Bu, akım için bir valf olarak çalışır, böylece LED'e uygulanan voltaj onu iletken hale getirdiğinde, LED'lerden geçen akım, devre tarafından düzenlenenden daha büyük olamaz. LED'ler genellikle aşırı ısınmadan kaynaklanır. Akım sınırlama devresinin olmaması, LED'leri birkaç saniye içinde yakmanın kesin bir yoludur. Bu arada, alüminyum çerçeve üzerinde bulunan LED çiplerinin bir soğutucuya sabitlenmesi LED çipini azaltır ve genellikle tavsiye edilir.
2015 civarında bunu öğrenirken kafamı çok kaşıdım ve hala kafamı kaşıyorum (farklı nedenlerle). Bu eğitimden öğrendim ve onun net açıklaması beni bazı çiziklerden kurtarıyor.
Devre bağlı. Kalın çizgiler ana yük rotasını, daha ince olanlar ise yaklaşık 150 mA olan ana rotanın akımını kontrol eden kontrol mekanizmasını göstermektedir. Wikipedia'da kısa bir makale ve ekli bazı referanslar var. Akım sınırlaması, MOSFET'i BD135, BD139 gibi orta akım yük transistörleri ile değiştirerek bir transistör ile oluşturulabilir.
2. Adım: Bir El Feneri Yapın
Gerekli parçalar:
- bir N-kanallı MOSFET (IRF540N $1.62/10pcs, 30N06, $1.75/10pcs)
- bir NPN transistörü (S8085 gibi)
- 3,9 ohm – 2W direnç, akım 0,6/3,9 = 153mA civarında sınırlı
- 100kR (1/4W) direnç
- Bir basmalı kilit anahtarı
- 0,5W 8mm LED var, burada 3,18$/100 adet
- 18660 Lityum pil. Birkaçını bir powerbank'tan kurtardım. 18650 hücreden yapılmış dizüstü bilgisayar pili (4, 6, 8 hücreli) ancak bu şeylere dikkat edin.
- 1, 12V'a kadar anakart, bunun gibi 0,56 dolar
- Bunun gibi 1 lityum şarj cihazı, 0,30 ABD doları
Yukarıdaki devredeki ana fark, maket 5V güç adaptörü yerine boost up boardlu bir Lityum pil (18660) kullanılmasıdır.
Son fotoğraf, son el fenerini gösteriyor ve herhangi bir mikro USB kaynağından (>1A) şarj oluyordu.
Adım 3: Bu El Feneri ile Nesnelerin İnterneti?
Bu kısmı üç adıma ayırıyorum:
- Bir abone hazırlayın (bu)
- MQTT sunucusunu kurun (sonraki adım)
- ve bir Yayıncı hazırlayın (bir sonraki)
Parçalar:
İlk olarak, evet, bu moda kelimeyi, yani IOT'leri kullandım, ancak bu, Adım 2'deki devreyi bir ESP8266 ile kullanmanın iyi bir kombinasyonunu yapabilir ve ardından ışık yoğunluğunu MQTT yöntemiyle kontrol edebilir.
Devrenin parçaları aşağıdakiler dışında aynıdır:
- 12V güçlendirmeyi MT3608 güçlendirme kartıyla değiştirin, $1,92/5pcs, bu, 18650 pilin voltajını (yaklaşık 3,7V) 28 V'a yükseltebilir, bu da 8LED'e (3 yerine) güç sağlamak için yeterlidir.
- Anahtardaki basma konumu, PWM sinyali için ESP8266'daki GPIO 1 veya 2'ye bağlanır.
- ESP8266 01, her biri 1,68 dolar. Bunun gibi
- AMS1117 3.3 V, ESP8266 için bir voltaj regülatörü, bazı kapasitörler
- ESP8266'yı flaş etmek için bir USB modülü, bunun gibi 0,78 $/adet
Btw. bu bağlantılar kolaylık sağlamak içindir.
Lehimleme ve yükleme:
- Parçaları birlikte lehimleyin ve yukarıdaki şemaları kullanın. Bazı önceden yapılmış 3.3 voltaj devresi size biraz zaman kazandırabilir (bunun gibi 1,38 $ / 5 adet). PCB kartını çevirirken pimi hatırlamakta kafam karıştı ve sonunda bazı AMS1117 voltaj regülatörünü karşıladım.
- Sonraki. GPIO 0'ı GND'ye basılı tutmak için üçüncü fotoğraftaki gibi küçük bir değişiklik yapın, ESP8266'yı Flashmode'a almak için GND pinli RST Pinine hızlıca dokunun.
- Kodu GitHub'dan buradan indirin ve Arduino IDE kullanarak kodu ESP 8266'ya yükleyin.
Abonenin abone olduğu konuyu göstermek için satırı vurguladım. Bu konuya gönderilen herhangi bir mesaj, diğer müşterilere (abonelere) bu konuya iletilecektir. Bu devredeki EPS8266, konuya gönderilen JSON mesajını dinleyecek ve kanal Üç'te bir değişiklik yapılmışsa dağılacaktır
* Bir zamanlar, ESP8266 sunulmadığında MOSFET Kapısını topraklamak için bir aşağı çekme direnci (100k) koyabileceğimi düşündüm. Bu, bir ESP8266'nın yokluğunda çalışır, ancak ESP8266 ile direnç ayrıca GPIO0 veya 2'yi GND'ye çekerek onları bir Flaş moduna geçirir veya açılmaz (GPIO2 DÜŞÜK olduğunda)). Bu olursa, sabit bir yeşil göreceksiniz.
Adım 4: MQTT Sunucusunu Kurun
MQTT (Message Queuing Telemetri Transport), yayınla-abone ol yöntemine dayalı bir mesajlaşma protokolüdür. MQTT mesajının giriş ve çıkışını barındıran cihaza broker denir. Gerçek bir komisyoncu gibi, yayıncılar (satıcılar) ve aboneler (alıcılar) arasındaki alışverişi barındırır. Hiçbir para bunları el değiştirmez. Bunun için çok sayıda öğretici var.
İşte özet. Raspberry Pi bunun için en popüler cihazdır. Frist, MQTT'yi şu şekilde kurun:
sudo apt-get install mosquitto sivrisinek istemcileri
Raspberry'de iki terminal açarak MQTT sunucusunun çalışıp çalışmadığını test edin, biri ilk satırı, diğeri sonraki satırı yazın:
mosquitto_sub -h localhost -t "konunuz"
mosquitto_pub -t "konunuz" -h localost -m "bir şey söyle"
İlk terminalde "bir şey söyle" ifadesini görmelisiniz. Vala! İşe yarıyor.
"#" herhangi bir konuyu dinlemek için kullanılabilir, "konunuzu" yerine "#" koyabilirsiniz.
Artık birinin MQTT sunucunuzu yayınlamasını veya abone olmasını istemiyorsanız, bunu yaparak bir şifre oluşturmalısınız:
cd ~
mosquitto_passwrd -c pwfile mqtt_user
mqtt_user istediğiniz diğer kullanıcı adları olabilir, parolayı iki kez girin ve.conf dosyasını şu şekilde güncelleyin:
sudo nano /etc/mosquitto/mosquitto.conf
şu iki satırı ekler:
allow_anonymous yanlış
password_file /home/pi/pwfile
ardından sivrisinek'i şu şekilde yeniden başlatın:
sudo systemctl sivrisinek yeniden başlat
adı aşağıdaki gibi bir parolayla ekleyerek bir test yapın:
mosquitto_sub -h localhost -t "konunuz" -u "mqtt_user" -P "123456"
mosquitto_pub -h localhost -t "konunuz" -u "mqtt_user" -P "123456" -m "bu güvenli mi?"
Ayrıca MQTT bağlantıyı reddederse, MQTT hizmetini Linux sisteminin arka planına koymak için şunu deneyin:
sivrisinek -d
Bu referanslara bir göz atmanın iyi olduğunu buldum. Bugün bu ikisinden bir şey öğrendim.
- Ada meyvesi:
- Stees-internet-guide.com
Adım 5: Bir Yayıncı Hazırlayın
Bunun için mesajı MQTT sunucusuna iletmek için basit bir gösterge panosu yapıyorum. Stand modunda, LCD Saat'i gösterir.
Parçalar:
- SSD1306 Ekran görüntüsü, her biri 2,41 ABD doları
- EPS8266 WEMOS D1 Mini, her biri 2,53 ABD doları
- bir potansiyometre
- Bir adet 4 pinli sürgülü anahtar.
- iki adet 3mm LED,
- bazı dirençler
Lehimleme:
İşte bu terminalin şeması:
Kodu yükleyin:
Markalı WEMOS ESP8266 ile çalışmak keyifli. Sadece bir mikro USB'ye ihtiyacınız var, Arduino IDE üzerindeki yükleme düğmesine basın, çipi flaşlayın. Kod burada (GitHub):
Bir mesajı yayınlamak için, yeşil led'i açmak (ve kırmızıyı kapatmak) için düğmeye basın, ardından pimi yukarı kaydırın ve ayarlayın ve son olarak mesajı MQTT sunucusuna itmek için düğmeye tekrar basın. Pano, 4 kanala bir JSON mesajı yayınlayabilir.
Koddaki vurguya bir göz atın (ekran görüntüsü). Gösterge panosunun mesajı ilettiği konu budur ve LED'lerimiz JSON mesajından herhangi bir yenisini görmek için çok heveslidir
Bununla ilgili. Umarım öğretici yardımcı olur.
Önerilen:
Basit Hareket Kontrolü - RC Oyuncaklarınızı Kolunuzun Hareketi ile Kontrol Edin: 4 Adım (Resimlerle)
Basit Hareket Kontrolü - Kolunuzun Hareketi ile RC Oyuncaklarınızı Kontrol Edin: 45 numaralı "iblis" kitabıma hoş geldiniz. Bir süre önce Lego Star Wars parçalarını kullanarak BB8'in tamamen çalışan bir RC versiyonunu yaptım… https://www.instructables.com/id/Whats-Inside-My-R…Ne kadar havalı olduğunu gördüğümde Sphero tarafından yapılan Force Band'i düşündüm: "Tamam, ben
ESP8266 ile Oda Kontrolü - Sıcaklık, Hareket, Perdeler ve Aydınlatma: 8 Adım
ESP8266 ile Oda Kontrolü | Sıcaklık, Hareket, Perdeler ve Aydınlatma: Bu proje, bir LED Strip'in parlaklığını ve odanızın perdesini kontrol etmenizi sağlayan NodeMCU ESP8266 modülüne dayalı bir sistemden oluşur, ayrıca odanızın hareket olayları hakkında veri gönderebilir. ve bulutun sıcaklığı w
Myoware Kas Sensörüne Tepki Veren Neopiksel Led Şerit: 6 Adım
Myoware Kas Sensörüne Tepki Veren Neopiksel Led Şerit: Amaç Arduino yardımıyla bir kas sensörü takıp gelen verileri Adafruit IO ile işleyip bir tetikleyici ile çıktı alarak ışığın bir dakika boyunca beyazdan kırmızıya dönmesini sağlamaktır. bir Kas Sensörüdür Kas Sensörü
Hareket Kontrollü Çıkış - Hareket Algılayıcı Işıktan: 6 Adım
Hareket Kontrollü Çıkış - Hareket Algılama Işığından: Bloktaki en korkunç eve giden bir şeker mi şaka mı olduğunuzu hayal edin. Tüm hortlakları, hayaletleri ve mezarlıkları geçtikten sonra nihayet son yola ulaşırsınız. Şekeri önünüzde bir kasede görebilirsiniz! Ama sonra aniden bir gho
Bir El Fenerinden SCR Test Cihazı: 11 Adım
Bir El Fenerinden SCR Test Cihazı: Büyük SCR'ler (silikon kontrollü redresörler) kullanan yüksek güçlü ekipman tasarlıyor ve test ediyorum. Bazen biri dışarı çıkar. 6'yı üç fazlı bir köprü konfigürasyonunda kullanıyorum ve eğer biri dışarı çıkarsa, onları almadan kötü olanı bulmak zor