İçindekiler:

Klimanın Uzaktan Kumandalarının IR Protokolünü Anlama: 9 Adım (Resimlerle)
Klimanın Uzaktan Kumandalarının IR Protokolünü Anlama: 9 Adım (Resimlerle)

Video: Klimanın Uzaktan Kumandalarının IR Protokolünü Anlama: 9 Adım (Resimlerle)

Video: Klimanın Uzaktan Kumandalarının IR Protokolünü Anlama: 9 Adım (Resimlerle)
Video: Tır Kazası ⁉️Duran Otobüse Arkadan çarpıyor ‼️ 2024, Kasım
Anonim
Klimanın Uzaktan Kumandalarının IR Protokolünü Anlama
Klimanın Uzaktan Kumandalarının IR Protokolünü Anlama

Bir süredir IR protokollerini öğreniyorum. IR sinyalleri nasıl gönderilir ve alınır. Bu noktada geriye kalan tek şey AC uzaktan kumandaların IR protokolüdür.

Hemen hemen tüm elektronik cihazların (örneğin bir TV) aynı anda yalnızca bir düğmenin bilgilerinin gönderildiği geleneksel uzaktan kumandaların aksine, AC uzaktan kumandalarda tüm parametreler bir kerede kodlanır ve gönderilir. Bu nedenle, bir mikrodenetleyiciden gelen sinyali çözmek biraz zor olabilir.

Bu talimatta, herhangi bir AC uzaktan kumandanın IR protokollerini nasıl kolayca çözebileceğimizi açıklayacağım. Yeni bir program yazarak IR sinyallerini okumak ve kodunu çözmek için HID IR KLAVYE'mi kullanacağım. ancak bir TSOP IR demodülatörü ile birleştirilmiş Harici kesmeleri desteklediği sürece, aşina olduğunuz hemen hemen tüm mikro denetleyicileri kullanabilirsiniz.

Adım 1: Gerekli Araçlar

Lehimleme İstasyonu.(örn. BU)

Daha ucuz ütüler kullanabilseniz de, elektronikle ilgileniyorsanız kaliteli bir lehimleme istasyonu önerilir.

Pickit 2.(örn. BU)

Ayrıca bir PICKIT 3 kullanabilirsiniz, ancak daha sonra mikro denetleyiciden gelen çıktıyı okumak için ayrı bir USB'den UART'a dönüştürücü kullanmanız gerekir.

Bir osiloskop

Bende yok. ama eğer varsa, hayatınızı çok daha kolay hale getirecek. Maddi gücünüz yetiyorsa kesinlikle bir tane satın alın.

Bir bilgisayar

peki.. ahh

Adım 2: Gerekli Bileşenler

  • PIC18F25J50(örn. BURADA)
  • TSOP IR alıcısı.(örn. BURADA)
  • LM1117 3.3v regülatör.(örn. BURADA)
  • 2x220nf kapasitörler.
  • 470 ohm direnç.
  • 10k ohm direnç.

Bunlar benim HID IR klavye projemi yapmak için gerekli bileşenlerdir.. başka bir resim geliştirme kartınız veya bir arduino'nuz varsa, sadece TSOP IR kod çözücü modülüne ihtiyacınız olacak.

AC uzaktan kumanda

Kodunun çözülmesi gereken uzaktan kumanda. Videocon AC'min uzaktan kumandasını kullanacağım. Bunun ekranı yok ama ekranlı diğer uzaktan kumandalara benzer şekilde çalışıyor.

Adım 3: Nasıl Çalışır (IR Protokolü)

Nasıl Çalışır (IR Protokolü)
Nasıl Çalışır (IR Protokolü)

Devam etmeden önce, bazı temel bilgileri anlayalım.

IR uzaktan kumandalar, LED'i hızla açıp kapatarak uzaktan kumandadan alıcıya sinyal iletmek için bir IR led kullanır. Ancak diğer birçok ışık kaynağı da IR ışığı üretir. Yani sinyalimizi özel kılmak için belirli bir frekansta bir PWM sinyali kullanılır.

Neredeyse tüm IR uzaktan kumandalarda kullanılan frekanslar 30khz, 33khz, 36khz, 38khz, 40khz ve 56khz'dir.

En yaygın olanları 38 khz ve 40 khz'dir.

TSOP modülü, taşıyıcı sinyali (örn. 38 khz) daha uygun bir GND ve VCC TTL mantığına demodüle eder.

DÜŞÜK mantığın YÜKSEK süresi, bit '1' veya '0' anlamına gelir. Süre, her uzak protokole göre değişir.(örn. NEC)

IR protokolünü ayrıntılı olarak anlamak için BU belgeye başvurabilirsiniz.

Adım 4: Uzaktan Kumanda

Uzaktan kumanda
Uzaktan kumanda

Kullandığım uzaktan kumanda, odamda bulunan oldukça eski bir klimaya ait. Bu nedenle, süslü bir ekranı yoktur, ancak ekranlı herhangi bir AC uzaktan kumanda ile hemen hemen aynı şekilde çalışır.

Uzaktan kumandayı kullanarak aşağıdaki ayarları değiştirebiliriz.

  • Güç açık / kapalı
  • Uyku modu açık/kapalı
  • Turbo modu açık/kapalı
  • Salıncak açma/kapama
  • Fan hızı (Düşük, Orta, Yüksek)
  • Mod seçimi (Soğuk, Kuru, Fan)
  • Sıcaklık (16 ila 30 santigrat derece)

Adım 5: RAW Örneklerini Yakalama

RAW Örnekleri Yakalama
RAW Örnekleri Yakalama
RAW Örnekleri Yakalama
RAW Örnekleri Yakalama

Resimde, TSOP ir alıcısı tarafından püskürtülen RAW örneklerini görebilirsiniz. sayılar, patlamanın süresini belirtir ve +/- işareti, sinyalin İŞARETİNİ ve BOŞLUĞUNU belirtir.

burada 1 birim 12us (mikrosaniye) anlamına gelir.

Yani, 80'lik bir patlama 960us'u vb. gösterir.

aşağıdaki kod parçası verileri yakalar ve pickit2'nin seri monitörüne çıkış yapar. (IDE, PIC için MikroC PRO'dur)

Nedense, Instructable editörü kod etiketiyle uğraşıyor. Bu yüzden, kodun ekran görüntüsünü yeni ekledim, lütfen bu adımın ikinci resmine bakın.

Tüm proje klasörünü eklerdim, ancak şu anda bir karışıklık var ve elde etmeye çalıştığım şey için henüz tam olarak hazır değil.

Adım 6: RAW Örneklerinin Gözlenmesi ve Okunabilir Bir Biçime Dönüştürülmesi

RAW Örneklerini Gözlemlemek ve İnsan Tarafından Okunabilir Bir Biçime Dönüştürmek
RAW Örneklerini Gözlemlemek ve İnsan Tarafından Okunabilir Bir Biçime Dönüştürmek
RAW Örneklerini Gözlemlemek ve İnsan Tarafından Okunabilir Bir Biçime Dönüştürmek
RAW Örneklerini Gözlemlemek ve İnsan Tarafından Okunabilir Bir Biçime Dönüştürmek
RAW Örneklerini Gözlemlemek ve İnsan Tarafından Okunabilir Bir Biçime Dönüştürmek
RAW Örneklerini Gözlemlemek ve İnsan Tarafından Okunabilir Bir Biçime Dönüştürmek

RAW örneklerine yakından bakarsak, dört farklı patlama süresi aralığı olduğunu kolayca görebiliriz.

~80

~45

~170

~250

Son üç değer her zaman +250 -250 +250'dir. Bu nedenle, bunun çoğuşma verilerinin STOP biti olduğunu güvenle varsayabiliriz. Şimdi, aşağıdaki kod parçacığını kullanarak, bu dört patlama süresini '-', '.' şeklinde bölebiliriz. ve 1'.

Kod parçacığı için bu adımın 3. resmine bakın.

Koddaki ~80 patlamasını görmezden geldiğimi fark etmiş olabilirsiniz. bunun nedeni, kodun her garip yerleşiminin önemsiz olmasıdır. _rawprocess dizisini seri monitöre yazdırarak, (bu adımın ikinci görüntüsünde de göreceğiniz gibi.) Alınan verilerin çok net bir resmine sahibiz. Artık uzaktan kumanda üzerindeki farklı tuşlara basarak bir sonraki adımda anlatıldığı gibi verilerdeki desen değişikliklerini gözlemleyebiliriz.

Adım 7: Birden Fazla Ham Örneği Karşılaştırarak Kalıpları Gözlemleme

Birden Fazla Ham Örneği Karşılaştırarak Kalıpları Gözlemleme
Birden Fazla Ham Örneği Karşılaştırarak Kalıpları Gözlemleme
Birden Fazla Ham Örneği Karşılaştırarak Kalıpları Gözlemleme
Birden Fazla Ham Örneği Karşılaştırarak Kalıpları Gözlemleme
Birden Fazla Ham Örneği Karşılaştırarak Kalıpları Gözlemleme
Birden Fazla Ham Örneği Karşılaştırarak Kalıpları Gözlemleme

Yalnızca kodu çözülmüş verileri yazdırarak, hangi verileri göndermek için hangi bitlerin kullanıldığının çok net bir resmini elde edebiliriz.

GÜÇ UYKU ve TURBO ayarı yalnızca bir bit kullanır. yani ya '.' veya '1'.

SWING birbirine bitişik üç bit kullanır. '…' veya '111' olarak gider.

Fan ve Mod seçimi ayrıca her biri 3 bit '1..' '.1.' kullanır. ve 1'

Sıcaklık, '…' anlamına gelen 16 ofset ile ikili kodlanmış bitleri kullanarak değer gönderen dört bit kullanır. '111' iken 16 santigrat derece değerini gönderir. 30 santigrat derece gönderir.

Adım 8: Kodu Çözülmüş Verileri Seri Monitöre ÇIKARTIN

Kodu Çözülmüş Verileri Seri Monitöre ÇIKARTIN
Kodu Çözülmüş Verileri Seri Monitöre ÇIKARTIN

Resimde görebileceğiniz gibi, AC uzaktan kumanda tarafından gönderilen tüm bitlerin kodunu başarıyla çözdüm.

Şu andan itibaren, ir protokolleriyle ilgili deneyime sahip olanlar, sinyali nasıl yeniden kodlayacağını ve bunları AC'ye göndermeye nasıl başlayacağını zaten biliyor. Bunun nasıl yapılabileceğini görmek istiyorsanız, bir hafta kadar sonra göndereceğim bir sonraki talimatımı bekleyin.

Adım 9: Bitirin

Zaman ayırdığınız için teşekkürler.

Projeyi beğendiyseniz lütfen bir yorum bırakın. veya herhangi bir hata fark ettiyseniz.

İyi günler.

Önerilen: