Pembuatan Osiloskop Saluran Tunggal menggunakan Arduino

Coba Instrumen Kami Untuk Menghilangkan Masalah





Pada postingan yang menarik ini, kita akan membuat osiloskop saluran tunggal sederhana menggunakan Arduino dan komputer pribadi, dimana bentuk gelombang akan dipamerkan pada tampilan PC dan frekuensi serta periode waktu gelombang masukan akan ditampilkan pada tampilan 16 x 2. .

pengantar

Setiap penggemar elektronik pernah berkata 'Saya punya mimpi, suatu hari nanti saya akan membeli osiloskop' tetapi, masih banyak yang bermimpi memiliki osiloskop yang layak untuk proyek dan eksperimen mereka.



Osiloskop merupakan peralatan yang mahal bahkan untuk model level awal, kami menganggapnya sebagai alat elektronik mewah dan kami mungkin menghentikan eksperimen dan proyek karena kami tidak mampu membelinya.

Proyek ini mungkin menjadi pengubah permainan bagi banyak orang, penggemar elektronik tidak perlu mengeluarkan banyak uang untuk osiloskop untuk mengukur parameter dasar gelombang.



Ide yang diusulkan memiliki fungsi yang sangat terbatas, jadi jangan berharap fitur di osiloskop kelas atas untuk hadir dalam proyek ini. Kami mendapatkan tiga fungsi yang solid dari proyek ini:

1) representasi visual dari bentuk gelombang di layar komputer

2) pengukuran frekuensi gelombang input

3) Pengukuran periode waktu gelombang input dalam mikrodetik.

Frekuensi dan periode waktu sinyal akan ditampilkan pada layar LCD 16 x 2. Ada dua metode untuk merepresentasikan bentuk gelombang secara visual di layar komputer yang akan dijelaskan di bagian artikel selanjutnya.

Sekarang mari selami bagian teknis dari penyiapan.

Setup yang diusulkan terdiri dari arduino yang merupakan proyek otak kami seperti biasa, layar LCD 16 x 2, IC 7404, potensiometer 10K dan komputer sebaiknya mesin windows.

Arduino adalah otak penyiapan dan kita harus memilih Arduino UNO atau Arduino mega atau Arduino nano untuk proyek ini karena model lain tidak memiliki konverter USB ke serial bawaan yang penting untuk komunikasi antara Arduino dan komputer.

Jika kami memilih model papan arduino lain, kami memerlukan konverter USB ke serial eksternal yang mungkin mempersulit proyek.

Ilustrasi koneksi LCD ke Arduino:

Layar LCD Osiloskop Saluran Tunggal

Sirkuit di atas sudah cukup jelas. Kami dapat menemukan hubungan serupa antara tampilan dan arduino pada proyek berbasis LCD lainnya.

Potensiometer 10K digunakan untuk mengatur kontras layar LCD 16 x 2 yang harus diatur oleh pengguna untuk tampilan yang optimal.

Osiloskop Saluran Tunggal menggunakan Arduino

Fungsi IC 7404 adalah untuk menghilangkan sinyal noise dari input dan diumpankan ke pin sampling frekuensi A0. IC 7404 hanya mengeluarkan gelombang persegi panjang yang merupakan keuntungan besar bagi arduino, karena arduino lebih mampu memproses sinyal digital daripada sinyal analog.

Program:

//-----Program Developed by R.Girish-----//
#include
LiquidCrystal lcd(12, 11, 5, 4, 3, 2)
int X
int Y
float Time
float frequency
const int Freqinput = A0
const int oscInput = A1
int Switch = A2
const int test = 9
void setup()
{
Serial.begin(9600)
lcd.begin(16,2)
pinMode(Switch,INPUT)
pinMode(Freqinput,INPUT)
pinMode(oscInput,INPUT)
pinMode(test, OUTPUT)
analogWrite(test,127)
lcd.setCursor(0,0)
lcd.print('Press the button')
}
void loop()
{
if(digitalRead(Switch)==HIGH)
{
lcd.clear()
lcd.setCursor(0,0)
X = pulseIn(Freqinput,HIGH)
Y = pulseIn(Freqinput,LOW)
Time = X+Y
frequency = 1000000/Time
if(frequency<=0)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('F=')
lcd.print('0.00 Hz')
lcd.setCursor(0,1)
lcd.print('T=')
lcd.print('0.00 us')
}
else
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('F=')
lcd.print(frequency)
lcd.print('Hz')
lcd.setCursor(0,1)
lcd.print('T=')
lcd.print(Time)
lcd.print(' us')
delay(500)
}
}
else
{
Serial.println(analogRead(oscInput))
}
}
//-----Program Developed by R.Girish-----//

Setelah Anda menyelesaikan bagian perangkat keras dan mengunggah kode di atas. Saatnya memplot bentuk gelombang di layar komputer. Ini dapat dilakukan dengan dua cara, cara termudah dan paling malas dijelaskan di bawah ini.

Metode 1:

• Hubungkan kabel input ke pin # 9 dari arduino (mode Tes).
• Buka Arduino IDE (harus versi 1.6.6 atau lebih tinggi)
• Buka tab 'alat' dan pilih plotter serial

Segera setelah plotter serial terbuka, Anda dapat melihat gelombang persegi panjang yang dihasilkan dari pin arduino # 9, diilustrasikan di bawah ini.

gelombang persegi panjang yang dihasilkan dari pin arduino # 9

Tekan tombol tekan untuk menunjukkan pembacaan dan juga untuk menyegarkan pembacaan layar LCD, itu harus menunjukkan sekitar 490Hz pada 'mode uji'.

Skema mode uji:

Mode uji untuk memeriksa berfungsinya osiloskop. Pin # 9 diprogram untuk menghasilkan output 490Hz.

Metode 2:

Metode ini relatif mudah tetapi kami perlu mengunduh perangkat lunak dari tautan yang diberikan: http://www.x-io.co.uk/downloads/Serial-Oscilloscope-v1.5.zip

Perangkat lunak ini akan memberi kita sedikit lebih banyak kontrol dan fitur dibandingkan dengan plotter serial arduino. Kita dapat memperbesar dan memperkecil bentuk gelombang yang dihasilkan, kita dapat mengatur fungsionalitas pemicu, kontrol offset pada sumbu vertikal dan horizontal, dll.

• Unduh perangkat lunak dan ekstrak.

• Sekarang klik dua kali pada aplikasi Serial Oscilloscope.

plotter serial Arduino

• Sebuah jendela akan muncul seperti yang diilustrasikan di bawah ini dan pilih baud rate ke 9600.

pilih baud rate ke 9600.

• Sekarang pilih tab 'Serial port' dan pilih port COM kanan yang dapat mengubah komputer ke komputer. Jika Anda memilih port COM yang benar, Anda dapat melihat bacaan seperti yang digambarkan di bawah ini.

• Sekarang pilih tab 'osiloskop' dan pilih 'saluran 1, 2 dan 3' (opsi pertama).

Sekarang pilih tab Bentuk Gelombang dari Osiloskop Saluran Tunggal Menggunakan Arduino

• Anda dapat melihat sinyal tes yang dihasilkan dari Arduino seperti yang diilustrasikan di bawah ini.

Seperti yang Anda lihat, ada beberapa tombol kontrol pada perangkat lunak yang dapat digunakan untuk menganalisis bentuk gelombang dengan lebih baik.

CATATAN:

Penyiapan yang diusulkan memiliki satu kelemahan utama:

Arduino tidak dapat menampilkan bentuk gelombang input pada layar komputer dan pembacaan frekuensi / periode waktu pada layar LCD secara bersamaan. Untuk mengatasi masalah ini disediakan tombol push untuk membaca / menyegarkan frekuensi dan jangka waktu pada layar LCD.

Setelah Anda menekan tombol tersebut, frekuensi dan periode waktu akan ditampilkan pada layar LCD sekaligus bentuk gelombang akan membeku di layar komputer selama Anda tetap menekan tombol tersebut.

Anda juga dapat menganggap ini sebagai keuntungan karena Anda dapat menghentikan frekuensi pada monitor komputer kapan saja dan ini memberi Anda waktu untuk menganalisis bentuk gelombang yang ditampilkan.

Prototipe penulis:

Gambar Prototipe rangkaian osiloskop Arduino

Jika Anda memiliki pertanyaan lebih lanjut tentang rangkaian osiloskop Arduino saluran tunggal sederhana ini, jangan ragu untuk menggunakan kotak komentar di bawah ini untuk mengekspresikan pandangan spesifik Anda.




Sepasang: Pengukur Frekuensi Arduino Menggunakan Layar 16 × 2 Berikutnya: Sirkuit Pemancar Internet LiFi - Transfer Sinyal USB melalui LED