Tag Archives: tutorial

Last updated by at .

Belajar Scilab: operasi matrik

Isi materi ini ditujukan untuk berbagi ilmu pengetahuan kepada semua pengunjung blog ini.
Silakan digunakan untuk kepentingan proses pembelajaran untuk mencerdaskan bangsa ini dengan tidak lupa menyebutkan sumbernya.
Namun yang harus dihidari adalah: mengambil isi dengan mengakui sebagai haknya, mengambil isi untuk tujuan komersialisasi.
Semua tergantung kepada hati-nurani, jika terjadi saya berkewajiban mengingatkan para plagiator. Biasakan sesuatunya terlahir dari tangan anda, itu menunjukkan bahwa anda ada dan anda diberi hidayah sebagai ciptaanNya yang paling mulia untuk memberikan manfaat di dunia ini. Biasakanlah memberikan manfaat kepada orang lain, dan jangan membiasakan memanfaatkan orang lain.

Sebagai kelanjutan yang telah diposting disini, selanjutnya adalah bagaimana pengoperasikan matrik yang sering digunakan dalam metode komputasi.

Sebelumnya mendefinisikan data matrik orde 3×4 dengan variabel M diisi nilai acak:

-->M=rand(3,4)
 M  =

    0.0485566    0.3911574    0.4829179    0.1205996
    0.6723950    0.8300317    0.2232865    0.2855364
    0.2017173    0.5878720    0.8400886    0.8607515 

Medifinisakan matrik variabel N, orde 4×3:

-->N=[3 1 5; 3.2 3.7 6; 9 1 2; 2.3 5.6 6.5]
 N  =

    3.     1.     5.
    3.2    3.7    6.
    9.     1.     2.
    2.3    5.6    6.5  

Operasi perkalian

Perlu diingat, jumlah kolom pengali harus sama jumlah baris yang dikalikan:

-->MN=M*N
 MN  =

    6.0210139    2.6541146    4.3394607
    7.3395985    5.5658025    10.644725
    12.026868    8.0371405    11.81088

Hasil perkalian menghasilkan matrik orde 3×3 di variabel MN.

Penjumlahan Matrik

Variabel M dan MN akan dijumlahkan, namun orde M=3×4 sedangkan MN=3×3. Matrik MN yang akan dijumlahkan adalah baris 1..3 dengan menggunakan operasi M(1:3,1:3).

-->M*MN
    !--error 10
Inconsistent multiplication.

-->M
 M  =

    0.0485566    0.3911574    0.4829179    0.1205996
    0.6723950    0.8300317    0.2232865    0.2855364
    0.2017173    0.5878720    0.8400886    0.8607515  

-->M(1:3,1:3)
 ans  =

    0.0485566    0.3911574    0.4829179
    0.6723950    0.8300317    0.2232865
    0.2017173    0.5878720    0.8400886  

-->P=M(1:3,1:3)+MN
 P  =

    6.0695706    3.045272     4.8223786
    8.0119935    6.3958342    10.868011
    12.228585    8.6250125    12.650969  

Perintah pertama M*MN terdapat pesan kesalahan karena ordenya tidak cocok. Kedua melihat isi matrik M, dan ketiga melihat isi matrik M baris 1 sampai 3. Terakhir P diisi dengan hasil penjumlahan matrim M baris 1 sampai 3 dengan matrik MN.

Matrik Transpose

Untuk memperoleh matrik transpose, menggunakan matlab sangat mudah dilakukan. Berikut ini hasil matrik transpose dari matrik P disimpan dalam P1.

-->P1=P'
 P1  =

    6.0695706    8.0119935    12.228585
    3.045272     6.3958342    8.6250125
    4.8223786    10.868011    12.650969  

Matrik Inverse

Selanjutnya P2 disini dengan matrik inverse P1, perintahnya sebagai berikut:

-->P2=inv(P1)
 P2  =

    0.4988561  - 1.2270212    0.3543420
  - 0.1193309  - 0.6930515    0.5878464
  - 0.0876441    1.0631006  - 0.5610236 

Pembagian Matrik

Berikutnya pembagian matrik antara P1 dan P2, hasilnya disimpan di P3.

-->P3=P1/P2
 P3  =

    120.20925    232.77314    298.02925
    79.553624    159.04213    201.51828
    123.37358    245.63773    312.75461  

Pangkat

Berikut ini P4 diisi dengan matrik P3 dipangkat 2.

-->P4=P3^2
 P4  =

    69737.146    138209.45    175943.94
    47077.49     93312.837    118784.97
    72957.671    144609.13    184084.87  

Juga dapat dilakukan P3 dipangkat dengan sebuah operasi lainnya, seperti berikut ini.

-->P3^sin(0.7*%pi)
 ans  =

    36.58        67.906238    87.765825
    23.336135    47.486817    59.493362
    36.231832    72.66662     92.731514  

to be continue

Posted in Program open source, scilab | Tagged , , | Leave a comment

Belajar Scilab: pengantar matrik

Isi materi ini ditujukan untuk berbagi ilmu pengetahuan kepada semua pengunjung blog ini.
Silakan digunakan untuk kepentingan proses pembelajaran untuk mencerdaskan bangsa ini dengan tidak lupa menyebutkan sumbernya.
Namun yang harus dihidari adalah: mengambil isi dengan mengakui sebagai haknya, mengambil isi untuk tujuan komersialisasi.
Semua tergantung kepada hati-nurani, jika terjadi saya berkewajiban mengingatkan para plagiator. Biasakan sesuatunya terlahir dari tangan anda, itu menunjukkan bahwa anda ada dan anda diberi hidayah sebagai ciptaanNya yang paling mulia untuk memberikan manfaat di dunia ini. Biasakanlah memberikan manfaat kepada orang lain, dan jangan membiasakan memanfaatkan orang lain.

Dalam scilab matrik merupakan variabel array yang memiliki jumlah baris dan kolom sesuai dengan kebutuhan. Perlakuan matrik dalam scilab sangatlah mudah. Disini akan dijelaskan dasar-dasar bagaimana memperlakukan matrik dalam scilab.

Ada beberapa cara untuk memasukkan nilai dalam variabel matrik yaitu:

  1. Pisahkan setiap elemen baris matrik dengan spasi atau koma (,)
  2. Pisahkan setiap elemen baris matrik denga karakter titik koma (;)
  3. Letakkan seluruh elemen matik dalam sepasang kurung persegi ([])

Misalkan akan memberi nilai dalam matrik persegi orde 3×3 dan dimasukkan dalam variabel M:

-->M=[2 12 3; 1 2 8; 5 16 11]
 M  =

    2.    12.    3.
    1.    2.     8.
    5.    16.    11. 

Atau dapat anda masukkan dengan cara:

-->M=[2,12,3; 1,2,8; 5,16,11]
 M  =

    2.    12.    3.
    1.    2.     8.
    5.    16.    11.  

Menghitung jumlah Dalam matrik persegi mungkin ingin menghitung jumlah elemen kolom dan jumlah elemen baris dan jumlah elemen diagonal. Hal ini dapat dilakukan dengan cara:

-->sum(M,'c')
 ans  =

    17.
    11.
    32.  

-->sum(M,'r')
 ans  =

    8.    30.    22.
 

Jumlah diagonal utama, mudah dilakukan dengan menggunakan fungsi ‘diag’:

-->diag(M)
 ans  =

    2.
    2.
    11. 

Mengisi matrik dengan nilai random

-->MR=rand(3,3)
 MR  =

    0.2615761    0.5253563    0.2256303
    0.4993494    0.5376230    0.6274093
    0.2638578    0.1199926    0.7608433

-->sum(MR,'c')
 ans  =

    1.0125628
    1.6643817
    1.1446937  

-->sum(MR,'r')
 ans  =

    1.0247834    1.1829718    1.6138829  

Menambah baris matrik

Untuk menambah baris matrik yaitu dengan menambah elemen baris dengan kolom yang sama dari matrik yang akan ditambahkan. Matrik yang lama dimasukkan kembali ke elemen matrik deng ditambahkan karakter ;, karena akan menambahkan baris.

-->M
 M  =

    2.    12.    3.
    1.    2.     8.
    5.    16.    11.  

-->M=[M; 34 10 33]
 M  =

    2.     12.    3.
    1.     2.     8.
    5.     16.    11.
    34.    10.    33.  

Subscript

Setiap elemen dalam matrik ditandai dengan subscript nomer baris dan kolom, cara penulisannya adalah: M(b,k), dengan menuliskan nama matrik diikuti dengan , didalam kurung ().

Berikut ini salah satu contoh untuk menghitung jumlah diagonal yang lain (elemen kanan atas ke kiri bawah),  dengan  menggunakan subscript matrik:

-->M(1,3)+M(2,2)+M(3,1)
 ans  =

    10.  

Menghapus baris matrik

Untuk menghapus matrik baris terakhir yaitu dengan cara:

-->M
 M  =

    2.     12.    3.
    1.     2.     8.
    5.     16.    11.
    34.    10.    33.  

-->M=[M(1:3,1:3)]
 M  =

    2.    12.    3.
    1.    2.     8.
    5.    16.    11.  

Cara diatas dengan menggunakan operator semi-kolon (:) seperti yang dijelaskan dibawah.

Cara lain dimungkinkan untuk mengakses elemen dalam matrik menggunakan indek tunggal. Sekarang matrik M telah menjadi matrik orde 4×3. Sehingga M(1) = M(1,1), M(2) = M(2,1), M(3) = M(3,1), M(4) = M(4,1), M(5) = M(1,2), M(6) = M(2,2), dan seterusnya.

Sebuah cara cerdas untuk mendapatkan jumlah diagonal yang lain adalah dari matrik M, dengan menggunakan fungsi mtlb_fliplr , di mana mtlb singkatan Matlab. Berikut ini ini adalah untuk flip matriks kiri ke kanan (lr):

-->M
 M  =

    2.    12.    3.
    1.    2.     8.
    5.    16.    11.  

-->ML=mtlb_fliplr(M)
 ML  =

    3.     12.    2.
    8.     2.     1.
    11.    16.    5.  

-->MD=diag(ML)
 MD  =

    3.
    2.
    5.  

-->sum(MD,'r')
 ans  =

    10. 

Cara singkat dari cara diatas adalah:

-->sum(diag(mtlb_fliplr(M)))
 ans  =

    10. 

 Operator Kolon

Operator kolon (:) memegang peranan penting dalam scilab. Ekpresi 1:12 menghasilkan matrik baris dengan elemen 1,2,3,4…12.

-->1:12
 ans  =

    1.    2.    3.    4.    5.    6.    7.    8.    9.    10.    11.    12.  

Untuk menghasilkan elemen mulai 20 sampai 4 dengan petambahan nilai menurun 2, dapat dituliskan sebagai berikut:

-->20:-2:4
 ans  =

    20.    18.    16.    14.    12.    10.    8.    6.    4.  

Dengan menggunakan operator kolon inipun, dapat mengambil elemen matrik tertentu. Sebagai contoh, untuk mengambil baris kedua saja:

-->M
 M  =

    2.    12.    3.
    1.    2.     8.
    5.    16.    11.  

-->M(2,:)
 ans  =

    1.    2.    8. 

Berikut ini contoh untuk mengambil baris 1 dan 3 saja.

-->M([1,3],:)
 ans  =

    2.    12.    3.
    5.    16.    11.  

Contoh lagi untuk mengambil elemen acak, hasilnya menjadi matrik 1 baris.

-->[M(2,1) M(3,3) M(1,2)]
 ans  =

    1.    11.    12.  

Sama dengan diatas namun hasilnya sebagai matrik kolom.

-->[M(2,1); M(3,3); M(1,2)]
 ans  =

    1.
    11.
    12.

Operator $ adalah nilai terbesar indek matrik, ini berguna untuk mendapatkan entri terakhir dari vektor atau matrik. Berikut ini contoh untuk mengakses semua elemen kolom terakhir kecuali kolom terakhir dari baris terakhir, kita ketik:

-->M
 M  =

    2.    12.    3.
    1.    2.     8.
    5.    16.    11.  

-->M(1:$-1,$)
 ans  =

    3.
    8.  
Posted in Program open source, scilab | Tagged , , | Leave a comment

Belajar Scilab: membaca file microsoft excel (cara 3)

Isi materi ini ditujukan untuk berbagi ilmu pengetahuan kepada semua pengunjung blog ini.
Silakan digunakan untuk kepentingan proses pembelajaran untuk mencerdaskan bangsa ini dengan tidak lupa menyebutkan sumbernya.
Namun yang harus dihidari adalah: mengambil isi dengan mengakui sebagai haknya, mengambil isi untuk tujuan komersialisasi.
Semua tergantung kepada hati-nurani, jika terjadi saya berkewajiban mengingatkan para plagiator. Biasakan sesuatunya terlahir dari tangan anda, itu menunjukkan bahwa anda ada dan anda diberi hidayah sebagai ciptaanNya yang paling mulia untuk memberikan manfaat di dunia ini. Biasakanlah memberikan manfaat kepada orang lain, dan jangan membiasakan memanfaatkan orang lain.

Posting yang saya tulis disini dan yang ditulis disini, merupakan cara membaca data dalam bentuk format microsoft excel dengan ektensi .xls. Selain itu microsoft excel juga dapat membaca dalam bentuk format yang berektensi .csv dari singkatan comma separated value. Format ini sebenarnya adalah format text, dimana setiap satu record data dipisahkan dengan karakter koma antara masing-masing fieldnya. Sedangkan untuk record berikutnya dituliskan di baris berikutnya atau dipisahkan dengan karakter .

Jika anda memiliki file dengan ektensi .xls, melalui microsoft excel dapat di simpan sebagai file dengan ektensi .csv, kemudian datanya dapat dibaca oleh scilab melalui cara yang akan dibahas disini. Agar dapat dibandingkan dengan posting sebelumnya, digunakan file excel yang sama seperti berikut ini.

Setelah disimpan dalam format dengan ektensi .csv, akan diperoleh file format text sebagai berikut:

0.2113249,0.5608486,0.3076091,0.5015342,0.2806498,Bambang Siswoyo,Pria
0.7560439,0.6623569,0.9329616,0.4368588,0.1280058,Ekoyanto Pudjiono,Pria
0.0002211,0.7263507,0.2146008,0.2693125,0.7783129,Nurhidayat,Pria
0.3303271,0.1985144,0.312642,0.6325745,0.211903,Ana Safitri,Wanita
0.6653811,0.5442573,0.3616361,0.4051954,0.1121355,Wijono,Pria
0.6283918,0.2320748,0.2922267,0.9184708,0.6856896,Masruri,Pria
0.8497452,0.2312237,0.5664249,0.0437334,0.1531217,Mochammad Rusli,Pria
0.685731,0.2164633,0.4826472,0.4818509,0.6970851,Ive Emaliana,Wanita
0.8782165,0.8833888,0.3321719,0.2639556,0.8415518,Ari Wahjudi,Pria
0.068374,0.6525135,0.5935095,0.4148104,0.4062025,M. Aswin,Pria

Fungsi yang akan digunakan untuk membaca file dengan format csv dalam scilab adalah:

read_csv() — write_csv()

Dengan fungsi diatas  data dapat saling dipertukarkan antara excel dan scilab sesuai dengan kebutuhan.

Berikut ini bagaimana file text dengan format csv dibaca dengan scilab:

-->-->sh=read_csv("d:/data_scilab/data1.csv")
 sh  =

!0.2113249 0.5608486 0.3076091 0.5015342  0.2806498  Bambang Siswoyo  Pria  !
!                                                                           !
!0.7560439 0.6623569 0.9329616 0.4368588  0.1280058 Ekoyanto Pudjiono Pria  !
!                                                                           !
!0.0002211 0.7263507 0.2146008 0.2693125  0.7783129 Nurhidayat        Pria  !
!                                                                           !
!0.3303271 0.1985144 0.312642  0.6325745 0.211903  Ana Safitri        Wanita!
!                                                                           !
!0.6653811 0.5442573 0.3616361 0.4051954 0.1121355 Wijono             Pria  !
!                                                                           !
!0.6283918 0.2320748 0.2922267 0.9184708 0.6856896 Masruri            Pria  !
!                                                                           !
!0.8497452 0.2312237 0.5664249 0.0437334 0.1531217 Mochammad Rusli    Pria  !
!                                                                           !
!0.685731  0.2164633 0.4826472 0.4818509 0.6970851 Ive Emaliana       Wanita!
!                                                                           !
!0.8782165 0.8833888 0.3321719 0.2639556 0.8415518 Ari Wahjudi        Pria  !
!                                                                           !
!0.068374  0.6525135 0.5935095 0.4148104 0.4062025 M. Aswin           Pria  !

Dengan perintah diatas seluruh data dalam format csv, disimpan dalam matrik divariabel sh sesuai dengan ukuran yang sama jika dibaca dengan microsoft excel.

Selanjutnya jika anda ingin menyimpannya kembali kedalam format .csv, digunakan fungsi write_csv(). Agar terdapat perubahan data, saya akan menambahkan satu data lagi dengan menggunakan scilab

Karena variabel sh adalah cell, jadi penambahan data diperlakukan sebagai cell dengan perintah berikut ini:

-->sh(11,1:7)=['0.62772' '0.92882' '0.2333' '0.827726' '0.366353'
   'Joko Suwarto Utomo' 'Pria']
 sh  =

!0.2113249 0.5608486 0.3076091 0.5015342  0.2806498  Bambang Siswoyo  Pria  !
!                                                                           !
!0.7560439 0.6623569 0.9329616 0.4368588  0.1280058 Ekoyanto Pudjiono Pria  !
!                                                                           !
!0.0002211 0.7263507 0.2146008 0.2693125  0.7783129 Nurhidayat        Pria  !
!                                                                           !
!0.3303271 0.1985144 0.312642  0.6325745 0.211903  Ana Safitri        Wanita!
!                                                                           !
!0.6653811 0.5442573 0.3616361 0.4051954 0.1121355 Wijono             Pria  !
!                                                                           !
!0.6283918 0.2320748 0.2922267 0.9184708 0.6856896 Masruri            Pria  !
!                                                                           !
!0.8497452 0.2312237 0.5664249 0.0437334 0.1531217 Mochammad Rusli    Pria  !
!                                                                           !
!0.685731  0.2164633 0.4826472 0.4818509 0.6970851 Ive Emaliana       Wanita!
!                                                                           !
!0.8782165 0.8833888 0.3321719 0.2639556 0.8415518 Ari Wahjudi        Pria  !
!                                                                           !
!0.068374  0.6525135 0.5935095 0.4148104 0.4062025 M. Aswin           Pria  !
!                                                                           !
!0.62772   0.92882   0.2333    0.827726  0.366353  Joko Suwarto Utomo Pria  !

Selanjutnya data tersebut dapat disimpan kembali kedalam format csv dengan nama file data2.csv dengan perintah sebagai berikut:

write_csv(sh, "d:/data_scilab/data2.csv", ",")

Parameter pertama adalah nama variabel dari cell (sh), kedua adalah direktori dan nama file, ketiga adalah separatornya adalah karakter koma. Setelah dibaca oleh microsoft excel akan nampak sebagai berikut:

Sekian mudah-mudahan bermanfaat.

Posted in Program open source, scilab | Tagged , , | 7 Comments

Belajar Scilab: membaca file microsoft excel (cara 2)

Isi materi ini ditujukan untuk berbagi ilmu pengetahuan kepada semua pengunjung blog ini.
Silakan digunakan untuk kepentingan proses pembelajaran untuk mencerdaskan bangsa ini dengan tidak lupa menyebutkan sumbernya.
Namun yang harus dihidari adalah: mengambil isi dengan mengakui sebagai haknya, mengambil isi untuk tujuan komersialisasi.
Semua tergantung kepada hati-nurani, jika terjadi saya berkewajiban mengingatkan para plagiator. Biasakan sesuatunya terlahir dari tangan anda, itu menunjukkan bahwa anda ada dan anda diberi hidayah sebagai ciptaanNya yang paling mulia untuk memberikan manfaat di dunia ini. Biasakanlah memberikan manfaat kepada orang lain, dan jangan membiasakan memanfaatkan orang lain.

Seperti yang telah diposting disini, sekarang akan dijelaskan cara yang lainnya dengan menggunakan fungsi:

readxls()

Adapun data file microsoft excel, menggunakan file excel yang sama dengan sebelumnya agar dapat dibandingkan dengan cara sebelumnya. Data tersebut sebagai berikut:

Untuk membaca data file excel digunakan perintah sebagai berikut:

-->sheets = readxls("d:/data_scilab/data1.xls");

-->typeof(sheets)
 ans  =

 xls   

-->s1 = sheets(1);

-->s1
 s1  =

!0.2113249 0.5608486 0.3076091 0.5015342 0.2806498 Bambang Siswoyo    Pria    !
!                                                                             !
!0.7560439 0.6623569 0.9329616 0.4368588 0.1280058 Ekoyanto Pudjiono  Pria    !
!                                                                             !
!0.0002211 0.7263507 0.2146008 0.2693125 0.7783129 Nurhidayat         Pria    !
!                                                                             !
!0.3303271 0.1985144 0.312642  0.6325745 0.211903  Ana Safitri        Wanita  !
!                                                                             !
!0.6653811 0.5442573 0.3616361 0.4051954 0.1121355 Wijono             Pria    !
!                                                                             !
!0.6283918 0.2320748 0.2922267 0.9184708 0.6856896  Masruri           Pria    !
!                                                                             !
!0.8497452 0.2312237 0.5664249 0.0437334 0.1531217  Mochammad Rusli   Pria    !
!                                                                             !
!0.685731  0.2164633 0.4826472 0.4818509 0.6970851  Ive Emaliana      Wanita  !
!                                                                             !
!0.8782165 0.8833888 0.3321719 0.2639556 0.8415518  Ari Wahjudi       Pria    !
!                                                                             !
!0.068374  0.6525135 0.5935095 0.4148104 0.4062025  M. Aswin          Pria    !

-->s1.value()
 ans  =

    0.2113249    0.5608486    0.3076091    0.5015342    0.2806498    Nan   Nan
    0.7560439    0.6623569    0.9329616    0.4368588    0.1280058    Nan   Nan
    0.0002211    0.7263507    0.2146008    0.2693125    0.7783129    Nan   Nan
    0.3303271    0.1985144    0.312642     0.6325745    0.211903     Nan   Nan
    0.6653811    0.5442573    0.3616361    0.4051954    0.1121355    Nan   Nan
    0.6283918    0.2320748    0.2922267    0.9184708    0.6856896    Nan   Nan
    0.8497452    0.2312237    0.5664249    0.0437334    0.1531217    Nan   Nan
    0.685731     0.2164633    0.4826472    0.4818509    0.6970851    Nan   Nan
    0.8782165    0.8833888    0.3321719    0.2639556    0.8415518    Nan   Nan
    0.068374     0.6525135    0.5935095    0.4148104    0.4062025    Nan   Nan 

-->s1.text()
 ans  =

!          Bambang Siswoyo    Pria    !
!                                     !
!          Ekoyanto Pudjiono  Pria    !
!                                     !
!          Nurhidayat         Pria    !
!                                     !
!          Ana Safitri        Wanita  !
!                                     !
!          Wijono             Pria    !
!                                     !
!          Masruri            Pria    !
!                                     !
!          Mochammad Rusli    Pria    !
!                                     !
!          Ive Emaliana       Wanita  !
!                                     !
!          Ari Wahjudi        Pria    !
!                                     !
!          M. Aswin           Pria    !

Variabel s1 berisi yang sama dengan data dalam file excel, sesuai dengan baris dan kolomnya. s1.value() adalah isi yang mengandung nilai numeric, sedangkan s1.text yang berisi string atau text.

Jika dibandingkan dengan cara sebelumnya, cara ini lebih mudah bagi orang awam karena tidak menggunakan index. Selain itu file langsung dibuka seketika, tanpa menggunakan fungsi xls_open(). Cara ini adalah instant, namun cara sebelumnya memiliki kelebihan yaitu memiliki informasi secara detail, sehingga pengembangan program akan lebih leluasa.

Saya sarankan kalau hanya ingin mengimport data dari excel secara cepat, hanya untuk mendapatkan datanya, sebaiknya digunakan cara ini.

Sekian mudah-mudahan berguna.

 

Posted in Program open source, scilab | Tagged , , | Leave a comment

Belajar Scilab: membaca file microsoft excel (cara 1)

Isi materi ini ditujukan untuk berbagi ilmu pengetahuan kepada semua pengunjung blog ini.
Silakan digunakan untuk kepentingan proses pembelajaran untuk mencerdaskan bangsa ini dengan tidak lupa menyebutkan sumbernya.
Namun yang harus dihidari adalah: mengambil isi dengan mengakui sebagai haknya, mengambil isi untuk tujuan komersialisasi.
Semua tergantung kepada hati-nurani, jika terjadi saya berkewajiban mengingatkan para plagiator. Biasakan sesuatunya terlahir dari tangan anda, itu menunjukkan bahwa anda ada dan anda diberi hidayah sebagai ciptaanNya yang paling mulia untuk memberikan manfaat di dunia ini. Biasakanlah memberikan manfaat kepada orang lain, dan jangan membiasakan memanfaatkan orang lain.

Jika anda memiliki data yang disimpan dalam microsoft excel 2003 atau sebelumnya, anda dapat mengimport data tersebut kedalam scilab untuk diolah dengan mudah melalui program atau secara immidiate di console scilab. Disini saya akan menjelaskan tentang perintah-perintah scilab dengan cara memanggil fungsi yang berhubungan dengan micrsoft excel.

Scilab menyediakan 3 cara membaca file microsoft excel. Disini dijelaskan cara pertam, dengan menggunakan fungsi:

xls_open() dan xls_read()

Misalkan anda memiliki data yang disimpan dengan microsoft excel dengan data sebagai berikut:

Data diatas merupakan data karangan saja, yang berhubungan dengan nama. Satu baris data terdiri dari 5 data numeric, 2 string. Data string berupa nama dan jenis kelamin. Data tersebut perlu diimport kedalam scilab utuk diolah datanya. misalnya diplot untuk masing-masing nama.

Dalam contoh hanya dilakukan secara immidiate kedalam console scilab.

 Membaca data excel dengan perintah xls_open() and xls_read()

Langkah-langkahnya adalah:

  1. Bukalah file excel dengan fungsi xls_open()
  2. Bacalah data dari file excel dengan fungsi xls_read()
  3. Tutup file excel dengan fungsi mclose()

 Perintah xls_open() selengkapnya adalah sebagai berikut:

[fd, vstr, nsh, psh] = xls_open(filename)

Perintah ini memiliki keluaran sebanya 4 parameter yaitu:

  1. fd : adalah file descriptor dari file yang dibuka untuk dibaca. Nama file yang disebut harus ada dalam direktori drive yang disebutkan, jika tidak ada maka akan dikeluarkan pesan kesalahan.
  2. vstr : adalah vektor seluruh string yang ada dalam sheet excel.
  3. nsh : adalah nama sheet dalam dokomen excel.
  4. psh : adalah vektor dari angka yang berisi sheet mulai dari awal dari file excel.

Cobalah perintah perikut:

-->[fd,vstr,nsh,psh]=xls_open("d:/data_scilab/data1.xls")
 psh  =

    11952.
 nsh  =

 data1
 vstr  =

         column 1 to 6

!Bambang Siswoyo  Nurhidayat  Ana Safitri  Ekoyanto Pudjiono  Wijono  Masruri  !

         column  7 to 12

!Mochammad Rusli  Ive Emaliana  Ari Wahjudi  M. Aswin  Pria  Wanita  !
 fd  =

    1.

Variabel fd berisi nilai 1, sebagai file descriptor. Variabel nsh berisi sesuai dengan nama sheet dalam dokumen microsoft excel yaitu data1. Sedangkan variabel vstr berisi vektor dari semua string yang ada, artinya jika ada string yang sama (Pria, Wanita), dalam variabel vst hanya satu saja.

Selanjutnya anda dapat memisahkan antara numeric dan string dari file yang telah dibuka tadi, dengan menggunakan perintah:

-->[numeric,string]=xls_read(fd,psh(1))

 string  =

    0.    0.    0.    0.    0.    1.     11.
    0.    0.    0.    0.    0.    4.     11.
    0.    0.    0.    0.    0.    2.     11.
    0.    0.    0.    0.    0.    3.     12.
    0.    0.    0.    0.    0.    5.     11.
    0.    0.    0.    0.    0.    6.     11.
    0.    0.    0.    0.    0.    7.     11.
    0.    0.    0.    0.    0.    8.     12.
    0.    0.    0.    0.    0.    9.     11.
    0.    0.    0.    0.    0.    10.    11.
 numeric  =

    0.2113249    0.5608486    0.3076091    0.5015342    0.2806498    Nan   Nan
    0.7560439    0.6623569    0.9329616    0.4368588    0.1280058    Nan   Nan
    0.0002211    0.7263507    0.2146008    0.2693125    0.7783129    Nan   Nan
    0.3303271    0.1985144    0.312642     0.6325745    0.211903     Nan   Nan
    0.6653811    0.5442573    0.3616361    0.4051954    0.1121355    Nan   Nan
    0.6283918    0.2320748    0.2922267    0.9184708    0.6856896    Nan   Nan
    0.8497452    0.2312237    0.5664249    0.0437334    0.1531217    Nan   Nan
    0.685731     0.2164633    0.4826472    0.4818509    0.6970851    Nan   Nan
    0.8782165    0.8833888    0.3321719    0.2639556    0.8415518    Nan   Nan
    0.068374     0.6525135    0.5935095    0.4148104    0.4062025    Nan   Nan

Perintah diatas menghasilkan dua variabel yaitu numeric (kiri) dan string (kanan). Ukuran matrik dari string dan numeric akan sama sesuai dengan ukuran data pada file excel, yaitu 7×10. Variabel numeric akan berisi data numeric, bila bukan maka diisi dengan “Nan” artinya selain numeric. Variabel string akan berisi numeric sebagai indek dari variabel vst yang berisi string.

Plotting Data

Sebagai contoh kasus adalah, bagaimana memplot data 3 nama kedalam satu window grafik. Setiap nama memiliki 5 data pada masing-masing baris yang bersesuaian. 3 nama pertama adalah “Bambang Siswoyo“, “Nurhidayat“, “Ana Safitri“. Masing-masing datanya ada di baris 1-3, kolom 1-5 dalam variabel numeric. Sedangkan indek nama ada dalam variabel string kolom 6 baris 1-3. Sedangkan data string ada dalam variabel vstr.

-->t=1:5
 t  =

    1.    2.    3.    4.    5.  

-->plot(t,numeric(1,1:5),'o-')

-->plot(t,numeric(2,1:5),'*-')

-->plot(t,numeric(3,1:5),'X-')

-->legend(vstr(string(1:3,6)))
 ans  =

 !--error 144
Undefined operation for the given operands.

check or define function %c_a_s for overloading.

at line     208 of function %h_p called by :
legend(vstr(string(1:3,6)))

 Hasil grafiknya sebagai berikut:

Selamat mencoba, semoga bermanfaat.

 

Posted in Program open source, scilab | Tagged , , | Leave a comment

Belajar Scilab: plot grafik 2D

Isi materi ini ditujukan untuk berbagi ilmu pengetahuan kepada semua pengunjung blog ini.
Silakan digunakan untuk kepentingan proses pembelajaran untuk mencerdaskan bangsa ini dengan tidak lupa menyebutkan sumbernya.
Namun yang harus dihidari adalah: mengambil isi dengan mengakui sebagai haknya, mengambil isi untuk tujuan komersialisasi.
Semua tergantung kepada hati-nurani, jika terjadi saya berkewajiban mengingatkan para plagiator. Biasakan sesuatunya terlahir dari tangan anda, itu menunjukkan bahwa anda ada dan anda diberi hidayah sebagai ciptaanNya yang paling mulia untuk memberikan manfaat di dunia ini. Biasakanlah memberikan manfaat kepada orang lain, dan jangan membiasakan memanfaatkan orang lain.

Dengan menggunakan Scilab mem-plot grafik 2 dimensi dapat dilakukan dengan mudah, dengan memberikan perintah-perintah dalam scilab. Sebenarnya scilab dapat melakukan berbagai macam variasi untuk mengeplot 2D dan 3D, namun dalam posting disini dijelaskan untuk 2D.

Grafik secara umum yang dapat dilakukan oleh scilab adalah: plot xy, plot kontur, plot 3D, histogram, bar chart, dll. Biasakanlah didalam belajar scilab menggunakan perintah-perintah secara manual melalui console scilab, hal ini akan membiasakan anda untuk memperkuat ingatan tentang fasilitas-fasilitas fungsi yang ada di scilab, selanjutnya akan memperkuat didalam membuat program dalam scilab.

Jalan program scilab, gunakan console, masukkan perintah-perintah berikut ini:

-->x=linspace(0,10,21)
 x  =

         column  1 to 18

    0.    0.5    1.    1.5    2.    2.5    3.    3.5    4.    4.5    5.    5.5
    6.    6.5    7.    7.5    8.    8.5    

         column 19 to 21

    9.    9.5    10. 

Perintah diatas artinya variabel x diisi dengan deret data secara linier mulai dari 0 sampai 10 dengan 21 data. Nampak bahwa data diisi dengan mulai 0 seterusnya dengan pertambahan nilai 0.5.

--> y=linspace(0,20,21) 
  y  =          
       column  1 to 18    
   0.    1.    2.    3.    4.    5.    6.    7.    8.    9.    10.     11.   
   12.   13.    14.    15.    16.    17. 

      column 19 to 21
   18.    19.    20.     

Perintah diatas sama dengan sebelumnya, yaitu variabel y diisi dengan deret data secara linier mulai 0 sampai 20 dengan 21 data, dimulai dengan 0 seterusnya dengan pertambahan nilai 0.5.

Sampai disini sudah ada data di variable x dan y masing-masing dengan 21 data, selanjutnya data tersebut akan diplot pada salib sumbu x,y. Perintah yang digunakan dengan perintah yang tersedia di matlab, sebagai berikut:

--> plot(x,y)

Perintah tersebut akan diplot sebagai berikut:

Nampak hasilnya adalah garis linier. Sarat mutlak didalam memplot dua array data adalah jumlah data haruslah sama, jika tidak scilab akan mengeluarkan pesan kesalahan. Pesan kesalahan tersebut adalah:

-->plot(x,y)
 !--error 10000
plot: Wrong size for input arguments 'X' and 'Y': Incompatible dimensions.
at line      93 of function checkXYPair called by :
at line     233 of function plot called by :
plot(x,y)

Seperti yang anda lihat grafik anda pertama dibuka dalam window 0. Jika anda menginginkan membuka window grafik sesuai yang anda suka lakukan perintah berikut:

-->xset('window',1)

Perintah diatas seakan anda mememesan dan mengarahkan ke window grafik nomer 1. Selanjutnya perintah-perintah yang berhubungan dengan grafik, akan ditujukan ke grafik 1. Oleh scilab akan dibuatkan window grafik dengan nomer 1, namun kosong isinya. Jika perintah ini diarahkan ke nomer grafik yang telah ada windownya (misal 0), maka tidak akan dibuatkan window baru, namun perintah selanjutnya akan mengarah ke nomer window grafik yang baru disebutkan.

Selanjutnya coba perintah berikut ini:

plot2d(x,y,style=3)

Perintah khusus plot 3d, sama seperti plot(x,y), namun memiliki argumen opsional yaitu argumen ke 3 “style” yang secara langsung anda bisa memilih style yang tersedia. Hasilnya sebagai berikut ini:

 Coba sendiri untuk  argumen style dengan nilai negatip. Style ini biasanya berguna untuk memberikan tampilan yang berbeda untuk setiap grafik yang ditampilkan. Selain itu dapat ditampilkan grafik dengan nilai awal tertentu untuk x dan y, seperti perintah berikut ini.

-->plot2d(x,y,style=-4,rect=[1,4,10,10])

 Perintah diatas menggunakan 4 argumen, yang terakhir mendefinisikan nilai awal sampai akhir dari x,y grafik akan diplot. Perintah diatas grafik diplot mulai x= 1 sampai 10, dan y = 4 sampai 10. Hasilnya nampak dalam gambar berikut ini.

Sekarang akan ditunjukkan bagaimana menambahkan judul, nama axis dan legend pada grafik.

-->title("Grafik omset penjualan")

-->xlabel("Hari ke:")

-->ylabel("Jumlah dalam ribuan")

Perintah diatas untuk memberikan judul, nama axis x, nama axis y. Hasilnya akan nampak sebagai berikut.

 

 Penulisan perintah diatas dapat disingkat dengan perintah berikut ini:

-->xtitle("Grafik omset penjualan","Hari ke:","Jumlah dalam ribuan")

 Perintah langsung menggunakan 3 argumen, dimulai dengan judul, nama axis x, nama axis y. Perintah ini sangat singkat penulisannya. Untuk menghapus grafik pada window sekarang bis menggunakan clf (clear figure), disamping secara langsung  dengan cara menutup window grafik.

Selanjutnya akan ditunjukkan bagaimana menampilkan duagrif dalam satu window grafik.

Fungsi grafik pertama: , sedangkan fungsi grafik yang kedua adalah: .

Grafik akan dimunculkan y1 fungsi x, y2 fungsi x. Grafik juga akan diberi judl dan label axis x dan axis y. Perintah berikut silakan anda coba sendiri.

-->x=linspace(1,10,50);

-->y1=x^2;

-->plot(x,y1,"o-")

-->y2=2*x^2;

-->plot(x,y2,"+-")

-->xtitle("Dua Grafik dalam satu window","X axis","Y axis")

 Hasilnya diperlihatkan dalam gambar berikut:

 Style untuk fungsi menggunakan argumen “o-”, sehingga ditampilkan grafik menggunakan huruf o. Sedangkan style untuk fungsi menggunakan argumen “+-”, sehingga grafik ditampilkan dengan karakter +.

Selanjutnya akan ditunjukkan bagaimana memberikan legend pada masing-masing grafik seperti perintah berikut ini:

-->legend ( " x ^ 2 " , " 2* x ^ 2 " );

Hasilnya akan nampak sebagai berikut:

 Untuk lebih jelasnya tekan icon demo:

Kemudian pilih “Graphics” => “2D and 3D plots”.

 

Ikutilah dan amatilah setiap demo yang ditampilkan dengan menekan tombol <enter>.

 Semoga bermanfaat, selamat belajar semoga sukses.

 

Posted in Program open source, scilab | Tagged , , | 2 Comments

Belajar Scilab: tanggapan waktu fungsi alih orde dua

Isi materi ini ditujukan untuk berbagi ilmu pengetahuan kepada semua pengunjung blog ini.
Silakan digunakan untuk kepentingan proses pembelajaran untuk mencerdaskan bangsa ini dengan tidak lupa menyebutkan sumbernya.
Namun yang harus dihidari adalah: mengambil isi dengan mengakui sebagai haknya, mengambil isi untuk tujuan komersialisasi.
Semua tergantung kepada hati-nurani, jika terjadi saya berkewajiban mengingatkan para plagiator. Biasakan sesuatunya terlahir dari tangan anda, itu menunjukkan bahwa anda ada dan anda diberi hidayah sebagai ciptaanNya yang paling mulia untuk memberikan manfaat di dunia ini. Biasakanlah memberikan manfaat kepada orang lain, dan jangan membiasakan memanfaatkan orang lain.

Disini saya akan menjelaskan bagaimana menggambarkan tanggapan waktu dari fungsi alih orde dua dengan menggunakan Software Scilab.

Dalam posting tentang fungsi alih orde dua, fungsi alihnya dapat dituliskan kembali sebagai berikut:

Dengan menggunakan scilab, akan digambarkan tanggapan waktu dari fungsi alih diatas dengan berbagai rasio redaman  dengan frekwensi alamiah tetap sebesar .  Besarnya dihitung mulai 0.02,  0.05, 0.3, 0.6, 0.8, 1. Sedangkan besarnya .

Listing perintah dalam console scilab sebagai berikut:

-->clear all         // membersihkan semua definisi variabel

-->s=poly(0,'s')          // mendefinisikan s sebagai variabel polynomial
 s  =

    s   

-->fn=2                   // frekwensi natural = 2Hz
 fn  =

    2.  

-->wn=2*%pi*fn            // menghitung frekwensi natural dalam rad/s
 wn  =

    12.566371  

-->// fungsi alih 1 rasio redaman = 0.02
-->h1=syslin('c',wn^2,s^2+2*0.02*wn*s+wn^2)
 h1  =

            157.91367
    -------------------------
                              2
    157.91367 + 0.5026548s + s   

-->// fungsi alih 1 rasio redaman = 0.05
-->h2=syslin('c',wn^2,s^2+2*0.05*wn*s+wn^2)
 h2  =

            157.91367
    -------------------------
                              2
    157.91367 + 1.2566371s + s   

-->// fungsi alih 1 rasio redaman = 0.3
-->h3=syslin('c',wn^2,s^2+2*0.3*wn*s+wn^2)
 h3  =

            157.91367
    -------------------------
                              2
    157.91367 + 7.5398224s + s   

-->// fungsi alih 1 rasio redaman = 0.6
-->h4=syslin('c',wn^2,s^2+2*0.6*wn*s+wn^2)
 h4  =

            157.91367
    -------------------------
                              2
    157.91367 + 15.079645s + s   

-->// fungsi alih 1 rasio redaman = 0.8
-->h5=syslin('c',wn^2,s^2+2*0.8*wn*s+wn^2)
 h5  =

            157.91367
    -------------------------
                              2
    157.91367 + 20.106193s + s   

-->// fungsi alih 1 rasio redaman = 1
-->h6=syslin('c',wn^2,s^2+2*1*wn*s+wn^2)
 h6  =

            157.91367
    -------------------------
                              2
    157.91367 + 25.132741s + s   

-->// medefinisikan t mulai 0 -- 5 detik dengan step 0.05 detik
-->t=0:0.05:5;                   

-->r1=csim('step',t,h1);   // respon waktu fungsi step fungsi alih 1

-->r2=csim('step',t,h2);   // respon waktu fungsi step fungsi alih 2

-->r3=csim('step',t,h3);   // respon waktu fungsi step fungsi alih 3

-->r4=csim('step',t,h4);   // respon waktu fungsi step fungsi alih 4

-->r5=csim('step',t,h5);   // respon waktu fungsi step fungsi alih 5

-->r6=csim('step',t,h6);   // respon waktu fungsi step fungsi alih 6

-->plot(t,r1)              // plotting respon waktu fungsi alih 1

-->plot(t,r2)              // plotting respon waktu fungsi alih 2

-->plot(t,r3)              // plotting respon waktu fungsi alih 3

-->plot(t,r4)              // plotting respon waktu fungsi alih 4

-->plot(t,r5)              // plotting respon waktu fungsi alih 5

-->plot(t,r6)              // plotting respon waktu fungsi alih 6

Hasil Grafik respon waktu

Posted in Program open source, scilab, Teori | Tagged , | 2 Comments

gravatar.com membuat profile foto kita mendunia

Kali ini aku akan membahas perlunya profile foto kita bisa berada dimana-mana, terutama pada saat memberikan comment diblog mana saja. Biasanya kita memasang foto hanya di profile lokal saja. Sehingga teman-teman kita memberikan comment, maka foto tidak akan terpampang melainkan foto default seperti berikut ini:

Cara kerjanya adalah email yang didaftarkan diblog saya didaftarkan di http://gravatar.com, selanjutnya diupload foto kita, dan anda bisa mensetting untuk bisa mendunia dengan web apa saja, misal twiter, facebook, wordpress. Jika anda membuka wordpress misalnya, wordpress akan mencocokan email pda profile wordpress kemudian mengecek di server http://gravatar.com untuk selanjutnya mengambil foto untuk dipampang. Selain itu server tersebut juga memberikan laporan apakah clientnya aktif atau tidak. Dapat ditambahkan widget avatar di sidebar anda. Ini berbeda dengan widget member, karena merupakan member lokal pada satu server wordpress. Saya sudah mencobanya ke server lainnya yaitu blog student UB, fotonya juga nampang di comment, padahal servernya berbeda.

Begini caranya untuk mendaftarkan email blog anda:

 

  • Klik Get your Gravatar today

  • Setelah anda memasukkan email blog anda dan klik signup, anda akan memperoleh konfirmasi. Silakan masuk ke email anda dan klik link activasi. Isilah username yang anda inginkan dan password. Selanjutnya anda masuk ke gravatar dengan user email/username dan password.
  • Setelah anda masuk klik “My Account” => Add an Image, maka akan muncul:

  • Ada 4 pilihan cara memasang foto: yang pertama diperoleh dari file dikomputer anda, kedua diperoleh dari link internet yang berisi foto, ketiga diperoleh dari webcam yang terpasang dikomputer anda, keempat dari foto yang sudah pernah diupload.

Selanjunya ikutilah petunjuk yang diberikan gravatar, karena secara otomatis jika kebesaran anda diberi kesempatan untuk meng-crope.

Cara setting diblog anda

Masuklah kedalam blog anda kemudia klik menu sebelah kiri “Settings” => “Discussion” maka akan muncul:

Pastikan pilihan-pilihan tersebut diklik agar bisa berfungsi menampilkan foto anda di semua blog wordpress. Jika anda menginginkan email yang lain, anda tidak perlu mendaftar kembali, cukup tambahkan email lain yang anda punya, dan setting fotonya, tentunya bisa berlainan.

Testing comment diblog penyedia hosting lain

Berikut ini hasil uji coba dengan memberikan comment diblog yang disediakan oleh hostinglain di luar negeri.

Selamat mencoba, dan perlu diingat, gravatar perlu waktu untuk membuat perubahan profile foto anda.

 

Posted in Web | Tagged , , , | 2 Comments

Menampilkan rumus matematika di blog

Kali ini aku ingin berbagi pengetahuan kepada seluruh pengunjung blog saya.

Mungkin anda menginginkan menulis rumus matematika di blog anda dan anda merasa kesulitan ?

Awalnya saya menambahkan rumus matematika di blog saya dengan cara menyisipkan (insert) sebagai image. Rumus matematik saya edit dikomputer, kemudian saya ubah ke image, terus saya sisipkan sebagai tag <image> atau insert image di editor wordpress. Awalnya aku merasa cukup, namun lama kelamaan semakin sulit jika rumus semakin komplek, serta amat sulit jika menyisipkan diantara kalimat.

Hmmm…ternyata saya menemukan cara yang jitu, awalnya cari di mbah google, tapi saya tidak tahu maksud dan cara kerjanya. Saya teliti satu persatu, alhasil aku tahu maksudnya.

Begini cara kerjanya:

  • Prinsipnya sama dengan menyisipkan gambar yang biasa dilakukan oleh para blogger, “Add an Image”.
  • Obyek gambar bukan diperoleh dari lokal komputer terus di upload atau dari gallery di blog anda, melainkan dari link URL. Biasanya “From URL”.

Cara menulis rumus dari penyedia URL

Penyedia link URL adalah: http://www.forkosh.com anda harus berterimakasih atas layanan ini secara gratis. Prinsip kerjanya image berupa rumus matematika dikirim oleh server ini melalui server CGI (Common Gateway Interface). Rumus matematika dikirim (dipassing) secara post dengan menggunakan format LATEX. Pelajarilah bagaimana menulis rums matematika dengan menggunakan perintah LATEX.

Secara sederhana format link URL untuk menuliskan rumus dalam LATEX adalah:

http://www.forkosh.com/mathtex.cgi?<diisi syntax latex>

Syntax latex harus diisi dengan string rumus yang anda inginkan, contoh sebagai berikut:

Rumus diatas berupa image disisipkan dengan cara:

  1. “Add an Image” dari editor wordpress anda.
  2. Klik “From URL”.
  3. Isi image URL: http://www.forkosh.com/mathtex.cgi?y=x^2-2x+9
  4. Klik “link to image
  5. Klik “insert into post”

Contoh berikut saya tidak menuliskan alamat url http://www.forkosh.com/mathtex.cgi? melainkan hanya menuliskan syntax latexnya. Silakan ditambahkan url diatas.

 Contoh lain

H(s)=K\frac{\omega_n^2}{s^2+2.\zeta.\omega^2_n.s+\omega_n^2}

 H(s) \approx K \frac{\omega_n^2}{\omega_n^2} \approx K

 \left [ - \frac{\hbar^2}{2 m} \frac{\partial^2}{\partial x^2} + V \right ] \Psi = i \hbar \frac{\partial}{\partial t} \Psi

c=\sqrt{a^2+b^2}

 Tip dan Trik

  • Pelajari dahulu syntax latex untuk menuliskan rumus-rumus
  • Buatlah printout kecil yang berisi daftar simbol matematika yang ditulis dalam syntax latex
  • Sebelum dimasukkan ke blog anda, jalankan dulu secara langsung dibrowser link URL yang berisi syntax latex. Kalau ada kesalahan anda dapat mengeditnya secara langsung.

Anda bisa belajar disini: http://www.forkosh.com/mathtextutorial.html untuk lebih memperkaya penulisan rumus matematika dengan latex.

Sekian posting saya, semoga bermanfaat.

 

 

Posted in Web | Tagged , , , | 15 Comments

Sistem orde dua: fungsi alih

Isi materi ini ditujukan untuk berbagi ilmu pengetahuan kepada semua pengunjung blog ini.
Silakan digunakan untuk kepentingan proses pembelajaran untuk mencerdaskan bangsa ini dengan tidak lupa menyebutkan sumbernya.
Namun yang harus dihidari adalah: mengambil isi dengan mengakui sebagai haknya, mengambil isi untuk tujuan komersialisasi.
Semua tergantung kepada hati-nurani, jika terjadi saya berkewajiban mengingatkan para plagiator. Biasakan sesuatunya terlahir dari tangan anda, itu menunjukkan bahwa anda ada dan anda diberi hidayah sebagai ciptaanNya yang paling mulia untuk memberikan manfaat di dunia ini. Biasakanlah memberikan manfaat kepada orang lain, dan jangan membiasakan memanfaatkan orang lain.

Fungsi alih sebuah sistem kontrol merupakan perwujudan karakter keluaran terhadap masukan. Pemodelan sistem Massa-Pegas-Damper seperti yang diposting disini, merupakan inspirasi dari fungsi alih orde dua secara ideal. Kebanyakan sistem loop-tertutup dan sensor didisain sebagai sistem orde dua untuk analisis yang teliti.

Fungsi alih (Transfer Function) orde dua secara ideal dapat dituliskan sebagai berikut:

Dimana: adalah besarnya penguatan dari sistem, adalah frekwensi alamiah dari sistem dan adalah rasio redaman (damping rasio) dari sistem.

Catatan

Sensor secara tipikal didisain secara linier yang diketahui penguatannya (biasanya K =  1), rasio redaman (damping ratio) sebesar:

dan bandwidth () besarnya paling sedikit 10x dari bandwidth sistem loop-tertutup.

 Pada frekwensi rendah relatif terhadap wn akan menjadi:

Pada frekwensi tinggi relatif terhadap wn akan menjadi:

Dobel integrator   akan mengarah ke 40db/dekade (dalam hal magnitude) pada frekwensi tinggi.

Rasio Redaman (Damping Ratio)

Gambar 1: Magnitude Bode dari fungsi alih orde dua secara ideal

 

Gambar 2: Fasa Bode dari fungsi alih orde dua secara idea

Rasio redaman (damping ratio) berasal dari sistem massa-pegas-peredam seperti yang diposting disini.  Dalam fungsi alih orde 2 secara ideal rasio redaman dapat memberikan efek yang sangat berpengaruh pada respon sistem.

 Catatan:

Frekwensi alamiah yang ditunjukkan dalam gambar adalah  dalam Hz, begitu juga dalam persamaan 1adalah dalam rad/s Konversi antara dua parameter adalah: .

Gambar 1 menunjukkan bahwa peak magnitude dari fungsi alih tergantung kepada  dan . Mengatur penguatan sistem secara keseluruhan adalah sangat sederhana, juga parameter K tidak begitu dipentingkan. Namun, tidak ada cara untuk mengkompensasi atau menyesuaikan   dalam sistem nyata. Gambar 2 menunjukkan ketergantungan pergeseran fasa pada dengan . Jelas bawah dengan paling kecil, pergerakan fasa 0 sampai -180 derajat sangatlah cepat sekali.

Catatan:

Ketika pemodelan  sistem mencocokkan dengan data fasa yang terukur, jalan yang terbaik adalah mencocokkan dibandingkan dengan magnitude. Pengukuran akan terjadi pada titik dikrit dan akan melewatkan puncak magnitude yang sebenarnya. Pecocokan kemiringan pergeseran fasa akan memberikan yang terbaik dengan mencocokkan dengan .

Puncak Magnitude (Peak Magnitude)

Puncak Magnitude merupakan fungsi . Hubungan ini adalah sebagai berikut:

Gambar 3: Bode Plot memberikan detail besarnya puncak magnitude

 

 

Frekwensi puncak (Peak Frequency)

Frekwensi dari puncak magnitude tidak sama dengan . Walaupun dan sangat dekat hubungannya. Hubungan antara dan sebagai berikut:

 

 

 

 

 

 

 

Posted in scilab, Teori | Tagged , | Leave a comment

GIMP: program open source manipulasi gambar

 

Karena aku sudah terbiasa di dunia elektronik, dalam keseharian kalau lagi menganggur dirumah biasanya langsung ngenet, mengelana dunia lewat jalur maya. Apalagi kecepatan internet cukup lumayan cepat menggunakan USB-SmartFren, aku tambahkan antena yagi diatap genteng biar dapat sinyal EVDO dan aku arahkan ke Tlogomas. Posisiku di sengkaling tepat didepan Taman Rekreasi Sengkaling, memang tidak mendapatkan sinyal EVDO. Antena aku buat sendiri, lain kali akan aku posting disini bagaimana cara membuatnya.

Kalau lagi mengelana lewat internet, memang tanpa terasa menghabiskan waktu berjam-jam. Tapi itu tanpa terasa, apalagi disediakan secangkir kopi yang bisa tersedia secara otomatis. Apa lagi yang menyediakannya adalah mantan pacar saya, yang telah menemani hidup sampai saat ini 21th. Oleh karena itu nikmatilah hidup dengan penuh kesabaran: LOVE + love akan memperoleh cinta yang abadi.

Langsung aku akan membahas tentang software yang dapat digunakan untuk memanipulasi gambar. Aku menggunakan program yang sudah barang tetntu yang gratisan atau open source digunakan untuk memanipulasi gambar. Awalnya aku butuhkan untuk membuat background gambar menjadi transparent mengikuti background yang ada di halaman blog. Dengan background mengikuti backgroud blog, akan terlihat gambarnya menyatu dan tidak seperti tempelan. Dua foto merupakan hasil manipulasi dengan menggunakan GIMP.

Situs resmi GIMP adalah http://www.gimp.org. GIMP singkatan dari  GNU Image Manipulation Program, yang disediakan secara gratisan atau open source.

Download, selajutnya installah dalam komputer anda, kemudian jalankan.

Memanipulasi gambar dengan background transparency

  • Jalankan program
  • Buka file gambar yang akan dimanipulasi

  • Sorot Layer -> Transparency -> Add Alpha Channel

  • Pilih icon Fuzzy Select Tool

  • Klik daerah yang akan di transparency

  • Kemudian sorot Edit -> Clear atau tekan tombol del

  • Lakukan cara yang sama untuk daerah lainnya. Dan simpan dengan ektensi .png atau .gif.

Selamat mencoba semoga bermanfaat.

 

Posted in Program open source, Web | Tagged , , | 2 Comments

Sistem orde dua: model

Isi materi ini ditujukan untuk berbagi ilmu pengetahuan kepada semua pengunjung blog ini.
Silakan digunakan untuk kepentingan proses pembelajaran untuk mencerdaskan bangsa ini dengan tidak lupa menyebutkan sumbernya.
Namun yang harus dihidari adalah: mengambil isi dengan mengakui sebagai haknya, mengambil isi untuk tujuan komesialisasi.
Semua tergantung kepada hati-nurani, jika terjadi saya berkewajiban mengingatkan para plagiator. Biasakan sesuatunya terlahir dari tangan anda, itu menunjukkan bahwa anda ada dan anda diberi hidayah sebagai ciptaanNya yang paling mulia untuk memberikan manfaat di dunia ini. Biasakanlah memberikan manfaat kepada orang lain, dan jangan membiasakan memanfaatkan orang lain.

Dalam sistem kontrol seringkali fungsi alih sistem closed-loop didekati menjadi sistem orde dua. Karena sistem orde dua mudah dianalisis dan mudah pemodelannya. Dalam sistem oder dua pemodelannya dapat didekati secara pemodelan mekanik seperti berikut ini:

Sebuah massa (m) dicantolkan ke pegas (spring) dan peredam (damper). F adalah gaya luar yang diberikan pada massa. Dalam contoh tidak dimasukkan, karena gaya F itu berada pada massa yang tergantung percepatannya atau x”.
Besarnya gaya F akan bergantung dengan jarak pergerakan kekiri yaitu x.
Kalau massa bergerak, maka gaya tergantung kepada percepatan massa itu sendiri.
Pemodelan tersebut dapat dijelaskan sebagai berikut:
  1. Jika massa m dibuat bergerak kekiri sejauh x dengan percepatan tertentu (x”), maka terdapat total gaya yang diberikan kepada massa tersebut.
  2. Total gaya akan dilawan dengan pegas (spring) dan peredam (damper)
  3. Dalam keadaan setimbang total gaya antara point 1 dan 2 adalah sama

Dengan memperlakukan massa sebagai benda bebas dan menerapkan hukum kedua Newton, total gaya pada massa adalah:

Dimana:

 adalah percepatan massa (m/s2)
   adalah jarak pergeseran massa (m) relatif terhadap titik referensi awal

 Gaya lawan total adalah gaya yang diakibatkan oleh pegas (spring – Fs) dan gaya yang diakibatkan oleh peredam (damper – Fd) dengan tanda negatip:

Persamaan di atas jika digabungkan akan membentuk persamaan gerak, sebuah orde dua persamaan diferensial perpindahan x sebagai fungsi waktu t (dalam detik).

 

Jika disusun kembali akan diperoleh:

Selanjutnya untuk menyederhanakan persamaan, kita definisikan:

Parameter pertama adalah disebut frekuensi alamiah dari sistem (undamped-tidak teredam) .

Parameter kedua adalah disebut rasio redaman. Frekuensi alami merupakan frekuensi sudut, dinyatakan dalam rad/s. Rasio redaman adalah besaran tak memiliki satuan.

 Setelah disubtitusi persamaan diferensialnya menjadi:

Dalam sistem kontrol fungsi alih didekati dengan persamaan orde 2, dimana variabel yang digunakan adalah s sebagai pengganti diferensial. Dengan pendekatan orde dua ini, sistem mudah dirancang dengan menentukan penguatan, frekwensi alamiah dan rasio redaman. Selain itu parameter kontrol dapat dihitung seperti: Peak Magnitude, Peak Frequency, Time Overshoot, Overshoot Magnitude.

 

Posted in Sistem Kontrol, Teori | Tagged , | Leave a comment

Belajar Scilab: sebagai kalkulator

Isi materi ini ditujukan untuk berbagi ilmu pengetahuan kepada semua pengunjung blog ini.
Silakan digunakan untuk kepentingan proses pembelajaran untuk mencerdaskan bangsa ini dengan tidak lupa menyebutkan sumbernya.
Namun yang harus dihidari adalah: mengambil isi dengan mengakui sebagai haknya, mengambil isi untuk tujuan komersialisasi.
Semua tergantung kepada hati-nurani, jika terjadi saya berkewajiban mengingatkan para plagiator. Biasakan sesuatunya terlahir dari tangan anda, itu menunjukkan bahwa anda ada dan anda diberi hidayah sebagai ciptaanNya yang paling mulia untuk memberikan manfaat di dunia ini. Biasakanlah memberikan manfaat kepada orang lain, dan jangan membiasakan memanfaatkan orang lain.

Jika anda belum mengetahui apa software Scilab silakan baca posting ini.

Agar lebih terbiasa menggunakan Scilab, terlebih dahulu mengetahui cara memberikan instruksi Scilab melalui console secara manual. Disini akan dijelaskan bagaimana memperlakukan atau menggunakan Scilab sebagai kalkulator, mulai yang sederhana sampai ke perhitungan komplek.

Running terlebih dahulu scilab pada komputer anda sampai keluar prompt pada console:

–>

-->a=3.4
 a  =
    3.4  

-->b=2;

-->c=-2.34
 c  =
  - 2.34

Perintah diatas maksudnya adalah:

  1. a=3.4
    variabel a diisi dengan nilai 3.4
  2. b=2;
    variabel b diisi dengan nilai 2, isi nilai tidak ditampilkan karena diakhiri dengan ;
  3. c=-2.34
    variabel c diisi dengan nilai 2.34

Dalam scilab disebelah kiri adalah nama variabel yang didefinisikan sendiri oleh anda, namun scilab membedakan antara huruf besar dan huruf kecil. Penamaan variabel harus diawali dengan huruf, selanjutnya bisa kombinasi karakter lainnya, silakan coba sendiri agar lebih meyakinkan. Setelah variabel a, b dan c diisi dengan nilai, seterusnya tetap ada sampai isinya diubah atau dibersihkan.

Dari variabel a, b dan c diatas akan diperlakukan secara numerik sebagai berikut:

-->w=a+b+c         // instruksi 1
 w  =
    3.06  

-->z=a/b+sqrt(c)   // instruksi 2
 z  =
    1.7 + 1.5297059i  

-->p=w/z          // instruksi 3
 p  =
    0.9946463 - 0.8950095i  

-->sqrt(p)       // instruksi 4
 ans  =
    1.0799747 - 0.4143660i

-->sin(a)+cos(b)+tan(c)     // instruksi 5
 ans  =
    0.3612371 

Pada setiap akhir perintah diatas disisipkan ‘//’ berfungsi kalau anda ingin memberikan catatan, ini sama dengan gaya pemrograman bahasa C.

  • Intruksi 1 diatas sama dengan fungsi matematika biasa yaitu menjumlahkan isi dari variabel a, b dan c, hasilnya disimpan di variabel w.
  • Intruksi 2, variabel z diisi dengan hasil bagi a dan b ditambah dengan akar kwadrat c, menghasilkan bilangan komplek karena nilai c adalah negatip.
  • Intruksi 3 variabel p merupakan hasil pembagian bilangan komplek yaitu w/z, z adalah bilangan komplek. Dengan Scilab operasi bilangan komplek akan menjadi lebih mudah dihitung.
  • Intruksi 4, perintah secara immidiate (seketika) yaitu tanpa ada variabel perantara. Biasanya diletakkan dalam buffer scilab, dengan nama ans (answer). Untuk melihat isi dari jawaban sekarang, langsung pada console ketik ans. Dapat juga ans dilibatkan dalam perhitungan.
  • Intruksi 5, perintah ini juga dilakukan secara seketika tanpa variabel perantara. Operasi trigonometri, isi variabel a, b dan c dalam bentuk radian, bukan dalam bentuk derajat.

 Menghapus definisi variabel

 Untuk menghapus salah satu variabel yang telah didefinisikan oleh scilab gunakan perintah:

-->clear a
-->clear b
-->clear c

Intruksi clear diikuti dengan nama variabel yang akan dihapus. Untuk menghapus semua variabel dalam scilab gunakan intruksi:

-->clear all

Memberi nilai kedalam variabel matrik

Misal kita meginginkan sebagai variabel t untuk penyebutan waktu akan diisi dengan nilai: 0, 1, 2, 3, 4. Ini adalah sebuah matrik baris, cara memberikan perintah adalah:

-->-->t=[0 1 2 3 4]
 t  =

    0.    1.    2.    3.    4.  

Isi variabel t adalah matrik 1 baris 4 kolom. Namun kalau nilai perubahan deretnya telah diketahui, dapat dilakukan perintah secara sederhana yaitu:

-->t=0:0.1:2*%pi
 t  =

         column  1 to 17

    0.    0.1    0.2    0.3    0.4    0.5    0.6    0.7    0.8    0.9
    1.    1.1    1.2    1.3    1.4    1.5    1.6  

         column 18 to 34

    1.7    1.8    1.9    2.    2.1    2.2    2.3    2.4    2.5    2.6
    2.7    2.8    2.9    3.    3.1    3.2    3.3  

         column 35 to 51

    3.4    3.5    3.6    3.7    3.8    3.9    4.    4.1    4.2    4.3
    4.4    4.5    4.6    4.7    4.8    4.9    5.  

         column 52 to 63

    5.1    5.2    5.3    5.4    5.5    5.6    5.7    5.8    5.9    6.
    6.1    6.2  

Disini t diisi dengan nilai mulai 0 sampai 2xpi atau 360 derajat dengan pertambahan nilai 0.1.

Dalam scilab nilai pi sudah didefinisikan, namun dalam penggunaannya harus didahului dengan karakter “%”, artinya variabel yang didefinisikan scilab. Selanjutnya dicoba menggunakan fungsi sin dengan nilai masukan sesuai dengan nilai yang ada pada variabel t.

-->s=sin(t)
 s  =

         column 1 to 9

    0.    0.0998334    0.1986693    0.2955202    0.3894183    0.4794255
    0.5646425    0.6442177    0.7173561  

         column 10 to 18

    0.7833269    0.8414710    0.8912074    0.9320391    0.9635582    0.9854497
    0.9974950    0.9995736    0.9916648  

         column 19 to 27

    0.9738476    0.9463001    0.9092974    0.8632094    0.8084964    0.7457052
    0.6754632    0.5984721    0.5155014  

         column 28 to 36

    0.4273799    0.3349882    0.2392493    0.1411200    0.0415807  - 0.0583741
    - 0.1577457  - 0.2555411  - 0.3507832

         column 37 to 45

  - 0.4425204  - 0.5298361  - 0.6118579  - 0.6877662  - 0.7568025  - 0.8182771
  - 0.8715758  - 0.9161659  - 0.9516021  

         column 46 to 54

  - 0.9775301  - 0.993691  - 0.9999233  - 0.9961646  - 0.9824526  - 0.9589243
  - 0.9258147  - 0.8834547  - 0.8322674  

         column 55 to 63

  - 0.7727645  - 0.7055403  - 0.6312666  - 0.5506855  - 0.4646022  - 0.3738767
  - 0.2794155  - 0.1821625  - 0.0830894  

Seluruh nilai di t, dihitung nilai sin dan disimpan dalam variabel s. Isi s adalah hasil semua perhitungan sin.

Bagai mana cara menggambarnya atau plot ?

Gunakan perintah berikut:

-->plot(t,w)

Secara otomatis akan menghasilkan gambar seperti berikut ini:

Sekian dulu posting kali ini ya, tentunya akan dilanjutkan pada posting lainnya.

Semoga bermanfaat bagi pengunjung situs ini.

Referensi

Introduction to Scilab

Download


Scilab for Dummy

Download

 

 

Posted in Program open source, scilab | Tagged , | Leave a comment

SCILAB: matlab open source

Isi materi ini ditujukan untuk berbagi ilmu pengetahuan kepada semua pengunjung blog ini.
Silakan digunakan untuk kepentingan proses pembelajaran untuk mencerdaskan bangsa ini dengan tidak lupa menyebutkan sumbernya.
Namun yang harus dihidari adalah: mengambil isi dengan mengakui sebagai haknya, mengambil isi untuk tujuan komersialisasi.
Semua tergantung kepada hati-nurani, jika terjadi saya berkewajiban mengingatkan para plagiator. Biasakan sesuatunya terlahir dari tangan anda, itu menunjukkan bahwa anda ada dan anda diberi hidayah sebagai ciptaanNya yang paling mulia untuk memberikan manfaat di dunia ini. Biasakanlah memberikan manfaat kepada orang lain, dan jangan membiasakan memanfaatkan orang lain.

Selamat tinggal MATLAB, selamat datang SCILAB

Kalangan Perguruan Tinggi di luar negeri, terutama eropa, selalu mencitrakan dirinya sebagai pemrakarsa software berbasis open source. Biasanya pemunculannya sebagai alternatif dari software yang bersifat komersial.

Anda masih ingat software MATLAB, yang begitu mahal harganya sebagai alat bantu yang biasa digunakan oleh engineering. Namun juga lahir yang memiliki fungsi sama namun open source alias gratis, yang diberi nama SCILAB. Merupakan software “Free Open Source for Numerical Computation”, memungkinkan anda melakukan operasi komputasi secara programming, simulasi, pemodelan bahkan embedding software.

Lebih lanjut tentang software ini kunjungi situs resminya di: http://www.scilab.org

Sebelum menginstall software ini silakan download dulu disini. Untuk platform os yang lainnya silakan download di situs resminya. Kebetulan saya menginstall di sistem operasi Windows XP. Kemudian install di komputer anda, saya tidak akan menjelaskan cara installnya, karena sangat mudah dilakukan walaupun tanpa panduan.

Saya menyarankan agar saat menginstalasi komputer anda terhubung dengan jaringan internet, karena bila ada kekurangan file yang harus diinstall, akan secara otomatis didownload dari situs resminya.

Tanpa basa-basi langsung saja coba untuk menghitung:

Masih ingat yang namanya polynomial, kalau sampai pangkat 2 seh bisa ngitung kan diajari di SMP/SMA. Tapi kita coba dengan menggunakan SCILAB, pasti tambah mudah.

Saat dirunning pertama kali akan muncul yang namanya pompt: –>

Dari prompt itulah kita biasa memberikan perintah kepada SCILAB.

Mendefinisikan polynomial

Misal terdapat persamaan: F1 = 9 . X3 + 2,3 X2 + 7 . X + 9

Coba hitung secara manual berapa akar-akarnya, dengan cara seperti yang diajarkan di matakuliah matematika. Pasti puyeng tujuh keliling.

Dengan SCILAB yah gak puyeng.

  1. Mendefinisikan variabel x sebagai variabel polynomial
    –> x = poly(0,’x’)
  2. Definisikan F1 = 9 . X3 + 2,3  . X2 + 7 . X + 9
    –> F1 = 9*x^3+2.3*x^2+7*x+9 (case sensitive, huruf kecil dan besar berbeda)
  3. Hitung akar-akarnya
    akar = roots(F1)

Inilah rekaman dalam console scilab

Startup execution:
  loading initial environment

-->x=poly(0,'x')
 x  =

    x   

-->f1=9+7*x+2.3*x^2+9*x^3
 f1  =

                 2    3
    9 + 7x + 2.3x + 9x   

-->roots(f1)
 ans  =

    0.2785544 + 1.0737447i
    0.2785544 - 1.0737447i
  - 0.8126644

So pasti anda akan puyeng tujuh keliling, karena akarnya adalah:

  • akar 1 =  0.2785544 + 1.0737447i
  • akar 2 =  0.2785544 – 1.0737447i
  • akar 3 =  – 0.8126644

Dua akarnya adalah bilangan komplek, yang tidak mungkin dilakukan dengan menghitung hanya berbekal teori-teori diperkuliahan. Inilah karya orang yang rela memeras akal-pikirannya untuk digunakan secara luas dengan secara gratisan, ini termasuk ibadah.

Jadi posisi SCILAB harus diletakkan sebagai tool atau alat bantu untuk perhitungan, sehingga kita dapat memikirkan tentang hal lainnya yang memiliki tingkat kesulitan yang lebih tinggi.

Mencari persamaan polinomial dengan memasukkan akar-akarnya

Kalau anda memiliki akar-akar polynomial, dan ingin mengetahui persamaannya, SCILAB bisa melakukan hal yang terbalik. Misal anda memiliki akar-akar polynomial: 1.2, -4, 18, 8

-->x=poly(0,'x')
 x  =

    x   

-->akar=[1.2 -4 18 8]
 akar  =

    1.2  - 4.    18.    8.  

-->F2=poly(akar,"x","roots")
 F2  =

                        2       3   4
  - 691.2 + 528x + 66.4x - 23.2x + x

Yang ini seh, mudah dilakukan, tinggal dihitung berdasarkan: (x – 1,2)(x+4)(x-18)(x-8).

Tapi……..opo yoh iso cepet marih tha, yaoh iso salah itung.

Kita sebagai dosen jangan anti-pati dengan adanya software ini, justru harus memperkuat dan memperbaiki proses pembelajaran kepada anak didik kita agar lebih maju, dan harus disesuaikan dengan perkembangan jaman. Kita yang harus mengikuti jaman bukan kita yang dimakan jaman, karena jaman adalah kita-kita semua yang menentukannya.

Menurut saya matakuliah matematika diperkuliahan khususnya engineering harus dirombak, agar bisa diarahkan menjadi matakuliah aplikasi yang bisa diterapkan untuk menyelesaikan permasalahan engineering. Jadi bukan hanya menyelesaikan secara umum, namun secara aplikasi dengan menggunakan sarana program yang sudah semakin maju.

Untuk itu diperlukan seorang dosen yang piawai didalam menyesuaikan proses pembelajarannya sesuai dengan perkembangan jaman. Inilah tuntutan seorang dosen diabad yang modern ini.

Sekian….akan dilanjut lagi di posting lainnya.

Referensi

Introduction to Scilab

Download


Modelling and Simulation in Scilab/Scicos

Download

 

 

Posted in scilab | Tagged , , | Leave a comment

Cara menambah widget status pengunjung web

Disini saya akan berbagi pengalaman bagaimana cara menambahkan widget status kunjungan pada sidebar blog anda. Disini saya menggunakan blog wordpress yang disediakan oleh Universitas Brawijaya. Kegunaan status kunjungan ini untuk mengetahui secara realtime tentang: Total kunjungan, Sebaran kunjungan, Pengunjung hari ini, Peta bumi negara pengunjung dan lainnya.

Pada prinsipnya adalah terdapat penyedia jasa server untuk menghitung pengunjung pada blog anda dengan mengenalnya sebagai alamat blog, misal blog saya akan dimonitor kunjungannya dengan alamat: htt://bsiswoyo.lecture.ub.ac.id. Saya banyak mengelana tentang penyedia server penghitung kunjungan, namun saya menemukan yang bisa bekerja secara realtime dan tentunya gratis…tis. Maklum saya tidak mau mengeluarkan kocek untuk ini, wong ada yang gratisan kok.

Alamat penyedia server adalah: http://geovisites.com

Kalau belum punya account, yah mampir dulu dialamat diatas dan registrasi tentunya. Anda akan ketemu dengan halaman web berikut ini:

Selanjutnya:

  1. Pilih bahasa yang anda suka
  2. Klik “Sign UP – Register”
  3. Isilah isian dengan benar, terutama yang tidak boleh salah: Email, URL, Location. URL adalah alamat blog anda halaman depan secara lengkap.
  4. Teruskan sampai dapat account, biasanya dikirim ke email anda. Gunakan saja email yang sama dengan blog anda.
  5. Masuk ke admin, gunakan user dan password dengan benar.

 

 

Setelah masuk sebagai admin (klik disini: http://geovisites.com/admin), maka tampilannya sebagai berikut:

Anda dimanjakan dengan berbagai fasilitas yang tersedia diantaranya:

  1. Geotoolbar
    Status kunjungan akan muncul dibagian bawah halaman blog anda.
  2. Geoweather
    Anda dimanjakan dengan status tambahan yaitu cuaca di suatu negara.
  3. Geoclock
    Ini merupakan gabungan dengan jam, biar lebih manis kalau kita terbiasa dengan acuan jam.
  4. Geomap
    Menampilkan peta dunia, sehingga negara setiap pengunjung akan ditampilkan pada peta ini.
  5. Geoglobe
    Menampilkan bumi yang berputar-putar, dan tempat negara para pengunjung.
  6. Geocounter
    Menampilkan  detail-detail perhitungan pengunjung secara totalitas.
  7. Geouser
    Menampilkan status user pengunjung, IP, Negara/Kota
  8. Geochat
    Menyediakan fasilitas chatting antar pemakai jasa ini.

Selanjutnya menambahkan ke widget di sidebar blog anda, caranya:

  1. Tentunya masuk dulu lah ke blog anda.
  2. Pilih menu: Appearance :> Widgets
  3. Tergantung template anda: biasanya minimal menyediakan 1 sidebar. Bagi pengguna blog lecture.ub.ac.id, telah diijinkan penggunakan javascript pada widget.  Namanya adalah “HTML Javascript adder”, makasih berat pak blogadmin.
  4. Tambahkan widget “HTML Javascript adder” di sidebar anda, tentunya sesuai posisi yang disukai.
  5. Di widget tersebut harus diisi konten dari Javascript http://geovisites.com, yang telah anda masuki sebagai admin.

Cara mengambil javascript adalah:

  • Di halaman admin, anda bisa memilih salah satu diantara fasilitas yang disediakan. Sebagai contoh adalah “Geocounter”.
  • Klik saja “Geocounter”, kalau diminta memasukkan user/password lagi yah dimasukkan ajah, akan muncul

  • Jika diperlukan konfigurasi hasil tampilannya sesuai dengan selera anda
  • Selanjutnya kopas javascript ke widget di sidebar seperti yang diselaskan diatas.
  • Jangan lupa save.

Coba cek URL blog anda, apakah sudah tampil seperti yang diblog saya. Bisa ditambahkan lebih dari satu fasilitas yang tersedia, namun kopaslah ke widget tersebut dengan menambahkan scriptnya.

Perhatian !

Saat blog ini ditulis, jika anda mengakses dilingkungan  jaringan internet UB, saat anda menguji tampilannya, tidak akan pernah muncul (terdapat kotak kosong), karena tampilan yang dihasilkan oleh javascript diblokir oleh PPTI-UB.

Sebaiknya dicoba diluar jaringan iternet UB.

 

Selamat mencoba…….

 

Posted in Utak atik, Web | Tagged , , , | Leave a comment

Programming Tools for Altera FPGA — Usb Blaster

If you work with an evaluation board from Altera FPGA, you need a suitable programmer for Altera FPGA. One is a programmer called Usb Blaster is intended only for Altera FPGA.
With Usb Blaster was only using the usb interface with your computer. While the interface to an FPGA using JTAG mode.

This tool would be suitable for all Altera FPGA. To install the drivers, drivers are required to be directed manually to the directory where you installed the program.

Thus you do not need to buy an evaluation board equipped with an internal usb. So you are free to choose the evaluation board or you will work with minimal FPGA and compact.

 

Posted in Electronics, fpga | Tagged , , | Leave a comment

4digits 7segment display driver: input 4 BCD with blink

 This module is similar to the module that has been in post here. However, this module is not equipped with an internal RAM, so that as the input is 4-digit BCD. Usually this module is used, if the previous modules has registers or RAM which hold data BCD.

In this module has a 4-digit BCD input in parallel. So that the BCD data provided will be displayed to the 4-digit 7segment.

Block of Module

The function of each i / o of this module are:

  • CLK50MHZ is oscillator about 50MHz.
  • BLINK is input control for flashing the 4 digit 7segment display. Active in logic 1.
  • 4 digit BCD input are called as BCD_DIG0..3. Its function is as much as 4-digit bcd input. This 4 digits bcd input is obtained from the previous module connected to this input.
  • Output of SEG(7:0) is used for pattern of 7segment display. Segments of 4 digit usually are connected in parallel.
  • Output of the SEG (3:0) is used to activate each digit of common anode. Because each digit of 7segment will be displayed in scanning method.

 

 

Source code

Testing module

To test the module is not enough if you use the switch on the evaluation board. One way is to use additional modules in the form of a binary counter. The data of counter will be assigned to the output that connected to input of display module.

The following block diagram as a whole to test the module of  “drive7seg_noram_blink”.

Additional modules is called “test_counter” serves as a counter having 4 bcd output. The other used is  library in ISE AND2 to stop the counter because CLK50MHZ on the block if STOP = 0.

Source code of test_counter module

Posted in Electronics, fpga | Tagged , , | Leave a comment

UART RS232

Serial communication is often used for general applications is RS232. This module is a modification of the module that was created by Dan Pederson, Digileninc, 2004.

Here I made some modifications to the baudrate of the rx / tx can be set manually. Setting baudrate usual through a combination of a switch or a schematic. If you wish to make modifications, please write your profile included in the program comments.

Source code

 

How it works

I will first explain the function of each pin of this module, namely:

  1. BAUD(2:0)
    This pin is 3 bits serves to set baudrate of the TX and RX. There are 8 kinds of combinations baudrate from 000 to 111 are 1200, 2400, 4800, 9600, 19200, 38400, 115200, 115200. Last baudratenya same, so there are only 7 different baudrate. Parity used is odd, 8bits data, stop bit 1.
  2. TX
    This pin is used for transmit data by serially at current baudrate.
  3. RX
    This pin is used for receive data by serially at current barudrate.
  4. CLK
    As base clock at 50MHz.
  5. DBIN
    This pin is used as an 8bits parallel data will bel transmittesd  by serially via the TX pin. This data is provided when TBE = 1 means the bus was empty and ready to accept new data.
  6. DBOUT
    This pin will contain 8bits data has been received by serially via RX pin.  This data will ready if RDA=1.
  7. RDA – Read Data Available
    This pin is used as a flag that the serial data has been received from the RX when RDA=1.
  8. TBE – Transfer Bus Empty
    This pin is used as a flag that the byte to transmit is empty and ready to get a byte again.
  9. RD
    As Read control to get a byte from DBOUT when RDA=1. Active as logic 1.
  10. WR
    As Write control to write a byte to DBIN when TBE=1. Active as logic 1.
  11. PE, FE, OE
    As an indicator of the process of the module.
  12. RST
    As control to reset module and start using baudrate of setting.

Testing

To test this module, additional modules required as a “Top of Module” in ISE. Top module serves to bypass the data from DBOUT sent to DBIN. This means that data is as internal loop. If you use hyperterminal as a tool, then typed data provided in the keyboard will be accepted back as an echo character. Here you will be able to check the function of the module right or wrong.

Source code of top module as follow.

Testing

To test this module, additional modules required as a “Top of Module” in ISE. Top module serves to bypass the data from DBOUT sent to DBIN. This means that data is as internal loop. If you use hyperterminal as a tool, then typed data provided in the keyboard will be accepted back as an echo character. Here you will be able to check the function of the module right or wrong.

Source code of top module as follow.

 

 

Posted in Electronics, fpga | Tagged , , | Leave a comment

4digits 7segment display driver: with blink

This module is the same as the previous module . This module also serve as a  4 digit  7segment display driver. Module has the distinction is equipped with blinking control lines internally, called “blink”. By providing a logic 1 on this channel, automatically display will flash with a certain period.

How it works

As a display controller 7segmen 4digit led by scanning methods. Scan time to 4 digits is 4x8000x1/50uS = 640uS. Each 7segmen equipped with an internal RAM which can be written using the data bus din [3:0], addr [1:0] and control wr. This RAM contains the BCD data to be displayed to each digit 7segmen.

This module is equipped with an internal oscillator in a blink.  Only by providing a logic 1 on input channel “blink”, the display will flash with a certain period. This would make it simpler to control for the display flashes.

Board Used

 To test the module is used fpga evaluation board Spartan3 XC3S200 from Xilinx. Clock Frequency used is 50MHz. 7segmen displays already available in this board as much as 4 digits. It has been designed featuring a multiplex, because each digit is equipped driver transistor to activate each digit. Led every bit connected in parallel.

 

 

 

Block Architecture

Functional pins can be explained as follows:

  • output digout [3 .. 0] is used to enable every digit of 7segmen displays, active logic 0.
  • seg [7 .. 0] as the display pattern data for forming the digits 0-9 and A-F at 7segment display.
  • addr[1..0] as address bus of internal ram for display bcd buffer.
  • din[3..0] as data bus of internal ram.
  • blink as blink control of display. If blink = 1 the display will flash with a certain period. This is useful for applications that require the display blinking mode, for example, to give warning, the setting for the operator, or other.
  • wr as a control writing of data into ram, active at rising edge. 
  • clk50mhz as clock source.

Controller architecture from 7segment drivers provide blinking using the scanning method is described as follows:

Source Code

 

DEMO

YouTube Preview Image

Posted in Electronics, fpga | Tagged , , | Leave a comment

4digits 7segment display driver: noblink

In the electronic systems are usually required to display the measuring value, setting value, and so forth. Thus the required module to interface displays.  This module is not equipped with blinking internal control input. So, we need externally blinking pulse, blinking oscillator. Externally blinking pulse is usually obtained from the previous module. So that the pulse period can be determined in accordance with the previous module state. This module is the same except have been equipped with blinking control internally.

How it works

As a display controller 7segmen 4digit led by scanning methods. Scan time to 4 digits is 4x8000x1/50uS = 640uS. Each 7segmen equipped with an internal RAM which can be written using the data bus din [3:0], addr [1:0] and control wr. This RAM contains the BCD data to be displayed to each digit 7segmen.

This module is not equipped with an internal oscillator in a blink, blink, so input must be adjusted to a specific frequency through an external oscillator. This module is intended to blink period can be adjusted with the desire.

This module was tested using an evaluation board FPGA from XILINX XC3S200 Spartan3. The frequency of the oscillator used in this evaluation board is 50MHz. To display 4 digits, has been available as 4-digit 7segmen display. This display uss a scanning or multiplex method, because each digit is equipped transistor to turn on each digit of 7segmen display. Every bit segment of 7segmen connected in parallel.

 

 

Block architecture

Functional of pins can be explained as follows:

  • output digout [3 .. 0] is used to enable every digit of 7segmen displays, active logic 0.
  • seg [7 .. 0] as the display pattern data for forming the digits 0-9 and A-F at 7segment display.
  • addr[1..0] as address bus of internal ram for display bcd buffer.
  • din[3..0] as data bus of internal ram.
  • blink as blink control of display. If blink = 1 the display will turn off, blink = 0 the display will turn on. This is useful for applications that require the display blinking mode, for example, to give warning, the setting for the operator, or other.
  • wr as a control writing of data into ram, active at rising edge. 
  • clk50mhz as clock source.

Controller architecture from 7segment drivers using the scanning method is described as follows:

Application Circuit

To apply this module is required circuit 7segmen 4 digit display. To display each digit is switched to logic 0 via the output digout [3 .. 0]. While the pattern formed by the ag segment associated with the output of the module seg [7 .. 0], the remaining segment is the dot. The following image is an electronic circuit at least for the application.

Source code

DEMO

YouTube Preview Image

 

Posted in Electronics, fpga | Tagged , , | Leave a comment