Daftar Isi:

Indikator Suhu RGB (dengan XinaBox): 5 Langkah (dengan Gambar)
Indikator Suhu RGB (dengan XinaBox): 5 Langkah (dengan Gambar)

Video: Indikator Suhu RGB (dengan XinaBox): 5 Langkah (dengan Gambar)

Video: Indikator Suhu RGB (dengan XinaBox): 5 Langkah (dengan Gambar)
Video: Indikator Suhu dan Kelembaban Menggunakan Sensor DHT 11 dan RGB 2024, November
Anonim
Indikator Suhu RGB (dengan XinaBox)
Indikator Suhu RGB (dengan XinaBox)

Ini secara resmi adalah artikel Instructables pertama saya, jadi saya akan mengakui bahwa saya menggunakan kesempatan ini sekarang untuk mencobanya. Rasakan bagaimana platform bekerja, seluruh sisi pengalaman pengguna. Tetapi ketika saya melakukan itu, saya pikir saya juga dapat menggunakan kesempatan untuk berbagi tentang proyek sederhana yang telah saya kerjakan hari ini (menggunakan produk dari XinaBox, yang omong-omong, diucapkan sebagai "X-in-a- Kotak").

Dalam instruksi 5 langkah sederhana ini, saya akan membahas topik-topik berikut:

  • Komponen yang dibutuhkan
  • Menghubungkan xChips yang berbeda bersama-sama.
  • Menyiapkan lingkungan Arduino IDE.
  • Menulis kode
  • Dan akhirnya, menguji ide itu

Apa yang tidak akan saya bagikan dalam instruksi ini:

  • Sebanyak yang saya suka untuk menjelaskan apa yang dapat dilakukan masing-masing xChips dan bagaimana Anda dapat memanipulasi mereka untuk melakukan fungsi tertentu, itu tidak akan menjadi tujuan dari instruksi ini. Saya berencana untuk menerbitkan Instruksi lainnya dalam waktu dekat yang akan menyelami setiap xChips berbeda yang tersedia melalui katalog produk XinaBox.
  • Saya tidak akan membahas dasar-dasar kode Arduino karena saya berasumsi bahwa Anda sudah memiliki beberapa tingkat pengalaman menggunakan Arduino IDE serta pemahaman tingkat dasar tentang pemrograman C/C++.

Langkah 1: Yang Anda Butuhkan…

Apa yang kau butuhkan…
Apa yang kau butuhkan…
Apa yang kau butuhkan…
Apa yang kau butuhkan…
Apa yang kau butuhkan…
Apa yang kau butuhkan…

Secara teknis, sebagian besar tutorial produk dasar biasanya dimulai dengan "Hello World!" contoh, atau bahkan contoh "Blink", yang mungkin sudah sangat Anda kenal sejak Anda pernah bekerja dengan Arduino atau Raspberry Pi di beberapa titik. Tapi saya tidak ingin memulai dengan itu karena semua orang sudah melakukan hal yang sama, yang membuatnya agak membosankan.

Sebaliknya, saya ingin memulai dengan ide proyek yang praktis. Sesuatu yang cukup sederhana dan dapat diskalakan menjadi ide proyek yang lebih kompleks jika Anda mau.

Berikut adalah barang-barang yang akan kita butuhkan (lihat foto yang disediakan untuk bagian Instructable ini):

  1. IP02 - Antarmuka Pemrograman USB Tingkat Lanjut
  2. CC03 - Lengan Korteks M0+ Inti
  3. SW02 - VOC dan Sensor Cuaca (yang menggunakan sensor BME680 oleh BOSCH)
  4. konektor xBUS - untuk mengaktifkan komunikasi I2C antara xChips (x2) yang berbeda
  5. konektor xPDI - untuk mengaktifkan pemrograman dan debugging (x1)

Langkah 2: Menghubungkan Potongan

Menghubungkan Potongan
Menghubungkan Potongan
Menghubungkan Potongan
Menghubungkan Potongan
Menghubungkan Potongan
Menghubungkan Potongan

Untuk menghubungkan semua bagian bersama-sama, pertama-tama kita akan mulai dengan 1 buah konektor xBUS dan konektor xPDI.

Mengikuti gambar yang saya berikan, perhatikan orientasi xChips dan ke mana konektor akan pergi.

Antara IP02 & CC03 xChips, cukup mudah untuk mengidentifikasi titik penghubung.

Untuk CC03, itu akan menjadi sisi selatan. Untuk IP02, itu akan menjadi sisi utara xChip.

Setelah selesai, kami akan menambahkan konektor xBUS lain ke sisi barat xChip CC03.

Selesai?

Sekarang, cukup sambungkan SW02 xChip ke sisi barat CC03.

Sebelum kami memasukkan IP02 ke laptop kami, pastikan opsi berikut dipilih untuk dua sakelar:

  • B dipilih (saklar kiri)
  • DCE dipilih (saklar kanan)

Akhirnya, kita sekarang siap untuk memasukkan IP02 ke laptop kita dan mulai menyiapkan Arduino IDE.

Langkah 3: Menyiapkan Arduino IDE

Menyiapkan Arduino IDE
Menyiapkan Arduino IDE
Menyiapkan Arduino IDE
Menyiapkan Arduino IDE

Sekali lagi, dalam instruksi ini, saya telah membuat asumsi bahwa Anda sudah akrab dengan lingkungan Arduino IDE serta bagaimana mengelola perpustakaan dalam lingkungan pengembangan.

Untuk tujuan proyek ini, kita akan membutuhkan dua perpustakaan utama:

  • arduino-CORE -
  • Perpustakaan SW02 -

Unduh kedua perpustakaan ke lokasi dalam desktop Anda.

Selanjutnya, luncurkan Arduino IDE Anda.

Dari menu utama, pilih "Sketsa"> "Sertakan Perpustakaan"> "Tambahkan Perpustakaan. ZIP…"

Ulangi proses yang sama untuk kedua file perpustakaan.

Selanjutnya, kita perlu memilih "Board" dan juga "Port" yang relevan. (Perhatikan bahwa saya juga telah menyoroti pilihan yang diperlukan menggunakan kotak oranye.

  • Papan: "Arduino/Genuino Zero (Port USB Asli)"
  • Port: "COMXX" (ini harus sesuai dengan port COM yang tercermin pada mesin Anda. Milik saya menggunakan COM31)

Baik! Saya tahu Anda sangat ingin terjun ke pengkodean, jadi pada langkah berikutnya, itulah yang akan kita fokuskan.

Langkah 4: Saatnya Membuat Kode

Di bagian ini, saya akan mulai dengan membagikan cuplikan kode dari kode proyek yang sudah selesai. Dan di akhir, saya akan mempublikasikan sumber lengkapnya, sehingga memudahkan Anda untuk cukup menyalin dan menempelkan kode ke file sumber Arduino IDE Anda.

File Tajuk:

#include /* Ini adalah perpustakaan untuk Fungsi Inti XinaBox utama. */

#include /* Ini adalah library untuk VOC & Weather Sensor xChip. */

Mendefinisikan beberapa konstanta untuk mengendalikan Sinyal Led RGB:

#define redLedPin A4

#define greenLedPin 8 #define blueLedPin 9

Selanjutnya, kita perlu mendeklarasikan prototipe fungsi untuk melewatkan nilai RGB

void setRGBColor(int redValue, int greenValue, int blueValue);

Mendeklarasikan objek SW02:

xSW02 SW02;

Metode setup():

batalkan pengaturan() {

// Mulai Kawat Komunikasi I2C.begin(); // Mulai Sensor SW02 SW02.begin(); // Penundaan sensor untuk menormalkan penundaan(5000); }

Sekarang untuk loop utama():

lingkaran kosong() {

suhu mengambang; }

Selanjutnya, kita perlu melakukan polling menggunakan objek SW02 yang telah kita buat sebelumnya di program untuk memulai komunikasi kita dengan chip sensor:

// Membaca dan menghitung data dari SW02 sensorSW02.poll();

Sekarang, kita membaca untuk mendapatkan pembacaan suhu sensor

tempC = SW02.getTempC();

Setelah kita membaca, hal terakhir yang akan kita lakukan adalah menggunakan serangkaian pernyataan kontrol if…else… untuk menentukan kisaran suhu, dan kemudian memanggil fungsi setRGBColor()

// Anda dapat menyesuaikan kisaran suhu sesuai dengan iklim Anda. Bagi saya, saya tinggal di Singapura, // yang tropis sepanjang tahun, dan kisaran suhu bisa sangat sempit di sini. if (tempC >= 20 && tempC = 25 && tempC = 30 && tempC = 32 && tempC = 35) { setRGBColor(255, 0, 0); }

Catatan: Jika Anda tertarik untuk mengetahui nilai RGB yang relevan untuk warna tertentu, saya sarankan Anda melakukan pencarian google untuk "nilai warna RGB". Ada banyak situs yang tersedia di mana Anda dapat menggunakan pemilih warna untuk memilih warna yang Anda inginkan

// Jika Anda suka, dan ini opsional, Anda juga dapat menambahkan penundaan di antara polling untuk pembacaan sensor.

tunda(DELAY_TIME);

Anda tentu saja dapat mendeklarasikan konstanta DELAY_TIME di awal program, dengan begitu, Anda hanya perlu mengubah nilainya sekali daripada di beberapa tempat selama program Anda. Akhirnya, kita membutuhkan fungsi untuk mengontrol LED RGB kita:

void setRGBColor(int redValue, int greenValue, int blueValue) {

analogWrite(redLedPin, redValue); analogWrite(hijauLedPin, greenValue); analogWrite(blueLedPin, blueValue); }

Program Akhir

#termasuk

#include #define redLedPin A4 #define greenLedPin 8 #define blueLedPin 9 void setRGBColor(int redValue, int greenValue, int blueValue); const int DELAY_TIME = 1000; xSW02 SW02; void setup() { // Mulai Kabel Komunikasi I2C.begin(); // Mulai Sensor SW02 SW02.begin(); // Penundaan sensor untuk menormalkan penundaan(5000); } void loop() { // Buat variabel untuk menyimpan data yang dibaca dari SW02 float tempC; suhu C = 0; // Membaca dan menghitung data dari sensor SW02 SW02.poll(); // Minta SW02 untuk mendapatkan pengukuran suhu dan simpan di // variabel suhu tempC = SW02.getTempC(); if (tempC >= 20 && tempC = 25 && tempC = 30 && tempC = 32 && tempC = 35) { setRGBColor(255, 0, 0); } // Penundaan kecil antara penundaan pembacaan sensor(DELAY_TIME); } void setRGBColor(int redValue, int greenValue, int blueValue) { analogWrite(redLedPin, redValue); analogWrite(hijauLedPin, greenValue); analogWrite(blueLedPin, blueValue); }

Sekarang program kita sudah siap, mari kita program xChip! Proses Unggah persis sama dengan cara Anda mengunggah program ke papan Arduino Anda.

Setelah selesai, mengapa tidak mencabutnya dan mengeluarkannya untuk uji coba.

Direkomendasikan: