Tampilkan postingan dengan label Elektronika. Tampilkan semua postingan
Tampilkan postingan dengan label Elektronika. Tampilkan semua postingan

Selasa, 28 Februari 2017

Object density, bagaimana menentukannya?

Dalam 3D printing khususnya teknology FDM, printed object sebenarnya tidak benar-benar pejal. Artinya, ada ruang kosong didalam object dengan struktur tertentu. Tingkat kepadatan / density dari sebuah printed object biasanya direpresentasikan dengan skala persen (%). Semakin tinggi persentase makin tinggi pula tingkat kepadatannya. Berikut adalah contoh object dengan tingkat kepadatan yang berbeda-beda.


Bagaimana menentukan density yang tepat untuk 3D printed object kita?
Sebenarnya, printed object dapat kita buat dengan density 100%. Namun untuk melakukan hal tersebut ada beberapa hal yang harus kita bayar. Berikut adalah sedikit ulasan mengenai density dan bagaimana pengaruhnya terhadap printed object:

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:

Jumat, 15 Juni 2012

Hampir melupakannya

Brrrrrrrr,,,, dingin sekali pagi ini.... ah,, suara papi menggugahku dari posisi stabilku,, yaitu dibalik selimut. pagi ini memang seharusnya aku mengantar mami untuk belanja sayur, tidak begitu jauh dari rumah, namun akan cukup melelahkan jika dilalui dengan jalan kaki.... anak mana yang tega membiarkan maminya melakukan perjalanan melelahkan itu... akupun bergegas mengambil air, membasuh muka, biar ga begitu keliatan bangun tidur sih benernya... beberapa menit kemudian, akupun berangkat dengan vespa tuaku.


Bener2 dingin hawa pagi ini, sangat kontras dengan kasur empuk dan selimut tebal yang terasa sangat menghangatkan tubuh,.. tapi mau gimana lagi, ini harus dilalui.. dengan sedikit ilmu yoga yang kupelajari (halah,.) aku tahan hawa dingin ini.. dan akhirnya tiba juga ditempat tujuan. Yup, ternyata kami manusia pertama yang tiba ditempat itu, selain penjual tentunya.. dingiiiiinnnn,,, semakin menjadi.. Oh God,, bagaimana bisa Kau membuat hawa sedingin ini,,, untuk apa? tidakkah lebih enak udara yang tak begitu panas, dan tak begitu dingin, sejuk dan menyegarkan?? haha, itulah pertanyaan malasku,,,

Minggu, 06 Mei 2012

Akses Bluetooth Serial Port Profile pada Ubuntu


Berbeda dengan windows dimana penamaan port berupa COM1, COM2 dan sebagainya, pada sistem operasi linux (unix like) menggunakan prefix "/dev/ttyS*", dimana karakter bintang biasanya berupa angka dimana port berada. misal /dev/ttyS0 untuk COM1 dan seterusnya. Pada sistem operasi windows, setelah melakukan pairing modul bluetooth SPP akan langsung mendapat nama port, sehingga langsung dapat menggunakannya  dalam melakukan komunikasi serial nirkabel. Nah, untuk sistem operasi linux ada sedikit trik dan tips untuk dapat menggunakan modul bluetooth sebagai komunikasi serial nirkabel. berikut akan dijelaskan tiap stepnya
  • lakukan pairing modul bluetooth dengan komputer. setelah itu anda akan mendapatkan address dari bluetooth. pada modul yang saya pakai yaitu DFrobot Bluetooth V3 memiliki alamat 00:19:5D:EE:24:23.
  • Untuk membuat bluetooth dikenali sebagai port serial lakukan eksekusi perintah berikut pada terminal dengan mengetik:

Selasa, 04 Oktober 2011

Bikin Studio FM komplit

Gambar Di Atas menunjukan Sebuah Power RF Dengan Mode Otokopler Dual TR Supaya Daya Jadi Besar
Alat Dan Bahan
=>>Audio Mixer
Mixer adalah alat untuk mengatur sinyal elektrik dari microphone studio, tape recorder, dan sinyal prosesor. Operator menggerakan isarat ini dengan knob/tombol, kemudian mengarahkan kembali sinyal ke tape recorder, sinyal prosesor, dan monitor power amplifier. namun sekarang telah banyak keluar audio mixer yang tidak hanya berfungsi sebagai pencampursaja namun juga sebagai pemroses audio ini dinamakan consul atau juga banyak yang menyebut dengan mixer consul.
Mempelajari alat yang satu ini emang agak ribet, tapi jika anda tekun, pasti anda bisa menguasai. Anda haruslah bisa menghafal chanel-chanel mixer yang anda gunakan. chanel microphone, komputer, hybrid telepon, vcd/dvd, perangkat relay, dsb. Insya allah tidak berselang lama, anda akan otomatis mengetahui posisi fader (pada foto disamping, fader adalah tombol yang berwarna hitam. biasanya digerakkan dari bawah ke atas). Jangan lupa juga untuk memperhatikan lampu/layar level indikator yang ada di mixer anda, sehingga anda bisa mencocokkan intensitas volume lagu dan microphone anda.

Sabtu, 27 Agustus 2011

Animasi pada Dotmatrix 64x8

Ahh,, akhirnya setelah "suwung" untuk beberapa waktu, kelar juga projek iseng2 berhadiah ane,, ini gara2 skripsi ga kelar2, terhimpit waktu,, malah kepikiran bikin maenan. sebenernya sudah cukup lama pengen bikin, tapi berhubung belum ada waktu jadi agak tertunda gitu dech... :D lha ni,, justru harusnya buat skripsi?? kok malah maen2 sih??

daripada stres ga ngerti mau ngapain.. hehe..

projek kali ini terinspirasi dari seorang teman yang meminta saya mencarikan program GIF to LED Matrix yang waktu itu tidak ketemu... akhirnya saya kepikiran,, gimana kalo bikin fungsi sendiri untuk Mengekstrak file GIF menjadi data-data Hexadesimal untuk kemudian dikirimkan menuju display dot matrix? hmm,, "ide bagus"(menurut saya waktu itu..hehe)

4 hari berselang dalam pertapaan didalam ruang 3*3 (maksudnya kamar ane gan... :D) akhirnya melahirkan beberapa versi,, dari yang menggunakan multi image(bisa dari gambar apa saja asal ukuran 64x8) dan yang terakhir langsung dari file GIF yang dimanipulasi menjadi data-data hexadesimal. taraaaa.... al hasil cukup memuaskan, meskipun animasi agak tersendat. kebetulan yang saya pake ini menggunakan timer_tick,, dibanding dengan BackgroundWorker lebih stabil (tanpa error) jika menggunakan timer_tick. pokoknya belum ketemu gimana cara multitasking BackgroundWorker biar ga error...

untuk sementara screenshot dari projek ane gan... next time akan saya share anu ma itu... file dan pembahasannya... barangkali ada yang tau errornya dmana... :D


ni ane sertain videonya juga gan... sapa tau pengen nonton gimana jadinya... ane tutupin kameranya biar ga terlalu silau... jadi mungkin agak burem... harap maklum... heee


Minggu, 17 April 2011

Enable USB device di ubuntu

Beberapa waktu yang lalu ketika saya mengambil mata kuliah mikrokontrol, saya tertarik dengan pemrograman under linux,, waktu itu saya temui sebuah compiler bernama AVR-GCC dimana gaya pemrogramannya merupakan bahasa bergaya C++ murni... akan tetapi banyak kendala ketika operating system saya tidak mendukung downloader yang saya punya (asumsi: berhubung saya tidak tau),, al hasil,, saya masih harus kembali ke windows untuk sekedar melakukan kompilasi dan aktifitas lainnya yang belum bisa saya lakukan waktu itu didunia linux...

Namun, baru-baru ini tanpa sengaja hasil searching google membawa saya ke sebuah artikel,, saya menemukan sebuah ulasan tentang bagaimana cara menambahkan device usb pada ubuntu. karena secara default, ubuntu tidak mengijinkan user biasa untuk melakukan attactment perangkat usb semacam usb downloader (kebetulan punya saya USBASP). AVR-DUDE merupakan aplikasi untuk melakukan burning program yang telah kita buat setelah melakukan kompilasi. AVR-DUDE mampu mengenali banyak tipe downloader,, salah satunya yang saya punya. akan tetapi waktu itu saya masih kebingungan bagaimana USBASP ini bisa bekerja di linux(ubuntu) saya waktu itu. 

Sabtu, 16 April 2011

AVR IDE,, linux programming

Untuk anda yang suka programming, mungkin sudah tidak asing lagi dengan Code Vision, sebuah IDE berbayar under windows, ataupun AVR-STUDIO sebagai IDE berbasis opensource, serta AVR-GCC sebagai compiler. Tanpa mengurangi "proses kenyamanan" belajar, ada alternatif lain software IDE opensource under Linux. Software ini bernama Eclipse dan Codeblock. Eclipse adalah sebuah IDE developer multiplatform, begitu juga dengan Codeblock. namun disini yang ingin saya ulas adalah software yang satu ini,, yaitu Codeblock. berikut adalah tampilan Codeblok 10.5 yang saya gunakan:


untuk dapat melakukan kompilasi program AVR yang telah kita buat,, perlu di instal dahulu software-software pendukung, dengan mengetikkan perintah berikut pada terminal:

USBasp, siapkah beralih ke opensource?

USBasp adalah sebuah USB In-circuit programmer untuk mikrokontroler AVR yang didesain oleh Thomas Fischl. Penggunaannya cukup mudah dan dapat dijalankan pada platform Linux, Mac OS X, maupun Windows. USBasp dapat men-download firmware ke internal flash dari mikrokontroler AVR yang menjadi targetnya dengan kecepatan maksimal 5 kB/s dan tersedia jumper untuk men-set USBasp agar support mikrokontroler AVR target yang mempunyai low clock speed (< 1.5MHz); biasanya, jika kita membeli mikrokontroler AVR yang baru, by default, kebanyakan AVR tersebut di-set menggunakan internal clock frekuensi 1MHz (untuk mengubah setting clock ini, Anda harus memprogram LFUSE, HFUSE, dan/atau EFUSE; silakan lihat datasheet dari mikrokontroler AVR yang digunakan untuk lebih rincinya).

Berdasarkan skema rangkaian dari Thomas Fischl, saya membuat artwork PCB untuk USBasp yang nantinya saya, beserta Laboratorium Otomasi dan Sistem Embedded, Jurusan Teknik Elektro, Universitas Surabaya, gunakan untuk men-download firmware ke internal flash dari mikrokontroler AVR, seperti untuk praktikum mata kuliah Mikrokontroler dan proyek pembuatan intelligent robot. (hardware robot yang digunakan pada Ubaya Robosoccer Competition 2009 dikembangkan menggunakan mikrokontroler AVR). Program yang saya gunakan untuk menggambar ulang skema rangkaian serta membuat artwork PCB-nya adalah gEDA dan pcb, suatu GPL'ed Electronic Design Automation Suite yang sangat layak diandalkan, dan terlebih lagi (dan yang paling penting), program ini berjalan di atas platform Linux. Gambar berikut ini menunjukkan tampilan gEDA dan pcb untuk pembuatan USBasp.


Setelah dicetak dan disolder seluruh komponennya, serta, firmware USBasp telah di-download-kan ke ATmega8 yang digunakan pada USBasp ini, maka hasil akhirnya dapat dilihat pada gambar berikut ini:


USBasp in action menggunakan AVRDude sebagai ISP Software:


Jika Anda tertarik untuk memperoleh USBasp yang siap pakai atau masih dalam bentuk belum disolder, silakan menghubungi saya via e-mail untuk informasi lebih lanjut. Alamat e-mail saya dapat dilihat pada Profile saya.

Solusi jika USBasp tidak dapat digunakan oleh user biasa di Linux
Jika pada saat Anda menggunakan USBasp sebagai user biasa di Linux, ternyata USBasp Anda tidak dapat digunakan, tetapi saat Anda sebagai root atau superuser, ternyata USBasp tersebut dapat digunakan, berarti Anda sebagai user biasa tidak mempunyai hak akses ke USBasp. Solusi untuk masalah ini cukup mudah. Anda harus membuat file baru dengan nama 99-usbasp-rules pada direktori /lib/udev/rules.d yang isinya sebagai berikut:

# allow users to claim the device
ACTION=="add" SUBSYSTEM=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05dc", MODE="0664", GROUP="plugdev"

untuk idVendor dan idProduct dapat Anda ketahui melalui command: lsusb (dengan catatan Anda sebagai root atau superuser dan USBasp Anda terhubung ke PC/Laptop). Setelah file tersebut di-save, re-plug USBasp Anda dan Anda akan mempunyai hak akses ke USBasp. Jangan lupa, pastikan user biasa tersebut telah menjadi group member dari plugdev.

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...