- RFM69HCW RF Modülü
- RFM69HCW
- RFM69 Modül Bağlantıları ve Tanımı
- Özel Geliştirme Panosu Hazırlama
Adım 3: Bunun için bir PCB hazırlayın, bu Ev Yapımı PCB eğitimini takip ediyorum. Ayak izini bakır bir levha üzerine basıp dağlama çözümüne düşürdüm
Adım 4: Hem kartlar için prosedürü izleyin hem de modülünüzü ayak izine lehimleyin. Lehimledikten sonra her iki modülüm de aşağıdaki gibi görünüyor
RFM69HCW RF Modülü bacak yapısı aşağıdaki şekilde verilmektedir
- Gerekli malzemeler
- Donanım bağlantısı
- Örnek Çizimi Çalıştırma
- Örnek Eskizin Çalışması
Projelerinize kablosuz özellikler vermek söz konusu olduğunda, 433Mhz ASK Hibrit Verici ve alıcı, Düşük Fiyatı, kullanımı kolay kitaplıkları ve topluluk desteği nedeniyle mühendisler, geliştiriciler ve hobiler arasında ortak bir seçimdir. Bu 433MHz RF modülünü kullanarak RF kontrollü Ev Otomasyonu ve Kablosuz Kapı Zili gibi birkaç proje de yaptık. Ancak çoğu zaman bir ASK Hibrit Verici ve alıcısı yeterli değildir, düşük menzili ve tek yönlü iletişim doğası onu birçok uygulama için uygunsuz hale getirir
HopeRF'deki geliştiriciler, sürekli ortaya çıkan bu sorunu çözmek için RFM69HCW adlı harika bir yeni RF modülü tasarladılar. Bu eğitimde RFM69HCW RF modülü ve avantajları hakkında bilgi edineceğiz. Öncelikle, RFM69HCW için Ev yapımı PCB yapacağız ve ardından RFM69HCW'yi, çalışıp çalışmadığını kontrol etmek için Arduino ile arabirim haline getireceğiz, böylece seçtiğiniz projelerde kullanabilirsiniz. Öyleyse başlayalım.
RFM69HCW RF Modülü
RFM69HCW, önceki projelerde kullandığımız nRF24L01 RF Modülüne benzer şekilde lisanssız ISM (Endüstri, Bilim ve Tıp) bandında çalışan, ucuz, kullanımı kolay bir radyo modülüdür. İki modül arasında iletişim kurmak için kullanılabilir veya yüzlerce modül arasında iletişim kurmak için bir Mesh Network olarak yapılandırılabilir, bu da onu ev otomasyonunda ve diğer veri toplama projelerinde kullanılan sensörler için ucuz kısa menzilli kablosuz ağlar oluşturmak için mükemmel bir seçim haline getirir.
RFM69HCW'nin özellikleri:
- +20 dBm - 100 mW Güç Çıkışı Yeteneği
- Yüksek Hassasiyet: 1,2 kbps'de -120 dBm'ye kadar
- Düşük akım: Rx = 16 mA, 100nA kayıt tutma
- Programlanabilir Pout: 1dB'lik adımlarla -18 ila +20 dBm
- Bir modül voltaj aralığında sabit RF performansı
- FSK, GFSK, MSK, GMSK ve OOK modülasyonları
- Saat Kurtarma gerçekleştiren yerleşik Bit Eşitleyici
- 115 dB + Dinamik Aralık RSSI
- Ultra hızlı AFC ile Otomatik RF Sense
- CRC-16, AES-128, 66 bayt FIFO Dahili sıcaklık sensörlü paket motor
- Yüksek Bağlantı Bütçesi
- Çok Düşük Maliyet
RFM69HCW
Sıklık
RFM69HCW, düşük güçlü, kısa menzilli cihazlar için bir dizi lisanssız radyo frekansı olan ISM (Endüstri, Bilimsel ve Tıp) bandında çalışmak üzere tasarlanmıştır. Farklı alanlarda farklı frekanslar yasaldır, bu nedenle modülün 315,433,868 ve 915MHz birçok farklı sürümü vardır. Tüm önemli RF iletişim parametreleri programlanabilir ve çoğu dinamik olarak ayarlanabilir, ayrıca RFM69HCW programlanabilir dar bant ve geniş bant iletişim modlarının benzersiz avantajını sunar.
Not: Nispeten düşük gücü ve kısa menzili nedeniyle, bu modülün küçük bir projede uygulanması bir sorun olmayacak, ancak bunun dışında bir ürün yapmayı düşünüyorsanız, doğru frekansı kullandığınızdan emin olun. konumunuz.
Aralık
Aralığı daha iyi anlamak için RF Bağlantı Bütçesi adı verilen oldukça karmaşık bir konuyu ele almalıyız. Peki, bu bağlantı bütçesi nedir ve neden bu kadar önemli? Bağlantı bütçesi diğer tüm bütçeler gibidir, başlangıçta sahip olduğunuz ve zaman içinde harcadığınız bir şey, bütçeniz tükenirse daha fazla harcayamazsınız.
Bağlantı bütçesi, gönderen ile alıcı arasındaki bir bağlantı veya bağlantı ile de ilgilidir, gönderenin iletim gücü ve alıcının hassasiyeti ile doldurulur ve desibel veya dB cinsinden hesaplanır, aynı zamanda frekans- bağımlı. Bağlantı bütçesi, gönderen ile alıcı arasındaki mesafe kabloları duvarları ağaçlar binalar gibi her türlü engel ve gürültüden düşülür, eğer bağlantı bütçesi kullanılırsa, alıcı çıkışta sadece biraz gürültü oluşturur ve herhangi bir kullanılabilir sinyal almayız. RFM69HCW veri sayfasında göre , bir var 140 dB link bütçesini 105 dB ile karşılaştırıldığında Hibrid Transmitter ASK ama ne demek olduğunu yapar bu önemli bir farktır? Neyse ki buldukRadio Link Bütçe Hesaplayıcıları çevrimiçi bu yüzden Konuyu daha iyi anlamak için bazı hesaplamalar yapalım. Öncelikle, gönderen ve alıcı arasında bir görüş hattımız olduğunu ve RFM69HCW için Bütçemizin 140 dB olduğunu bildiğimiz için her şeyin mükemmel olduğunu varsayalım, bu yüzden iletişim kurabileceğimiz en büyük teorik mesafeyi kontrol edelim, her şeyi sıfıra ve mesafeye ayarlayalım 500KM'ye, Frekans 433MHz'e ve 139.2 dBm'lik yatay bir alım gücü elde ediyoruz
Şimdi, her şeyi sıfıra ve mesafeyi 9KM Frekansa 433MHz'e ayarlıyorum ve 104.3 dBm yatay alım gücü elde ediyoruz
Dolayısıyla yukarıdaki karşılaştırmayla, RFM69 modülünün ASK Hibrit Verici ve bir alıcı modülünden çok daha iyi olduğu konusunda hemfikir olabileceğimizi düşünüyorum.
Anten
Dikkat! Modüle bir anten takmak zorunludur çünkü onsuz modül kendi yansıyan gücünden zarar görebilir.
Bir anten oluşturmak, göründüğü kadar zor değildir. En basit anten, yalnızca tek telli bir 22SWG telinden yapılabilir. Bir frekansta dalga boyu formül ile hesaplanabilir hac / f , h iletim hızı ve f (ortalama) iletim frekansıdır. Havada v , 299.792.458 m / s olan ışık hızı olan c'ye eşittir. 433 MHz bandı için dalga boyu bu nedenle 299.792.458 / 433.000.000 = 34,54 cm'dir. Bunun yarısı 17,27 cm ve dörtte biri 8,63 cm'dir.
433 MHz bandı için dalga boyu 299.792.458 / 433.000.000 = 69,24 cm'dir. Bunun yarısı 34,62 cm ve dörtte biri 17,31 cm'dir. Yukarıdaki formülden anten kablosunun uzunluğunu hesaplama sürecini görebiliriz.
Güç Gereksinimi
RFM69HCW, 1.8V ile 3.6V arasında bir çalışma voltajına sahiptir ve iletim sırasında 130mA'ya kadar akım çekebilir. Tablonun altında, modülün güç tüketimini farklı koşullarda açıkça görebiliyoruz.
Uyarı: Seçtiğiniz Arduino, çevre birimiyle iletişim kurmak için 5V mantık seviyeleri kullanıyorsa, modülü doğrudan Arduino'ya bağlamak modüle zarar verecektir.
Sembol |
Açıklama |
Koşullar |
Min |
Tip |
Max |
Birim |
IDDSL |
Uyku modunda akım |
- |
0.1 |
1 |
uA |
|
IDDIDLE |
Bekleme modunda mevcut |
RC osilatörü etkin |
- |
1.2 |
- |
uA |
IDDST |
Bekleme Modunda Akım |
Kristal osilatör etkin |
- |
1.25 |
1.5 |
uA |
IDDFS |
Synthesizer'da mevcut mod |
- |
9 |
- |
uA |
|
IDDR |
Alma modunda mevcut |
- |
16 |
- |
uA |
|
IDDT |
İletim modunda uygun eşleştirme ile besleme akımı, VDD aralığında kararlı |
RFOP = +20 dBm, PA_BOOST'ta RFOP = +17 dBm, PA_BOOST'ta RFOP = +13 dBm, RFIO pininde RFOP = +10 dBm, RFIO pininde RFOP = 0 dBm, RFIO pininde RFOP = -1 dBm, RFIO pininde |
- - - - - - |
130 95 45 33 20 16 |
- - - - - - |
mA mA mA mA mAmA |
Bu eğitimde, modül ile iletişim kurmak için iki Arduino Nano ve iki mantık seviyesi dönüştürücü kullanacağız. Arduino nano'ları kullanıyoruz çünkü dahili dahili regülatör tepe akımını çok verimli bir şekilde yönetebilir. Aşağıdaki donanım bölümündeki Fritzing şeması size daha net bir şekilde açıklayacaktır.
NOT: Güç kaynağınız 130mA tepe akımı sağlayamıyorsa, Arduino'nuz yeniden başlatılabilir veya daha kötüsü modül düzgün şekilde iletişim kuramayabilir, bu durumda düşük ESR'li büyük değerli bir kapasitör durumu iyileştirebilir
RFM69 Modül Bağlantıları ve Tanımı
Etiket |
Fonksiyon |
Fonksiyon |
Etiket |
KARINCA |
RF sinyal çıkışı / girişi. |
Güç Zemin |
GND |
GND |
Anten toprağı (güç topraklamasıyla aynı) |
Dijital I / O, yazılımla yapılandırılmış |
DIO5 |
DIO3 |
Dijital I / O, yazılımla yapılandırılmış |
Tetikleme girişini sıfırla |
RST |
DIO4 |
Dijital I / O, yazılımla yapılandırılmış |
SPI Çip seçme girişi |
NSS |
3.3V |
3.3V Besleme (en az 130 mA) |
SPI Saat girişi |
SCK |
DIO0 |
Dijital I / O, yazılımla yapılandırılmış |
SPI Veri girişi |
MOSI |
DIO1 |
Dijital I / O, yazılımla yapılandırılmış |
SPI Veri çıkışı |
MİSO |
DIO2 |
Dijital I / O, yazılımla yapılandırılmış |
Güç Zemin |
GND |
Özel Geliştirme Panosu Hazırlama
Modülü satın aldığımda, breadboard uyumlu bir koparma panosu ile gelmedi, bu yüzden kendim yapmaya karar verdik. Aynısını yapmanız gerekirse, sadece adımları izleyin. Ayrıca, bu adımları izlemenin zorunlu olmadığını, telleri RF modülüne lehimleyip bunları breadboard'a bağlayabileceğinizi ve yine de çalışacağını unutmayın. Bu prosedürü yalnızca kararlı ve sağlam bir kurulum elde etmek için takip ediyorum.
Adım 1: RFM69HCW modülü için şemaları hazırlayın
Adım 3: Bunun için bir PCB hazırlayın, bu Ev Yapımı PCB eğitimini takip ediyorum. Ayak izini bakır bir levha üzerine basıp dağlama çözümüne düşürdüm
Adım 4: Hem kartlar için prosedürü izleyin hem de modülünüzü ayak izine lehimleyin. Lehimledikten sonra her iki modülüm de aşağıdaki gibi görünüyor
RFM69HCW RF Modülü bacak yapısı aşağıdaki şekilde verilmektedir
Gerekli malzemeler
Modülle iletişim kurmanız gereken şeylerin listesi burada.
- İki RFM69HCW modülü (eşleşen frekanslara sahip):
- 434 MHz (WRL-12823)
- İki Arduino (Arduino NANO kullanıyorum)
- İki mantık seviyesi dönüştürücü
- İki koparma panosu (özel yapım bir koparma panosu kullanıyorum)
- Bir düğme
- Dört LED
- Bir 4.7K direnç dört 220Ohms direnç
- Atlama telleri
- Anteni yapmak için emaye bakır tel (22AWG).
- Ve son olarak lehimleme (eğer zaten yapmadıysanız)
Donanım bağlantısı
Bu eğitimde 5 volt lojik kullanan Arduino nano kullanıyoruz, ancak RFM69HCW modülü yukarıdaki tabloda açıkça görebileceğiniz gibi 3.3 volt mantık seviyeleri kullanıyor, böylece iki cihaz arasında doğru bir şekilde iletişim kurmak için mantık seviyesi dönüştürücü zorunludur, aşağıdaki fritzing diyagramında Arduino nano'yu RFM69 modülüne nasıl bağlayacağınızı gösterdik.
Fritzing Diyagramı Gönderen Düğümü
Bağlantı Tablosu Gönderen Düğüm
Arduino Pimi |
RFM69HCW Pimi |
G / Ç Pimleri |
D2 |
DIO0 |
- |
D3 |
- |
TAC_SWITCH |
D4 |
- |
LED_GREEN |
D5 |
- |
LED_RED |
D9 |
- |
LED_BLUE |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MİSO |
- |
D13 |
SCK |
- |
Fritzing Diyagram Alıcı Düğümü
Bağlantı Tablosu Alıcı Düğümü
Arduino Pimi |
RFM69HCW Pimi |
G / Ç Pimleri |
D2 |
DIO0 |
- |
D9 |
- |
LED |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MİSO |
- |
D13 |
SCK |
- |
Örnek Çizimi Çalıştırma
Bu eğitimde, iki Arduino RFM69 düğümü kurup birbirleriyle iletişim kurmalarını sağlayacağız. Aşağıdaki bölümde, LowPowerLab'den Felix Rusu tarafından yazılan RFM69 kütüphanesi yardımıyla modülü nasıl kurup çalıştıracağımızı öğreneceğiz.
Kitaplığı İçe Aktarma
Umarım, daha önce biraz Arduino programlama yaptınız ve bir kitaplığın nasıl kurulacağını biliyorsunuzdur. Almadıysanız, bu bağlantının .zip Kitaplığını İçe Aktarma bölümünü kontrol edin
Düğümleri Takmak
Gönderen Düğümün USB'sini PC'nize takın, Arduino IDE'nin "Araçlar / Bağlantı Noktası" listesine yeni bir COM bağlantı noktası numarası eklenmelidir, not edin, şimdi Alıcı düğümünü takın, Araçlar'da başka bir COM bağlantı noktası görünmelidir. Bağlantı noktası listesi, ayrıca, bağlantı noktası numarası yardımıyla, taslağı göndericiye ve alıcı düğüme yükleyeceğiz.
İki Arduino oturumu açma
İlk oturum yüklendikten sonra Arduino IDE simgesine çift tıklayarak iki Arduino IDE oturumu açın, iki Arduino oturumu açmak zorunludur çünkü bu şekilde iki Arduino seri monitör penceresi açabilir ve aynı anda iki düğümün çıkışını izleyebilirsiniz.
Örnek Kodun Açılması
Şimdi her şey kurulduğunda, bunu yapmak için her iki Arduino oturumunda da örnek kodu açmamız gerekir.
Dosya> Örnekler> RFM6_LowPowerLab> Örnekler> TxRxBlinky
ve açmak için tıklayın
Örnek Kodu Değiştirme
- Kodun üst kısmına yakın bir yerde, #define NETWORKID öğesini arayın ve değeri 0 olarak değiştirin. Bu Kimlik ile tüm düğümleriniz birbiriyle iletişim kurabilir.
- Pano frekansına uyması için #define FREQUENCY değişikliğine bakın (benimki 433_MHz).
- #Define ENCRYPTKEY'i arayın, bu sizin 16 bitlik şifreleme anahtarınızdır.
- #Define IS_RFM69HW_HCW'yi arayın ve bir RFM69_HCW modülü kullanıyorsanız açıklamayı kaldırın
- Ve son olarak, #define NODEID araması yapın, varsayılan olarak bir ALICI olarak ayarlanmalıdır
Şimdi kodu, önceden kurduğunuz Alıcı Düğümünüze yükleyin.
Gönderen Düğüm için Çizimi değiştirme zamanı
Şimdi #define NODEID makrosunda onu SENDER olarak değiştirin ve kodu Gönderen Düğümünüze yükleyin.
İşte bu, eğer her şeyi doğru yaptıysanız, test etmeye hazır iki tam çalışan modeliniz var.
Örnek Eskizin Çalışması
Sketch'in başarılı bir şekilde yüklenmesinden sonra, Arduino'nun D4 pinine bağlı olan Kırmızı LED'i göreceksiniz, şimdi Gönderici Düğümündeki düğmeye basın ve Kırmızı LED'in söndüğünü ve Yeşil LED'in yanacağını göreceksiniz. Arduino'nun Pin D5'ine bağlı olarak aşağıdaki resimde gösterildiği gibi yanar
Ayrıca Düğmeye Basıldı! Aşağıda gösterildiği gibi Seri monitör penceresindeki metin
Şimdi Gönderici Düğümün D9 Pimine bağlı Mavi LED'i gözlemleyin, iki kez yanıp sönecek ve Alma Düğümünün Seri Monitör penceresinde aşağıdaki mesajı ve ayrıca D9 pinine bağlı Mavi LED'i göreceksiniz. Alıcı Düğümü yanacaktır. Alıcı düğümünün Seri Monitör penceresinde yukarıdaki mesajı görürseniz ve ayrıca LED yanarsa Tebrikler! RFM69 modülünü Arduino IDE ile başarıyla ilettiniz. Bu eğiticinin eksiksiz çalışması, bu sayfanın altında verilen videoda da bulunabilir.
Tüm bu modüller, meteoroloji istasyonları, garaj kapıları, göstergeli kablosuz pompa kontrolörü, dronlar, robotlar, kediniz inşa etmek için harika olduğunu kanıtlıyor… sınır gökyüzü! Umarım öğreticiyi anladınız ve faydalı bir şey yapmaktan keyif aldınız. Herhangi bir sorunuz varsa, lütfen yorum bölümüne bırakın veya diğer teknik sorular için forumları kullanın.