Thursday, 17 March 2016

VB - PLC via SimaticNet

Yang akan kita lakukan adalah membuat komunikasi antara VB dan PLC Siemens melalui SimaticNet. Kali ini kita tidak akan memakai PLC sungguhan tapi memakai aplikasi PLC-SIM.
Tujuan kita pada percobaan kali ini hanya sekedar untuk membaca nilai dari MB 0 dari PLC dan menampilkannya ke form VB.

Yang perlu dipersiapkan adalah:
a. Aplikasi S7 PLC-SIM. aplikasi bawaan dari instalasi Simatic Manager.
b. Aplikasi NetToPLCSim. aplikasi tambahan, bisa download dari sini.
c. Aplikasi Visual Studio 2010 Express, atau versi lain.
d. DLL Libnodave, library tambahan untuk komunikasi via SimaticNet, unduh disini.

Oke, sekarang kita buat dulu program VB nya.
1. Buka VS 2010, buat projek VB baru.
2. Tambahkan References ke DLL Libnodave.


3. Pada form1, tambahkan sebuah tombol (namai btnRead) dan sebuah text box (namai txtVal)


4. Buka jendela code, dan tambahkan script berikut:

Public Class Form1
    Public Shared fds As libnodave.daveOSserialType
    Public Shared di As libnodave.daveInterface
    Public Shared dc As libnodave.daveConnection
    Public Shared res As Integer
    Public Shared plcValue As Byte
    Public Shared memoryRes As Integer
    Public Shared MemoryBuffer(10) As Byte

    Public Shared Sub ConnectPLC()
        fds.rfd = libnodave.openSocket(102, "192.168.1.10")
        fds.wfd = fds.rfd
        di = New libnodave.daveInterface(fds, "IF1", 2, libnodave.daveProtoISOTCP, libnodave.daveSpeed187k)
        di.setTimeout(20000)
        res = di.initAdapter
        dc = New libnodave.daveConnection(di, 2, 0, 0)
        res = dc.connectPLC
        memoryRes = dc.readBytes(libnodave.daveFlags, 0, 0, 1, MemoryBuffer)
        plcValue = MemoryBuffer(0)
        dc.disconnectPLC()
        di.disconnectAdapter()
        libnodave.closePort(fds.rfd)
    End Sub

    Private Sub btnRead_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRead.Click
        ConnectPLC()
        txtVal.Text = plcValue
    End Sub
End Class


5. Simpan projek.

6. Sekarang jalankan aplikasi PLC-SIM.


7. Selanjutnya kita jalankan aplikasi NetToPLCSim, harus dibuka sebagai Admin (klik kanan > Run as admin).


Jika Port 102 sudah berhasil dibuka maka akan muncul tulisan "Port 102 OK"
8. Tambahkan PLC dengan tekan tombol Add.
9. Isi IP Network dan IP PLC Sim, atau bisa dengan browse.


10. Setelah ditambahkan, tekan tombol Start Server.


11. Sekarang jalankan projek VB.
12. Tekan tombol Read, maka value dari MB 0 akan ditampilkan.



Oke, sekian dulu dari kami, terima kasih sudah berkunjung, sampai jumpa lagi.



0 komentar:

Post a Comment

 
Copyright © . HadiSCADA - Posts · Comments
Theme Template by BTDesigner · Powered by Blogger