Social Icons

Pages

Friday, November 22, 2013

Bikin Oscilloscope sederhana

Sebagai pencari ilmu, saya bisa elektronika & robotik bukan hasil sekolah, kursus atau berguru, melainkan berdasar hobby dan masalah-masalah, akhirnya sekarang mulai tertarik dengan gelombang dan terpaksa membutuhkan peralatan baru diantaranya oscilloscope.

The Hybrid Digital Oscilloscope video
Sumpah berani jujur seumur hidup cuman pernah denger apa itu alat oscilloscope, tapi sama sekali ketemu ato megang aja belom pernah apalagi menggunakan, haha...

Dari mulai berfikir sendiri, sampe menggunakan Android application saya sadar bahwa oscilloscope itu penting, meskipun hal ini bisa ditembus dengan matematika, tapi nilai real adalah disirkuit, karena nilai komponen itu tidak bisa dipercaya 100%, didalam dunia pemrograman ada istilah BUG, jika ditemukan programmer harus melakukan DEBUGGING dan memperbaikinya, dan ini tidak semudah teori sederhananya, karena hal ini erat kaitannya dengan rangkaian hardware, jadi bukan semata-mata hanya masalah pemrograman saja, karena pemrograman canggih harus didukung oleh hardware yang sempurna, maka dari itu AVO meter sendiri tidak dapat membantu banyak.

Melihat perkembangan teknologi digital, sekarang oscilloscope sudah berbentuk portable, bahkan sebagian berbentuk mobile dengan tidak mengurangi fitur-fiturnya, berwarna dan dapat disave bahkan diprint out, mauuuuu......masalahnya oscilloscope ini punya spesifikasi berbeda, sama seperti AVO meter jadi jangan sampai anda beli oscilloscope yang membatasi kreativitas anda karena ketidak tahuan anda, karena oscilloscope digital tidak murah tapi sekelas dengan harga laptop baru.

Itulah mungkin kenapa di lab-lab elektronika jarang sekali kita menemukan oscilloscope 1 unit, biasanya ada beberapa unit dengan spesifikasi berbeda, belum lagi dilengkapi sama signal generator, kalo punya alat-alat ini bermain matematika itu akan menjadi sangat menyenangkan.

Lha ko bisa, hubungannya apa?

Haha...sekarang saya tanya apa rumus luas persegi panjang? Pasti jawab Panjang x Lebar, alasannya apa? Kalo ga bisa jawab berarti matematika anda adalah HAPALAN, artinya itu bukan matematika, sekarang kenapa rumus keliling bujur sangkar itu 2(P+L)? Ga perlu jauh-jauh ke rumus trigonometri ato kalkulus, itu aja banyak orang PINTAR tidak bisa jawab, yang tersinggung malah buanyak banget, hahaha...itulah sistem sekolah di negara ini, mendidik murid untuk menjadi guru dan penghapal sejati, hingga nantinya mereka menjadi PINTAR TEORI dan AHLI DEBAT, NO ACTION TALK ONLY, kesombongan dan siriknya BESAR, tapi karya nyatanya NOL.

Nah dari pada pusing dan ga mau ambil resiko, apasalahnya kita bikin oscilloscope sendiri, hehe... iya modalnya cuman nekat, plus sedikit kehati-hatian karena kalo ga hati-hati komputer ato perangkat elekronik anda taruhannya, haha...

Oscilloscope (Arduino+Processing) Video

Video diatas ini sangar, hanya dengan embedded system sekelas Arduino + Processing, bisa menghasilkan 4 channel seperti itu, dan ini tidak menggunakan soundcard, banyak software-software oscilloscope yang bersifat virtual, jadi anda cukup menggunakan komputer sebagai layar tampilan, signal input menggunakan soundcard, jadi prinsip dasarnya signal dibaca oleh soundcard tapi tidak diteruskan ke audio melainkan ditampilkan secara grafik pada software oscilloscope, masalahnya jika anda kurang mengerti komputer, apalagi komputer ato laptop yang digunakan brand new dengan spesifikasi tinggi, kalo ampe angus soundcard komputer ato laptop anda, ya pengorbanan yang sangat mahal yang harus anda bayar, hahaha...

Tapi setelah saya cari-cari software-software ini berbayar, dan mereka hanya menyediakan software, tidak memberi tutorial untuk membuat interface antara probe dengan komputer/laptop, jadi kalo mau buat sendiri anda harus membuatnya secara terpisah dengan menggunakan optoisolator, tapi disini saya akan membuat oscilloscope bukan melalui soundcard tapi menggunakan port USB, karena saya menggunakan Arduino, jadi sebetulnya menggunakan serial port melalui port USB komputer/laptop saya.

Tampilan oscilloscope menggunakan Arduino + Processing

Tampilan grafik detak nadi menggunakan Arduino + Processing
Haha...tampilannya sangat minimalis, tapi minimal saya bisa tau pola tingkah signal dan melihatnya secara grafik, kemudian mempelajarinya, gambar grafik merah diatas adalah tamplian grafik saat saya membuat sensor detak jantung, selengkapnya bisa dibaca diartikel Bikin Sensor Detak Jantung.

Oscilloscope ini bisa menangani hingga 3 channel, meskipun begitu kinerjanya akan terganggu mengingat kecepatan Arduino yang terbatas. Tidak ada tampilan angka ataupun tombol dilayar hanya grafik fluktuasi signal saya, itupun harus difilter karena masih terlihat distorsinya, berbeda dengan sensor detak jantung sudah melalui LPF (low pass filter) 2x, hingga menghasilkan grafik yang mendekati sempurna.

Oscilloscope percobaan #1 video

Video ini adalah hasil dari oscilloscope menggunakan 1 channel menggunakan input dari rangkaian voltage divider, masalahnya oscilloscope ini tidak boleh melebihi kemampuan pin analog arduino yaitu 5 volt, lebih dari 5 volt almarhum arduino saya, hahaha...kalau begitu bisa saja tampilan grafik dibuat rule berupa nilai tegangan, jadi bisa dimonitor nilai tegangan yang dihasilkan tanpa menggunakan probe dari AVO meter.

Tambahan kekurangannya adalah rangkaian yang akan diprobe harus terintegrasi dengan arduino dan ingat harus dibatasi peak to peaknya, misal membuat signal generator menggunakan IC timer 555, maka IC timer 555 itu harus terintegrasi dengan arduino, singkatnya seperti fungsi DEBUGGING pada serial port, hanya nilai dari serial port diolah oleh processing hingga menghasilkan nilai grafik, jadi jangan pernah gunakan untuk mengukur rangkaian yang terpisah tanpa ground yang terpisah dan diatas 5 volt.

Berikut sketch program 2ch pada arduino :

#define MICH_Ch1 0
#define MICH_Ch2 1

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  int val1 = analogRead(MICH
_Ch1); 
  int val2 = analogRead (MICH_Ch2);
  Serial.print('H'); 
  Serial.print(",");
 
Serial.print(val1,DEC);
 
Serial.print(",");
 
Serial.print(val2,DEC);
 
Serial.print(","); 
  Serial.println();  
  delay(50); 
}

Berikut sketch program pada Processing :

import processing.serial.*;

Serial myPort; 
char HEADER = 'H'; 
short LF = 10; 
short portIndex = 0; 
int[] val = {-1, -1}; 
int[] valuesCh1; 
int[] valuesCh2;
float zoom; 

void setup()
  {
................
................ (selengkapnya hubungi penulis)
................
}

Hardware & Software
1. Arduino
2. Komputer

Untuk mengetahui apa itu Arduino bisa dibaca selengkapnya diartikel :

Oscilloscope with graphic LCD video

Semoga bermanfaat.

Sampai ketemu ditulisan-tulisan saya selanjutnya.

No comments: