Categories
DSP

Perkembangan (Aplikasi) Transformasi Wavelet

Wavelet theory” is the result of a multidisciplinary effort that brought together mathematicians, physicists and engineers… this connection has created a flow of ideas that goes well beyond the construction of new bases or transforms. – Stephane Mallat

Dalam beberapa tahun belakangan ini telah terjadi ledakan besar pada aktivitas yang melibatkan wavelet. Ribuankarya ilmiah (paper) tentang teori dan aplikasi wavelet telah diterbitkan. Wavelet merupakan metode yang ampuh dan fleksibel untuk menangani berbagai masalah dasar dalam dunia sains dan teknik.

Berikut ini beberapa bidang aplikasi yang dapat ditangani menggunakan wavelet:

  • Audio denoising, Pesan yang disampaikan melalui telepon internasional mengandung banyak derau. Bagaimana menghilangkan derau ini sedemikian hingga pesan menjadi jelas?
  • Signal compression, isu penyimpanan dan distribusi data-data multimedia melalui jaringan merupakan dasar dari berbagai macam penelitian pemampatan data. Adakah cara memampatkan data sedemikian rupa sehingga rasio pemampatan sebesar-besarnya tanpa banyak kehilangan informasi akibat proses pemampatan tersebut?
  • Object detection, Bagaimana kita bisa mendeteksi adanya sebuah objek dalam sebuah gambar yang begitu kompleks?
  • Fingerprint compression, FBI memiliki lebih dari 25juta sidik jari, andaikata data sidik jari disimpan tanpa proses pemampatan, maka diperlukan lebih dari 250 terabyte. Adakah cara pemampatan data sidik jari tersebut dengan rasio yang besar tanpa banyak kehilangan data aslinya? (atau kalau perlu 100% reversible, artinya data asli dan hasil pemampatan bisa dikembalika seperti semula 100% sama…)
  • Image denoising, Citra yang diperoleh dari mikroskop elektron dan sinar laser banyak mengandung derau, apakah derau ini bisa dihilangkan? Sehingga gambar menjadi lebih jelas?
  • Image enhancement, Kalau sebuah foto menjadi buram, bagaimana cara untuk memfokuskan kembali?
  • Image recognition, Bagaimana manusia bisa mengenal wajah? Apakah ini bisa dilakukan melalui komputer? Robot?
  • Diagnosing heart or brain trouble, Apakah ada cara untuk mendeteksi detak jantung atau detak otak yang abnormal?
  • Speech recognition, Faktor-faktor apa saja yang membedakan antara bunyi konsonan dan vokal? Bagaimana manusia bisa mengenali ucapan? Dengan berbagai macam manusia?

dan masih banyak lagi lainnya…

Yang jelas, Transformasi Wavelet sangat sesuai untuk bidang aplikasi yang melibatkan sinyal-sinyal atau data-data yang a-periodik, penuh derau (noisy), terputus-putus (intermittent), transien dan seterusnya. Mengapa? Karena Transformasi Wevelet menawarkan analisis waktu-frekuensi yang berbeda dari STFT (Short-Time Fourier Transform), yang kemudian melahirkan berbagai macam metode berbasis wavelet untuk analisis data yang canggih.

Banyak ide awal analisis menggunakan Transformasi Wavelet diawali puluhan tahun yang lalu, awalnya di pertengahan tahun 1980-an untuk analisis sinyal-sinyal seismik. Pada waktu itu diawali dari sekelompok kecil ilmuwan (small community) yang kemudian menghasilkan beberapa paper-paper. Hingga tahun 1990-an mulailah berbagai macam aplikasi Wavelet dalam bidang sains dan teknologi mulai berkembang dengan cepat, perkembangan tersebut ditunjukkan dengan jumlah paper yang dipublikasikan semakin banyak dari tahun ke tahun, perhatikan gambar berikut…

Sumber:

  • Addison, Paul.S., 2002, “The Illustrated Wavelet Transform Handbook“, Institute of Physics Publishing, Bristol
  • Walker, James.S., 1999, “A Primer on Wavelets and Their Scientific Applications 1stED“, Chapman & Hall/CRC, USA

Semoga bermanfaat…

Categories
DSP

Nyquist – Efek Aliasing

Jika Anda belum tahu tentang Teorem Nyquist, coba baca artikel saya disini. Okey, sekarang saya akan coba menunjukkan kepada Anda mengenai Efek Aliasing (yang nanti akan lihat bahwa frekuensi alias = frekuensi pencuplikan – frekuensi sinyal), yaitu suatu efek yang akan terjadi jika kita melakukan pencuplikan dengan frekuensi pencuplikan dibawah dari ketentuan Nyquist. Okey let’s get started…

Pertama kita gunakan frekuensi pencuplikan sebesar 20 Hz dan rentang waktu selama 1 detik…

fs=20;
t=0:1/fs:1;

Kita awali dengan frekuensi 1Hz, kemudian dilanjutkan dengan frekuensi 2Hz, 5Hz, 10Hz (pas setengah frekuensi pencuplikan), 15Hz, 18Hz dan 19Hz…

f1=1;
x1=sin(2*pi*f1*t);
f2=2;
x2=sin(2*pi*f2*t);
f3=5;
x3=sin(2*pi*f3*t);
f4=10;
x4=sin(2*pi*f4*t);
f5=15;
x5=sin(2*pi*f5*t);
f6=18;
x6=sin(2*pi*f6*t);
f7=19;
x7=sin(2*pi*f7*t);

Kemudian kita gambarkan semua hasil dalam satu plot agar kita bisa membandingkan 7 frekuensi tersebut (dengan frekuensi pencuplikan yang sama, 20Hz)…

plot(t,x1,’-o’,t,x2,’-o’,t,x3,’-o’,t,x4,’-o’,t,x5,’-o’,t,x6,’-o’,t,x7,’-o’);
legend(‘1hz’,’2hz’,’5hz’,’10hz’,’15hz’,’18hz’,’19hz’);
title(‘Teorema Nyquist – Efek Aliasing (Fs=20Hz)’);

Hasilnya ditunjukkan pada gambar berikut…

Nach menarik sekali hasilnya, Anda perhatikan bahwa untuk frekuensi 10Hz hasilnya berupa garis lurus (masih ingat dengan artikel saya Teorema Nyquist – Pengenalan?), jelas karena frekuensi pencuplikan = 2 kali frekuensi 10Hz. Bagaimana dengan frekuensi 1Hz, 2Hz dan 5Hz? Nothing’s wrong khan, baik2 aja khan?

Mmmm… bagaimana dengan frekuensi 15Hz, 18Hz dan 19Hz? Nah gambarnya memang terbalik dari frekuensi, masing-masing, 5Hz, 2Hz dan 1Hz tetapi frekuensi-nya khan sama, iya khan? Ini dia yang dinamakan Efek Aliasing. Misalnya untuk 15Hz menghasilkan…

frekuensi aliasing = frekuensi pencuplikan – frekuensi 15Hz = 20Hz – 15Hz =5Hz

Jadi frekuensi 15Hz, dengan Fs=20Hz, merupakan kembaran (alias) dari 5Hz. Demikian seterusnya untuk contoh-contoh frekuensi aliasing lainnya (18Hz dan 19Hz yang masing-masing menghasilkan 2Hz dan 1Hz).

Jika ada pertanyaan atau komentar silahkan saja… Have a nice day…! Terima kasih, semoga bermanfaat…

Categories
Pembelajaran

Tentang PSpice!

Apakah Spice Atau Pspice Itu?

SPICE adalah program yang mampu mensimulasikan rangkaian elektronika melalui komputer. Anda bisa melihat bentuk gelombang dari tegangan atau arus pada rangkaian Anda. SPICE menghitung tegangan dan arus versus waktu (Analisa Transien) atau versus frekuensi (Analisa AC). Banyak program SPICE juga bisa digunakan untuk analisa DC, sensitivitas, derau maupun distorsi.

Kepanjangan SPICE adalah Simulation Program with Integrated Circuit Emphasis. Para peneliti di Uiversitas Kalifornia, Berkeley telah mengembangkan program komputer ini sejak pertengahan tahun 70-an. Apa yang mendorong pengembangan program SPICE ini? Hadirnya berbagai macam IC (Integrated Circuit) menuntut suatu metode untuk menguji dan mencoba rancangan rangkaian sebelum proses fabrikasi.

Saat ini, SPICE tersedia dari berbagai macam perusahaan yang kemudian menambahkan fasilitas untuk menggambar rangkaian serta kemampuan untuk plot grafik hasil analisis. Simulator dan aplikasi SPICE telah berkembang unuk berbagai macam rangkaian analog dan digital, piranti microwave dan sistem mekatronika.

Mengapa Menggunakan Pspice?

SPICE merupakan alat yang bagus untuk belajar elektronika. Anda bisa meningkatkan pemahaman suatu rangkaian seiring dengan percobaan da simulasi menggunakan SPICE. Lakukan eksperimen! Ubah rangkaian dan lihatlah apa yang terjadi! Ubahlah nilai resistor, nilai kapasitor dan lain sebagainya serta perhatikan efek pada rangkaian sekejap mata.

Idealnya, kita perlu membuat dan menguji rangkaian elektronika sesungguhnya da memahami perilakunya. Bagaimanapun juga, Anda membutuhkan breadboard, komponen-komponen dan waktu untuk merangkai rangkaian tersebut. Rangkaian sesungguhnya adakalanya membutuhkan peralatan yang mahal mulai dari suplai daya, generator sinyal dan osiloskop. Selain itu tidak selalu mudah merangkai semua rangkaian elektronika yang Anda temukan menggunakan breadboard.

Anda bisa menghabiskan waktu berjam-jam untuk membuat rangkaian elektronika yang sesungguhnya dan hanya untuk mendapatkan suatu konsep sederhana dari rangkaian tersebut, sedangka menggunakan SPICE Anda bisa melakukannya dalam hitungan menit. SPICE bisa Anda anggap sebagai breadboard “virtual”. Walaupun Anda hanya memiliki waktu yang pendek, Anda bisa mendapatkan prinsip-prinsip dan aplikasi dari beberapa rangkaian elektronika.

Bagaimana PSpice Bekerja?

Pada dasarnya, SPICE bekerja dengan cara sebagai berikut:

  1. Tentukan sebuah rangkaian dalam berkas teks (ekstensi “.CIR”) yang dinamakan netlist atau menggunakan simbol-simbol grafik melalui pembuatan skematik (rangkaian yang digambar);
  2. Jalankan simulasi. SPICE membaca netlist dan kemudian melakukan analisa yang diminta: AC, DC atau Respon transien. Hasilnya disimpan dalam sebuah berkas keluaran teks (ekstensi “.OUT”);
  3. Perhatikan hasil simulasi pada berkas teks keluaran (ekstensi “.OUT”) menggunakan editor teks. Banyak program SPICE yang sudah menyediakan tampilan grafik untuk plot data-data yang tersimpan pada berkas data biner.

Netlist Atau Skematik?

Muncul pertanyaan, apakah rangkaian yang akan disimulasikan dengan SPICE harus dibuat menggunakan teks berupa netlist atau digambar menggunakan skematik. Jawabannya disarankan menggunakan editor teks, mengapa? Walaupun menggambar rangkaian menggunakan schematic capture memiliki beberapa kelebihan, tetapi masing-masing vendor SPICE memiliki antarmuka skematik dan format berkas yang berbeda-beda. Hal ini bisa menyebabkan kebingungan, jika Anda menggunakan berbagai macam versi SPICE untuk sebuah rangkaian. Selain itu, banyak karakterisik komponen tidak nampak melalui skematik (selain itu, schematic capture selalu membuat berkas netlist sebelum menjalankan simulasi, jadi ya sama saja dong…)

Deskripsi netlist dari sebuah rangkaian adalah sederhana dan kosisten untuk tiap-tiap vendor SPICE dengan beberapa variasi. Seluruh properti komponen dan rangkaian jelas terlihat. Mempelajari netlist itu mudah dan melakukan perubahan bisa dilakukan secara cepat. Anda bisa membuat sebuah netlist dengan menggambar rangkaian yang bersangkutan di atas kertas dan menerapkan beberapa aturan sederhana. Selain itu, beberapa buku SPICE (masih kebanyakan dalam bahasa Inggris) sangat menyarankan penggunaan netlist, walaupun selanjutnya Anda memutuskan untuk menggunakan program schematic capture.

Mensimulasikan Rangkaian Anda

Mensimulasikan dan menguji rangkaian Anda bisa dilakukan dengan mudah:

  1. Gambarkan atau tuliskan rangkaian Anda, jangan lupa memberikan nomor pada masing-masing titik;
  2. Beri label pada masing-masing komponen dan nilainya;
  3. Buatlah sebuah berkas teks (netlist) yang berisikan semua komponen dan hubungan antar titik koneksi;
  4. Tentukan tipe analisis yang akan dilakukan (AC, Transien, DC, derau dan lain-lain) dan sertakan pernyataan-pernyataan yang terkait;
  5. Jalankan simulasi dan perhatikan hasilnya.
  6. Anda bisa mendapatkan koleksi rangkaian SPICE dari internet, gunakan koleksi rangkaian yang Anda peroleh tersebut untuk membuat rangkaian yang Anda inginkan dengan cara merubah sebagian komponen maupun nilai-nilainya.

Informasi lebih lengkap silahkan mengunduh ebook gratis tentang Simulasi Elektronika disini, listing program eksperimen dan tutorial serta PSPICE-nya (27MB).

Categories
Pembelajaran

Integral Transform – Brief Historical

The thorough study of nature is the most fertile ground for mathematical discoveries.
– Joseph Fourier

If you wish to foresee the future of mathematics our proper course is to study the history and present condition of the science.
– Henri Poincar´e

The tool which serves as intermediary between theory and practice, between thought and observation, is mathematics, it is mathematics which builds the linking bridges and gives the ever more reliable forms. From this it has come about that our entire contemporary culture, in as much as it is based the intellectual penetration and the exploitation of nature, has its foundations in mathematics.
– David Hilbert

Integral transformations have been successfully used for almost two centuries in solving many problems in applied mathematics, mathematical physics, and engineering science. Historically, the origin of the integral transforms including the Laplace and Fourier transforms can be traced back to celebrated work of P.S.Laplace (1749-1827) on probability theory in the 1780s and to monumental treatise of Joseph Fourier (1768-1830) on La Th´eorie Analytique de la Chaleur published in 1822. In fact, Laplace’s classic book on La Th´eorie Analytique des Probabilities includes some basic results of the Laplace transform which is one of the oldest and most commonly used integral transforms available in the mathematical literature. This has effectively been used in finding the solution of linear differential equations and integral equations. On the other hand, Fourier’s treatise provided the modern mathematical theory of heat conduction, Fourier series, and Fourier integrals with applications. In his treatise, Fourier stated a remarkable result that is universally known as the Fourier Integral Theorem. He gave a series of examples before stating that an arbitrary function defined on a finite interval can be expanded in terms of trigonometric series which is now universally known as the Fourier series. In an attempt to extend his new ideas to functions defined on an infinite interval, Fourier discovered an integral transform and its inversion formula which are now well known as the Fourier transform and the inverse Fourier transform. However, this celebrated idea of Fourier was known to Laplace and A. L. Cauchy (1789-1857) as some of their earlier work involved this transformation. On the other hand, S. D. Poisson (1781-1840) also independently used the method of transform in his research on the propagation of water waves.

However, it was G.W.Leibniz (1646-1716) who first introduced the idea of a symbolic method in calculus. Subsequently, both J.L.Lagrange (1736-1813) and Laplace made considerable contributions to symbolic methods which became known as operational calculus. Although both the Laplace and the Fourier transforms have been discovered in the nineteenth century, it was the British electrical engineer Oliver Heaviside (1850-1925) who made the Laplace transform very popular by using it to solve ordinary differential equations of electrical circuits and systems, and then to develop modern operational calculus. It may be relevant to point out that the Laplace transform is essentially a special case of the Fourier transform for a class of functions defined on the positive real axis, but it is more simple than the Fourier transform for the following reasons. First, the question of convergence of the Laplace transform is much less delicate because of its exponentially decaying kernel exp (-st), where Re s>0 and t>0. Second, the Laplace transform is an analytic function of the complex variable and its properties can easily be studied with the knowledge of the theory of complex variable. Third, the Fourier integral formula provided the definitions of the Laplace transform and the inverse Laplace transform in terms of a complex contour integral that can be evaluated with the help the Cauchy residue theory and deformation of contour in the complex plane.

If you want to know more, you can read this nice book…
Debnath, L. and Bhatta, D., 2007, “Integral Transforms and Their Applications 2ed“, Taylor & Francis Group, LLC.

Categories
DSP

Nyquist – Apaan tuch?

Dalam dunia Pemrosesan Sinyal Digital, ada suatu proses untuk mendapatkan data digital melalui proses pencuplikan, artinya sinyal analog dicuplik (diambil) secara diskrit dengan periode Ts atau frekuensi cuplik Fs. Nah agar tidak terjadi kesalahan (yang kemudian diberi nama aliasing), pak Nyquist memberikan aturan bahwa frekuensi cuplik minimal harus 2 (dua) kali lipat frekuensi maksimum yang dikandung sinyal yang bersangkutan.

Untuk memahami hal tersebut, mari kita persiapkan dulu sinyal sinusoidal dengan frekuensi 2 Hz. Kita gunakan frekuensi cuplik 1000 Hz atau periode 0.001 detik (supaya gambarnya jauh lebih ‘mulus’ dibandingkan dengan eksperimen-eksperimen yang akan kita lakukan)…

>>t=0:0.001:1;
>>f=2;
>>y=sin(2*pi*f*t);

Okey, Anda siap? Konsenterasi… kita awali dengan menyiapkan gambar (perintah figure), kemudian diteruskan dengan menyiapkan variabel waktu t1 dengan frekuensi sampling = frekuensi sinyal (atau periodenya 1/f detik), kita hitung y1-nya kemudian kita gambarkan sinyal asli y dan sinyal hasil pencuplikan y1, menggunakan perintah-perintah berikut…

>>figure;
>>t1=0:1/f:1;
>>y1=sin(2*pi*f*t1);
>>plot(t,y,t1,y1,’-o’);
>>title(sprintf(‘frekuensi sampling = frekuensi sinyal, jumlah data %d’,length(y1)));

Hasilnya (yang asli warna biru, yang cuplikan warna hijau)…

Hmmm… apaan tuch (perhatikan garis hijau), kok cuman garis lurus, berarti salah nich… Ya jelas lha wong frekuensi pencuplikan = frekuensi sinyal, harusnya khan 2 kali lipat, coba kita ubah lagi… (gunakan 1/(2*f))

>>figure;
>>t1=0:1/(2*f):1;
>>y1=sin(2*pi*f*t2);
>>plot(t,y,t1,y1,’-o’);
>>title(sprintf(‘frekuensi sampling = 2 x frekuensi sinyal, jumlah data %d’,length(y1)));

Hasilnya…

Oalah…. sami mawon, podho wae, sama saja… ya garis lurus lagi (walaupn jumlah datanya bertambah, perhatikan lingkaran-lingkaran hijau, bandingkan dengan gambar sebelumnya)! Loch khan pak Nyquist sudah bilang kalo itu 2 kali lipat adalah minimal, ya mestinya pake yang lebih tinggi lagi, coba sekarang pake 2,5 kali lipat…

>>figure;
>>t1=0:1/(2.5*f):1;
>>y1=sin(2*pi*f*t1);
>>plot(t,y,t1,y1,’-o’);
>>title(sprintf(‘frekuensi sampling = 2,5 x frekuensi sinyal, jumlah data %d’,length(y1)));

Hasilnya…

Wah ini agak lumayan (maksudnya dibandingkan hasil-hasil sebelumnya), bukan garis lurus, tapi… belum berbentuk sinusoidal ya…?? Okey kita coba jadi 3 kali lipat…

>>figure;
>>t1=0:1/(3*f):1;
>>y1=sin(2*pi*f*t1);
>>plot(t,y,t1,y1,’-o’);
>>title(sprintf(‘frekuensi sampling = 3 x frekuensi sinyal, jumlah data %d’,length(y1)));

Hasilnya…

Kemudian 4 kali lipat…

>>figure;
>>t1=0:1/(4*f):1;
>>y1=sin(2*pi*f*t1);
>>plot(t,y,t1,y1,’-o’);
>>title(sprintf(‘frekuensi sampling = 4 x frekuensi sinyal, jumlah data %d’,length(y1)));

Hasilnya…

Kemudian 10 kali lipat…

>>figure;
>>t1=0:1/(10*f):1;
>>y1=sin(2*pi*f*t1);
>>plot(t,y,t1,y1,’-o’);
>>title(sprintf(‘frekuensi sampling = 10 x frekuensi sinyal, jumlah data %d’,length(y1)));

Hasilnya…

Kemudian (terakhir, jangan kebanyaken) 20 kali lipat…

>>figure;
>>t1=0:1/(20*f):1;
>>y1=sin(2*pi*f*t1);
>>plot(t,y,t1,y1,’-o’);
>>title(sprintf(‘frekuensi sampling = 20 x frekuensi sinyal, jumlah data %d’,length(y1)));

Hasilnya…

Bagaimana? Semakin mendekati sinusoidal aslinya too…?? Cuman jumlah data-nya juga semakin banyak, iya khan? Terus silahkan disimpulkan sendiri, okey? Atau kalo masih penasaran silahkan Anda coba 30, 40, 70 atau bahkan 100 kali lipat… silahkan jika mau…

Silahkan berikan komentar atau pertanyaan Anda…

NB: Sinyal asli sebenarnya menggunakan frekuensi cuplik sebesar 500 kali dari frekuensi 2 Hz (=1000 Hz), jadi wajar saja jika gambarnya halus (banget).

Categories
DSP

Bagaimana membuat & menggambar sinusoidal di Matlab?

Baiklah, mari kita mulai dengan menggambar atau membuat sinyal sinusoidal dengan frekuensi 1 Hz selama 1 detik, pertama kita siapkan variabel t-nya:

>> t=0:1;

Kemudian variabel f atau frekuensi-nya:

>> f=1;

Langkah berikutnya adalah menghitung sinusoidalnya, ingat omega = 2 * pi * f, sehingga perintahnya… sekalian kita gambar dengan perintah plot antara variabel t dan y…

>> y=sin(2*pi*f*t);
>> plot(t,y);

nah ini hasilnya…

Eee…. kok malah cuman garis lurus ya??? apanya yang salah nich….?? Ya jelas ada yang salah tho, lha wong data untuk variabel waktu (t) cuman angka 0 dan 1 kok, jadinya y hanya menghitung di 2 titik itu…

Baiklah sekarang akan dicoba kita tambahi data t-nya dengan langkah 0.5 (setengah), jadinya cuman 3 (tiga) titik loch…

>> t=0:0.5:1;
>> y=sin(2*pi*f*t);
>> plot(t,y);

Dan ini hasilnya… (jangan kaget, karena hanya 3 titik)…

Okey sekarang kita ubah lagi jarak datanya menjadi 1/10 (sepersepuluh)…

>> t=0:0.1:1;
>> y=sin(2*pi*f*t);
>> plot(t,y);

Hasilnya seperti ini…

Hmmmm… kurang sip? Okey kita buat jarak antar data 1/100 (seperseratus)…

>> t=0:0.01:1;
>> y=sin(2*pi*f*t);
>> plot(t,y);

Hasilnya…

Wow! sudah bagus tuch… Coba sekarang Anda perhatikan langkah-langkah yang telah kita lalui bersama, hasil terakhir menghasilkan jumlah data terbesar, artinya semakin kecil jarak antar data, untuk satu periode waktu yang sama, menghasilkan jumlah data yang makin besar, keuntungannya, gambar menjadi lebih halus dan alami… Ini konsekuensinya…

Baiklah, sekarang bagaimana kalo frekuensi kita ubah menjadi 2 Hz… (masih menggunakan t sebelumnya)

>> f=2;
>> y=sin(2*pi*f*t);
>> plot(t,y);

Hasilnya… (terlihat ada 2 gelombang dalam 1 detik = 2 Hz atau 2 cycle/sec)…

Sekarang kita pakai frekuensi 10 Hz…

>> f=10;
>> y=sin(2*pi*f*t);
>> plot(t,y);

hasilnya… (hitung jumlah gelombangnya…)

Lumayan… walaupun agak ‘kaku’ tampilannya, kalo frekuensi 10 Hz, menurut Nyquist, sebaiknya minimal gunakan frekuensi pencuplikan 2 kali lipat atau minmal 20 Hz (akan kita bahas dalam posting saya lainnya) atau periodenya 1/20 atau 0.05 detik, sedangkan yang kuta gunakan jarak antar data adalah 0.01 atau 1/100 detik, hasilnya bisa Anda lihat sendiri seperti diatas…

Kalo kemudian jarak antar data kita kecilkan, yaitu 0.001 detik, maka…

>> t=0:0.001:1;
>> y=sin(2*pi*f*t);
>> plot(t,y);

Hasilnya…

Kesimpulan-nya:

  • Perhatikan parameter penting dalam sinusoidal yaitu frekuensi-nya berapa? Gunakan persamaan omega = 2 * pi * frekuensi * waktu.
  • Gunakan jarak antar data minimal 1/2 dari periode (Nyquist Theorem?).
  • Semakin kecil jarak antar data, dengan periode waktu yang sama, semakin besar jumlah datanya…

Ada komentar atau pertanyaan monggo dan silahkan…

Categories
FPGA

Convergence and Digitization

We are transitioning from an industrial-based analog economy to an information-based digital economy. The momentum for this transition is been fueled by a number of converging factors.

  • Converging media: Digitization of data, voice, video, and communications is driving consumer product convergence. Convergence is happening in everyone’s backyard with incredible computing power being embedded within everyday consumer appliances. The digital revolution, be it from vinyl players changing to MP3 players or from analog TV to digital TV (recently, TVRI has trial broadcasted Digital TV in Jakarta), is occurring very rapidly. Data, video, and voice can now be transmitted over the same backbone due to the digital revolution.
  • Internet based lifestyles: As quickly as the Internet came into our lives it has become omnipresent. Families are becoming more aware of how the Internet can be used in their homes, and companies are also increasingly using it as a commercial channel. The Internet serves as the technology platform that enables an entirely new generation of consumer applications, including voice and video communications, e-commerce solutions, personalized news services, home security and automation, utilities resource management, and entertainment title distribution. The availability of such a wide variety of applications is changing the way people relate to the Internet itself. “Internet Lifestyles” is a new way of thinking that has resulted in the formation of an organization called the Internet Home Alliance. The principle behind this new organization is that consumers want to enjoy the benefits of the Internet lifestyle without worrying about the technology that enables it to work. The Alliance is bringing new levels of comfort, convenience, and security by creating the necessary infrastructure. Installation and support from various companies provide integrated services, eliminating the need for multiple points of consumer contact.
  • Deregulation: There is a heavy deregulation of global infrastructure industries such as telecommunications, utilities, and cable. These companies are developing new ways of improving their business by using the Internet and increasing revenues through additional services to the home.
  • Digitization of consumer products: For some time now, there has been a trend towards the digitization of consumer products. A product that is digital is one which is synonymous with higher quality, greater accuracy, higher reliability, faster speed, lower power, and lower cost. Simply stated, anything that is digital is better. The digitization of consumer products has not only led to the improvement of existing products, but it has also lead to the creation of a whole new class of products that never before existed. PVRs (Personal Video Recorders) are revolutionizing the way we watch TV, satellite modems are bringing faster Internet access to the home, and MP3 players have revolutionized portable digital music.

Source:

  • Dhir, Amit, 2001, “The Home Networking Revolution: A Designer’s Guide“, Xilinx, Inc.
  • Xilinx: Market Solutions (click here)
Categories
PLC/SCADA

PLC and Response Time

The total response time of the PLC is a fact we have to consider when shopping for a PLC. Just like our brains, the PLC takes a certain amount of time to react to changes. In many applications speed is not a concern, in others though…

If you take a moment to look away from this text you might see a picture on the wall (or maybe your wallpaper at your laptop/desktop). Your eyes actually see the picture before your brain says “Oh, there’s a picture on the wall (or on my laptop/desktop)”. In this example your eyes can be considered the sensor. The eyes are connected to the input circuit of your brain. The input circuit of your brain takes a certain amount of time to realize that your eyes saw something. (If you have been drinking alcohol (only for example, is harom according to Alloh rule) this input response time would be longer!) Eventually your brain realizes that the eyes have seen something and it processes the data. It then sends an output signal to your mouth. Your mouth receives this data and begins to respond to it. Eventually your mouth utters the words “Gee, that’s a really ugly picture!”.

Notice in this example we had to respond to 3 things:

  • INPUT– It took a certain amount of time for the brain to notice the input signal from the eyes.
  • EXECUTION– It took a certain amount of time to process the information received from the eyes. Consider the program to be: If the eyes see an ugly picture then output appropriate words to the mouth.
  • OUTPUT– The mouth receives a signal from the brain and eventually spits (no pun intended) out the words “Gee, that’s a really ugly picture!”

If you want to know about PLC, PLC Programming and Applications buy my books (in Indonesian) or download my free ebook (also in Indonesian).

Categories
PLC/SCADA

Programmable Logic Controller and Future

The future of programmable controllers relies not only on the continuation of new product developments, but also on the integration of PLCs with other control and factory management equipment. PLCs are being incorporated, through networks, into computer-integrated manufacturing (CIM) systems, combining their power and resources with numerical controls, robots, CAD/CAM systems, personal computers, management information systems, and hierarchical computer-based systems. There is no doubt that programmable controllers will play a substantial role in the factory of the future.

New advances in PLC technology include features such as better operator interfaces, graphic user interfaces (GUIs), and more human-oriented man/machine interfaces (such as voice modules). They also include the development of interfaces that allow communication with equipment, hardware, and software that supports artificial intelligence, such as fuzzy logic I/O systems.

Software advances provide better connections between different types of equipment, using communication standards through widely used networks. New PLC instructions are developed out of the need to add intelligence to a controller. Knowledge-based and process learning–type instructions may be introduced to enhance the capabilities of a system.

The user’s concept of the flexible manufacturing system (FMS) will determine the control philosophy of the future. The future will almost certainly continue to cast programmable controllers as an important player in the factory. Control strategies will be distributed with “intelligence” instead of being centralized. Super PLCs will be used in applications requiring complex calculations, network communication, and supervision of smaller PLCs and machine controllers.

If you want to know about PLC, PLC Programming and Applications buy my books (in Indonesian) or download my free ebook (also in Indonesian).

Categories
FPGA

Purwarupa Mikroprosesor berbasis FPGA ALTERA EPF10K10 dengan Deskripsi VHDL

ABSTRACT

It has been designed and implemented an FPGA-based microprocessor prototype using Altera EPF10K10 and VHDL description then compiled and simulate using MAX+Plus II software. The microprocessor prototype is implementing using the Wizard A-01 development board and its assembly program stored in ROM. To decode and execute the instruction, it used Control Unit, which will send control signal to other components. The 16 instructions is implementing in this microprocessor prototype. This microprocessor prototype has 8-bit data bus and 4-bit address bus, implemented using 375 logic cells, operating at 14.72 MHz clock (maximum) and 3.68 MIPS.

PENDAHULUAN

Mikroprosesor telah berkembang menjadi bagian penting dalam dunia elektronika. Untuk menggunakan mikroprosesor, pengguna tinggal menyusun suatu program dengan memanfaatkan instruksi mesin (assembly) yang dimiliki oleh mikroprosesor tersebut. Adanya komponen register serta Arithmetic and Logic Unit (ALU) memungkinkan mikroprosesor dapat menjalankan berbagai macam komputasi, mulai dari komputasi sederhana hingga yang kompleks.

Menurut Turley (2002) Kendala yang dihadapi dalam perancangan mikroprosesor adalah mahal dan lamanya fabrikasi. Untuk mengatasi kendala waktu dan biaya fabrikasi, mikroprosesor dapat diimplementasikan dalam Field Programmable Array (FPGA). FPGA merupakan piranti yang bersifat dapat dikonfigurasi-ulang (reconfigurable). FPGA memiliki komponen kombinasional dan sekuensial dalam tiap sel logik-nya, sehingga memungkinkan FPGA dapat digunakan untuk implementasi rangkaian kombinasional dan rangkaian sekuensial. Dengan teknologi FPGA, implementasi rancangan sistem digital dapat dilakukan secara cepat (Maxfield, 2004).

Tujuan penelitian ini adalah merancang dan mengimplementasikan sebuah mikroprosesor sederhana (purwarupa mikroprosesor) dalam FPGA menggunakan deskripsi VHDL (VHSIC Hardware Description Language).

(informasi selengkapnya bisa diunduh disini)