Langsung saja pada contoh sistem sederhana. Sebuah putaran motor steper dikendalikan oleh PLC maupun PC (komputer) menggunakan aplikasi Visual Basic (versi 6.0 atau .NET)

Cerita ini lanjutan dari artikel ini http://madajimmy.com/artikel/tutorial/30-pengendalian-motor-steper-menggunakan-plc-keyence-kv-40atp.html 

Diasumsikan sistem berjalan normal yaitu motor berputar jika START ditekan dan berhenti setelah 1 putaran atau STOP ditekan. Arah putaran tergantung dari input FORWARD / REVERSE.

Nah.. kita akan coba melakukan koneksi serial antara PLC dan PC sehingga relay yang berperan bisa kita FORCE ON/FORCE OFF menggunakan Button pada Visual Basic, supaya kita bisa mengendalikan putaran dengan mengeklik tombol pada layar monitor.

Begini caranya… <lanjut>

PLC Keyence KV dapat membentuk komunikasi serial dengan devais dari luar seperti komputer, devais berbasis mikrokontroler atau peralatan lain sepanjang alat tersebut memiliki serial port. (untuk laptop jaman sekarang, perlu tambahan USB-Serial Port Converter).

Persiapan yang perlu dilakukan adalah menyiapkan kabel. Kabel yang digunakan sama dengan kabel untuk pemprogram PLC, jadi tinggal ditiru saja. Jika tidak mau repot, untuk sementara gunakan saja kabel untuk program, dan tinggal mengganti nomor COM nya. Hubungkan kabel dari PLC ke konektor RS232 PC, lalu buka aplikasi Hyperterminal atau sejenisnya.

Set parameter hyperterminal sebagai berikut:

Parameter Nilai
Baud rate 9600bps
Data length 8 bit
Parity check Even (E)
Stop bit length 1
Flow Control None

Buat koneksi baru sesuai COM port yang dihubungkan

Persiapan berikutnya adalah membaca daftar Command/Response pada buku manual programming (Chapter 7).  Tidak banyak perintahnya, hanya sekitar 12 perintah.

Untuk memulai komunikasi, perintah yang kita kirim adalah:

CR

PLC akan merespon dengan:

CC

  • Jika tidak merespon, maka cek sambungan, atau parameter.
  • Jika responnya E0, E1, … atau E5, maka ada kesalahan perintah.
  • Jika respon CC, maka komunikasi sudah terbentuk dan PLC siap menerima perintah.

Untuk mengakhiri komunikasi, gunakan perintah

CQ

PLC akan merespon dengan:

CF

Contoh program Visual Basic 6.0 untuk mengubah status RUN atau STOP pada PLC:

Private Sub CommandRUN_Click()
    MSComm1.Output = "CR" & vbCrLf
    MSComm1.Output = "M1" & vbCrLf
    MSComm1.Output = "CQ" & vbCrLf
End Sub

Private Sub CommandSTOP_Click()
    MSComm1.Output = "CR" & vbCrLf
    MSComm1.Output = "M0" & vbCrLf
    MSComm1.Output = "CQ" & vbCrLf
End Sub

Ringkasan tabel perintah/respons :
catatan: Setiap perintah harus diakhiri dengan karakter cr(carriage return) dan lf (line feed) atau cr saja. Tanda “_” artinya spasi.

Fungsi Perintah Respons Deskripsi
Starts communication CR CC mengawali komunikasi
Ends communication CQ CF mengakhiri komunikasi
Changes mode Mn OK n=0 –> Program
n=1 –> RUN
Clears error ER OK  
Checks PLC error ?E dd dd=Error code, 00 artinya no error
Checks curent PLC mode ?M n n=0 –> Program
n=1 –> RUN
Reads Counter RD_Cnnn f, ,  
Reads Timer RD_Tnnn f, ,  
Reads Contact RD_nnnnn f f=0—> OFF
f=1—> ON
Writes Counter Value WR_Cnnn_ddddd OK n/nnn : Timer/Counter
ddddd: 0..65535
Write Data Memory WE_DMnnnn_dddd OK n: DM no.
d: desimal
Force ON Relay ST_nnnn OK nnn: Relay No.
Force OFF Relay RS_nnnn OK nnn: Relay No.
       

Catatan: tabel ini belum lengkap, untuk lebih lengkapnya, silakan buka buku manual programming Keyence KV40

Perlu diketahui bahwa perintah Force ON dan Force OFF tidak berlaku untuk input, seperti input 0000,0001, dst… Untuk itu perlu kita modifikasi program laddernya jika kita hendak memberi nilai pada input, yaitu dengan cara menambah temporary contact 100x secara paralel.

Modifikasi program ladder seperti berikut:

image

Contoh Program Visual Basic (.NET)

Tampilan Visual Basic .NET untuk pengenalian motor melalui serial port

Download KV40-MotorStepperControl-VB-NET.zip

 

Contoh Program Visual Basic (6.0)

Tampilan Visual Basic 6.0 untuk pengenalian motor melalui serial port

Download KV40-MotorStepperControl-VB6.zip

 

 

Demikian tutorial ini, selamat mencoba.