• Tidak ada hasil yang ditemukan

KOMUNIKASI SERIAL BERBASIS PROTOKOL MODBUS UNTUK ALAT PENGHITUNG PRODUKSI GARMEN

N/A
N/A
Protected

Academic year: 2018

Membagikan "KOMUNIKASI SERIAL BERBASIS PROTOKOL MODBUS UNTUK ALAT PENGHITUNG PRODUKSI GARMEN"

Copied!
14
0
0

Teks penuh

(1)

Leonardus Catur K.E.P., Harlianto Tanudjaja* Fakultas Teknik Jurusan Teknik Elektro Universitas Katolik Indonesia Atma Jaya

*hl_ft@yahoo.com

Abstract

Nowadays, technology increases extremely especialy computer technology. It can be used as a device for communication between software with hardware. Because of the technology, the serial

communication driver will be made by using ModBus ASCII protocol, which in this papers show the application in counter production for industrial garment. In this project, it uses Visual C++ programmer as a serial communication program and Visual Basic as the display. As the result of

the experiment, the serial communication program can send the receptive data from counter to computer and can be monitored by computer directly.

Keywords: serial communication, protocol, driver, modbus

I PENDAHULUAN

Teknologi elektronika saat ini berkembang dengan memanfaatkan komputer untuk mendukung setiap kegiatan, baik di bidang industri maupun bidang lainnya. Salah satu manfaat dari sistem komputer adalah dapat digunakan sebagai sarana komunikasi, di mana komputer dapat dimanfaatkan untuk mengontrol dan melakukan monitoring secara jarak jauh, dan menggunakan komunikasi serial. Protokol komunikasi serial yang dirancang berguna untuk menghubungkan antara perangkat lunak yang terdapat di komputer (master) dengan perangkat keras mesin produksi (slave). Salah satu masalah dalam komunikasi untuk mesin produksi yang dikeluarkan pabrik adalah protokol yang tidak compatible dengan sistem operasi atau perangkat lunak yang terdapat di komputer. Perangkat lunak ini secara umum dikenal dengan driver yang di-install pada sistem perangkat lunak pendukung.

(2)

2. TEORI

2.1 Komunikasi Serial

Komunikasi serial dibagi menjadi dua jenis, yaitu komunikasi sinkron dan asinkron. Komunikasi data serial secara sinkron merupakan bentuk komunikasi yang memerlukan sinyal clock untuk sinkronisasi, dimana sinyal clock akan tersulut pada setiap bit pengiriman data, sedangkan komunikasi asinkron tidak memerlukan sinyal clock sebagai sinkronisasi. Pengiriman data pada komunikasi serial dilakukan mulai dari bit yang paling rendah (LSB) hingga bit yang paling tinggi (MSB) [1], [2].

Dalam sistem yang dirancang, digunakan komunikasi secara asinkron sehingga sinyal clock tidak dikirim bersamaan dengan data. Seperti telah disebutkan sebelumnya, komunikasi asinkron tidak memerlukan sinyal clock sebagai sinkronisasi, namun pengiriman data ini harus diawali dengan start bit dan diakhiri dengan stop bit. Sinyal clock yang merupakan baud rate dari komunikasi data ini dibangkitkan oleh penerima maupun pengirim data dengan frekuensi yang sama. Penerima hanya perlu mendeteksi adanya start bit sebagai awal pengiriman data, selanjutnya komunikasi data terjadi antar dua buah shift register yang ada pada pengirim maupun penerima. Setelah 8 bit data diterima, maka penerima akan menunggu adanya stop bit sebagai tanda bahwa 1 byte data telah terkirim dan penerima dapat siap untuk menunggu pengiriman data berikutnya.

Dalam aplikasinya, proses komunikasi asinkron ini selalu digunakan untuk mengakses komponen-komponen yang mempunyai fasilitas UART (Universal Asynchronous Receiver/Transmitter), seperti port serial komputer atau port serial mikrokontroler.

2.2 Protokol

Protokol merupakan sekumpulan aturan yang mendefinisikan beberapa fungsi seperti pembuatan hubungan, mengirim pesan, serta memecahkan berbagai masalah khusus yang berhubungan dengan komunikasi data antara alat–alat komunikasi tersebut supaya komunikasi dapat berjalan dan dilakukan dengan benar [1].

2.3 TCP/IP

Transfer Control Protocol/Internet Protocol (TCP/IP) merupakan sebuah protokol yang digunakan pada jaringan Internet. Protokol ini terdiri dari dua bagian, yaitu TCP dan IP. Kedua protokol tersebut digunakan untuk menyatakan sekelompok protokol yang memiliki kaitan dengan TCP/IP, seperti User Datagram Protocol (UDP) dan Terminal Emulating Protocol (TEP).

2.4 Modbus

Modbus didefinisikan sebagai aplikasi dari lapisan protokol message, posisinya berada di level 7 pada model OSI yang menghasilkan hubungan komunikasi “client/server” antar device dalam berbagai tipe network. Hal tersebut merupakan standarisasi yang juga spesifik protokol pada jalur serial, untuk mengubah permintaan modbus di antara sebuah master dan satu atau lebih dari slave-nya.

(3)

data tanpa menerima permintaan dari Master. Tiap Slave tidak pernah berkomunikasi satu sama lain, karena Master node akan memulai jika satu transaksi modbus di saat yang sama.

Pada level fisiknya, modbus dengan sistem Serial Line dapat menggunakan interface yang berbeda (RS-485, RS-232). TIA/EIA-485 (RS-485) Interface Two-Wire (interface dengan 2 buah kabel) adalah yang paling umum. Sebagai suatu pilihan tambahan, RS-485 Four-Wire interface (interface dengan 4 buah kabel) dapat juga diimplementasikan. TIA/EIA-232-E (RS-232) serial interface dapat juga digunakan sebagai interface, ketika komunikasi yang pendek dari satu titik ke titik lain diperlukan.

Master node mengeluarkan permintaan modbus ke Slave node dalam 2 mode: 1. Dalam unicast mode, master menunjukan pengalamatan slave secara sendiri-sendiri.

Setelah menerima dan memproses permintaan, slave akan mengirim jawaban ke master. Pada mode ini, transaksi Modbus berisikan 2 messages: permintaan dari master, dan jawaban dari slave. Tiap Slave harus memiliki ciri alamat (dari 1 – 247) jadi tiap alamat dapat bebas dari nodes yang lain.

2. Dalam broadcast mode, master dapat mengirimkan permintaan ke semua slave. Tidak ada respon yang dikembalikan pada permintaan broadcast yang dikirim oleh master. Permintaan broadcast memerlukan perintah penulisan dan semua device harus menerima broadcast sebagai fungsi penulisan. Pengalamatan 0 sebagai pemesan untuk identifikasi perubahan broadcast.

Gambar 1. Unicast Mode

Gambar 2. Broadcast Mode

(4)

3 PERANCANGAN SISTEM

Pada perancangan sistem akan dijelaskan mengenai diagram blok sistem, format data serial, perangkat keras yang akan digunakan, dan protokol Modbus. Secara garis besar sistem yang dirancang adalah sebagai berikut : Komunikasi serial ini akan mengendalikan pengiriman dan penerimaan perintah agar sesuai dengan yang diinginkan pengirim. Diagram blok sistem dapat dilihat pada Gambar 3. Perangkat keras digunakan sebagai sarana untuk pengujian dari komunikasi serial dengan prokol berbasis modbus. Perangkat keras sebagai slave dan komputer sebagai master.

3.1 Diagram Blok Sistem

Setiap station produksi akan mengirimkan data ke komputer pengawas dengan sinyal–sinyal melalui metode daisy chain. Data yang masuk pada driver akan diproses sesuai permintaan dari station (master) dan data yang masuk tadi akan terlihat pada komputer. Kemudian data yang telah masuk dikirim kembali dari driver ke station dengan cara pengiriman sinyal yang dilakukan secara polling melalui metode daisy chain

Gambar 3. Diagram blok sistem

3.2 Perangkat Keras

3.2.1 Mikrokontroler

(5)

 Mikrokontroler AT89S51 berfungsi sebagai pengolah dan pengontrol dari rangkaian-rangkaian pendukung.

 Tombol tekan berfungsi sebagai alat penghitung hasil produksi para pegawai, jika pegawai telah menyelesaikan pekerjaannya maka harus menekan tombol ini.

Light Emitting Dioda (LED) berfungsi sebagai indikator dan digunakan untuk menyatakan bahwa station sedang aktif.

Dip Switch berfungsi sebagai penentu alamat dan digunakan untuk identitas perangkat tiap mikrokontroler agar dikenal dalam proses komunikasi serial.

 Kunci digunakan untuk mengunci station pada saat pegawai istirahat.  Seven Segment berfungsi sebagai tampilan.

Gambar 4. Diagram blok mikrokontroler untuk satu station (slave)

3.2.2 Rangkaian RS – 232

Komunikasi serial standar RS-232 adalah komunikasi dua arah yang menggunakan tiga buah kabel. Komunikasi berbasis RS-232 digunakan sebagai standar pada mesin-mesin indrustri. Fasilitas yang disediakan port com pada komputer menggunakan standar RS-232. Untuk komunikasi antara komputer dengan piranti I/O melalui serial port com dengan piranti lain yang mempunyai standar level TTL, diperlukan rangkaian konverter dari level RS-232 ke level TTL dan sebaliknya. Dalam perancangan digunakan IC MAX232.

(6)

“0” level tegangannya 3 V sampai 12 V sedangkan untuk logika “1” level tegangan -3V sampai -12V.

Tabel 1. Susunan kaki pada serial port komputer

No.Pin Nama Deskripsi Arah Sinyal

1 CD Carrier Detect Input

2 Rx Received Data Input

3 Tx Transmited Data Output

4 DTR Data Terminal Ready Output

5 GND Ground -

Serial komunikasi dengan standar RS-232 jarak maksimum diperlukan untuk pengiriman data 12 meter, sedangkan untuk jarak yang lebih jauh diperlukan suatu rangkaian penguat. Dalam industri standar yang dapat digunakan salah satunya standar RS-485. Komunikasi dengan standar RS-485 menggunakan dua kabel. Pada rancangan ini digunakan sistem komunikasi saluran half duplex, yang maksudnya adalah saluran dua arah yang dapat mengirimkan dan menerima data serial menggunakan dua buah kabel. Dengan RS-485 jarak yang dapat ditempuh lebih jauh dari RS-232, yaitu sejauh 4000 feet atau 1200 meter. Nilai logikanya untuk logika “0” level tegangannya 0 V sampai 0.7 V sedangkan untuk logika “1” level tegangan 2.5 V sampai 5 V [2].

Level tegangan pada RS-485 dapat dikonversikan dengan menggunakan IC MAX485. Karakteristik dari IC MAX485 diantaranya merupakan low power transceivers untuk RS-485, dapat mengirimkan dan menerima data rata-rata sampai 2,5 Mbps dan dirancang untuk komunikasi data dua arah (bidirectional).

Tabel 2. Susunan kaki pada IC RS-485

No.Pin Nama Deskripsi

1 RO Receiver Output

2

RE

Receiver Output Enable

3 DE Driver Output Enable

4 DI Driver Input

5 GND Ground

6 A Noninverting Receiver Input and Noninverting Driver Output

7 B Inverting Receiver Input and Inverting Driver Output

(7)

3.3 Perancangan Perangkat Lunak

3.3.1 Format Data Serial

Komunikasi yang dirancang pada sistem ini melalui serial port metode asinkron, yaitu sinyal clock tidak dikirim bersama dengan data. Setiap word disinkronkan dengan start bit, dan sebuah clock internal di kedua sisi untuk menjaga bagian data dapat diterima dengan baik, yaitu saat pengiriman data [3].

Gambar 5. Sinyal gelombang serial TTL/CMOS

Gambar 6. Sinyal gelombang serial RS-232

Gambar 5 dan 6 memperlihatkan format pulsa keluaran serial port dengan format data 8N1, yakni 8 bit data, No parity, dan 1 stop bit. Pada keadaan “menganggur” serial port berlogika Mark (logika “1”). Jika terdapat transmisi data maka diawali dengan start bit yang berlogika “0”. Berikutnya setiap bit sepanjang word dikirim satu per satu. Pengiriman data, Least Significant Bit (LSB) terlebih dulu mengikuti Most Significant Bit (MSB). Untuk mengakhiri transmisi, stop bit diberikan nilai logika 1, yang ditambahkan pada akhir paket data [4].

Pengiriman data dengan metode tersebut disebut framed, yakni frame antara start dan stop bit. Jika stop bit muncul sebagai logika “0”, akan muncul framing error. Hal yang biasa terjadi pada komunikasi 2 komputer yang berbeda sesudah stop bit adalah logika “0”. Ini berarti start bit data berikut, atau langsung diikuti oleh paket data berikutnya. Seandainya terdapat sinyal break, yaitu LSR bit 4 aktif, berarti logika “0” muncul lebih lama dari waktu untuk mengirim paket data satu word. Demikian pula jika line data tidak dikembalikan ke logika 1 (sebagaimana keadaan menganggur) maka akhir dari paket yang diterima diartikan sebagai sinyal break. Saat masih di UART, pulsanya berbentuk TTL. Pada serial port, pulsa sudah seperti pada Gambar 6 yang disebut dengan logika RS – 232. Pulsa berlogika RS – 232 ini muncul pada pin transmit (TD), receive (RD), dan pin serial port yang lain (RTS, CTS, DCD, dan sebagainya).

3.3.2 Perancangan Protokol Modbus

(8)

Tabel 3. Protokol modbus dan model OSI

Layer Model OSI

7 Application Modbus Application Protocol

6 Presentation Empty

5 Session Empty

4 Transport Empty

3 Network Empty

2 Data Link Modbus Serial Line Protocol

1 Physical EIA/TIA-485 (or EIA/TIA-232)

Gambar 7. Diagram status master

Penjelasan diagram status master pada Gambar 7:

 Status “Idle” = tidak menunggu permintaan. Ini merupakan status awal setelah tegangan dinyalakan dan permintaan hanya dapat dikirim melalui status “Idle”. Setelah pengiriman permintaan, master akan meninggalkan status “Idle”, dan tidak dapat mengirimkan permintaan kedua di saat yang sama.

 Setelah permintaan unicast dikirim ke slave, master kemudian menunggu untuk status “Waiting for request” yaitu status menunggu permintaan, dan “Response Time-Out” yaitu waktu untuk merespon telah dimulai. Hal itu untuk mencegah master dari kondisi yang tetap tak terbatas pada status “Waiting for reply”. Hasil dari response time-out adalah aplikasi dependant.

(9)

untuk tanggapan (response time-out) masih berjalan. Jika error terdeteksi dari frame, dapat dilakukan secara bersamaan.

 Jika tidak ada jawaban yang diterima, Response time-out akan tidak berlaku sehingga menghasilkan error. Kemudian Master akan menuju ke status “Idle”, dan memungkinkan dilakukan kembali permintaan. Angka maksimum yang dihasilkan dari pengulangan tergantung dari persediaan Master.

 Ketika permintaan broadcast dikirimkan pada bus serial, tidak ada jawaban yang dikembalikan dari slave. Meskipun demikian penundaan tersebut dimaklumi, master tetap mengizinkan slave manapun untuk memproses permintaan sekarang juga sebelum mengirimkan yang baru. Penundaan ini disebut juga “Turnaround delay”. Oleh karena itu master akan manuju ke status “Waiting Turnaround delay” sebelum kembali ke status “Idle” dan sebelum dapat kembali mengirimkan permintaan selanjutnya.

 Pada unicast, Response time out harus di set cukup panjang untuk slave manapun guna memroses permintaan dan mengirimkan jawaban. Sedangkan pada broadcast penundaan Turnaround harus cukup panjang untuk slave manapun untuk memproses hanya permintaan dan dapat menerima yang selanjutnya. Oleh karena itu, penundaan Turnaround harus lebih pendek dari Response out. Ciri-ciri dari Response time-out adalah dari 1 sampai beberapa detik pada 9600 bps, dan penundaan Turnaround adalah dari 100 ms sampai 200 ms.

Frame error berisi:

1) Pemeriksaan kesamaan yang berlaku untuk tiap-tiap karakter. 2) Redundancy checking yang berlaku untuk seluruh frame.

Gambar 8 memerlihatkan mengenai tindakan yang dilakukan slave. Penjelasan diagram status slave adalah sebagai berikut:

 Status “Idle” = tidak ada menunggu permintaan. Ini merupakan status awal.

 Ketika permintaan diterima, slave akan memeriksa sebelum menggambarkan tindakan permintaan yang akan dilaksanakan terhadap paket tersebut. Perbedaan error yang boleh terjadi: format error pada permintaan merupakan tindakan yang cacat, jika error jawaban harus dikirim kembali ke Master.

 Sesekali memerlukan tindakan yang telah dilakukan, unicast message memerlukan jawaban yang harus di format dan dikirim ke Master.

(10)

Gambar 8. Diagram status dari slave

Pengalamatan Modbus serial line dapat dilihat pada Gambar 9, yang uraiannya adalah sebagai berikut:

 Dalam modbus Serial Line, Address field hanya berisikan Slave address. Seperti yang telah diuraikan sebelumnya, slave yang sah berada pada range alamat 0 – 247 sedangkan slave individu berada pada range alamat 1 – 247. Master akan menunjukkan alamat slave pada alamat message. Ketika slave mengembalikan responnya, akan ditempatkan pada alamatnya sendiri di respon alamat field agar master mengetahui slave mana yang telah merespon.

 Fungsi kode menunjukkan pada server tindakan selanjutnya yang akan dilakukan. Fungsi kode dapat juga dikuti dengan data field yang berisikan parameter permintaan dan respon.

 Pengecekan error merupakan hasil dari perhitungan “Redundancy Checking” yang digambarkan pada isi message. Terdapat 2 metode perhitungan yang digunakan tergantung dari mode transmisi yang sedang digunakan, yaitu Remote Terminal Unit (RTU) atau American Standard Code for Information Interchange (ASCII).

(11)

3.3.4 Perangkat Lunak Sistem

Program Visual C++ digunakan untuk pembuatan program komunikasi serial yang berfungsi mengirimkan data dari komputer sebagai master ke mikrokontroler sebagai slave, dan dari mikrokontroler ke komputer. Penulisan program komunikasi serial dibuat sesuai dengan diagram alir pada Gambar 10. Untuk program pengujian protokol komunikasi berbasis modbus dirancang suatu program aplikasi yang fungsinya untuk melakukan monitoring suatu produksi garment. Program disusun menggunakan Program Visual Basic 6.0 dengan fungsi [7], [8]:

a. Mengawali sistem untuk bekerja sekaligus mengirimkan nilai pada seven segment. b. Melakukan proses pengendali yang dibutuhkan oleh pengawas, seperti penambahan

target produksi.

(12)

4. PENGUJIAN SISTEM

Pengujian sistem secara keseluruhan terbagi menjadi 2 bagian, yaitu: pengujian komunikasi serial dan pengujian sistem keseluruhan dengan program aplikasi untuk melihat proses komunikasi tersebut apakah dapat berjalan dengan baik.

4.1 Pengujian Komunikasi Serial

Pengujian dilakukan dengan mengirimkan data dari komputer (master) ke mikrokontroler (slave), melalui saluran data serial. Pengujian dilakukan dengan mengirimkan jumlah target atau data oleh komputer untuk mengetahui komunikasi antara master (komputer) dan slave (perangkat keras di luar komputer). Apabila data telah terkirim dan diterima dengan baik, data tersebut akan ditampilkan pada seven segment . Hasil pengujian yang dilakukan dapat dilihat pada Tabel 4. Dari hasil pengujian terlihat bahwa sistem telah dapat berjalan dengan baik.

Tabel 4. Pengujian pengiriman data melalui komunikasi serial

No Data yang dikirim oleh

komputer

4.2 Pengujian Sistem secara Keseluruhan

(13)

Gambar 11.a Login master

Gambar 11.b Pemasukan data master

Gambar 11.c Pengujian komunikasi untuk mengetahui status komunikasi

Status komunikasi dapat dipantau pada menu status di bagian master. 5. KESIMPULAN

Dari pengujian yang telah dilakukan, maka dapat dirumuskan kesimpulan sebagai berikut:

1. Sistem aplikasi protokol modbus untuk proses pengiriman dan penerimaan data dari komputer (master) ke alat penghitung produksi (slave) atau sebaliknya dapat bekerja dengan baik.

2. Pengiriman data pada station sesuai dengan alamat protokol yang telah ditetapkan. 3. Komunikasi serial dengan protokol modbus dapat berjalan dengan baik.

(14)

REFERENSI

[1].Wahyono, Teguh, “Prinsip Dasar dan Teknologi Komunikasi Data”, Graha Ilmu, Yogyakarta, 2003.

[2].Scott, MacKenzie, “The 8051 Microcontroller”, PHI New Jersey, 2007.

[3].Edwin, T., “Esensi Pemrograman Berorientasikan Objek dengan Visual C++ 6”, Bayumedia Publishing, Malang, 2004.

[4].Leinecker, R.C. and Archer, T., “Visual C++ 6 Bible”, IDG Books Worldwide Inc., Canada, 1998.

[5].Richard, P., “Child Window”, Elex Media Komputindo, Jakarta, 1996. [6].Willian, Stalling, “Operating System”, PHI New Jersey, 2008. [7].http://www.codeguru.com Komunikasi serial

[8].http://www.modbus.org Protokol modbus

Gambar

Gambar 1. Unicast Mode
Gambar 3. Diagram blok sistem
Gambar 4.  Diagram blok mikrokontroler untuk satu station (slave)
Tabel 1. Susunan kaki pada serial port komputer
+7

Referensi

Dokumen terkait

Hasil penelitian menunjukkan bahwa gaya kepemimpinan yang dominan dimiliki oleh kepala unit di Rumah Sakit Muhammadiyah Gresik (RSMG) adalah gaya kepemimpinan transformasional..

Pada ovarium tampak kista-kista biru kecil sampai kista besar berisi darah tua menyerupai coklat (disebut kista coklat atau endometrioma). Darah tua dapat keluar

Body scrub yang mengangkat sel-sel kulit mati dengan ekstrak minyak zaitun murni yang membersihkan, menyegarkan dan menjadikan kulit

Beberapa ketentuan dalam Peraturan Pemerintah Nomor 28 Tahun 2008 tentang Pengenaan Sanksi Administrasi Berupa Denda di Bidang Kepabeanan (Lembaran Negara

5. Ogan Komering Ilir, Provinsi Sumatera Selatan, Kloter 1 Embarkasi Palembang, No.. 5) Sumardi Harsono Mulyo Dimejo, asal Sokomartani RT 04/19 Mardikorejo –

Dari data voltamogram stripping adsorptif square wave yang diperoleh pada elektroda glassy carbon yang dimodifikasi dengan santon layak untuk penentuan logam

Penelitian ini juga bertujuan untuk mengetahui peranan fungsi Bimbingan Konseling Islam dalam upaya mengembangkan religiusitas remaja dan menekan atau mengontrol kenakalan remaja

Method solve harus menggunakan ketiga accessor method yang dimiliki oleh objek Color, yaitu method getRed, getGreen, dan getBlue untuk mencaritahu current RGB value dari warna