Categories
Mikrokontroler

Baca masukan Analog menggunakan Arduino!

Melanjutkan tutorial saya sebelumnya, tentang simulator Arduino menggunakan Proteus dan VBB. Kali ini saya berikan ulasan tentang aplikasi Arduino untuk membaca masukan ANALOG yang nilai terbaca akan digunakan untuk memberikan tundaan kedipan LED pada pin-13.

Perhatikan gambar rangkaian berikut ini…

Gambar 1

Categories
Mikrokontroler

Hidupkan LED dengan Button, Aplikasi Arduino!

Melanjutkan tutorial saya sebelumnya, tentang simulator Arduino menggunakan Proteus dan VBB versi 4.3.8. Kali ini saya berikan ulasan tentang aplikasi Arduino yang sangat sederhana sekali, menghidupkan LED menggunakan tombol atau pushbutton. Ada dua penjelasan, menggunakan VBB versi 4.38 dan UnoArduSim (software bisa diunduh disini).

Menggunakan VBB 4.3.8

Perhatikan rangkaian Arduino yang saya tunjukkan pada Gambar 1 menggunakan simulator VBB 4.3.8. Indikator LED kita sambungkan ke pin 13 (secara default, sebagaimana saya jelaskan tentang Arduino, pin 13 sudah tersambung dengan sebuah LED pada perangkat keras sesungguhnya) dan tombol kita pasang ke pin 2 (hanya contoh, Anda bisa memasang tombol dimana saja, program silahkan Anda sesuaikan).

Gambar 1

Categories
Mikrokontroler

Belajar pemrograman Arduino menggunakan VBB

Jika Anda belum pernah mendengar tentang Arduino, silahkan klik disini untuk membaca artikel saya terlebih dulu. Simulasi lain bisa menggunakan Proteus, namun kali ini akan menggunakan VBB atau Virtual Breadboard (http://www.virtualbreadboard.com) sebagaimana pernah saya janjikan pada artikel terdahulu.

Simulator VBB yang dibutuhkan adalah VBB versi 4.3.8 (bisa Anda unduh disini atau disini). Selain bisa mensimulasikan Arduino, juga bisa mensimulasikan Netduino. Gambar dari Netduino ditunjukkan di bawah ini…

Netduino (berbasis uC ARM) yang mirip dengan Arduino (berbasis uC AVR) – semua berbasis uC Atmel.

Categories
Mikrokontroler

Driver USBasp untuk Windows 7 – 64bit!

Ternyata menggunakan USBasp di lingkungan Windows 7 – 64bit tidak langsung bisa di-instalasi driver-nya dengan baik. Hal ini disebabkan belum tersertifikasi-nya driver bawaan dari USBasp itu sendiri. Nah gunakan driver dengan mengunduh disini agar proses instalasi bisa berjalan dengan baik dan berhasil. Saya sudah mencobanya, kini giliran Anda juga bisa mencobanya….

Terima kasih dan semoga bermanfaat…

Categories
DSP

Wavelets and Filter Banks Course Notes (Catatan Kuliah Wavelet dan Filter Banks)

Silahkan unduh versi Bahasa Indonesia-nya disini

Wavelets and Filter Banks Course Notes

Copyright ©Dr. W. J. Phillips

January 9, 2003

  • 1. Analysis and Synthesis of Signals
  • 2. Time-Frequency Analysis
    • 2.1 The Short Time Fourier Transform
    • 2.2 The spectrogram
    • 2.3 An Orthgonal Basis of Functions
  • 3. Time-Scale Analysis
    • 3.1 The Continuous Wavelet Transform
    • 3.2 Comparision with STFT
    • 3.3 The Scalogram
    • 3.4 Examples of Wavelets
    • 3.5 Analysis and Synthesis with Wavelets
    • 3.6 The Haar Wavelet
  • 4. Multiresolution Analysis
    • 4.1 The Scaling Function
    • 4.2 The Discrete Wavelet Transform
  • 5. Filter Banks and the Discrete Wavelet Transform
    • 5.1 Analysis: From Fine Scale to Coarser Scale
      • 5.1.1 Filtering and Downsampling
      • 5.1.2 The One-Stage Analysis Filter Bank
      • 5.1.3 The Analysis Filter Bank
    • 5.2 Synthesis: From Course Scale to Fine Scale
      • 5.2.1 Upsampling and Filtering
      • 5.2.2 The One-Stage Synthesis Filter Bank
      • 5.2.3 Perfect Reconstruction Filter Bank
      • 5.2.4 The Synthesis Filter Bank
      • 5.2.5 Approximations and Details
    • 5.3 Numerical Complexity of the Discrete Wavelet Transform
    • 5.4 Matlab Examples
      • 5.4.1 One-Stage Perfect Reconstruction
      • 5.4.2 Approximations and Details
      • 5.4.3 A Useful Function
    • 5.5 Initialization of the Discrete Wavelet Transform
  • 6. Properties of the Filters, and the Scale and Wavelet Functions
    • 6.1 Double Shift Orthogonality of the Filters
    • 6.2 Frequency Domain Formulas
    • 6.3 Support of the Scale Function
    • 6.4 The Cascade Algorithm
  • 7. Designing Wavelets
    • 7.1 Short Filters
      • 7.1.1 Length 2 Filter
      • 7.1.2 Length 4 Filter
      • 7.1.3 Length 6 Filter
    • 7.2 K-Regular Scaling Filters
      • 7.2.1 The db2 Wavelet
      • 7.2.2 The db3 Wavelet
    • 7.3 Characterizing K-Regular Filters
    • 7.4 The Daubechies Maximally Flat Polynomial
      • 7.4.1 Factoring the Daubechie Maximally Flat Polynomial
    • 7.5 Coiflets
      • 7.5.1 Coif1
      • 7.5.2 Coif2
Unduh versi Indonesianya hanya disini… Terima kasih…!

Categories
FPGA

Implementasi FFT (Fast Fourier Transform) 16-Titik pada FPGA ALTERA Keluarga FLEX-10K menggunakan VHDL

Oleh Agfianto Eko Putra dan Eka Budi Santosa.

Telah dilakukan implementasi FFT 16-titik berbasis FPGA Altera keluarga FLEX-10K menggunakan deskripsi VHDL . Implementasi FFT ini didasarkan pada algoritma Radix-2 Decimation-In-Frequency. Implementasi dilakukan pada 2 (dua) macam FPGA Altera Keluarga FLEX-10K, yaitu EPF10K20TC144-3 (FLEX-10K) dan EPF10K30ETC144-1 (FLEX-10KE). Analisis pewaktuan, untuk FPGA tipe EPF10K20TC144-3, menunjukkan bahwa sistem mampu diberikan detak (clock) hingga 26,73 MHz dan melakukan proses FFT 16-titik dalam waktu 16,75 mikrodetik. Sedangkan tipe EPF10K30ETC144-1, maksimum frekuensi detak-nya adalah 60,97MHz dan melakukan proses yang sama dalam waktu 7,35 mikrodetik.

Selengkapnya bisa diunduh di sini

Categories
Mikrokontroler PLC/SCADA

Antarmuka Port Serial-2: Membaca ID Alat

Catatan: Bagian-2 (klik disini untuk membaca Bagian-1) ini ditulis dengan asumsi Anda sudah pernah minimal membuat program sederhana menggunakan Visual Basic 6.0. Jika belum, disarankan untuk belajar dengan tingkat dasar dulu, buku2 atau tutorialnya sudah banyak sekali.

Menggunakan Simulator port Serial yang telah dibahas sebelumnya, akan kita gunakan untuk belajar membuat program dalam Visual Basic 6.0 untuk membaca ID dari board, dalam hal ini simulator port serial yang telah dibahas sebelumnya. Jika Anda belum mengetahui protokol simulator ini silahkan baca kembali artikel sebelumnya. Klik disini untuk mengunduh simulator port serial.

Baiklah…

Yang harus dilakukan pertama adalah instalasi Visual Basic 6.0 terlebih dulu (kecuali sudah ada di komputer Anda). Selain itu tidak dibutuhkan fasilitas port apapun di komputer Anda, karena ini adalah simulator port serial dan bahkan, boleh percaya atau tidak, saat Anda mengaktifkan simulator serial pada software ini, komputer akan memberikan indikator bunyi seakan-akan ada alat USB yang ditancapkan, demikian juga pada saat dinon-aktifkan. Sebagaimana telah dicoba pada artikel/tutorial Bagian-1.

Aktifkan VB6 dan buatlah proyek baru (EXE), perhatikan Gambar 1.

Gambar 1. Perhatikan kotak merah (Standard EXE)

Categories
Mikrokontroler

Antarmuka Port Serial-1: Simulator Port Serial (v2.5)

Kali ini saya mempersembahkan sebuah perangkat lunak yang bisa digunakan untuk pembelajaran kontrol melalui port serial. Sebenarnya perangkat lunak ini sudah saya hasilkan sejak tahun 2008 dan saya gunakan dalam kelas-kelas kuliah maupun pelatihan antarmuka dan otomasi sistem. Sekarang sudah waktunya untuk di-share ke seluruh dunia… Keren euy!

Oke, silahkan unduh dulu softwarenya disini (cara instalasi ada di dalam RAR-nya)..

Baiklah…

Bagaimana menggunakannya?

Versi yang tersedia dalam arsip RAR yang telah Anda unduh adalah versi 2.0, 2.1 dan 2.5. Saya sarankan untuk menjalankan versi terakhir atau 2.5 saja karena sudah banyak perbaikan dari versi sebelumnya. Install Visual Basic 6.0 terlebih dahulu, karena program saya tersebut hanya EXE-nya saja tidak melalui instalasi…

Categories
Mikrokontroler

Perancangan Aplikasi Real Time (2): Solusi Tanpa RTOS

SINOPSIS

Melanjutkan artikel sebelumnya, perlu diketahui bahwa tidak setiap aplikasi membutuhkan sistem operasi atau tepatnya RTOS. Hmmm, jadi langsung saja, artikel ini memberikan gambaran tentang solusi tanpa menggunakan sistem operasi, yang nantinya kita evaluasi dan simpulkan baik buruknya, kelebihan kelemahannya.

Okey, take a deep breath, ambil napas yang dalem,…. Tahan…. dan jangan dikeluarkan… what?! he he he just kidding… ya silahkan dilepaskan pelan-pelan… (maksudnya supaya santai dulu relaks)

IMPLEMENTASI

Solusi yang dibahas kali ini menggunakan pendekatan kalang (loop approach), dimana setiap komponen aplikasi dinyatakan dalam bentuk fungsi yang harus dijalankan hingga selesai.

Idealnya digunakan pewaktu perangkat keras untuk melakukan penjadwalan fungsi-fungsi kontrol yang kritis. Namun, menunggu datangnya data dan perhitungan data yang begitu kompleks menyebabkan fungsi kontrol tidak cocok untuk dijalankan dalam batasan rutin layanan interupsi.

Seberapa banyak dan urutan komponen mana yang dikerjakan dalam kalang tak-hingga dapat diatur dengan memasukkan unsur prioritas, silahkan perhatikan pembahasan dalam contoh nantinya.

FUNGSI KONTROL PROSES (PLANT)

Perhatikan kode pseudo berikut…

void PlantControlCycle( void )
{
  TransmitRequest();
  WaitForFirstSensorResponse();
  if( terima data dari sensor pertama )
  {
    WaitForSecondSensorResponse();
    if( terima data dari sensor kedua )
    {
      PerformControlAlgorithm();
      TransmitResults();
    }
  }

FUNGSI ANTARMUKA PENGGUNA

Fungsi ini meliputi antarmuka keypad, LCD, komunikasi RS232 dan server WEB tertanam. Perhatikan kode pseudo berikut…

int main( void )
{
  Initialise();
  for( ;; )
  {
    ScanKeypad();
    UpdateLCD();
    ProcessRS232Characters();
    ProcessHTTPRequests();
  }
// seharusnya tidak pernah sampai disini
  return 0;
}

Ada dua asumsi: Pertama, masukan/luaran komunikasi di-buffer melalui rutin layanan interupsi, sehingga periferal yang terkait tidak perlu melakukan polling (proses menunggu terus menerus). Kedua, fungsi pemanggilan fungsi dalam kalang dikerjakan secepat mungkin sehingga semua syarat pewaktuan dipenuhi.

Categories
Mikrokontroler

Perancangan Aplikasi Real Time (1): Pendahuluan

PENDAHULUAN

Apa yang akan kita bicarakan atau bahas kali ini adalah tentang Real Time Operating System. Apaan? Real Time Operating System? Apa tuch? Oke, sabar dulu sebentar. Real Time Operating System, yang selanjutnya kita singkat saja menjadi RTOS, merupakan sistem operasi untuk aplikasi-aplikasi waktu nyata atau istilah kerennya Real Time Applications, contohnya apa saja? Ya sebagaimana kita jumpai di sekitar kita, seperti handphone (tidak harus smartphone) – bukankah tanpa sistem operasi ketika di-ON-kan tidak akan terjadi apa-apa, padahal kenyataannya HP langsung melakukan ‘booting’ (istilah dalam sistem operasi) beberapa saat, kemudian baru siap kita gunakan – ditandai dengan visualisasi pada LCD-nya, antara lain, kekuatan sinyal, sisa daya baterei, nama provider, jam, tanggal dan lain sebagainya.

Oke, untuk memulai membahas tentang perancangan aplikasi real time dengan sistem operasi, kita mulai dengan kasusnya dulu yang akan dicari solusinya…

STUDI KASUS ATAU APLIKASI

Perhatikan gambar 1 berikut ini..

Gambar 1

Aplikasi akan berjalan pada sebuah sistem (single board) yang berisikan mikrokontroler atau mikroprosesor yang harus melakukan kontrol terhadap suatu proses dan pada waktu bersamaan melakukan akuisisi dan pemantauan/pengontrolan baik secara lokal maupun jarak jauh. Sistem tersebut terdiri dari:

  • Sebuah sistem benam (embedded system) dengan kekuatan suatu mikrokontroler/mikroprosesor;
  • Dua sensor yang terhubung dengan jaringan fieldbus;
  • Sesuatu yang dikontrol (bisa apa saja, motor, pemanas dll), serta dihubungkan pada jaringan fieldbus yang sama;
  • Keypad matriks yang dibaca melalui luaran/masukan;
  • Dua buah indikator LED;
  • Sebuah penampil LCD;
  • Sebuah server web tertanam agar dapat dilakukan pengontrolan jarak jauh (melalui web atau internet);
  • Sebuah antarmuka RS232 agar dapat dihubungkan dengan suatu PDA.