31 Desember 2010

Digital DC Motor Speed Control with PID Control(Control Tutorials for Matlab The University of Michigan)

In this page, we will consider the digital control version of DC motor speed problem. A digital DC motor model can be obtained from conversion of the analog model, as we will describe. The controller for this example will be designed by a PID method.

From the Modeling: a DC Motor, the open-loop transfer function for DC motor's speed was derived as:

Where:

*electrical resistance (R) = 1 ohm
*electrical inductance (L) = 0.5 H
*electromotive force constant (Ke=Kt) = 0.01 Nm/Amp
*moment of inertia of the rotor (J) = 0.01 kg*m^2/s^2
*damping ratio of the mechanical system (b) = 0.1 Nms
*input (V): Source Voltage
*output (theta dot): Rotating speed
*The rotor and shaft are assumed to be rigid

The design requirements for 1 rad/sec step input are

  • Settling time: Less than 2 seconds
  • Overshoot: Less than 5%
  • Steady-state error: Less than 1%

Continuous to Discrete Conversion

The first step in designing a discrete control system is to convert the continuous transfer function to a discrete transfer function. Matlab command c2dm will do this for you. The c2dm command requires the following four arguments: the numerator polynomial (num), the denominator polynomial (den), the sampling time (Ts) and the type of hold circuit. In this example, the hold we will use is the zero-order hold ('zoh').

From the design requirement, let the sampling time, Ts equal to 0.12 seconds, which is 1/10 the time constant of a system with a settling time of 2 seconds. Let's create a new m-file and enter the following commands:

    R=1;
    L=0.5;
    Kt=0.01;
    J=0.01;
    b=0.1;

    num = Kt;
    den = [(J*L) (J*R)+(L*b) (R*b)+(Kt^2)];

    Ts = 0.12;
    [numz,denz] = c2dm(num,den,Ts,'zoh')

Running this m-file should return the following:


    numz =

    0 0.0092 0.0057


    denz =

    1.0000 -1.0877 0.2369
From these matrices, the discrete transfer function can be written as:

First, we would like to see what the closed-loop response of the system looks like without any control. If you see the numz matrices shown above, it has one extra zero in the front, we have to get rid of it before closing the loop with the Matlab cloop command. Add the following code into the end of your m-file:

    numz = [numz(2) numz(3)];
    [numz_cl,denz_cl] = cloop(numz,denz);
After you have done this, let's see how the closed-loop step response looks like. The dstep command will generate the vector of discrete output signals and stairs command will connect these signals. Click here for more information. Add the following Matlab code at the end of previous m-file and rerun it.


    [x1] = dstep(numz_cl,denz_cl,101);
    t=0:0.12:12;
    stairs(t,x1)
    xlabel('Time (seconds)')
    ylabel('Velocity (rad/s)')
    title('Stairstep Response:Original')
You should see the following plot:

PID Controller

Recall that the continuous-time transfer function for a PID controller is:

There are several ways for mapping from the s-plane to z-plane. The most accurate one is . We cannot obtain PID transfer function in this way because the discrete-time transfer function would have more zeroes than poles, which is not realizable. Instead we are going to use the bilinear transformation shown as follows:

Thus we can derive the discrete PID controller with bilinear transformation mapping. For more detail derivation of discrete PID controller, see Discrete PID Controller. Equivalently, the c2dm command in Matlab will help you to convert the continuous-time PID compensator to discrete-time PID compensator by using the "tustin" method in this case. The "tustin" method will use bilinear approximation to convert to discrete time of the derivative. According to the PID Design Method for the DC Motor page, Kp = 100, Ki = 200 and Kd = 10 are satisfied the design requirement. We will use all of these gains in this example. Now add the following Matlab commands to your previous m-file and rerun it in Matlab window.

    % Discrete PID controller with bilinear approximation
    Kp = 100;
    Ki = 200;
    Kd = 10;

    [dencz,numcz]=c2dm([1 0],[Kd Kp Ki],Ts,'tustin');
Note that the numerator and denominator in c2dm were reversed above. The reason is that the PID transfer function is not proper. Matlab will not allow this. By switching the numerator and denominator the c2dm command can be fooled into giving the right answer. Let's see if the performance of the closed-loop response with the PID compensator satisfies the design requirements. Now add the following code to the end of your m-file and rerun it. You should get the following close-loop stairstep response.

    numaz = conv(numz,numcz);
    denaz = conv(denz,dencz);
    [numaz_cl,denaz_cl] = cloop(numaz,denaz);

    [x2] = dstep(numaz_cl,denaz_cl,101);
    t=0:0.12:12;
    stairs(t,x2)
    xlabel('Time (seconds)')
    ylabel('Velocity (rad/s)')
    title('Stairstep Response:with PID controller')

As you can see from the above plot, the closed-loop response of the system is unstable. Therefore there must be something wrong with compensated system. So we should take a look at root locus of the compensated system. Let's add the following Matlab command into the end of your m-file and rerun it.

    rlocus(numaz,denaz)
    title('Root Locus of Compensated System')

From this root-locus plot, we see that the denominator of the PID controller has a pole at -1 in the z-plane. We know that if a pole of a system is outside the unit circle, the system will be unstable. This compensated system will always be unstable for any positive gain because there are an even number of poles and zeroes to the right of the pole at -1. Therefore that pole will always move to the left and outside the unit circle. The pole at -1 comes from the compensator, and we can change its location by changing the compensator design. We choose it to cancel the zero at -0.62. This will make the system stable for at least some gains. Furthermore we can choose an appropriate gain from the root locus plot to satisfy the design requirements using rlocfind.Enter the following Matlab code to your m-file.

    dencz = conv([1 -1],[1.6 1])
    numaz = conv(numz,numcz);
    denaz = conv(denz,dencz);

    rlocus(numaz,denaz)
    title('Root Locus of Compensated System');
    [K,poles] = rlocfind(numaz,denaz)
    [numaz_cl,denaz_cl] = cloop(K*numaz,denaz);

    [x3] = dstep(numaz_cl,denaz_cl,101);
    t=0:0.12:12;
    stairs(t,x3)
    xlabel('Time (seconds)')
    ylabel('Velocity (rad/s)')
    title('Stairstep Response:with PID controller')
The new dencz will have a pole at -0.625 instead of -1, which almost cancels the zero of uncompensated system. In the Matlab window, you should see the command asking you to select the point on the root-locus plot. You should click on the plot as the following:

Then Matlab will return the appropriate gain and the corresponding compensated poles, and it will plot the closed-loop compensated response as follows.

The plot shows that the settling time is less than 2 seconds and the percent overshoot is around 3%. In addition, the steady state error is zero. Also, the gain, K, from root locus is 0.2425 which is reasonable. Therefore this response satisfies all of the design requirements.

Tips mempercepat ram komputer tanpa restart windows

Tips membersihkan RAM atau mempercepat RAM komputer tanpa restart windows mungkin bagi para master merupakan hal yang biasa, jadi tips ini buat yang belum biasa aja dech he..he.. Terkadang, komputer kita bakal menjadi lambat setelah beberapa lama dipakai. Apalagi kalo kita banyak menggunakan software yang berat2 seperti Adobe Photoshop, Corel Draw, Sony Soundforge dsb. Biasanya setelah kita pakai aplikasi tersebut, komputer kita terasa lambat. Kemungkinan itu terjadi karena masih ada bekas data yang tersimpan dalam RAM, sehingga komputer kita pun jadi lambat. Salah satu cara untuk membersihkan RAM adalah dengan merestart komputer terlebih dahulu. Tapi kayanya ribet banget ya?

Saya punya cara yang lebih simpel yang bisa dilakuin oleh semua kalangan, awam maupun mahir. Perhatikan caranya di bawah ini:

1. Klik kanan mouse di desktop, pilih New - Shortcut.


2. Ketik %windir%\system32\rundll32.exe advapi32.dll,ProcessIdleTasks pada kolom isian yang muncul.


3. Klik Next.


4. Beri nama shortcut tadi, nama yang dapat diberikan bebas sesuai keinginan kamu, atau kamu lewat aja, namanya otomatis jadi rundll32.exe.

5. Klik Finish.


Kapan aja komputer kamu terasa lambat, klik shortcut yang udah kamu buat tadi untuk membersihkan RAM. Sebetulnya prinsip kerjanya mungkin sama aja kaya RAM Booster atau aplikasi sejenisnya, tapi ga kalah ko seperti software2 lainnya. Selamat mencoba, semoga bermanfaat.

12 September 2010

BUKU BARU (2)

Kitab al-Hikam memang tidak asing bagi kaum santri di Nusantara ini. Di berbagai pesantren, jarang—kalau tidak mau dikatakan tidak ada—yang tidak mengkaji kitab al-Hikam. Meski kitab al-Hikam sedikit terasa berat, akan tetapi kalau dikaji dengan seksama, maka dari sana kita akan menemukan banyak hikmah berarti yang disuguhkan pengarangnya.
Ibnu ‘Athaillah (w. 709 H/ 1350 M) yang dikenal sufi, muhaddis, dan faqih memberikan arahan kepada pembaca untuk senantiasa berjalan menuju Allah, lengkap dengan rambu-rambu, peringatan, dorongan dan penggambaran keadaan, tahapan, serta kedudukan ruhani—dengan kedalaman ma’rifat yang dituturkan lewat kalimat-kalimatnya yang singkat dan padat.
Selain itu, Ibnu ‘Athailllah memang merupakan ulama’ yang produktif. Selain al-Hikam, banyak kitab yang ia tulis diantaranya; Miftahu al-Falah, Al-Qasdu al-Mujarrad fi Makrifati al-Ism al-Mufrad, Taju al-Arus al-Hawi li Tadhhib al-Nufus, Unwanu al-Taufiq fi al-Adad al-Thariq, sebuah biografi: Al-Lataif fi manaqib Abi al Abbas al-Mursi wa sayykhihi Abi al-Hasan dan masih banyak lagi kitab lainnya.
Sekarang, mengingat al-Hikam yang sudah ada dan tertulis berabad-abad tahun yang lalu dan tentunya antara konteks dahulu dan sekarang itu berbeda, maka pertanyaan yang mungkin muncul sekarang; masihkan al-Hikam bisa dipakai bahan rujukan pada zaman kita sekarang ini?
Buku “Al-Hikam: Untaian Hikmah Ibnu ‘Athaillah” setebal 299 ini menjawab pertanyaan itu. Dalam buku ini, Imam Sibawaih El-Hasany mengaktualisasikan untaian-untain hikmah yang ada dalam kitab al-Hikam aslinya tanpa harus menguragi pesan yang terkandung di dalamnya. Dengan demikian, semakin tampak dan jelas bahwa al-Hikam memang merupakan kitab yang sangat penting untuk dijadikan rujukan untuk menggapai-Nya.
Buku ini terdiri dari 30 bagian dan berisikan 264 untaian hikmah Ibnu ‘Athaillah. Dari untaian hikmah ke untaian hikmah yang lainnya dalam buku ini disertai ulasan oleh Imam Sibawaih El-Hasany dengan ulasan yang mudah dimengerti dan cocok dengan zaman kita sekarang ini, sehingga al-Hikam tidak terasa “angker”.
Akan hal ini, Izza Rohman Nahrawi dalam pengantarnya menilai bahwa dalam menjelaskan dan mengulas untaian hikmah Ibnu ‘Athaillah ini Imam Sibawaih El-Hasany seolah-olah tidak sedang mensyarahikitab al-Hikam, melainkan menuturkan hikmah-hikmah “sandingan”—yang tak kalah dalamnya—bagi manik-manik hikmah Ibnu ‘Athaillah (hal. 8).
Betapa tidak mau dinilai dan dikatakan seperti itu, buku ini memang benar apa adanya. Coba kita lihat untaian hikmah nomor 141 yang berbunyi; “al-akwanu tsabitatun bi itsbatihi, wa mamhuwwatun biahadiyyati dzatihi” (alam ini ada dengan penetapan Allah, dan ia lenyap dengan keesaan dzat-Nya). Dalam mengulas untain ini, El-Hasany mengulasnya bahwa siapapun setidaknya memenuhi kesadarannya akan wujud-Nya. Sebab tanpa-Nya alam semesta ini tidak akan pernah ada. Dan alam semesta ini bukanlah apa-apa karena sesungguhnya tidak ada sesuatu di sisi ataupun di samping Allah yang maha Esa. Ini berati keadaan alam yang tampak stabil dan konstan ini adalah cerminan kekekalan Allah. Merenunglah tentang ciptaan-Nya, maka engkau akan makin mengenal-Nya (hal. 167).
Akhir kata, buku ini merupakan buku yang cocok untuk dibaca oleh semua kalangan, tidak hanya mereka yang suka tasawuf. Melainkan mereka yang mendambakan olah batin secara umum. Apalagi dewasa ini, masyatakat kita, sedang kelaparan dan kekurangan energi pencerah mata batin, termasuk mereka yang duduk di atas sana. Untuk itu, buku ini sangat cocok untuk dijadikan bahan bacaan dan rujukan pendamping kita.

13 Agustus 2010

OS ane Ubuntu 9.04

Berhubung ane sekarang menggunakan Ubuntu 9.04, maka judul kali ini saya ubah menjadi "OS ane Ubuntu 9.04 "

Pertama ane akan menjelaskan makna dari pemberian nama ubuntu. Ubuntu adalah ideologi etis Afrika Selatan yang berpusat pada kesetiaan masyarakat dan hubungan antara satu sama lain.
Terjemahan singkat dari makna Ubuntu adalah "rasa perikemanusiaan terhadap orang lain". Terjemahan lainnya yaitu: "kepercayaan atas ikatan universal untuk saling berbagi yang menghubungkan seluruh umat manusia".

Ubuntu adalah salah satu distribusi Linux yang berbasiskan pada Debian dan memiliki interface desktop. Proyek Ubuntu disponsori oleh Canonical Ltd (perusahaan milik Mark Shuttleworth). Ubuntu adalah [sistem operasi] lengkap berbasis Linux, tersedia secara bebas dan mempunyai dukungan baik yang berasal dari komunitas maupun tenaga ahli profesional.

Komunitas Ubuntu dibentuk berdasarkan gagasan yang terdapat di dalam filosofi Ubuntu:
  • Bahwa perangkat lunak harus tersedia dengan bebas biaya
  • Bahwa aplikasi perangkat lunak tersebut harus dapat digunakan dalam bahasa lokal masing-masing dan untuk orang-orang yang mempunyai keterbatasan fisik, dan
  • Bahwa pengguna harus mempunyai kebebasan untuk mengubah perangkat lunak
Setiap rilis mempunyai nama kode dan nomor versi. Nomor versi berdasarkan tahun dan bulan dari rilis. Sebagai contoh, rilis Ubuntu yang pertama, 4.10, dirilis tanggal 20 Oktober 2004. Rilis ubuntu keluar setiap 6 bulan sekali tiap bulan April dan Oktober. Rilis ubuntu biasanya terdiri dari berbagai edisi, yaitu edisi Desktop, Server, dan Netbook. Perbedaan mendasar pada ketiganya adalah pada versi desktop terdapat tampilan desktop manager sedangkan pada edisi server tidak ada, hanya command prompt saja.



Apa sih yang membuat ane tertarik sama ubuntu selain OS nya yang free dan dapat dibajak sesuka hati. Adalah Fitur-fitur tambahan dari ubuntu yang membuat ane ngerasa bahwa dengan OS gratis ini ane bisa bekerja dengan software-software gratis yang prinsip kerja dan performansinya hampir sama dengan software-software asli berbayar. Bisa ane tunjukkan beberapa fitur pada ubuntu 9.04.

Ada aplikasi GIMP untuk desain grafis, fitur-fiturnya hampir mirip sama sotoshop. Ya 11 12 lah, hehe.



Untuk office ubuntu sudah include dengan open office yang dulu dikembangkan oleh Sun Microsystem dan sekarang diambil alih oleh Oracle. Untuk word ada Open office word processor, excel ada Open office spreedsheet, untuk keperluan presentasi ada Open office presentation, dan untuk keperluan gambar-menggambar seperti corel draw ada Open office draw. Dan masih banyak lagi aplikasi bawaan dari ubuntu yang menarik untuk saya bahas. kamu wajib coba nih, biar tau aplikasi-aplikasi apa aja yang ada di ubuntu yang temen-temen temuin di OS asli berbayar atau gratis tapi pake crack dsb punya temen-temen. Bar seru, ane ga ngebahas smuanya di blog ini.



Ane bakal nunjukin desktopnya yang keren, 11 12 lah sama OS bikinan perusahaan yang berlogo buah apel bekas gigitan.








Sekian pembahasan mengenai OS yang sedang ane pake sekarang. Bila ada salah-salah kata ane minta maaf dan kalau bisa biasakanlah ngasih komeng yang membangun buat blog ane ini. Smoga bermanfaat bagi temen-temen semua.






31 Juli 2010

Lensa ku

Assalamu`alaykum wr. wb

Perkenalkan ini Lensa pertama ku. Canon EF 50 mm 1:1.8 mk II namanya. Lensa ini termasuk di dalam jajaran lensa fix, apa itu lensa fix? (ini linkny).
Dari segi harga lensa ini tergolong amat sangat murah bila dibandingkan dengan lensa EF dan EFS lain, dengan bujet 850rb (singapore warranty) dan 900rb (garansi DS) ini lensa udah bisa di pake buat jeprat-jepret tanpa ada status utang. Walaupun lensa ini tergolong murah tapi kualitasny gak murahan, kelebihan dan kekurangan lensa ini sudah pernah dibahas dalam majalah exposure edisi 18 (download 18). Dengan nilai f/1.8 untuk foto di tempat yang kurang cahaya pun ga akan jadi masalah, cuma ruang tajam nya akan semakin sempit, memperluas ruang tajam juga akan mempengaruhi intensitas cahaya yang masuk karena diafragma akan semakin mengecil. Jadi butuh kesabaran agar gambar tidak goyang/blur. Keuntungan menggunakan ruang tajam yang sempit adalah ketika kita memotert model dari jarak dekat akan tampak sekeliling model tersebut ngeblur dan tajam hanya pada objek, teknik semacam ini sering disebut "Bokeh". Cuma yang saya sayangkan lensa ini susah buat foto landscape, dengan focal length 50mm di kali dengan crop factor kamera ku (Canon EOS 450D) sebesar 1,6 sehingga focal length sebenarnya menjadi 80mm. cukup susah bila objek kita berjarak dekat dengan kita, sehingga kita harus mengambil jarak yang lumayan jauh. Capek juga ya, mesti maju mundur buat motret. Itu salah satu kekurangan menggunakan lensa fix (prime lense). Tapi semua itu akan terbayar dengan hasilnya yang ga bisa dianggap remeh dan bisa disetarakan dengan lensa Canon EF L(luxury)series.

Contoh hasil jepretan Canon EOS 450D, EF 50mm 1:1.8 mk II lense

foto Keluarga ku di Semarang.

28 Juli 2010

BUKU BARU

Kini siapa saja bisa membuat foto menjadi lebih berdimensi dengan cara mudah. Dengan memodifikasi sedikit teknik pemotretan dan menggunakan aplikasi olah digital, foto biasa menjadi luar biasa, berkat metode bernama High Dynamic Range (HDR).

Dengan trik ini, kelemahan kamera digital yang kurang bisa merekam objek dengan kekntrasan tinggi-dapat teratasi. Setiap detail dalam foto-foto yang di rekam mampu dengan baik. Tak ada foto HDR yang memperlihatkan bagian gelap menghitam atau terang berlebihan.

HDR sangat cocok diterapkan pada foto lanskap, terutama yang memiliki perbedaan gelap dan terang sangat mencolok. Namun juga dapat di terang sangat mencolok. Namun juga dapat diterapkan pada bidang fotografi lain, seperti interior hingga potrait. Seperti halnya sebuah seni, fotografi HDR tetap mensyaratkan komponen utamanya: imajinasi.

Hitam dan Putih

Hitam dan Putih, kebanyakan dari kita sering mengidentikkan dengan kebaikan dan kejahatan, yin dan yang. Hitam dan putih tidak lebih dari sekedar warna dasar, tetapi makna dibalik itu adalah suatu yang tidak mustahil untuk kita pecahkan. Tidak selamanya apa yang kita lihat itu benar adanya. tidak selamanya putih berpihak pada kebaikan dan hitam berpihak pada kejahatan. Semua tergantung dari diri kita sendiri, karena sesuatu hal itu tidak dapat kita ukur kepastiannya. Kecuali kalau kita yakin pada Rabb Semesta Alam. Tidak ada keraguan Pada-Nya sedikitpun, yang ada hanyalah kepastian.