Daftar Isi:

Plot Intensitas Cahaya Menggunakan Arduino dan Perpustakaan Master Arduino Python: 5 Langkah
Plot Intensitas Cahaya Menggunakan Arduino dan Perpustakaan Master Arduino Python: 5 Langkah

Video: Plot Intensitas Cahaya Menggunakan Arduino dan Perpustakaan Master Arduino Python: 5 Langkah

Video: Plot Intensitas Cahaya Menggunakan Arduino dan Perpustakaan Master Arduino Python: 5 Langkah
Video: ELF/EMBARC Bronchiectasis conference 2023 with subtitles 2024, November
Anonim
Plot Intensitas Cahaya Menggunakan Arduino dan Perpustakaan Master Arduino Python
Plot Intensitas Cahaya Menggunakan Arduino dan Perpustakaan Master Arduino Python

Arduino menjadi alat yang ekonomis namun sangat efisien dan fungsional, memprogramnya dalam Embedded C membuat proses pembuatan proyek menjadi membosankan! Modul Arduino_Master dari Python menyederhanakan ini dan memungkinkan kita melakukan perhitungan, menghapus nilai sampah, dan memplot grafik untuk representasi visual data.

Jika Anda belum tahu tentang modul ini, instal menggunakan perintah pip install Arduino_Master

Jangan khawatir jika Anda tidak tahu cara menggunakan modul ini, kunjungi tautan ini => Arduino_Master

Namun, kode untuk proyek ini akan selalu tersedia dalam instruksi ini.

Perlengkapan

Untuk proyek ini, Anda memerlukan yang berikut:

  1. Sebuah Arduino
  2. Light Dependent Resistor (LDR) dan
  3. Python 3 diinstal di komputer Anda.

Langkah 1: Membangun Sirkuit Anda:

Membangun Sirkuit Anda
Membangun Sirkuit Anda

Kami akan menggunakan pin A1 Arduino untuk mendapatkan data input. Anda juga dapat menggunakan pin 5V dan GND Arduino sebagai pengganti Baterai. Buat koneksi sebagai berikut:

  1. Hubungkan salah satu ujung LDR ke terminal positif baterai 5V atau ke pin 5V Arduino.
  2. Hubungkan ujung LDR yang lain secara paralel ke pin A1 dan terminal negatif baterai atau pin GND Arduino.
  3. Gunakan resistor untuk memastikan semua arus tidak mengalir ke GND yang akan mengakibatkan Anda tidak mendapatkan sinyal yang cukup kuat untuk dirasakan di terminal A1 Arduino. (Saya menggunakan resistor 10k ohm).

Langkah 2: Pemrograman Arduino Anda:

Modul Arduino_Master menggunakan Serial Monitor dari Arduino untuk mengirim dan menerima data. Keuntungan menggunakan modul ini adalah, setelah Anda memprogram Arduino Anda, Anda dapat mengubah program python sendiri untuk proyek yang berbeda karena pemrograman dengan python relatif lebih mudah!

Kode:

// Variabel LDR_1 digunakan untuk menunjukkan pin A1 Arduino.

int LDR_1 = A1;

// Data yang diterima dari A1 akan disimpan di LDR_Value_1.

mengapung LDR_Value_1;

Masukan string;

batalkan pengaturan()

{ pinMode(LDR_1, INPUT); // LDR_1 diset sebagai pin INPUT. Serial.begin(9600); // Baudrate komunikasi disetel pada 9600. }

lingkaran kosong()

{ if(Serial.available()>0) // jika ada input yang tersedia di monitor serial, lanjutkan. { input=Serial.readString(); // Baca input sebagai string. if(input=="DATA") { LDR_Value_1=analogRead(LDR_1) * (5.0 / 1023.0); // (5 / 1023) adalah faktor konversi untuk mendapatkan nilai dalam Volt. Serial.println(LDR_Value_1); // Jika input sama dengan "DATA", maka baca input dari LDR_1 dan cetak di Serial Monitor. } lain int i=0; // jika input tidak sama dengan "DATA", jangan lakukan apapun ! }

}

Langkah 3: Pemrograman Python ke Grafik Data Dari Arduino:

Setiap LDR akan memiliki nilai resistansinya sendiri dan kita harus ingat bahwa tidak ada komponen elektronik yang sama persis dalam pengoperasiannya. Jadi pertama-tama kita harus mencari tegangan pada intensitas cahaya yang berbeda.

Unggah program berikut ke IDE python Anda dan jalankan:

Lakukan ini untuk intensitas cahaya yang berbeda dan dengan menggunakan grafik, buat kesimpulan, katakan misalnya jika intensitasnya kurang dari 1, ruangan terlalu gelap. Untuk intensitas antara 1 dan 2, ruangan sangat gelap. Untuk intensitas lebih besar dari 2, lampu dinyalakan.

# Mengimpor modul Arduino_Master

dari impor Arduino_Master *

# mengumpulkan data

data=filter(ardata(8, squeeze=False, dynamic=True, msg="DATA", lines=30), expected_type='num', limit=[0, 5])

# batas diatur ke 5 karena kami menggunakan baterai 5V.

# Merencanakan nilai

Grafik(data, stl='dark_background', label='Intensitas Cahaya')

Langkah 4: Program Terakhir untuk Memeriksa Intensitas Cahaya di dalam Ruangan

Setelah sampai pada kesimpulan dari data yang Anda dapatkan, unggah program berikut dan pastikan untuk mengubah batasan sesuai kesimpulan Anda.

# Mengimpor modul Arduino_Master

dari Arduino_Master import # mengumpulkan data data=filter(ardata(8, squeeze=False, dynamic=True, msg="DATA", lines=50), expected_type='num', limit=[0, 5]) #classifying data berdasarkan kesimpulan info= untuk i dalam rentang(len(data)): intensitas=data jika intensitas 1 dan intensitas=2: info.append('Light ON') # Memplot Grafik. compGraph(data, info, stl='dark_background', label1='Intensitas Cahaya', label2='Negara')

Langkah 5: Hasil:

Hasil
Hasil

Program akan memakan waktu satu atau dua menit untuk dijalankan karena Anda membaca 50 nilai instan dari Arduino.

Jika Anda ingin mempercepat proses, coba ubah parameter lines dari fungsi ardata. Tetapi ingat bahwa semakin sedikit pengamatan, semakin rendah kualitas datanya.

Catatan: Jika grafik lengkap pada gambar di atas tidak terlihat, lihat grafik di atas bagian Pendahuluan.

Direkomendasikan: