Isi kandungan:
- Langkah 1: Komponen
- Langkah 2: Papan Pelayan
- Langkah 3: Pengekod Pelayan: Salin dan Tampal
- Langkah 4: Lembaga Pelanggan
- Langkah 5: Kod Pelanggan: Salin dan Tampal
- Langkah 6: Nota Mengenai Kod:
Video: Kawalan Servo Tanpa Wayar: 6 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:11
Projek ini mengawal putaran servo secara wayarles dengan menggunakan potensiometer (kenop). Putaran dikekang hingga 180 darjah.
Langkah 1: Komponen
Projek ini terdiri daripada
- 2 papan pengawal Arduino UNO dengan kabel penyambung USB
- 2 modul RF transceiver nRF24L01 - 2.4GHz (untuk mendapatkan bantuan dengan modul ini, rujuk
- 2 papan penyesuai soket (cip ransel) untuk nRF24L01
- 1 Papan Pengembangan Prototaip ProtoShield Arduino Compatible 328 pilihan
- 1 servo
- 1 potensiometer analog
- besi pematerian dan pateri
- wayar
- tang hidung jarum
- bungkus penebat, saya menggunakan pita elektrik
Langkah 2: Papan Pelayan
Papan pelayan terdiri daripada modul pemancar, papan perisai (yang menghubungkan terus ke papan Arduino hanya sehala), dan servo. Saya memutuskan untuk memasukkan papan perisai untuk mengelakkan papan roti yang kekok dan memberikan projek dan keseluruhannya lebih kemas.
Kod dan sumber web yang termasuk dalam senarai komponen memperincikan sambungan modul transceiver. Saya memutuskan untuk menyelesaikan sambungan daripada menggunakan sambungan sementara seperti projek sebelumnya. Oleh kerana saya seorang pemula, saya melindungi setiap sambungan pateri dengan pita elektrik (mereka tidak cantik).
Pin papan pelindung sesuai dengan pin Arduino. Sebelum melampirkan papan perisai, saya menyambungkan tanah dan pin 5volt ke rel papan dengan wayar dan solder. Saya juga menyisipkan wayar 5volt dan ground komponen ke rel papan perisai, dan akhirnya melekatkan Arduino ke papan perisai.
Servo dipasang pada pin 3volt untuk kuasa dan pin digital 2 untuk komunikasi.
** Catatan: hanya setelah menyelesaikan binaan ini, saya dapati bahawa papan Arduino saya tidak serupa. Transceiver pelayan saya dikuasakan oleh rel 5volt pada papan perisai, sementara transceiver klien dikuasakan oleh pin 3volt, walaupun saya telah ditakdirkan untuk mempercayai bahawa fungsi cip penyesuai pada transceiver adalah untuk memberikan voltan yang tepat. Yang boleh saya katakan dengan pasti adalah bahawa kod yang disediakan sesuai dengan konfigurasi yang ditunjukkan dalam gambar menghasilkan kesan yang dijelaskan.
Langkah 3: Pengekod Pelayan: Salin dan Tampal
// KOD SERVER / * NRF24L01 Arduino CE> D8 CSN> D10 SCK> D13 MO> D11 MI> D12 RO> Tidak digunakan GND> GND VCC> 5V * / // pendawaian transceiver
#sertakan
// perpustakaan servo
#sertakan
// perpustakaan transceiver
#tentukan Servopin 2
// pin output servo deklarasi
ServoTimer2 serv;
// pengisytiharan nama servo
RH_NRF24 nrf24;
// pengisytiharan nama pemancar
int timeOUT = 0;
// pemboleh ubah untuk servo
denyutan int = 90;
// pemboleh ubah untuk menyimpan denyutan
persediaan tidak sah ()
{serv.attach (Servopin); // barangan servo
Serial.begin (9600); // barang transceiver
jika (! nrf24.init ())
Serial.println ("init gagal"); // perkara monitor bersiri jika (! nrf24.setChannel (12)) // tetapkan saluran ke 125 Serial.println ("setChannel gagal"); jika (! nrf24.setRF (RH_NRF24:: DataRate2Mbps, RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF gagal"); // barang monitor bersiri}
gelung kosong ()
{if (nrf24.available ()) {uint8_t buf [RH_NRF24_MAX_MESSAGE_LEN]; uint8_t len = sizeof (buf); if (nrf24.recv (buf, & len)) // perkara monitor bersiri {Serial.print ("got request:"); denyutan = strtol ((const char *) buf, NULL, 10); // jenis data menukar barang
int prin = peta (denyutan, 750, 2250, 0, 180); // jenis data menukar barang
Serial.println (prin); serv.write (denyutan); // membuat servo bergerak}}
}
Langkah 4: Lembaga Pelanggan
Papan pelanggan terdiri daripada modul transceiver dan potensiometer. Modul transceiver dikabelkan dengan cara yang sama ** dengan papan pelayan dengan pengecualian bahawa tanpa papan perisai, ia dipasang terus ke pin papan Arduino.
Potensiometer mengambil 5v, tanah, dan dihubungkan ke pin analog 2.
** Catatan: seperti yang disebutkan dalam langkah papan pelayan, papan Arduino saya tidak serupa. Dalam kes ini, transceiver disambungkan ke pin berlabel 3.3V, tepat bersebelahan dengan pin 5V, tetapi sekali lagi, semuanya nampak berfungsi dengan baik.
Langkah 5: Kod Pelanggan: Salin dan Tampal
// KOD KLIEN / * NRF24L01 Arduino CE> D8 CSN> D10 SCK> D13 MO> D11 MI> D12 RO> Tidak digunakan GND> GND VCC> 5V * / // pendawaian transceiver
#sertakan
// perpustakaan transceiver
int potpin = A2; // pemisahan potensiometer
int val;
char tempChar [5];
Rentetan valString = ""; // jenis data menukar barang
RH_NRF24 nrf24; // barang transceiver
persediaan tidak sah ()
{Serial.begin (9600); jika (! nrf24.init ()) Serial.println ("init gagal"); // Lalai selepas init ialah 2.402 GHz (saluran 2), 2Mbps, 0dBm jika (! Nrf24.setChannel (12)) Serial.println ("setChannel gagal"); jika (! nrf24.setRF (RH_NRF24:: DataRate2Mbps, RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF gagal"); } // barang transceiver
gelung kosong () {
val = analogRead (potpin); // bahan potensiometer
val = peta (val, 0, 1023, 750, 2250);
valString = val; String str = (valString); str.toCharArray (tempChar, 5); // datatype ubah barang nrf24.send (tempChar, sizeof (tempChar));
}
Langkah 6: Nota Mengenai Kod:
Kod ini mengandungi beberapa fungsi penyelesaian masalah terhad dalam bentuk maklum balas dari monitor bersiri di antara muka perisian Arduino. Semasa melihat monitor bersiri dari kod SERVER (ctrl + shift + M), anda seharusnya dapat melihat keadaan potensiometer dalam bentuk nombor antara 1 dan 180.
Juga, inilah perpustakaan untuk wayarles dan servo:
www.airspayce.com/mikem/arduino/RadioHead/
github.com/nabontra/ServoTimer2
Disyorkan:
Magic Button 4k: Alat Kawalan Jauh Tanpa Wayar 20USD BMPCC 4k (atau 6k): 4 Langkah (dengan Gambar)
Magic Button 4k: Alat Kawalan Jauh Tanpa Wayar 20USD BMPCC 4k (atau 6k): Ramai orang meminta saya berkongsi beberapa butiran mengenai alat kawalan wayarles saya untuk BMPCC4k. Sebilangan besar soalan adalah mengenai kawalan bluetooth, jadi saya akan menyebutkan beberapa perincian mengenai itu. Saya menganggap anda sudah biasa dengan persekitaran ESP32 Arduino
Robot Arduino Tanpa Wayar Menggunakan Modul Tanpa Wayar HC12: 7 Langkah
Robot Arduino Tanpa Wayar Menggunakan Modul Tanpa Wayar HC12: Hai kawan-kawan, selamat datang kembali. Dalam catatan sebelumnya, saya telah menjelaskan apa itu H Bridge Circuit, IC pemandu motor L293D, IC pemandu L293D piggybacking untuk memandu pemandu motor semasa yang tinggi dan bagaimana anda boleh merancang dan membuat Papan Pemandu motor L293D anda sendiri
Penyejuk / Dudukan Laptop Kos Sifar (Tanpa Lem, Tanpa Penggerudian, Tanpa Mur & Baut, Tanpa Skru): 3 Langkah
Penyejuk / Dudukan Laptop Kos Sifar (Tanpa Lem, Tanpa Penggerudian, Tanpa Mur & Baut, Tanpa Skru): KEMASKINI: SILA KINDLY VOTE FOR MY INSTRUCTABLE, TERIMA KASIH ^ _ ^ ANDA JUGA MUNGKIN MENGUNDI LAIN MASUK DI www.instructables.com/id/Zero-Cost-Aluminium-Furnace-No-Propane-No-Glue-/ ATAU MUNGKIN MEMBERIKAN suara untuk rakan baik saya
Peretas Pintu Tanpa Wayar ke Suis Penggera Tanpa Wayar atau Suis Hidup / Mati: 4 Langkah
Peretas Pintu Tanpa Wayar ke Suis Penggera Tanpa Wayar atau Suis Hidup / Mati: Saya baru-baru ini membina sistem penggera dan memasangnya di rumah saya. Saya menggunakan suis magnet di pintu dan memasang kabel melalui loteng. Tingkap adalah kisah lain dan pendawaian keras bukan pilihan. Saya memerlukan penyelesaian tanpa wayar dan ini
Tukar Penghala Tanpa Wayar ke Jalur Akses 2x Ekstensi Tanpa Wayar: 5 Langkah
Tukar Penghala Tanpa Wayar ke Jalur Akses 2x Ekstensi Tanpa Wayar: Saya mempunyai sambungan internet tanpa wayar yang lemah di rumah saya disebabkan oleh RSJ (rasuk sokongan logam di siling) dan ingin meningkatkan isyarat atau menambah pemanjang tambahan untuk seluruh rumah. Saya telah melihat pemanjangan sekitar & £ 50 dalam sebuah elektro