İçindekiler:
- Adım 1: Bileşenler
- Adım 2: RGB Şeridi Transistörler ve Bir Güç Kaynağı ile Güçlendirme
- Adım 3: RGB LED Şerit Renklerini Kontrol Etme
- Adım 4: Sensörün Okumasına Bağlı Olarak RGB LED Şerit Rengini Kontrol Edin
- Adım 5: Son Kod
- Adım 6: Bitirdiniz
Video: PICO Kullanan RGB Termometre: 6 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:18
Bugünkü çabamızın nihai sonucu buydu. Akrilik bir kap içine yerleştirilmiş bir RGB LED şerit kullanarak odanızın ne kadar sıcak olduğunu, sıcaklığı okumak için bir sıcaklık sensörüne bağlı olan bir termometredir. Ve bu projeyi hayata geçirmek için PICO'yu kullanacağız.
Adım 1: Bileşenler
- PICO, mellbell.cc'de mevcuttur (17 $)
- 1 metre RGB LED şerit
- 3 TIP122 Darlington transistör, ebay'de 10'luk bir paket (3,31 $)
- 1 PCA9685 16 kanallı 12 bit PWM sürücüsü, ebay'de (2,12 ABD doları) mevcuttur
- 12v güç kaynağı
- 3 1k ohm direnç, ebay'de 100'lük bir paket (0,99 $)
- Ebay'de bulunan bir breadboard (2,30 $)
- Erkek - dişi jumper kabloları, ebay'de 40'lık bir demet (0,95 $)
Adım 2: RGB Şeridi Transistörler ve Bir Güç Kaynağı ile Güçlendirme
LED şeritler, LED'lerle doldurulmuş esnek devre kartlarıdır. Evinizde, arabanızda veya bisikletinizde kullanabileceğiniz için birçok şekilde kullanılırlar. Bunları kullanarak harika RGB giyilebilir ürünler bile oluşturabilirsiniz.
Peki, nasıl çalışırlar? Aslında oldukça basit. LED şeridindeki tüm LED'ler paralel olarak bağlanır ve büyük bir RGB LED gibi davranırlar. Çalıştırmak için şeridi 12v yüksek akımlı bir güç kaynağına bağlamanız yeterlidir.
LED şeridi bir mikrodenetleyici ile kontrol etmek için güç kaynağını kontrol kaynağından ayırmanız gerekir. LED şeridin 12v'ye ihtiyacı olduğundan ve mikrodenetleyicimiz bu kadar çıkış voltajı sağlayamadığından ve bu nedenle PICO'muzdan kontrol sinyallerini gönderirken harici bir 12v yüksek akım güç kaynağı bağlarız.
Ayrıca, içindeki her bir LED'in - kırmızı, yeşil ve mavi LED'lerin - çalışması için 20mA'ya ihtiyacı olduğundan, her bir RGB hücresinin akım çekişi yüksektir, bu da tek bir RGB hücresini çalıştırmak için 60mA'ya ihtiyacımız olduğu anlamına gelir. Ve bu çok problemlidir, çünkü GPIO pinlerimiz pin başına sadece maksimum 40mA sağlayabilir ve RGB şeridini doğrudan PICO'ya bağlamak onu yakacaktır, bu yüzden lütfen yapmayın.
Ancak, bir çözüm var ve buna Darlington Transistör deniyor ki bu, ihtiyaçlarımızı karşılamak için akımımızı artırmamıza yardımcı olacak çok yüksek akım kazancına sahip bir çift transistör.
Önce akım kazancı hakkında daha fazla bilgi edelim. Akım kazancı, transistörlerin bir özelliğidir, bu, transistörden geçen akımın onunla çarpılacağı anlamına gelir ve denklemi şöyle görünür:
yük akımı = giriş akımı * transistör kazancı.
Bu bir Darlington transistöründe daha da güçlüdür, çünkü bu tek bir transistör değil bir çift transistördür ve etkileri birbirleriyle çarpılarak bize büyük akım kazançları verir.
Şimdi LED şeridini harici güç kaynağımıza, transistöre ve tabii ki PICO'muza bağlayacağız.
- Baz (transistör) → D3 (PICO)
- Kollektör (transistör) → B (LED şerit)
- Verici (transistör) → GND
- +12 (LED şerit) → +12 (güç kaynağı)
PICO'nun GND'sini güç kaynakları topraklamasına bağlamayı unutmayın
Adım 3: RGB LED Şerit Renklerini Kontrol Etme
PICO'muzun tek bir PWM pinine (D3) sahip olduğunu biliyoruz, bu da 16 LED'imizi doğal olarak kontrol edemediği anlamına geliyor. Bu nedenle, PICO'nun PWM pinlerini genişletmemizi sağlayan PCA9685 16-kanal 12-bit PWM I2C modülünü tanıtıyoruz.
Her şeyden önce, I2C nedir?
I2C, cihazın adresini ve hangi verilerin gönderileceğini adresleyerek bir veya daha fazla cihazla iletişim kurmak için sadece 2 kablo içeren bir iletişim protokolüdür.
İki tür cihaz vardır: Birincisi, veri göndermekten sorumlu olan ana cihaz, diğeri ise verileri alan bağımlı cihazdır. İşte PCA9685 modülünün pin çıkışları:
- VCC → Bu, kartın kendisinin gücüdür. 3-5v maks.
- GND → Bu negatif pindir ve devreyi tamamlamak için GND'ye bağlanmalıdır.
- V+ → Bu, servolardan herhangi biri modülünüze bağlıysa servolara güç sağlayacak isteğe bağlı bir güç pimidir. Herhangi bir servo kullanmıyorsanız, bağlantısını kesebilirsiniz.
- SCL → Seri saat pimi ve onu PICO'nun SCL'sine bağlarız.
- SDA → Seri Veri pini ve onu PICO'nun SDA'sına bağlarız.
- OE → çıkış etkin pin, bu pin DÜŞÜK aktiftir, pin DÜŞÜK olduğunda tüm çıkışlar etkinleştirilir, YÜKSEK olduğunda tüm çıkışlar devre dışı bırakılır. Ve bu isteğe bağlı pin, modülün pinlerini hızlı bir şekilde etkinleştirmek veya devre dışı bırakmak için kullanılır.
16 bağlantı noktası vardır, her bağlantı noktası V+, GND, PWM'ye sahiptir. Her PWM pini tamamen bağımsız çalışır ve servolar için ayarlanmıştır ancak LED'ler için kolayca kullanabilirsiniz. Her PWM 25mA akımı kaldırabilir, bu yüzden dikkatli olun.
Artık modülümüzün pinlerinin ne olduğunu ve ne yaptığını bildiğimize göre, RGB LED şeridimizi kontrol edebilmemiz için PICO'nun PWM pinlerinin sayısını artırmak için kullanalım.
Bu modülü TIP122 transistörlerle birlikte kullanacağız ve bunları PICO'nuza şu şekilde bağlamanız gerekir:
- VCC (PCA9685) → VCC (PICO).
- GND (PCA9685) → GND.
- SDA (PCA9685) → D2 (PICO).
- SCL (PCA9685) → D3 (PICO).
- PWM 0 (PCA9685) → TABAN (ilk TIP122).
- PWM 1 (PCA9685) → TABAN (ikinci TIP122).
- PWM 2 (PCA9685) → TABAN (üçüncü TIP122).
PICO'nun GND'sini güç kaynağının GND'sine bağlamayı unutmayın. PCA9685 VCC pinini güç kaynağının +12 voltuna BAĞLAMADIĞINIZDAN emin olun, aksi takdirde hasar görür
Adım 4: Sensörün Okumasına Bağlı Olarak RGB LED Şerit Rengini Kontrol Edin
Bu projedeki son adımdır ve onunla birlikte projemiz "aptal" olmaktan akıllı olmaya ve çevreye bağlı olarak hareket etme yeteneğine sahip olmaya dönüşecektir. Bunu yapmak için PICO'muzu LM35DZ sıcaklık sensörüne bağlayacağız.
Bu sensör, etrafındaki sıcaklığa bağlı olan bir analog çıkış voltajına sahiptir. 0 Santigrat'a karşılık gelen 0v'de başlar ve 0c'nin üzerindeki her derece için voltaj 10mV artar. Bu bileşen çok basittir ve sadece 3 bacağı vardır ve aşağıdaki şekilde bağlanırlar:
- VCC (LM35DZ) → VCC (PICO)
- GND (LM35DZ) → GND (PICO)
- Çıkış (LM35DZ) → A0 (PICO)
Adım 5: Son Kod
Artık PICO'muza bağlı her şeye sahip olduğumuza göre, LED'lerin sıcaklığa bağlı olarak renk değiştirmesi için programlamaya başlayalım.
Bunun için aşağıdakilere ihtiyacımız var:
Bir inşaat Sıcaklık sensöründen okumasını alan A0 değerine sahip "tempSensor" adlı değişken
Başlangıç değeri 0 olan "sensorReading" adlı bir tamsayı değişkeni. Bu, ham sensör okumasını kaydedecek değişkendir
Başlangıç değeri 0 olan "volt" adlı bir şamandıra değişkeni. Dönüştürülen sensörün ham okuma değerini volta kaydedecek olan değişkendir
Başlangıç değeri 0 olan "temp" adlı bir kayan değişken. Bu, dönüştürülmüş sensör volt okumalarını kaydedecek ve sıcaklığa dönüştürecek değişkendir
Başlangıç değeri 0 olan "mapped" adlı bir Tamsayı değişkeni. Bu, temp değişkenini eşlediğimiz PWM değerini kaydeder ve bu değişken LED şerit rengini kontrol eder
Bu kodu kullanarak, PICO, sıcaklık sensörünün verilerini okuyacak, onu volta, ardından Santigrat'a dönüştürecek ve son olarak, Santigrat derecesini LED şeridimiz tarafından okunabilen bir PWM değerine eşleyecek ve tam da ihtiyacımız olan şey bu.
Adım 6: Bitirdiniz
LED şeridin güzel bir şekilde ayakta durması için akrilik bir kap da yaptık. İndirmek isterseniz CAD dosyalarını burada bulabilirsiniz.
Artık, baktığınızda size sıcaklığı otomatik olarak söyleyen harika görünümlü bir LED termometreniz var, ki bu da en hafif tabiriyle oldukça uygun:P
Herhangi bir öneriniz veya geri bildiriminiz varsa yorum bırakın ve daha fazla harika içerik için bizi facebook'ta takip etmeyi veya mellbell.cc'de bizi ziyaret etmeyi unutmayın.
Önerilen:
Akıllı Telefonu Temassız Termometre / Taşınabilir Termometre Olarak Kullanın: 8 Adım (Resimlerle)
Akıllı Telefonu Temassız Termometre / Taşınabilir Termometre Olarak Kullanın: Vücut ısısını termo tabanca gibi temassız / temassız olarak ölçme. Bu projeyi oluşturdum çünkü Thermo Gun artık çok pahalı, bu yüzden DIY yapmak için alternatif bulmalıyım. Ve amaç düşük bütçeli versiyon ile yapmaktır.SuppliesMLX90614Ardu
ESP8266 Kullanan Dijital Termometre DHT11: 4 Adım
ESP8266 Kullanan Dijital Termometre DHT11: Bir önceki yazımda DH11'i ve 7 Segment, LCD, Seri monitör, RGB ring gibi çıkış cihazlarında nasıl görüntüleneceğini anlatmıştım.Bu yazımda size sıcaklık ve nem izlemeyi göstereceğim. cep telefonunda bir tarayıcı kullanarak
Arduino Tabanlı Temassız Kızılötesi Termometre - Arduino Kullanan IR Tabanlı Termometre: 4 Adım
Arduino Tabanlı Temassız Kızılötesi Termometre | Arduino Kullanan IR Tabanlı Termometre: Merhaba arkadaşlar, bu talimatta arduino kullanarak temassız bir Termometre yapacağız. Bazen sıvının/katının sıcaklığı çok yüksek veya çok düşük olduğundan, onunla temas kurmak ve okumak zordur. o sahnede sıcaklık
NodeMCU ve LM35 Kullanan Dijital Termometre: 5 Adım
NodeMCU ve LM35 Kullanarak Dijital Termometre: Kendi Dijital Termometrenizi yapın ve internet üzerinden her yerden sıcaklığı izleyin. Bu talimat, IoT ile uğraşmaya başlamak için temel bir talimattır. NodeMCU 1.0(ESP-12E) ile sıcaklık sensörü LM35'i arayüzleyeceğiz.LM35 bir sıcaklık sensörüdür
Termistör Kullanan Termometre: 5 Adım
Termistör Kullanan Termometre: Sadece termistör ve direnç kullanan termometredir. Ayrıca odanızın veya herhangi bir şeyin sıcaklığını istediğiniz zaman izleyebilir ve saklayabilirsiniz. Ayrıca, daha önce depolanan verileri Thingsio'da izleyebilirsiniz