KOMUNIKASI SERIAL BERBASIS PROTOKOL MODBUS UNTUK ALAT PENGHITUNG PRODUKSI GARMEN Leonardus Catur K.E.P., Harlianto Tanudjaja* Fakultas Teknik Jurusan Teknik Elektro Universitas Katolik Indonesia Atma Jaya *[email protected] 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. Paper ini akan membahas perancangan driver komunikasi serial dengan protokol Modbus ASCII (American Standart Code for Information Interchange). Driver komunikasi serial ini dapat digunakan pada aplikasi perangkat lunak yang memerlukan komunikasi serial dengan suatu perangkat keras. Protokol Modbus ASCII yang didefinisikan sebagai struktur pesan ini, diharapkan berfungsi sebagai lapisan komunikasi suatu tipe jaringan. Komunikasi Modbus ASCII menggunakan teknik master-slave, hanya menggunakan satu master yang dapat melakukan transaksi (disebut ‘queries’). Device yang lain merespon dengan cara memberikan data yang diinginkan ke master device, atau dengan mengambil pesan dalam query. Pembatasan masalah pada penelitian ini, driver komunikasi serial yang dirancang menggunakan bahasa pemrograman Visual C++ dan diimplementasikan pada komunikasi dengan mikrokontroler melalui RS-232. 52 Komunikasi Serial Berbasis Protokol… 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. Protokol modbus serial line adalah suatu protokol Master-Slave. Hanya ada satu Master (dalam waktu yang sama) yang terhubung ke suatu bus, dan satu atau beberapa slave (jumlah maksimum 247) nodes juga terhubung ke serial bus yang sama. Komunikasi modbus selalu diaktifkan oleh Master dan Slave Node tidak pernah mengirim 53 Vol. 01 No. 01, Jan – Mar 2012 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 Pada sistem ini akan digunakan mode unicast. 54 Komunikasi Serial Berbasis Protokol… 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 Beberapa keterangan tentang diagram blok mikrokontroler sebagai slave, untuk pengujian aplikasi komunikasi dengan protokol modbus dapat dilihat pada Gambar 4 dimana fungsi tiap bagiannya adalah sebagai berikut [2]: 55 Vol. 01 No. 01, Jan – Mar 2012 Mikrokontroler AT89S51 berfungsi sebagai pengolah dan pengontrol dari rangkaianrangkaian 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. Karakteristik dari IC MAX232 adalah beroperasi pada tegangan 5 volt, kecepatan pengirimannya 120 kbps (kilo bit per secon). IC MAX232 ini juga dapat diaplikasikan untuk notebook, subnotebook, dan komputer palmtop. Level tegangan antara TTL dan RS-232 dapat saling dikonversikan dengan menggunakan IC Max 232. Nilai untuk logika 56 Komunikasi Serial Berbasis Protokol… “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 1 2 3 4 5 6 7 8 9 3.2.3 Nama CD Rx Tx DTR GND DSR RTS CTS RI Deskripsi Carrier Detect Received Data Transmited Data Data Terminal Ready Ground Data Set Ready Request To Send Clear To Send Ring Indicator Arah Sinyal Input Input Output Output Input Output Input Input Rangkaian RS – 485 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 1 2 Nama RO 3 4 5 DE DI GND 6 A 7 B 8 Vcc RE Deskripsi Receiver Output Receiver Output Enable Driver Output Enable Driver Input Ground Noninverting Receiver Input and Noninverting Driver Output Inverting Receiver Input and Inverting Driver Output Positive Supply 57 Vol. 01 No. 01, Jan – Mar 2012 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 Paper ini menggunakan Modbus serial line protocol yang merupakan protokol dengan prinsip sistem master-slave. Protokol ini berada pada layer 2 dalam model Open System Interconnection (OSI) seperti terlihat pada Tabel 3. Diagram state status Master dan Slave dapat dilihat pada Gambar 7 dan 8 [5], [6]. 58 Komunikasi Serial Berbasis Protokol… Tabel 3. Protokol modbus dan model OSI Layer 7 6 5 4 3 2 1 Model OSI Application Presentation Session Transport Network Data Link Physical Modbus Application Protocol Empty Empty Empty Empty Modbus Serial Line Protocol 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 TimeOut” 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. Ketika jawaban telah diterima, master akan memeriksa jawaban tersebut sebelum mulai memproses data. Pada saat pemeriksaan dapat menghasilkan error, seperti contoh jawaban dari slave yang tidak diharapkan (unexpected slave), atau error yang diterima dari frame. Jika jawaban yang diterima dari unexpected slave, waktu habis 59 Vol. 01 No. 01, Jan – Mar 2012 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 time-out. Ciri-ciri dari Response timeout 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. Jika slave mendeteksi adanya error dalam frame yang telah diterima, tidak ada respon yang kembali ke Master. 60 Komunikasi Serial Berbasis Protokol… 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). Gambar 9. Modbus serial line protocol data unit (PDU) 61 Vol. 01 No. 01, Jan – Mar 2012 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. Gambar 10. Diagram alir proses pengiriman data pada komputer dan pengiriman data pada mikrokontroler 62 Komunikasi Serial Berbasis Protokol… 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 4.2 No Data yang dikirim oleh komputer (master) Tampilan pada seven segment (slave) 1 50 50 2 100 100 3 75 75 4 300 300 5 225 225 Pengujian Sistem secara Keseluruhan Pengujian sistem secara keseluruhan dimulai dari komputer pengawas dengan memasukkan nomor identitas, jumlah target yang diproduksi dan bagian-bagian pakaian yang akan dijahit (misalnya lengan, kerah) terlebih dahulu. Kemudian tekan tombol SEND yang terdapat pada tampilan Visual Basic 6.0, secara langsung nomor identitas dan jumlah target produksi akan ditampilkan pada seven segment. Hasil pengujian dapat dilihat pada Gambar 11.a, 11.b, dan 11.c. 63 Vol. 01 No. 01, Jan – Mar 2012 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. 4. Sistem keseluruhan dapat beroperasi sesuai dengan yang diharapkan. 64 Komunikasi Serial Berbasis Protokol… 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 65