NRF24L01: modul untuk komunikasi nirkabel untuk Arduino

NRF24L01

Tentunya Anda perlu membuat proyek DIY menggunakan Arduino atau elemen lainnya dan Anda harus memanfaatkannya komunikasi nirkabel. Dan itu terjadi dengan memiliki beberapa jenis modul atau perangkat yang memungkinkan Anda untuk mengirim menggunakan IR, RF, Bluetooth, WiFi, dll. Artinya, Anda harus jelas tentang kebutuhan untuk mengetahui jenis sinyal apa yang paling sesuai untuk kasus Anda.

Dalam hal ini kami memiliki file panduan di NRF24L01 tersebut untukmu. Ini adalah chip komunikasi nirkabel yang akan memberi Anda apa yang Anda butuhkan untuk mengirim dan menerima sinyal. Jenis sinyal yang ditanganinya adalah RF atau frekuensi radio, yaitu gelombang dengan panjang gelombang besar, dan oleh karena itu berenergi rendah, yang dalam spektrum elektromagnetik berada di antara frekuensi 3 Hz dan 300 Ghz.

Apakah NRF24L01 itu?

NRF24L01

El NRF24L01 adalah chip yang diproduksi oleh Nordic Semiconductor. Jika Produk tidak ditemukan., chip dipasang pada PCB kecil dengan beberapa elemen tambahan yang Anda butuhkan, dan karenanya menyusun modul. Anda dapat menggunakannya dengan beberapa cara, termasuk menghubungkannya ke Adruino seperti yang akan saya tunjukkan nanti.

NRF24L01, seperti dapat disimpulkan dari namanya, adalah perangkat komunikasi nirkabel yang menggunakan frekuensi RF atau radio dengan kemampuan untuk beroperasi pada 2,4Ghz - 2,5 Ghz. Itu adalah band gratis untuk penggunaan gratis. Anda sudah tahu bahwa band lain telah dipesan dan Anda harus membayar jika ingin menggunakannya untuk mengirimkan informasi. Selain itu, ini mengintegrasikan pemancar + penerima.

Secara khusus, pita frekuensi yang dapat Anda gunakan adalah dari 2.400 Mhz hingga 2.525Mhz, dengan kemungkinan untuk memilih antara 125 saluran dengan spasi 1Mhz di antara keduanya. Namun, tidak disarankan untuk menggunakan frekuensi 2.4Ghz jika Anda menggunakan jaringan WiFi, drone yang bekerja dengan frekuensi ini, dll., Atau akan ada gangguan. Itulah mengapa lebih baik digunakan mulai dari 2.501Mhz dan seterusnya.

Mengenai karakteristiknya, bekerja dari 1.9 hingga 3.6v, Jadi akan mudah bagi Anda untuk menyalakannya dengan papan Arduino itu sendiri dengan koneksi 3.3, menggunakan baterai, dan bahkan dengan catu daya yang memiliki tegangan itu. Selain itu, Anda dapat mengkonfigurasi kecepatan transmisi antara 250 Kbps, 1Mbps, dan hingga 2Mbps.

Chip dalam emisi dan penerimaan dapat bekerja secara bersamaan hingga 6 koneksi dari berbagai perangkat. Dengan itu Anda dapat menyiarkan atau menerima dari berbagai titik tanpa masalah. Dan jika Anda mengkhawatirkan ketahanan atau keandalan komunikasi, chip itu sendiri memiliki sirkuit logika untuk memperbaiki kesalahan data dan meneruskan informasi jika perlu. Oleh karena itu, ini membebaskan prosesor dari tugas ini.

Untuk mengontrolnya, Anda dapat menggunakan bus SPI, jadi kontrolnya dengan Arduino sangat sederhana. Selain itu, pin data NRF24L01 mendukung hingga 5v tanpa masalah. Konsumsi daya dalam Stand By cukup rendah, sehingga tidak akan menjadi elemen yang perlu dikhawatirkan, dan ketika dioperasikan, ini bukan salah satu yang paling mahal, karena hanya membutuhkan 15mA untuk mengirim dan menerima data.

Di pasar Anda akan menemukan beberapa modul berbeda yang memasang chip NRF24L01, mereka hanya berubah dalam elemen tambahan yang dimilikinya atau dalam beberapa detail. Misalnya pada jenis antena. Beberapa memiliki antena yang tercetak di PCB dalam bentuk zigzag dengan jarak tempuh sekitar 20-30 meter. Yang lain mengakui antena eksternal yang agak lebih kuat dengan amplifier untuk bergerak dari 700 meter ke 1 km.

Namun, ruang lingkup sebenarnya dibatasi oleh beberapa faktor, seperti hambatan jalan, kebisingan atau gangguan dari elemen atau sinyal lain yang ada, kecepatan transmisi, tegangan suplai (tegangan lebih tinggi, jarak lebih jauh), dll. Misalnya, jika Anda ingin mengirim pada kecepatan maksimum 2Mbps, akan ada penalti besar dalam jarak, yang maksimum hanya 2 atau 3 meter. Pada kecepatan rendah, Anda mungkin bisa mendaki jarak itu.

ESP8266
Artikel terkait:
ESP8266: modul WIFI untuk Arduino

Apa yang perlu Anda ketahui sebelum membelinya?

Antena NRF40L01

El NRF24L01 adalah chip yang sangat murah yang dapat digunakan dalam banyak proyek. Misalnya, jika Anda tidak memiliki antena eksternal, Anda dapat membelinya hingga € 0.65, model antena eksternal sedikit lebih mahal daripada yang ini tetapi masih sangat murah dan biasanya tidak melebihi € 1.7.

Jika Anda tidak memiliki elemen emisi atau penerimaan lain, Anda sudah tahu bahwa Anda harus membeli dua modul NRF24L01, satu untuk digunakan di satu sisi dan yang lainnya di sisi lain tempat Anda ingin mengirim. Mereka berdua akan bertingkah seperti itu pengirim atau penerima sesukamu.

Pinout dan pemasangan NRF24L01

pin keluar NRF40L01

Adapun perakitannya, cukup sederhana. Itu NRF24L01 memiliki 8 pin, oleh karena itu pinout-nya sangat mudah untuk memahami bagaimana Anda bisa melihat di gambar ini yang saya tinggalkan untuk Anda. Di sebelah kanan Anda dapat melihat diagram pin papan Arduino UNO dan bagaimana setiap pin modul akan dihubungkan dengannya.

Seperti yang bisa Anda simpulkan, piring NRF24L01 ditenagai menggunakan pin GND dan 3.3v dari Arduino. Ingatlah untuk tidak melakukannya dengan sinyal 5v atau Anda akan merusak modul.

Integrasi dengan Arduino

2 NRF24L01 dengan Arduino (sirkuit)

Setelah Anda mengetahui apa itu NRF24L01 dan bagaimana ia dapat dihubungkan dan diberi daya, selain jumlah proyek yang dapat Anda lakukan dengan beberapa perangkat murah ini, hal berikutnya adalah menunjukkan contoh pemrograman sehingga Anda dapat mulai bereksperimen dengan Arduino IDE Anda. Ingatlah bahwa format data yang Anda kirimkan dapat dimodifikasi dalam kode sumber.

L298n
Artikel terkait:
L298N: modul untuk mengontrol motor untuk Arduino

Anda dapat memilih untuk mengirim dan menerima string, integer, data floating point, dll. Saya merekomendasikan Anda panduan kami tentang pemrograman Arduino jika Anda memulai. Dengannya Anda dapat membuat proyek pertama Anda. Dan sebagai contoh konkret untuk NRF24L01, berikut saya tinggalkan kode yang dibutuhkan untuk sebuah string.

Kode yang harus Anda tulis di Arduino IDE dan program papan Arduino yang terhubung ke NRF24L01 yang akan Anda tetapkan sebagai pemancar:

#include <nRF24L01.h>
#include <RF24.h>
#include <RF24_config.h>
#include <SPI.h>
 
const int pinCE = 9;
const int pinCSN = 10;
RF24 radio(pinCE, pinCSN);
 
// Single radio pipe address for the 2 nodes to communicate.
const uint64_t pipe = 0xE8E8F0F0E1LL;
 
char data[16]="Aquí tu mensaje" ;
 
void setup(void)
{
   radio.begin();
   radio.openWritingPipe(pipe);
}
 
void loop(void)
{
   radio.write(data, sizeof data);
   delay(1000);
}

Di sini kode yang harus Anda masukkan di Arduino IDE dan catat di papan yang telah Anda sambungkan ke NRF24L01 khusus sebagai reseptor:

#sertakan <nRF24L01.h>
#sertakan <RF24.h>
#sertakan <RF24_config.h>
#sertakan <SPI.h>

const int pinCE = 9;
const int pinCSN = 10;
Radio RF24 (pinCE, pinCSN);

// Alamat pipa radio tunggal untuk 2 node untuk berkomunikasi.
const uint64_t pipa = 0xE8E8F0F0E1LL;

data char [16];

batal penyiapan (batal)
{
Serial.begin (9600);
radio.begin ();
radio.openReadingPipe (1, pipa);
radio.startListening ();
}

void loop (void)
{
jika (radio.available ())
{
int done = radio.read (data, sizeof data);
Serial.println (data);
}
}

Dengan itu Anda akan memiliki semua yang Anda butuhkan dan Anda dapat mencoba mengirim kata atau string teks salah satunya dan melihat bagaimana yang lain menerimanya. Gunakan dua komputer yang dihubungkan dengan USB ke papan Arduino untuk menggunakan konsol sebagai sarana untuk melihat data. Pisahkan mereka dengan jarak yang hati-hati sesuai dengan modul yang Anda miliki atau konfigurasi yang Anda berikan dan Anda akan mulai melihat di layar komputer lain karakter yang Anda masukkan di kode pertama ...


Komentar, tinggalkan punyamu

tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.

  1.   Stefan dijo

    Halo Isaac
    Saya ingin menyelesaikan proyek dengan arduino, rasberry atau yang lainnya.
    Bisakah Anda memberikan kontak email untuk menjelaskan?
    Sebuah tambang - a01b02@abv.bg
    terima kasih