Cara Menyambungkan Kayu Bedik Ke Arduino

Isi kandungan:

Cara Menyambungkan Kayu Bedik Ke Arduino
Cara Menyambungkan Kayu Bedik Ke Arduino

Video: Cara Menyambungkan Kayu Bedik Ke Arduino

Video: Cara Menyambungkan Kayu Bedik Ke Arduino
Video: Menyambungkan Arduino SerialPort dengan Visual Studio C# | [Visual Studio] #part1 2024, November
Anonim

Terdapat pelbagai cara untuk memindahkan maklumat dari seseorang ke mikrokontroler atau komputer, dan salah satunya menggunakan kayu bedik. Mari lihat bagaimana menyambungkan kayu bedik analog dengan dua paksi dan butang ke Arduino.

Joystick dengan dua paksi dan butang
Joystick dengan dua paksi dan butang

Ia perlu

  • - Arduino;
  • - kayu bedik dua paksi;
  • - 3 perintang dengan nilai nominal 220 Ohm;
  • - 1 RGB atau 3 LED konvensional.

Arahan

Langkah 1

Joystick adalah alat yang mudah digunakan dan senang digunakan untuk menghantar maklumat. Terdapat sebilangan besar jenis joystick dari segi jumlah darjah kebebasan, prinsip membaca petunjuk dan teknologi yang digunakan. Joystick paling kerap digunakan untuk mengawal pergerakan mekanisme, model terkawal, robot. Joystick analog, yang akan kita lihat hari ini, adalah pegangan yang dilekatkan pada sambungan bola dengan dua paksi saling tegak lurus. Apabila tombol dimiringkan, sumbu memutar kontak bergerak dari potensiometer, kerana voltan pada outputnya berubah. Juga, joystick analog mempunyai butang taktik, yang dipicu semasa anda menekan pemegang secara menegak.

Gambar rajah skematik Joystick
Gambar rajah skematik Joystick

Langkah 2

Sambungkan kayu bedik mengikut rajah di bawah. Sambungkan output analog X dan Y kayu bedik ke input analog A1 dan A2 dari Arduino, output butang SW ke input digital 8. Joystick dikuasakan oleh voltan +5 V.

Gambar rajah pendawaian Joystick untuk Arduino
Gambar rajah pendawaian Joystick untuk Arduino

Langkah 3

Untuk melihat dengan jelas bagaimana kayu bedik berfungsi, mari tulis lakaran seperti itu. Mari nyatakan pin, tetapkan mod operasi untuknya. Perhatikan bahawa dalam prosedur setup (), kita menetapkan input switchPin ke tahap tinggi. Ini membolehkan perintang penarik terbina dalam port ini. Sekiranya anda tidak menghidupkannya, maka apabila butang kayu bedik tidak ditekan, port Arduino ke-8 akan menggantung di udara dan menangkapnya. Ini akan membawa kepada positif palsu yang tidak diingini.

Dalam prosedur gelung (), kami terus memeriksa keadaan butang dan memaparkannya menggunakan LED pada output 13. Oleh kerana input switchPin ditarik, LED sentiasa menyala, dan apabila butang ditekan, ia padam, dan bukan sebaliknya.

Seterusnya, kita membaca bacaan dua potensiometer kayu bedik - keluaran paksi X dan Y. Arduino mempunyai ADC 10-bit, jadi nilai yang dibaca dari kayu bedik berada di antara 0 hingga 1023. Di kedudukan tengah kayu bedik, seperti yang anda lihat dalam ilustrasi, nilai di wilayah 500 adalah sekitar tengah julat.

Lakaran untuk menunjukkan operasi kayu bedik
Lakaran untuk menunjukkan operasi kayu bedik

Langkah 4

Biasanya kayu bedik digunakan untuk mengawal motor elektrik. Tetapi mengapa tidak menggunakannya untuk mengawal kecerahan LED, misalnya? Mari sambungkan LED RGB (atau tiga LED biasa) ke port digital 9, 10 dan 11 Arduino mengikut gambarajah di atas, tentu tidak lupa tentang perintang.

Gambarajah pendawaian Joystick dan RGB LED ke Arduino
Gambarajah pendawaian Joystick dan RGB LED ke Arduino

Langkah 5

Kami akan mengubah kecerahan warna yang sesuai ketika mengubah posisi kayu bedik di sepanjang sumbu, seperti yang ditunjukkan pada gambar. Kerana kayu bedik mungkin tidak dipusatkan dengan tepat oleh pengeluar dan memiliki skala tengah tidak sekitar 512, tetapi dari 490 hingga 525, LED mungkin menyala sedikit walaupun kayu bedik berada dalam posisi netral. Sekiranya anda mahu ia dimatikan sepenuhnya, maka buat pindaan yang sesuai untuk program ini.

Diagram taburan kecerahan saluran R, G, B di sepanjang paksi X dan Y
Diagram taburan kecerahan saluran R, G, B di sepanjang paksi X dan Y

Langkah 6

Berdasarkan rajah di atas, kami akan menulis lakaran Arduino yang mengawal kecerahan LED RGB menggunakan kayu bedik.

Pertama, kami akan menyatakan korespondensi pin dan dua pemboleh ubah - ledOn dan prevSw - untuk bekerja dengan butang. Dalam prosedur persediaan (), tetapkan fungsi ke pin dan sambungkan penarik tarik ke pin butang dengan perintah digitalWrite (swPin, HIGH).

Dalam gelung () kita menentukan menekan butang kayu bedik. Apabila anda menekan butang, kami menukar mod operasi antara mod "lampu suluh" dan mod "muzik warna".

Dalam mod freeMode (), kecerahan LED dikawal dengan memiringkan kayu bedik ke arah yang berbeza: semakin kuat kecondongan di sepanjang paksi, semakin terang warna yang sesuai. Lebih-lebih lagi, transformasi nilai diambil alih oleh fungsi peta (nilai, fromLower, fromUpper, toLower, toUpper). Fungsi peta () memindahkan nilai yang diukur (dari Rendah, ke Tinggi) di sepanjang paksi kayu bedik ke julat kecerahan yang diinginkan (ke Rendah, ke Tinggi). Anda boleh melakukan perkara yang sama dengan operasi aritmetik biasa, tetapi notasi ini jauh lebih pendek.

Dalam mod discoMode (), tiga warna secara bergantian memperoleh kecerahan dan padam. Untuk dapat keluar dari gelung ketika butang ditekan, kami memeriksa setiap lelaran untuk melihat apakah butang telah ditekan.

Lakarkan untuk mengawal kecerahan LED menggunakan kayu bedik analog
Lakarkan untuk mengawal kecerahan LED menggunakan kayu bedik analog

Langkah 7

Hasilnya adalah lampu suluh yang terbuat dari LED RGB tiga warna, kecerahan setiap warna diatur menggunakan joystick. Dan apabila anda menekan butang, mod "muzik warna" diaktifkan. Walaupun saya menggunakannya, sebaliknya, sebagai cahaya malam.

Oleh itu, kami belajar bagaimana menyambungkan kayu bedik dua paksi analog dengan butang ke Arduino dan membaca bacaan daripadanya. Anda boleh memikirkan dan melaksanakan penggunaan kayu bedik yang lebih menarik daripada contoh kami.

Disyorkan: