- Komponen yang Diperlukan:
- Modul RF:
- Penjelasan Kerja:
- Penjelasan Sirkuit:
- Menginstal Perpustakaan wiringPi di Raspberry Pi:
- Penjelasan Pemrograman:
Pada sesi ini kita akan mengembangkan RF Remote Control menggunakan Raspberry Pi, yang dapat digunakan untuk mengontrol Perangkat secara nirkabel. Kita dapat Menghidupkan dan Mematikan perangkat menggunakan remote control RF ini. Kami sebelumnya telah mengembangkan banyak proyek menggunakan Modul RF seperti Robot Kontrol RF, Robot Kontrol Gerakan Tangan, dll., Periksalah untuk memahami cara kerja Modul RF.
Komponen yang Diperlukan:
Sisi Pemancar:
- Pemancar RF (Pemancar Hibrid ASK)
- HT12E IC
- 4 Tombol tekan
- Resistor 750k
- Baterai 9 Volt
Sisi Penerima:
- Raspberry Pi
- LCD 16x2
- 10K POT
- Papan roti
- 1K Resistor (Lima)
- Resistor 33K
- HT12D IC
- Penerima RF (Penerima Hibrid ASK)
- LED (Lima)
- Resistor 10K (Empat)
- Menghubungkan kabel
- Sumber Daya listrik
Modul RF:
Ini adalah ASK Hybrid Transmitter dan modul penerima beroperasi pada frekuensi 433Mhz. Modul ini memiliki osilator yang distabilkan dengan kristal untuk menjaga kontrol frekuensi yang akurat untuk rentang terbaik. Di sana kita hanya membutuhkan satu antena secara eksternal untuk modul ini.
Modul ini sangat hemat biaya di mana komunikasi RF jarak jauh diperlukan. Modul ini tidak mengirimkan data melalui komunikasi UART dari PC atau mikrokontroler secara langsung karena banyak noise pada frekuensi ini dan teknologi Analognya. Kita dapat menggunakan modul ini dengan bantuan IC encoder dan decoder yang mengekstrak data dari noise.
Jangkauan pemancar sekitar 100 meter pada tegangan suplai maksimum dan untuk 5 volt jarak pemancar sekitar 50-60 meter dengan menggunakan kabel sederhana antena kode tunggal panjang 17cm.
Fitur Pemancar RF:
- Rentang Frekuensi: 433 Mhz
- Daya keluaran: 4-16dBm
- Suplai input: 3 hingga 12 volt dc
Deskripsi Pin RF Tx:
- GND - Pasokan darat
- Data In - Pin ini menerima data serial dari encoder
- Vcc - +5 Volt harus dihubungkan ke pin ini
- Antena - Sambungan yang dibungkus ke pin ini untuk transmisi data yang benar
Fitur Penerima RF:
- Sensitivitas: -105dBm
- JIKA Frekuensi: 1MHz
- Konsumsi Daya Rendah
- Saat ini 3,5 mA
- Tegangan suplai: 5 volt
Deskripsi Pin RF Rx:
- GND - Tanah
- Data In - Pin ini memberikan data serial keluaran ke Decoder
- Data In - Pin ini memberikan data serial keluaran ke Decoder
- Vcc - +5 Volt harus dihubungkan ke pin ini
- Vcc - +5 Volt harus dihubungkan ke pin ini
- GND - Tanah
- GND - Tanah
- Antena - Sambungan yang dibungkus ke pin ini untuk Penerimaan data yang benar
Penjelasan Kerja:
Mengerjakan proyek ini sangat mudah. Dalam proyek ini kami telah menggunakan empat tombol di sisi pemancar (berfungsi sebagai remote) untuk mengontrol empat LED di ujung Penerima. Ketika kita menekan salah satu dari empat tombol maka IC Encoder mengkodekan sinyal dan mengirimkannya ke pemancar RF dan Pemancar RF memancarkannya di lingkungan. Sekarang Penerima RF menerima sinyal yang ditransmisikan dan mendekodekannya menggunakan Decoder IC HT12D dan mengirimkan output 4-bitnya ke Raspberry Pi. Kemudian Raspberry Pi membaca bit-bit ini dan melakukan tugas terkait dan menyalakan LED masing-masing. Bel berbunyi bip sedetik setiap kali tombol apa pun ditekan. LCD 16x2 juga digunakan untuk menampilkan status 'ON atau OFF' dari semua LED.
Dalam Proyek ini, kami telah menggunakan empat LED hanya untuk tujuan demonstrasi, kami dapat memicu tugas apa pun dengan menekan tombol masing-masing di 'RF Remote'. Seperti kita juga dapat menghubungkan Peralatan Rumah Tangga AC di tempat LED, menggunakan Relay dan dapat mengontrol peralatan tersebut menggunakan 'RF Remote' yang sama secara nirkabel. Jadi rangkaian yang sama ini dapat berfungsi sebagai Proyek otomasi Rumah berbasis RF menggunakan Raspberry Pi. Kami sebelumnya telah mengembangkan banyak Proyek Otomasi Rumah yang dikendalikan menggunakan Bluetooth, DTMF, GSM dll., Anda dapat memeriksa semua Proyek Otomasi Rumah di sini.
Penjelasan Sirkuit:
Rangkaian Remote Control RF Raspberry Pi ini sederhana yang berisi Board Raspberry Pi, push button dan LCD, RF Pair dan IC encoder / decoder. Raspberry Pi mengontrol LCD, membaca input dan mengirimkan output sesuai input. Kami telah menggunakan Raspberry Pi 3 di sini, tetapi model Raspberry apa pun seharusnya berfungsi. Sirkuit dibagi menjadi dua bagian, satu sirkuit Penerima RF dan sirkuit pemancar RF. Kedua sirkuit ditunjukkan pada diagram di bawah ini.
Pada bagian Receiver, pin LCD rs, en, d4, d5, d6, d7 dihubungkan pada wiringPi GPIO Pin 11, 10, 6, 5, 4, 1 dalam mode 4-bit. Penerima RF menerima sinyal dari Pemancar RF dan HT12D IC menerjemahkannya. D8, D9, D10, D11 dari HT12D decoder IC langsung dihubungkan ke wiringPI GPIO pin 25, 24, 23 dan 22. Output LED dihubungkan ke wiringPi GPIO pin 26, 27, 28 dan 29. Bel juga digunakan untuk peringatan on tombol ditekan di wiringPi GPIO 0.
Rangkaian pemancar RF berisi IC Encoder HT12E dan 4 tombol push untuk mengontrol 4 LED. Di Encoder dan Decoder IC semua baris alamat terhubung ke ground.
Menginstal Perpustakaan wiringPi di Raspberry Pi:
Seperti di Python kami mengimpor impor RPi.GPIO sebagai file header IO untuk menggunakan Pin GPIO dari Raspberry Pi, di sini dalam bahasa C kita perlu menggunakan Perpustakaan wiringPi untuk menggunakan Pin GPIO di Program C kami. Kami dapat menginstalnya dengan menggunakan perintah di bawah ini satu per satu, Anda dapat menjalankan perintah ini dari Terminal atau dari beberapa klien SSH seperti Putty (jika Anda menggunakan Windows). Buka tutorial Memulai Raspberry Pi kami untuk mempelajari lebih lanjut tentang penanganan dan konfigurasi Raspberry Pi.
sudo apt-get install git-core sudo apt-get update sudo apt-get upgrade git clone git: //git.drogon.net/wiringPi cd wiringPi git pull origin cd wiringPi./build
Uji instalasi pustaka wiringPi, gunakan perintah di bawah ini:
gpio -v gpio readall
Penjelasan Pemrograman:
Pertama-tama kami menyertakan file header dan mendefinisikan pin untuk LCD, kemudian menginisialisasi beberapa variabel dan pin untuk mengambil indikasi input dan LED.
#include
Setelah itu kami memberikan arahan ke semua Pin GPIO yang digunakan dalam fungsi pengaturan void () .
void setup () {if (wiringPiSetup () == -1) {clear (); print ("Tidak dapat memulai"); setCursor (0,1); cetak ("wiringPi"); } pinMode (led1, OUTPUT); pinMode (led2, OUTPUT); pinMode (led3, OUTPUT); pinMode (led4, OUTPUT);……………….
Dalam kode kita telah menggunakan fungsi digitalRead untuk membaca output Decoder dan digitalWrite untuk mengirim output ke LED atau perangkat.
…………….. while (1) {setCursor (0,0); cetak ("D1 D2 D3 D4"); if (digitalRead (d1) == 0) {flag1 ++; setCursor (0,1); if (flag1% 2 == 1) {print ("ON"); digitalWrite (led1, HIGH); }……………..
Berikut adalah beberapa fungsi lainnya yang telah digunakan dalam proyek ini.
Fungsi void lcdcmd digunakan untuk mengirim perintah ke LCD dan fungsi void write digunakan untuk mengirim data ke LCD.
Fungsi void clear () digunakan untuk membersihkan LCD, void setCursor digunakan untuk mengatur posisi kursor dan void print untuk mengirimkan string ke LCD.
Fungsi void begin digunakan untuk menginisialisasi LCD dalam mode 4-bit dan void buzzer () untuk membunyikan bel.
Periksa Kode Lengkap untuk Remote Control RF Raspberry ini di bawah.