Proses manufaktur
| × | 2 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Ini akan menjadi kelanjutan dari proyek saya sebelumnya Pemrograman ATtiny85 dengan Arduino Uno. Sekarang dengan ATtiny85 yang lebih murah, saya mencari cara yang lebih murah untuk mengirimkan data sensor. Yang membawa saya ke nRF24L01+ transceiver RF yang murah dan berdaya rendah. Ini tampaknya menjadi solusi yang lebih baik bagi saya. Tapi ada satu masalah, keterbatasan jumlah pin di ATtiny85. Saya tidak dapat menghubungkan keduanya nRF24L01+ dan sensor di dalamnya. Jadi saya mencari solusi dan menemukan "kontrol nrf24l01+ dengan 3 pin ATtiny85". Di sini saya membahas bagaimana saya mengimplementasikannya.
Akan ada dua modul di sini pemancar dan penerima. Pemancarnya adalah ATtiny85 yang mengirim beberapa data dan penerimanya adalah Arduino Uno yang menerima data melalui nRF25L01+. Saya menggunakan perpustakaan RF24 (http://tmrh20.github.io/RF24/). Ikuti instruksi yang diberikan di sana dan tambahkan ke Arduino IDE sebelum memulai dengan ini. Saya tidak akan menjelaskan banyak tentang RF24 karena ada dokumentasi yang sangat bagus tentangnya.
Pemancar mengirimkan nomor yang bertambah setiap detik. ATtiny85 akan mengirim data melalui nRF24L01+ hanya menggunakan 3 pin. Saya mengikuti petunjuk yang diberikan oleh Ralph Doncaster tentang penerapannya.
Komponen yang dibutuhkan adalah
Unggah kode di bawah ini ke ATtiny85 (lihat proyek saya sebelumnya Pemrograman ATtiny85 dengan Arduino Uno jika Anda ingin tahu caranya)
pengirim.inoHubungkan komponen seperti yang ditunjukkan di bawah ini
Saat sumber daya tersambung, pemancar akan mulai mengirimkan urutan nomor setiap 1 detik.
Penerima menerima data yang dikirim oleh pemancar dan data yang diterima dapat dilihat di Serial Monitor.
Komponen yang dibutuhkan adalah
Unggah kode di bawah ini ke Uno
penerima.inoHubungkan komponen seperti yang ditunjukkan di bawah ini
Jika ini tidak jelas, rujuk file fritzing yang dilampirkan dengan proyek ini. Harap dicatat bahwa Vcc harus selalu 3v3. Di beberapa klon Arduino Uno, daya 3v3 mungkin tidak memiliki arus yang cukup yang menyebabkan nRF24L01+ tidak berfungsi. Salah satu dari metode di bawah ini disarankan untuk menyelesaikan ini
Dengan pemancar dan penerima siap sekarang saatnya untuk menguji. Pastikan power supply ke transmitter dalam keadaan ON. Hubungkan Arduino Uno ke PC dan buka serial monitor di arduino ide. Ini harus berfungsi seperti di bawah ini
Dengan sedikit pengetahuan saya dalam menyolder, saya membuatnya permanen menggunakan perfboard.
Ini adalah modul yang lebih sederhana untuk mendemonstrasikan bagaimana nRF24L01+ dan bagaimana kita dapat menggunakan hanya 3 pin ATtiny85 untuk menghubungkannya sehingga pin lainnya tersedia untuk membaca data sensor. Masukan/Saran dipersilahkan.
#define CE_PIN 3#define CSN_PIN 3 //Karena kami menggunakan konfigurasi 3 pin, kami akan menggunakan pin yang sama untuk CE dan CSN#termasuk radio "RF24.h"RF24(CE_PIN, CSN_PIN);alamat byte[11] ="SimpleNode";muatan panjang yang tidak ditandatangani =0;pengaturan batal() { radio.begin(); // Jalankan radio radio.setAutoAck(1); // Pastikan autoACK diaktifkan radio.setRetries(15,15); // Penundaan maksimum antara percobaan ulang &jumlah percobaan ulang radio.openWritingPipe(alamat); // Tulis ke alamat perangkat 'SimpleNode'}void loop(void){ payload++; radio.write( &payload, sizeof(unsigned long) ); //Kirim data ke 'Receiver' setiap detik delay(1000);}
#define CE_PIN 7#define CSN_PIN 8#include#include "RF24.h"radio RF24(CE_PIN, CSN_PIN);byte address[11] ="SimpleNode";unsigned long payload =0;void setup() { Serial.begin(115200); radio.mulai(); // Jalankan radio radio.setAutoAck(1); // Pastikan autoACK diaktifkan radio.setRetries(15,15); // Penundaan maksimum antara percobaan ulang &jumlah percobaan ulang radio.openReadingPipe(1, alamat); // Tulis ke alamat perangkat 'SimpleNode' radio.startListening();}void loop(void){ radio.stopListening(); radio.startListening(); radio.read( &payload, sizeof(unsigned long) ); if(payload !=0){ Serial.print("Mendapat Payload "); Serial.println(muatan); } delay(1000);}
Proses manufaktur
Komponen dan persediaan Teknologi Microchip ATtiny85 × 1 Regulator 3.3V SparkFun LM1117 × 1 SparkFun USB Male A × 1 Resistor 10k ohm × 2 Resistor 2.21k ohm × 1 Arduino Proto Shield × 1 Sakelar Tombol Tekan SparkFun 12mm × 1
Komponen dan persediaan Arduino UNO × 1 Sensor Kedekatan × 1 Kabel jumper (generik) × 1 Tentang proyek ini Halo, teman-teman! Hari ini saya akan menunjukkan kepada Anda bagaimana menghubungkan sensor IR dengan Arduino UNO. Jadi mari kita mulai! Komp
Komponen dan persediaan Arduino Nano R3 × 1 Tentang proyek ini Snowflake terdiri dari 30 LED yang dikelompokkan menjadi 17 segmen independen yang dapat dikontrol secara terpisah oleh mikrokontroler Arduino Nano. Setiap grup LED dapat diredupkan dengan PWM untuk membuat beberapa
Komponen dan persediaan Arduino UNO × 1 Teknologi Microchip ATtiny85 × 1 Kapasitor Pemisah Elektrolitik - 10uF/25V × 1 Kabel Jumper M/M × 1 Tentang proyek ini Saya sedang mengerjakan proyek yang mengharuskan membaca beberapa data sensor di lokasi y