PLC….

Posted in PLC on September 15, 2009 by prinwibowo

Bismillah….

kali ini saya ingin membahas masalah PLC. Makanan apa tu PLC ? ya ternyata bukan makanan, tp bisa buat cari makan. ( someone says like that, I don`t know exactly). Tapi coba kita pelajari aja apa maunya si PLC ini. oh iya buat para guru dan instruktur PLC, ni hanya dokumentasi saja, jadi mohon kritik dan saran. maaf seperti kebanyakan ngomong ya hahha, okey let us get started…..

PLC (Programmable Logic Controller) itu perangkat logika yang dapat diprogram, jd intinya kembali lagi ke pemrograman. tapi PLC itu tidak seperti diprogram layaknya buat aplikasi dekstop, web, atau mikrokontroller. PLC ini sendiri punya pemrogrammannya sendiri namanya Diagram Ladder (Diagram Tangga) soalnya mirip seperti susunan anak tangga. Jd setelah perangkat ini diprogram dengan ladder diagram maka perangkat ini dapat langsung dihubungkan ke Plant yang berdaya besar seperti motor 3 phasa. Terus ngapain belajar PLC, pake mikrokontroller juga bisa, tinggal tambahin rangkaian interfacenya ke motor ? Betul sekali, pertanyaan ini sering diutarakan oleh banyak orang. Mikrokontroller juga bisa digunakan, akan tetapi PLC ini lebih dispesifikkan ke arah pengontrol yang menggunakan daya-daya besar seperti yang ada di foundry-foundry saat ini. Industri sekarang sudah beralih ke sistem otomatis berbasis PLC, dah ga pake tenaga human beings lagi. PLC itu sebernarnya salah satu perangkat embedded system, sehingga didalam plc itu sendiri sudah terdapat mikrokontroller mungkin juga mikroprocessor. bagaimana cara membuat PLC dengan mikrokontroller entar saya bahas dengan tulisan berikut.

Untuk bisa menaklukan PLC ini dibutuhkan pemahaman dasar teknik digital, dan ini wajib hukumnya dalam dunia PLC. Bagaimana hubungan PLC dengan teknik digital (baik2 aja sampai sekarang, hehe). Jd untuk merancang program Ladder ini kita perlu mengetahui dasar digital, krena kl dilihat dari sisi PLC sendiri itu sangat dan teramat mudah krn hanya berbicara NC, NO, Addresing, timer, counter,dll dan itu semua hanya simbol2 teknik saja. Didalam teknik digital kita perlu tahu apa itu peta K atau tabulasi McCluskey untuk menyederhanakan persamaan digital, dan ini juga dibutuhkan untuk menentukan simbol-simbol apa saja yang perlu digunakan dalam diagram ladder.

Didalam perancangan kontroller PLC kita perlu mengetahui input, output, serta behaviour dari system itu sendiri. apa maksud semua itu, oke saya akan jelaskan satu per-satu:

input -> ini untuk mengetahui jenis sensor yang digunakan, dan apakah tipe sink atau source. (waduh apalagi tu sink atau source, kalau sink berarti tipe sensornya transistor PNP tapi kalau source itu NPN, ini dibutuhkan saat mulai instalasi).

output->ini untuk mengetahui apa plant yang ingin dikendalikan. (apakah gerakan motor pintu otomatis atau mau gerakkan lift).

behaviour-> nah ini sendiri tingkah laku dari sistem yang ingin dikendalikan oleh PLC, dari input dan output yang ada.

contoh kasus lift:

input -> tombol up dan down, buka dan tutup, terus id card detector, overload detector.

output -> tampilan buat nunjukin posisi dilantai berapa liftnya berada, indikator overload, motor pengerak lift.

behaviour-> mungkin pada tahu semua gimana kerja lift (elevator) itu sendiri, dan kerja lift itu lah yang disebut tingkah laku sistem.

waduh dah banyak cerita ni mungkin pembaca dah pada kesel dengan dokumentasi ini. maaf mungkin tulisan berikut akan langsung  ke contoh implementasinya aja kali ya soalnya berhubung belum saya persiapkan tulisannya…

wassallam…

acces windows sharing with Samba

Posted in Linux on November 22, 2008 by prinwibowo

“Samba adalah implementasi dari SMB protocol yaitu protocol yang digunakan oleh sistem operasi MS seperti MS Windows untuk men-sharing file dan printer. Dengan SMB anda bisa mengakses file & printer yang di-share oleh komputer Windows atau men-share file & printer di komputer linux anda”

caranya : install samba di linux, dalam hal ini distro linuxnya ubuntu 7.04

labkom@labkom-desktop:~$ sudo apt-get install samba
Password:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Recommended packages:
smbldap-tools
The following NEW packages will be installed:
samba
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 3341kB of archives.
After unpacking 8184kB of additional disk space will be used.
WARNING: The following packages cannot be authenticated!
samba
Install these packages without verification [y/N]? y
Get:1 http://id.archive.ubuntu.com feisty-updates/main samba 3.0.24-2ubuntu1.2 [3341kB]
Fetched 3341kB in 11s (295kB/s)
Preconfiguring packages ...
Selecting previously deselected package samba.
(Reading database ... 107379 files and directories currently installed.)
Unpacking samba (from .../samba_3.0.24-2ubuntu1.2_i386.deb) ...
Setting up samba (3.0.24-2ubuntu1.2) ...
Generating /etc/default/samba...
tdbsam_open: Converting version 0 database to version 3.
account_policy_get: tdb_fetch_uint32 failed for field 1 (min password length), returning 0
account_policy_get: tdb_fetch_uint32 failed for field 2 (password history), returning 0
account_policy_get: tdb_fetch_uint32 failed for field 3 (user must logon to change password), returning 0
account_policy_get: tdb_fetch_uint32 failed for field 4 (maximum password age), returning 0
account_policy_get: tdb_fetch_uint32 failed for field 5 (minimum password age), returning 0
account_policy_get: tdb_fetch_uint32 failed for field 6 (lockout duration), returning 0
account_policy_get: tdb_fetch_uint32 failed for field 7 (reset count minutes), returning 0
account_policy_get: tdb_fetch_uint32 failed for field 8 (bad lockout attempt), returning 0
account_policy_get: tdb_fetch_uint32 failed for field 9 (disconnect time), returning 0
account_policy_get: tdb_fetch_uint32 failed for field 10 (refuse machine password change), returning 0
Importing accout for root...ok
Importing accout for daemon...ok
Importing accout for bin...ok
Importing accout for sys...ok
Importing accout for sync...ok
Importing accout for games...ok
Importing accout for man...ok
Importing accout for lp...ok
Importing accout for mail...ok
Importing accout for news...ok
Importing accout for uucp...ok
Importing accout for proxy...ok
Importing accout for www-data...ok
Importing accout for backup...ok
Importing accout for list...ok
Importing accout for irc...ok
Importing accout for gnats...ok
Importing accout for nobody...ok
Importing accout for dhcp...ok
Importing accout for syslog...ok
Importing accout for klog...ok
Importing accout for messagebus...ok
Importing accout for avahi-autoipd...ok
Importing accout for avahi...ok
Importing accout for cupsys...ok
Importing accout for haldaemon...ok
Importing accout for hplip...ok
Importing accout for gdm...ok
Importing accout for labkom...ok
Importing accout for sshd...ok
Importing accout for mysql...ok
* Starting Samba daemons... [ OK ]

terus kita coba mengakses sharing file di windows, caranya :

pertama lihat dulu folder yg bisa di share :

smbclient -L nama komputer –> [-L list] untuk buat nampilin daftar folder yang di sharing

contoh :

labkom@labkom-desktop:~$ sudo smbclient -L prinwibowo
Password:
Domain=[MSHOME] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]

  Sharename       Type      Comment
  ---------       ----      -------
  E$              Disk      Default share
  IPC$            IPC       Remote IPC
  share           Disk
  My Disc (D)     Disk
  ADMIN$          Disk      Remote Admin
  C$              Disk      Default share
Domain=[MSHOME] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]

  Server               Comment
  ---------            -------

  Workgroup            Master
  ---------            -------

terus akses foldernya :

caranya :

smbclient “//namakomputer/foldershare”

contoh:

labkom@labkom-desktop:~$ sudo smbclient "//prinwibowo/share"
Password:
Domain=[MSHOME] OS=[Windows 5.1] Server=[Windows 2000 LAN Manager]
smb: \> ls
.                                   D        0  Sun Nov  4 06:03:55 2007
..                                  D        0  Sun Nov  4 06:03:55 2007
ad muncher                          D        0  Sun Nov  4 06:00:52 2007
AdMuncher v4.7.27105.exe            A   473845  Sat Oct 28 10:44:34 2006
compressed                          D        0  Mon Nov  5 16:44:53 2007
Documents                           D        0  Mon Nov  5 16:44:20 2007
music                               D        0  Sun Nov  4 06:03:53 2007
NOD32 Antivirus 3.0.551.0           D        0  Sun Nov  4 06:00:53 2007
Programs                            D        0  Sun Nov  4 09:01:35 2007

          39205 blocks of size 1048576. 38009 blocks available

udah gitu pada prompt dapat diketikkan perintah-perintah yang dipakai di ftp seperti ls, get, put, mget, mput, binary dsb. Kalau sudah selesai ketik saja quit.

contoh (mengambil file AdMuncher v4.7.27105.exe) :

smb: \> get "AdMuncher v4.7.27105.exe"
getting file \AdMuncher v4.7.27105.exe of size 473845 as AdMuncher v4.7.27105.exe (754.9 kb/s) (average 754.9 kb/s)
smb: \> exit
labkom@labkom-desktop:~$ ls
AdMuncher v4.7.27105.exe  Examples
Desktop                   fgs-mapserver_phpmapscript_4.8.2-1.2-linux-i386.bin

untuk mengakses folder share ubuntu dr windows, samba harus dikonfigurasi :

sudo gedit /etc/samba/smb.conf

contoh konfigurasi, tanpa password

pada bagian authentication, ganti :

security=user

dengan :

security=share

terus untuk folder yg di share, seperti ini :

[labkom]
path = /home/labkom
available = yes
browsable = yes
public = yes
writeable=no

restart sambanya :

labkom@labkom-desktop:~$ sudo /etc/init.d/samba restart
* Stopping Samba daemons… [ OK ]
* Starting Samba daemons… [ OK ] 

Tutorial Deteksi Sisi Citra

Posted in Pengolahan Citra Digital on Agustus 31, 2008 by prinwibowo

saya mau sharing info setelah browsing kemana-mana dan setelah masuk hari kedua mata kuliah citra digital. Langsung ke tutorialnya aja ya….

Tutorial ini akan mengajari anda bagaimana cara:
(1) Mendeteksi sisi citra menggunakan metode sobel.

(2) Mendeteksi sisi citra menggunakan metode Laplace.

Karateristik batas sisi dan masalah dasar yang penting di dalam pemrosessan citra. Sisi yang ada dalam citra merupakan area dengan intensitas kontrast yang sangat mencolok (perbedaan intensitas antara satu pixel dengan pixel sekelilingnya). Pendeteksian sisi sebuah citra mengurangi sejumlah data secara signifikan dan menyaring informasi – informasi yang tidak berguna, ketika melindungi properti yang penting dalam sebuah citra. Ada banyak cara melakukan pendeteksian sisi citra. Adapun, mayoritas dari metode yang berbeda dapat digabungkan kedalam dua katagori, gradien dan laplace. Metode gradien mendeteksi sisi dengan mencari nilai derivative (turunan pertama f`(x)) dari sebuah citra. Metode Laplace mencari perpotongan di titik 0 (zero crossing) dalam derivative kedua dari sebuah citra untuk menentukan tepi (sisi-> kata2nya agak diganti :) ). Sebuah tepi memiliki satu bentuk dimensi  dari sebuah kemiringan dan mengkalkulasi derivative dari sebuah citra dapat memperjelas lokasinya. Seandainya kita memiliki sinyal seperti yang dibawah ini, dengan tepi yang ditunjukkan oleh perbedaan intensitas dibawah:

Jika kita mengambil gradien sinyal ini (yang merupakan turunan pertama terhadap t) kita mendapatkan seperti berikut:

Jelas bahwa derivative (turunan) menunjukkan titik maksimal yang terletak pada pusat dari tepi sinyal aslinnya. Metode dari lokasi tepi ini merupakan karakteristik dari keluarga “gradient filter” dari filter pendeteksi tepi dan termasuk metode sobel. Lokasi pixel dideklarasikan sebuah lokasi tepi jika nilai dari gradien melewati beberapa nilai threshold. Seperti yang disebutkan sebelumnya, tepi akan memiliki nilai intensitas pixel yang lebih tinggi ketimbang disekitarnya. Jadi sekali nilai threshold diatur, anda dapat membandingkan nilai gradien dengan nilai threshold dan mendeteksi tepi apakah threshold terlampaui. Selanjutnya, Ketika turunan pertama terletak maksimum, turunan kedua adalah nol. sebagai hasilnya, alternatif lain mendapatkan lokasi tepi adalah mencari titik nol dalam turunan kedua. Metode ini dikenal sebagai laplace (laplacian) dan turunan kedua dari sinyal ini ditunjukkan dibawah:

SOBEL

Berdasarkan analisa satu dimensi ini, teori ini dapat dibawa kebentuk 2 dimensi selama ada sebuah perkiraan yang akurat untuk menghitung turunan dari sebuah citra dua dimensi. Operator Sobel melaksanakan pengukuran gradien 2-D yang terpisah. secara tipikal ini dipergunakan untuk mendapatkan the approximate absolute gradient magnitude at each point in an input grayscale image. Pendeteksi tepi sobel menggunakan pasangan konvolusi 3×3, one estimating the gradient in the x-direction (columns) and the other estimating the gradient in the y-direction (rows). Sebuah topeng konvolusi biasanya jauh lebih kecil ketimbang citra yang sebenarnya. Sebagai hasilnya, topeng tersebut slid over the image, manipulating a square of pixels at a time. Topeng sobel yang sebenarnya ditunjukkan dibawah:

Maka, Magnitudo dari gradien dihitung menggunakan rumus:

Pendekatan magnitudo dapat dihitung menggunakan

|G| = |Gx| + |Gy|

Kode untuk pendeteksi tepi menggunakan sobel dan menggunakan pendekatan gradien diatas dapat anda ambil dengan mengirimkan email ke saya: prinwibowo@yahoo.com dengan subjek “sobel”.

Ikuti

Get every new post delivered to your Inbox.