- Komponen Diperlukan
- Rajah Litar
- Komunikasi Bluetooth menggunakan Tetingkap Perintah MATLAB
- Komunikasi Bluetooth menggunakan MATLAB GUI
Bluetooth adalah protokol termudah dan paling popular untuk komunikasi tanpa wayar jarak dekat dalam sistem tertanam. Bluetooth tidak hanya digunakan untuk memindahkan data dari satu peranti ke perangkat yang lain tetapi juga digunakan untuk mengendalikan peranti secara wayarles. Hampir setiap alat elektronik mempunyai sokongan Bluetooth sekarang beberapa hari jadi pilihan bijak untuk mempunyai pilihan kawalan Bluetooth dalam aplikasi tertanam anda.
Di sini dalam tutorial ini, kita akan belajar bagaimana menggunakan Bluetooth dalam MATLAB untuk berkomunikasi tanpa wayar. Kami akan menggunakan Bluetooth bawaan komputer dengan MATLAB di satu sisi dan HC-05 dengan Arduino di sisi lain. Terdapat dua cara untuk mengatur komunikasi antara MATLAB dan Arduino melalui Bluetooth, satu menggunakan tetingkap arahan dan yang lain menggunakan MATLAB GUI. Kod Arduino untuk kedua kaedah akan tetap sama. Sekiranya anda baru menggunakan MATLAB maka disarankan untuk memulakan program LED berkedip sederhana dengan MATLAB dan pelajari terminologi asas yang digunakan dalam MATLAB. Anda boleh meneroka lebih banyak lagi Projek MATLAB:
- Komunikasi Bersiri antara MATLAB dan Arduino
- Kawalan Motor DC Menggunakan MATLAB dan Arduino
- Stepper Motor Control menggunakan MATLAB dan Arduino
- Bermula dengan Pemprosesan Imej menggunakan MATLAB
Komponen Diperlukan
- Laptop terpasang MATLAB (Keutamaan: R2016a atau versi di atas)
- Arduino UNO
- Modul Bluetooth (HC-05)
- LED (warna apa pun)
- Perintang (330 ohm)
- Wayar Pelompat
Untuk mengetahui lebih lanjut mengenai HC-05 dan hubungannya dengan Arduino, periksa artikel berikut.
- Motor Servo Terkawal Bluetooth menggunakan Arduino
- LED yang dikendalikan dengan suara menggunakan Arduino dan Bluetooth
- Telefon bimbit yang dikendalikan AC menggunakan Arduino dan Bluetooth
Rajah Litar
Skema untuk komunikasi Bluetooth antara MATLAB dan Arduino diberikan di bawah:
Komunikasi Bluetooth menggunakan Tetingkap Perintah MATLAB
Ini adalah kaedah mudah untuk mengatur komunikasi Bluetooth antara Arduino dan MATLAB. Di sini, MATLAB menggunakan bluetooth komputer riba untuk menghubungkan HC-05 yang disambungkan dengan Arduino. Mula-mula kita harus membuat kod Arduino untuk membaca data masuk bersiri yang berasal dari MATLAB (menggunakan Bluetooth Laptop).
Kemudian data yang dihantar Bluetooth dari MATLAB dapat digunakan untuk mengawal apa sahaja yang disambungkan ke Arduino. Di sini kami telah menyambungkan LED ke Arduino yang dapat dikendalikan dari LAPTOP menggunakan MATLAB.
Pertama, muat naik kod Arduino yang diberikan di Arduino UNO dan kemudian mulakan pengekodan di Tetingkap Perintah MATLAB.
#sertakan
Kemudian, salin dan tampal kod MATLAB di bawah di tetingkap Perintah untuk komunikasi Bluetooth antara MATLAB dan Arduino.
instrhwinfo ('Bluetooth', 'HC-05'); bt = Bluetooth ('HC-05', 1); fopen (bt);
Dalam kod di bawah, perintah fprintf (bt, '0') digunakan untuk mematikan LED dengan menghantar '0' ke Arduino. Sekarang, jika anda mahu menyalakan LED, hantarkan '1' dan bukannya '0' menggunakan arahan di bawah.
fprintf (bt, '1');
Untuk memeriksa maklumat mengenai perkakasan yang ada, gunakan arahan di bawah
instrhwinfo ('type', 'Name of device');
Untuk membuka port bluetooth, perintah di bawah digunakan
fopen (bt);
Lihat video di bawah ini untuk memahami proses lengkap Menghantar Data dari MATLAB ke Arduino menggunakan Bluetooth.
Komunikasi Bluetooth menggunakan MATLAB GUI
Untuk menunjukkan Komunikasi Bluetooth menggunakan MATLAB GUI, kami akan membuat tiga butang grafik di MATLAB untuk menghidupkan, mematikan dan mengedipkan LED yang disambungkan ke Arduino. Data akan dihantar melalui bluetooth dari MATLAB ke HC-05 apabila mengklik butang grafik tersebut. Arduino mengandungi kod untuk menerima data yang dihantar Bluetooth dari MATLAB ke HC-05 dan mengawal LED mengikut data yang diterima. Kod Arduino akan tetap sama seperti yang sebelumnya, cuma bezanya, sebelumnya kami mengirim data '1' dan '0' melalui tetingkap arahan MATLAB, dan sekarang data yang sama akan dikirimkan dengan mengklik tiga butang grafik.
Untuk melancarkan GUI, ketik perintah di bawah ini di tetingkap arahan
panduan
Tetingkap pop timbul akan terbuka, kemudian pilih GUI kosong baru seperti yang ditunjukkan dalam gambar di bawah,
Sekarang pilih tiga butang tekan untuk menghidupkan, mematikan dan mengedipkan LED, seperti yang ditunjukkan di bawah,
Untuk mengubah saiz atau mengubah bentuk butang tekan, cukup klik padanya dan anda akan dapat menyeret sudut butang. Dengan mengklik dua kali pada butang tekan, anda boleh menukar warna, tali dan tanda butang tersebut. Kami telah menyesuaikan tiga butang tekan seperti yang ditunjukkan dalam gambar di bawah.
Anda boleh menyesuaikan butang mengikut pilihan anda. Sekarang apabila anda menyimpan ini, kod akan dihasilkan di tetingkap Editor MATLAB. Edit kod ini sesuai dengan tugas yang ingin Anda laksanakan oleh Arduino anda ketika menerima data Bluetooth menggunakan MATLAB GUI. Jadi di bawah ini kami telah mengedit kod MATLAB. Anda boleh mengetahui lebih lanjut mengenai tetingkap Perintah, tetingkap editor dan lain-lain dalam Bermula dengan tutorial MATLAB.
Kod MATLAB yang lengkap, untuk mengawal LED dari MATLAB melalui Bluetooth, diberikan pada akhir projek ini. Selanjutnya kami menyertakan file GUI (.fig) dan file code (.m) di sini untuk diunduh, dengan mana Anda dapat menyesuaikan butang sesuai dengan keperluan anda. Berikut adalah beberapa perubahan yang kami lakukan untuk mengawal LED yang disambungkan dengan Arduino.
Salin dan tampal kod di bawah pada baris no. 74 untuk menyediakan atau menyambungkan MATLAB ke Bluetooth Laptop.
kosongkan semua; bt global; instrhwinfo ('Bluetooth', 'HC-05'); bt = Bluetooth ('HC-05', 1); fopen (bt);
di mana, fopen (bt) digunakan untuk membuka port Bluetooth untuk menghantar data.
Sekarang, apabila anda menatal ke bawah, anda akan melihat bahawa terdapat tiga fungsi yang dibuat untuk tiga butang tekan di GUI. Sekarang tuliskan kod dalam fungsi sesuai dengan tugas yang ingin anda lakukan dengan klik.
Dalam fungsi butang LED ON , salin dan tampal kod di bawah ini sebelum akhir fungsi untuk menghidupkan LED. Dalam kod di bawah, fprintf (bt, '1') digunakan untuk mengirim '1' dari MATLAB ke HC-05 menggunakan Bluetooth komputer riba. Arduino akan menerima data ini '1' melalui HC-05 dan menyala LED dengan menjadikan pin ke- 11 TINGGI.
bt global; fprintf (bt, '1');
Dalam fungsi butang LED MATI , salin dan tampal kod di bawah ini sebelum akhir fungsi untuk mematikan LED. Dalam kod di bawah, fprintf (bt, '0') digunakan untuk mengirim '0' dari MATLAB ke HC-05 menggunakan Bluetooth komputer riba. Arduino akan menerima '0' melalui HC-05 dan mematikan LED dengan menjadikan pin ke- 11 RENDAH.
bt global; fprintf (bt, '0');
Dalam fungsi butang BLINK , gunakan kod di bawah untuk mengedipkan LED. A untuk gelung digunakan untuk berkelip LED 10 kali.
bt global; untuk i = 1:10 fprintf (bt, '1'); berhenti seketika (0.5); fprintf (bt, '0'); berhenti seketika (0.5); akhir
Setelah selesai dengan pengkodan MATLAB GUI dan menyiapkan perkakasan mengikut gambarajah litar, cukup klik pada butang jalankan untuk menjalankan kod yang diedit dalam fail.m.
MATLAB mungkin mengambil masa beberapa saat untuk bertindak balas, jangan mengklik butang GUI sehingga MATLAB menunjukkan petunjuk BUSY, yang dapat anda lihat di sudut kiri bawah skrin seperti yang ditunjukkan di bawah,
Apabila semuanya sudah siap, klik pada butang LED-ON, LED OFF dan BLINK untuk menghidupkan, mematikan dan mengedipkan LED masing-masing. Semua fail kod untuk projek ini boleh dimuat turun dari sini atau anda boleh menggunakan kod yang diberikan di bawah.
Lihat video di bawah ini untuk memahami proses lengkap Menghantar Data dari MATLAB ke Arduino melalui Bluetooth menggunakan MATLAB GUI.