Daftar Isi:

Menghubungkan Pemrosesan dan Arduino dan Membuat Pengontrol GUI 7 Segmen dan Servo: 4 Langkah
Menghubungkan Pemrosesan dan Arduino dan Membuat Pengontrol GUI 7 Segmen dan Servo: 4 Langkah

Video: Menghubungkan Pemrosesan dan Arduino dan Membuat Pengontrol GUI 7 Segmen dan Servo: 4 Langkah

Video: Menghubungkan Pemrosesan dan Arduino dan Membuat Pengontrol GUI 7 Segmen dan Servo: 4 Langkah
Video: cara menghubungkan matlab ke arduino uno dengan kontrol LED 2024, November
Anonim
Menghubungkan Pemrosesan dan Arduino dan Membuat Pengontrol GUI 7 Segmen dan Servo
Menghubungkan Pemrosesan dan Arduino dan Membuat Pengontrol GUI 7 Segmen dan Servo

Untuk beberapa proyek yang Anda buat perlu menggunakan Arduino karena menyediakan platform prototyping yang mudah tetapi menampilkan grafik di monitor serial Arduino bisa memakan waktu cukup lama dan bahkan sulit dilakukan. Anda dapat menampilkan grafik pada Arduino Serial Monitor tetapi grafik bukan satu-satunya hal yang mungkin perlu Anda tampilkan. Semua objek interaktif seperti slider, tombol, program dengan output 2D, 3D, PDF, atau SVG dan Anda juga dapat membuat animasi dengan mudah. Mode pemrograman default untuk pemrosesan adalah Java tetapi Anda dapat mengubahnya ke Android, p5.js, REPL, CoffeeScript, dan JavaScript. Namun dalam Instructable ini kita akan menggunakan mode pemrograman Java.

Semua konten dan kode juga tersedia di github saya di sini.

Langkah 1: Menggunakan Processing.serial

Kode Pemrosesan

Dua baris kode pertama adalah

import processing.serial.*; Port saya serial;

Di sini, di baris pertama kami mengimpor perpustakaan - pemrosesan dan di baris kedua kami membuat objek dari kelas Serial bernama myPort, Anda bisa menamainya apa pun yang Anda suka mengikuti aturan penamaan pengenal.

Dalam pemrosesan, kami memiliki void setup() dan void draw() di mana void adalah tipe kembalinya fungsi, Anda juga dapat mengubahnya menjadi int setup() dan int draw() atau tipe data lain yang Anda suka, tetapi Anda harus mengembalikan a nilai yang memiliki tipe data yang sama dengan tipe data yang Anda gunakan sebelum fungsi.

di setup() kita menulis pernyataan yang perlu kita jalankan sekali sedangkan di draw() kita menulis pernyataan yang perlu kita jalankan beberapa kali. Dua baris kode yang disebutkan di atas harus ditulis di atas void setup() karena harus memiliki akses global.

Dalam void setup() kita akan menginisialisasi objek myPort.

batalkan pengaturan(){

ukuran (800, 800);

myPort=New Serial(ini, "COM18", 9600);

}

Ukuran garis (800, 800); mendefinisikan ukuran layar yaitu 800 piksel kali 800 piksel.

Kata kunci baru di baris kedua digunakan untuk memesan ruang untuk objek di memori, argumen ini adalah variabel referensi yang merujuk ke objek saat ini. Argumen COM18 adalah port Arduino yang terhubung, kami membutuhkan ini karena kami akan mengangkut data melalui antarmuka serial. Angka 18 mungkin berbeda dalam kasus Anda, Anda dapat menemukannya di bawah Tools>Port di Arduino IDE dan 9600 adalah baud rate yang dapat Anda ubah di Arduino dan Processing.

Langkah 2: Pahami Kelas Serial

Konstruktor untuk Serial

Serial (induk, portName, baudRate, parity, dataBits, stopBits)

Argumen:

induk: biasanya menggunakan "ini"

baudRate (int): 9600 adalah default

portName (String): nama port (COM1 adalah default)

parity (char): 'N' untuk tidak ada, 'E' untuk genap, 'O' untuk ganjil, 'M' untuk tanda, 'S' untuk spasi ('N' adalah default)

dataBits (int): 8 adalah default

stopBits (float): 1.0, 1.5, atau 2.0 (1.0 adalah default)

Metode Penting:

  1. myPort.available() - mengembalikan jumlah byte yang tersedia.
  2. myPort.clear() - mengosongkan buffer dan menghapus semua data yang tersimpan di sana.
  3. myPort.read() - Mengembalikan angka antara 0 dan 255 untuk byte berikutnya yang menunggu di buffer.
  4. myPort.readString() - Mengembalikan semua data dari buffer sebagai String atau null jika tidak ada yang tersedia.
  5. myPort.write("test") - Menulis byte, karakter, int, byte, String ke port serial.
  6. myPort.stop() - Menghentikan komunikasi data pada port.

Langkah 3: Kelas Serial Arduino

Anda tidak perlu mengimpor Serial Class di Arduino sebelum menggunakannya.

Di Arduino ada 2 fungsi yang disebut setup() dan loop() setup hanya berjalan sekali tetapi loop berjalan beberapa kali. Dalam setup() kita perlu menulis menggunakan metode begin() untuk memulai komunikasi serial. Di Arduino tidak seperti pemrosesan, kita tidak perlu menyebutkan port sebagai argumen metode begin() karena kita sudah menentukan port saat mengunggah sketsa di Arduino.

Jadi setup() akan terlihat seperti ini:

batalkan pengaturan(){

Serial.begin(9600); //mulai komunikasi serial

}

9600 di sini menentukan baud rate yang juga telah kami sebutkan di file pemrosesan. Untuk komunikasi yang baik, kedua baud rate harus sama atau Anda mungkin melihat output serial sebagai sesuatu yang tidak masuk akal.

Sekarang mari kita lihat bagian loop(). Bagian kode ini berjalan beberapa kali. Jika kita ingin membaca beberapa data melalui port kita akan menggunakan metode Serial.read(). Fungsi ini mengembalikan null jika tidak ada data yang tersedia, jadi kami akan memanggil metode ini hanya jika kami memiliki beberapa data dalam aliran Serial yang tersedia.

Untuk memeriksa apakah ada beberapa data yang tersedia, kami akan menggunakan metode Serial.available(). Jika mengembalikan nilai lebih besar dari 0 - beberapa data tersedia.

Jadi bagian loop() akan terlihat seperti ini:

lingkaran kosong(){

if(Serial.available() > 0){ //jika beberapa data tersedia di port serial

status char = Serial.read(); //baca nilainya

// jika pernyataan atau switch case

}

}

Sekarang kita dapat menggunakan if ladder atau jika ada banyak kemungkinan hasil, kita dapat menggunakan switch case juga untuk keadaan variabel.

Langkah 4: Bangun Pengontrol Segmen GUI 7

Bangun Pengontrol Segmen GUI 7
Bangun Pengontrol Segmen GUI 7
Bangun Pengontrol Segmen GUI 7
Bangun Pengontrol Segmen GUI 7
Bangun Pengontrol Segmen GUI 7
Bangun Pengontrol Segmen GUI 7

File terlampir di sini. Catatan: Untuk pemrosesan, Anda juga perlu menginstal pustaka kontrol p5 yang telah saya gunakan untuk membuat tombol interaktif GUI.

Pin nomor

7 segmen (dalam urutan abjad) lihat gambar

a - pin digital 2

b - pin digital 3

c - pin digital 4

d - pin digital 5

e - pin digital 6

f - pin digital 7

g - pin digital 8

dp - pin digital 9

Semua konten dan kode juga tersedia di github saya di sini

Direkomendasikan: