Senin, 19 November 2012

Yang ia ingin ketahui

Yang ia ingin ketahui


Langit gelap yang memisah daratan dengan sang bintang
mendung terurai memikat embun dan lentera
Menghentak segala kekakuan dalam otot kehidupan...
Dia yang menjadikan....

Yang ia tahu, hanya bagaimana memetik buah
Yang ia ingin hanya melihat bunga itu bermekaran
Tak pernah tahu apa itu derita
Tak pernah ingin mengetahui mereka layu

Sang bocah, dengan dawai gitar patah
Memaksa mengerti melodi Sang Pencerah
Namun ia sangat mengerti
Mengapa jalanan begitu menggenang,
Membanjiri segala keingintahuan
Seandainya mereka menyaksikannya
Wid, 19,11,12,5:36

Jumat, 16 November 2012

Home made gyro sensor using wii motion plus

Girosensor atau giroskop merupakan sebuah sensor yang mampu mengukur kecepatan sudut benda berotasi. Pada umumnya sensor giroskop digunakan dalam sistem navigasi. didalam perkembangannya giroskop juga digunakan dalam perangkat mobile seperti iPhone, dan beberapa HH android sudah mengadopsi giroskop.

Pada kesempatan ini penulis tidak ingin mengulas lebih jauh mengenai fungsi giroskop. Sebenarnya ada banyak modul sensor giroskop yang ada dipasaran. Namun, sayangnya dari investigasi yang telah dilakukan ternyata masih cukup mahal. untuk giroskop dengan satu sumbu pengukuran saja hampir 150 ribu rupiah.


Setelah mendapat rekomendasi dari seorang teman, akhirnya menemukan juga yang "pas" dikantong. Wii motion plus. merupakan asesoris tambahan Nintendo Wii yang didalamnya terdapat sebuah sensor giroskop tipe ITG3200. Jika ditanya soal harga, bila anda membeli breakoutnya secara online, harganya dibandrol sekitar 500 ribu. lalu berapa harga wii motion plus? cukup dengan 130 ribu anda sudah mendapatkan sensor giroskop tiga aksis. Ingin tahu lebih jauh mengenai sensor ITG3200, silahkan saja berkunjung ke lembar datanya.

Berikut adalah penampakan board wii motion plus yang penulis temukan.

referensi:
http://www.sparkfun.com/datasheets/Sensors/Gyro/PS-ITG-3200-00-01.4.pdf

Single pole lowpass filter algorithm

Sesuai dengan namanya, lowpass filter merupakan sebuah tapis yang hanya melewatkan frekuensi rendah dengan cara melemahkan (attenuates) amplitudo yang memiliki frekuensi dibawah frekuensi cutoff. 



Continous time lowpass filter
ada beberapa jenis filter dengan berbagai respon terhadap perubahan frekuensi. Respon frekuensi dari sebuah filter biasanya direpresentasikan menggunakan bode plot, dimana pada frekuensi cutoff, amplitudo akan turun -3dB dan terus menurun -20dB tiap dekade frekuensi.  continous time lowpass filter juga dapat dideskripsikan kedalam transformasi laplace. Sebagai contoh, 1st order lowpass filter dapat dideskripsikan menggunakan notasi laplace berikut. 


\frac{\text{Output}}{\text{Input}} = K \frac{1}{1 + s \tau}

dimana s adalah variabel transformasi laplace,  τ adalah filter time constant dan K merupakan gain filter. 

Bagaimana implementasi single pole lowpass filter kedalam bahasa pemprograman?

Untuk dapat melakukan simulasi lowpass filter didalam perangkat lunak dapat dilakukan dengan mengamati karakteristik filter dalam domain waktu dan permodelan diskrit.

Berdasarkan hukum kirchoff, didefinisikan bahwa kapasitansi adalah:



v_{\text{in}}(t) - v_{\text{out}}(t) = R \; i(t)




(V)
Q_c(t) = C \, v_{\text{out}}(t)




(Q)
i(t) = \frac{\operatorname{d} Q_c}{\operatorname{d} t}





Dimana  Q_c(t) adalah jumlah muatan yang ditampung pada kapasitor dalam waktu t. Jika dilakukan subtitusi persamaan Q menuju persamaan I maka didapat \scriptstyle i(t) \;=\; C \frac{\operatorname{d}v_{\text{out}}}{\operatorname{d}t} yang dapat disubtitusikan pada persamaan V, sehingga:
v_{\text{in}}(t) - v_{\text{out}}(t) = RC \frac{\operatorname{d}v_{\text{out}}}{\operatorname{d}t}

Persamaan tersebut dapat dideskritkan. untuk lebih sederhana, asumsikan bahwa jumlah sampel input dan output diambil dalam selang waktu \scriptstyle \Delta_T. Katakanlah \scriptstyle v_{\text{in}} direpresentasikan dengan rentetan data \scriptstyle (x_1,\, x_2,\, \ldots,\, x_n) dan  \scriptstyle v_{\text{out}} direpresentasikan sebagai sequence data \scriptstyle (y_1,\, y_2,\, \ldots,\, y_n), maka dapat dilakukan subtitusi:
x_i - y_i = RC \, \frac{y_{i}-y_{i-1}}{\Delta_T}

dengan menata ulang persamaan diatas dapat ditulis sebagai berikut:
y_i = \overbrace{x_i \left( \frac{\Delta_T}{RC + \Delta_T} \right)}^{\text{Input contribution}} + \overbrace{y_{i-1} \left( \frac{RC}{RC + \Delta_T} \right)}^{\text{Inertia from previous output}}.
implementasi single pole lowpass filter waktu diskret dapat diimplementasikan kedalam persamaan:
y_i = \alpha x_i + (1 - \alpha) y_{i-1} \qquad \text{where} \qquad \alpha \triangleq \frac{\Delta_T}{RC + \Delta_T}
\scriptstyle \alpha merupakan smoothing factor dengan nilai \scriptstyle 0 \;\leq\; \alpha \;\leq\; 1. hubungan antara time constant RC, \scriptstyle \Delta_T dan smoothing factor \scriptstyle \alpha dapat didefinisikan :
RC = \Delta_T \left( \frac{1 - \alpha}{\alpha} \right)

Jika \scriptstyle \alpha \;=\; 0.5, maka nilai RC akan sama dengan periode sampling. Jika \scriptstyle \alpha \;\ll\; 0.5, maka \scriptstyle RC secara signifikan akan lebih besar dari periode sampling, dan \scriptstyle \Delta_T \;\approx\; \alpha RC.
Algorithm implementation
Contoh berikut adalah pseudocode algoritma single pole lowpass filter yang akan mensimulasikan efek dari lowpass filter. 

 // Return RC low-pass filter output samples, given input samples,
 // time interval dt, and time constant RC
 function lowpass(real[0..n] x, real dt, real RC)
   var real[0..n] y
   var real α := dt / (RC + dt)
   y[0] := x[0]
   for i from 1 to n
       y[i] := α * x[i] + (1-α) * y[i-1]
   return y

Algoritma diatas telah digunakan penulis dalam melakukan smoothing pengambilan data accelerometer dengan α dapat dicari dengan melakukan trial error.

referensi:

Exchange 2010 SP3 PrepareAD error “The well known object entry with the GUID”

Currently we are going to upgrade Exchange 2010 SP1 to Exchange 2010 SP3 which is one of the step is preparing AD. But in the mid of proces...