Daftar Isi:

Guino: Dasbor untuk Arduino Anda: 4 Langkah (dengan Gambar)
Guino: Dasbor untuk Arduino Anda: 4 Langkah (dengan Gambar)

Video: Guino: Dasbor untuk Arduino Anda: 4 Langkah (dengan Gambar)

Video: Guino: Dasbor untuk Arduino Anda: 4 Langkah (dengan Gambar)
Video: Arduino UNO,RFID Multi reader,LCD,LED,Buzzer, source code dapat diunduh 2024, Juni
Anonim
Guino: Dasbor untuk Arduino Anda
Guino: Dasbor untuk Arduino Anda
Guino: Dasbor untuk Arduino Anda
Guino: Dasbor untuk Arduino Anda
Guino: Dasbor untuk Arduino Anda
Guino: Dasbor untuk Arduino Anda
Guino: Dasbor untuk Arduino Anda
Guino: Dasbor untuk Arduino Anda

Proyek ini adalah bagian dari eksperimen yang dilakukan saat melakukan seniman di kediaman di Instructables. Anda dapat melihat proyek lainnya di sini. Ini bisa menjadi tugas yang sulit untuk men-debug dan memvisualisasikan data realtime di papan Arduino. Anda biasanya terjebak dengan output serial standar, karena kompleksitas kode Arduino Anda tumbuh, ini membuat tidak mungkin untuk memahami apa yang sebenarnya terjadi di dalam papan. Untuk mengatasi ini, saya telah membuat perpustakaan kecil yang memungkinkan Anda membuat GUI kustom Anda sendiri untuk proyek Arduino Anda. Tonton video ini untuk mendapatkan demonstrasi dunia halo dasar dengan potmeter dan dioda: Sampai sekarang, program ini memiliki kemungkinan dan fitur berikut: Desain khusus antarmuka Anda dari papan Arduino Anda menentukan slider, grafik, dan tombol mana yang Anda butuhkan untuk antarmuka Anda. Anda melakukan ini di sketsa Arduino Anda yang berarti bahwa program gui bertindak sebagai budak sketsa. Semua informasi disimpan di papan Anda. Memvisualisasikan dan memanipulasi data waktu nyata Baik Anda membuat pengontrol lampu RGB atau lengan robot, mendapatkan umpan balik grafis sangat penting untuk memahami apa yang terjadi di dalam papan. Ini memungkinkan Anda untuk memahami apakah perangkat keras Anda atau kode yang menyebabkan masalah. Selanjutnya slider dan tombol memungkinkan Anda untuk mengubah parameter individu secara realtime. Dengan cara ini Anda dapat melihat efek ambang batas yang berbeda pada interaksi. Simpan parameter di memori papan Ketika Anda telah mengubah parameter, Anda dapat menyimpannya ke EEProm papan. Parameter akan dimuat secara otomatis saat Anda menyalakan papan, bahkan jika komputer tidak terhubung. Gunakan aplikasi yang sama untuk semua proyek Arduino Anda. Saya telah membuat banyak aplikasi kecil untuk proyek yang berbeda. Masalah saya adalah selalu menemukan mereka lagi setahun kemudian. Karena kami menyimpan semuanya di Arduino, saya hanya perlu menyimpan satu aplikasi di sekitar Arduino akan secara otomatis mengonfigurasi aplikasi untuk proyek saat ini. Buat prototipe antarmuka sebelum Anda menyalakan besi solder Karena Anda dapat mendesain gui sesuka Anda (dalam batas wajar batas), Anda dapat membuat prototipe antarmuka sebelum Anda membuat antarmuka fisik. Ini juga memungkinkan Anda untuk membagi tugas di antara banyak orang, mis. satu orang sedang mengerjakan perangkat keras dan orang lain sedang mengerjakan kode. Ketika Anda telah membuat antarmuka fisik, Guino akan berintegrasi dengan mulus. Menggunakannya sebagai dasbor layar penuh Anda dapat menggunakannya sebagai dasbor layar penuh dengan menekan F dan menekan T untuk mengaktifkan visibilitas panel pengaturan. Anda dengan ini hanya menyajikan antarmuka kustom Anda untuk dunia di sekitar Anda. Kontrol warna latar belakang Warna latar belakang dapat dikontrol dari Arduino ini memungkinkan Anda untuk membuat warna yang berbeda untuk sketsa yang berbeda. Itu juga dapat digunakan untuk membuat peringatan ketika ada sesuatu yang salah. Itu bisa menjadi hijau ketika semuanya baik-baik saja dan merah ketika ada sesuatu yang salah. Cepat dan Ramping Saya telah sangat berhati-hati dalam membuat footprint di Arduino sekecil mungkin - Ini hanya menyimpan jumlah minimum data dalam memori (konkret pointer daftar 100 item). Pengaturan ini dapat diubah menjadi lebih rendah atau lebih tinggi tergantung pada jumlah item gui yang ingin Anda miliki di antarmuka Anda. Selanjutnya sistem bergantung pada perpustakaan EasyTransfer yang mentransfer informasi dalam bentuk biner. Setiap paket terdiri dari satu byte untuk perintah, satu byte untuk item # dan satu bilangan bulat untuk nilainya. Idealnya, semua data Anda harus dinormalisasi ke rentang bilangan bulat bertanda 16 bit. Ini berarti penggunaan port serial yang optimal saat bekerja dengan bilangan bulat (secara teknis kami menggunakan sedikit ruang ekstra untuk checksum). Bagus untuk Instructables GUI memungkinkan Anda untuk membuat Instructables yang hanya membutuhkan komponen inti. Komponen tambahan seperti potmeter dll. dapat dibuat secara virtual melalui gui. Batasan dan rencana masa depan Saat ini aplikasi telah dikompilasi ke platform Mac OSX dan Windows. Itu ditulis dalam Openframeworks sehingga harus dapat berjalan di platform lain juga. Karena aplikasi menggunakan port serial, Anda tidak akan dapat menghubungkan program lain ke Arduino. Ini akan diselesaikan dalam rilis mendatang yang akan mencakup Kontrol Suara Terbuka dan jembatan Midi. Kredit: Pemrograman dan ide oleh: Mads Hobye Perpustakaan Easytransfer oleh: Perpustakaan GUI Bill Porter oleh: Reza Ali

Langkah 1: Memulai

Mulai
Mulai
Mulai
Mulai
  • Unduh dan unzip paket GUINO.
  • Unduh Arduino
  • Copy folder library ke folder library Arduino anda (caranya disini)
  • Mulai ulang Arduino.
  • Buka salah satu contoh di dalam Arduino. (Menu: File -> Contoh -> Guino -> pilih salah satu)
  • Jika Anda menggunakan contoh sederhana maka buatlah rangkaian seperti gambar di atas.
  • Unggah contoh.
  • Jalankan aplikasi Guino.
  • Pilih port serial (Biasanya yang terakhir)
  • Tekan hubungkan.

Sumber dapat ditemukan di sini.

PENTING: Saat menggunakannya di platform Windows, Anda harus menggunakan port com yang lebih rendah atau sama dengan 10. Jika Anda menggunakan port yang lebih besar dari 10, sistem tidak akan berfungsi. Ini adalah bug di openframeworks.

Langkah 2: Cara Memodifikasi Kode

Cara Memodifikasi Kode
Cara Memodifikasi Kode

Agar perpustakaan bekerja dengan sketsa Anda, Anda memerlukan beberapa metode tambahan. Saya telah menjelaskannya di bawah ini: gInit() ini adalah tempat Anda mendefinisikan tata letak Anda Metode ini mendefinisikan tata letak dengan menambahkan komponen secara berurutan. Komponen yang dapat diubah (slider, tombol, dll.) memiliki variabel yang melekat padanya. Tanda & di depan variabel berarti kita tidak ingin meneruskan nilai dalam variabel, tetapi kita ingin meneruskan referensi (penunjuk) ke variabel. Dengan cara ini sistem Guino secara otomatis memperbaruinya ketika perubahan terjadi di GUI. void gInit() { gAddLabel("SLIDER", 1); gAddSpacer(1); gAddSlider(3, 200, "LEBAR", &lebar); gAddSlider(3, 200, "TINGGI", &tinggi); gAddSlider(0, 255, "KECERAHAN LED", &ledLight); // Penggeser putar gAddLabel("ROTARY Sliders", 1); gAddSpacer(1); [………….] gAddColumn(); // Tambahkan lebih banyak barang di sini. gSetColor(r, g, b); // Mengatur warna antarmuka gui. }GButtonPressed(int id) ini dipanggil setiap kali tombol ditekan Umumnya variabel dapat diperbarui secara otomatis, tetapi dalam kasus tombol, itu harus menjadi acara yang Anda tangani. Dalam contoh ini kami mengatur variabel ketinggian ke 100 ketika seseorang menekan tombol. void gButtonPressed(int id) { if(buttonId == id) { tinggi= 100; gUpdateValue(&tinggi); } }gItemUpdated(int id) Ini dipanggil setiap kali dan item telah diperbarui Biasanya tidak perlu menggunakan ini karena sistem akan memperbarui variabel secara otomatis. Jika Anda ingin bereaksi terhadap perubahan, Anda dapat menggunakannya seperti itu. Dalam hal ini kami memperbarui warna latar belakang setiap kali salah satu dari 3 penggeser putar telah diubah. void gItemUpdated(int id) { if(rotaryRID = id || rotaryGID == id || rotaryBID == id) { gSetColor(r, g, b); } }

Langkah 3: Beberapa Tip Cepat

Ingatlah untuk memutuskan sambungan saat mengunggah sketsa baru Anda tidak dapat menjalankan Guino saat mengunggah sketsa baru ke papan Arduino, karena keduanya menggunakan koneksi serial yang sama. Ini mengharuskan Anda untuk memutuskan sambungan setiap kali Anda mengunggah sketsa baru. Jika Anda (dan Anda akan) mencoba mengunggah saat Guino terhubung, papan dapat masuk ke keadaan aneh di mana ia berjalan, tetapi tidak cukup. Pada titik ini satu-satunya pilihan Anda adalah mengatur ulang papan dengan menekan tombol reset atau dengan melepaskan dan menyambungkan kembali kabel usb. Bug yang diketahui Sampai sekarang sistem berfungsi dan stabil. Berikut ini adalah bug yang harus diwaspadai:

  • setMin tidak berfungsi pada movingGraph (tampaknya ada bug di perpustakaan GUI yang perlu diperbaiki). Jadi minimum tetap nol.
  • Daftar serial dimuat saat memulai program. Arduino harus dicolokkan sebelum memulai program. Menyegarkan daftar serial saat menjalankan menyebabkan peristiwa buruk. Ini masih harus diselesaikan.
  • Mengutak-atik daftar serial - terkadang membuat program macet (acara gui yang sama dengan penyegaran - harus menemukan sumbernya)
  • Latar belakang tombol sakelar menjadi hitam tergantung pada inisialisasi. Saya perlu mengatur latar belakang secara manual.
  • Pada beberapa platform windows port com tidak muncul. Mungkin masalah driver ftdi.

Langkah 4: Gunakan Kasus

Gunakan Kasus
Gunakan Kasus

Jika Anda ingin melihat beberapa kasus penggunaan dengan antarmuka Guino, buka Instructable ini.

Direkomendasikan: