pembuatan modul interface untuk personal …

4
Proseding Seminar Pengembangan Teknologi Dan Perekayasaan Instrumentasi Nuklir. Serpong 20 Mei 2003 ISSN NO : 1693 - 3346 PEMBUATAN MODUL INTERFACE UNTUK PERSONAL KOMPUTER PRIBADI Ahmad Rifai dan Usep Setia Gunawan - P2PN SATAN Abstrak Telah dibuat sebuah modul interface mampu memberikan cara mudah dalam menginterface PC dengan piranti masukanlkeluaran. Tidak diperlukan bahasa assembly dalam menggunakannya. Modul ini berbasis mikrokontroler seri MCS51 dan menerima perintah dari komputer pribadi melalui port serial. Perintah-perintah tersebut didefinisikan demikian sehingga memudahkan untuk mengendalikan 24 buah jalur masukan/keluaran yang terdapat pada modul tersebiut. Jalur-jalurini dapat dipakai baik sebagai masukan ataupun keluaran sehingga menjadikan modul ini sangat tepat guna. Setiap huruf yang diterima akan memberikan interrupt. Subrutin interupt akan menyimpan huruf tersebut dalam sebuah buffer sampai tanda akhir perintah diterima. Selanjutnya program dalam modul akan menterjemahkan perintah terebut memberikan respons yang sesuai. Abstract A pc-interface module has been developed that provides an easy way to interface PC with I/O devices. This MSC51 microcontroller based module accepts series of commands from a personal computer through a serial port. The commands are defined to easily control 24 I/O lines available on the module. These lines can be individually used as either input or output that make the module very verstile. A command is received by the module on ASCII string basis. Each character sent to the module willgive an interrupt. The firmware's interrupt handler willstore the character in a buffer until end of command character arrives. The firmware then parses and interpretes the command and responses accordingly. Pendahuluan Oalam pembuatan berbagai instrumentasi nuklir di lingkungan BATAN, komputer pribadi (PC) sering dipergunakan sebagai perlengkapan untuk memproses dan menyajikan besaran pengukuran, baik dalam bentuk tampilan numerik maupun grafik. Penggunaan PC memang sang at menguntungkan karena harganya murah dan juga karena banyak tersedianya programming tool, sehingga pembuatan man-machine interface yang baik dapat dimungkinkan. Oengan demikian ahli sistem instrumentasi membutuhkan interface yang menghubungkan PC dengan rangkaian akuisisi data yang pada dasarnya membaca besaran-besaran analog maupun besaran digital. Pada awal perkembangannya PC menyediakan ISA bus sebagai bus standar yang memungkinkan penambahan peripheral interface yang menghubungkan PC dengan dunia luar semisal sistem akuisisi data (ADC card, digital If a card, dll). Banyak praktisi instrumentasi merancang rangkaian interface menggunakan bus standar tersebut dan menggabungkannya dengan sistem pengukuran (dan juga kontrol). Oengan perkembangan yang sangat cepat dalam teknologi mikroprosesor pada PC, ISA bus dirasakan sudah sangat lambat ditinjau dari segi perangkat keras, dan juga tidak lagi memadai dalam mendukung perkembangan sistem operasi yang telah menggunakan teknik plug & play. Keadaan ini mendorong terciptanya standar bus yang baru - dikenal sebagai bus PCI (Peripheral Computer Interconnect). Teknologi PCI bus cukup kompleks dan membutuhkan pci bus controller chip yang dibuat khusus, sehingga pembuatan interface untuk standar bus ini tidak lagi sesederhana seperti halnya untuk bus ISA. Oi sam ping itu, saat ini PC tidak lagi dilengkapi dengan bus ISA, sehingga pembuatan rangkaian interface untuk PC mengalami hambatan karena harus beradaptasi dengan teknologi terse but. Beberapa standar interface lain yang belakangan muncul untuk meningkatkan kinerja PC dalam berkomunikasi dengan peralatan lain seperti printer, scanner, atau data acquisition system adalah usa (universal serial bus). Sekali lagi praktisi instrumentasi harus kembali beradaptasi dengan teknologi yang baru dan harus mempelajari chip pendukung bus serial tersebut dan memasukkan nya dalam rancangan rangkaian Halaman 25

Upload: others

Post on 25-Oct-2021

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PEMBUATAN MODUL INTERFACE UNTUK PERSONAL …

Proseding Seminar Pengembangan TeknologiDan Perekayasaan Instrumentasi Nuklir. Serpong 20 Mei 2003

ISSN NO : 1693 -3346

PEMBUATAN MODUL INTERFACE UNTUK PERSONAL KOMPUTERPRIBADI

Ahmad Rifai dan Usep Setia Gunawan - P2PN SATAN

AbstrakTelah dibuat sebuah modul interface mampu memberikan cara mudah dalam menginterface PCdengan piranti masukanlkeluaran. Tidak diperlukan bahasa assembly dalam menggunakannya.Modul ini berbasis mikrokontroler seri MCS51 dan menerima perintah dari komputer pribadi melaluiport serial. Perintah-perintah tersebut didefinisikan demikian sehingga memudahkan untukmengendalikan 24 buah jalur masukan/keluaran yang terdapat pada modul tersebiut. Jalur-jalurinidapat dipakai baik sebagai masukan ataupun keluaran sehingga menjadikan modul ini sangattepat guna. Setiap huruf yang diterima akan memberikan interrupt. Subrutin interupt akanmenyimpan huruf tersebut dalam sebuah buffer sampai tanda akhir perintah diterima. Selanjutnyaprogram dalam modul akan menterjemahkan perintah terebut memberikan respons yang sesuai.

AbstractA pc-interface module has been developed that provides an easy way to interface PC with I/Odevices. This MSC51 microcontroller based module accepts series of commands from a personalcomputer through a serial port. The commands are defined to easily control 24 I/O lines availableon the module. These lines can be individually used as either input or output that make the modulevery verstile. A command is received by the module on ASCII string basis. Each character sent tothe module willgive an interrupt. The firmware's interrupt handler willstore the character in a bufferuntil end of command character arrives. The firmware then parses and interpretes the commandand responses accordingly.

PendahuluanOalam pembuatan berbagaiinstrumentasi nuklir di lingkunganBATAN, komputer pribadi (PC) seringdipergunakan sebagai perlengkapanuntuk memproses dan menyajikanbesaran pengukuran, baik dalam bentuktampilan numerik maupun grafik.Penggunaan PC memang sangatmenguntungkan karena harganyamurah dan juga karena banyaktersedianya programming tool, sehinggapembuatan man-machine interface yangbaik dapat dimungkinkan. Oengandemikian ahli sistem instrumentasimembutuhkan interface yangmenghubungkan PC dengan rangkaianakuisisi data yang pada dasarnyamembaca besaran-besaran analogmaupun besaran digital. Pada awalperkembangannya PC menyediakanISA bus sebagai bus standar yangmemungkinkan penambahan peripheralinterface yang menghubungkan PCdengan dunia luar semisal sistemakuisisi data (ADC card, digital Ifa card,dll). Banyak praktisi instrumentasimerancang rangkaian interfacemenggunakan bus standar tersebut danmenggabungkannya dengan sistempengukuran (dan juga kontrol).

Oengan perkembangan yang sangatcepat dalam teknologi mikroprosesorpada PC, ISA bus dirasakan sudahsangat lambat ditinjau dari segiperangkat keras, dan juga tidak lagimemadai dalam mendukungperkembangan sistem operasi yangtelah menggunakan teknik plug & play.Keadaan ini mendorong terciptanyastandar bus yang baru - dikenal sebagaibus PCI (Peripheral ComputerInterconnect). Teknologi PCI bus cukupkompleks dan membutuhkan pci buscontroller chip yang dibuat khusus,sehingga pembuatan interface untukstandar bus ini tidak lagi sesederhanaseperti halnya untuk bus ISA. Oisamping itu, saat ini PC tidak lagidilengkapi dengan bus ISA, sehinggapembuatan rangkaian interface untukPC mengalami hambatan karena harusberadaptasi dengan teknologi tersebut.Beberapa standar interface lain yangbelakangan muncul untuk meningkatkankinerja PC dalam berkomunikasi denganperalatan lain seperti printer, scanner,atau data acquisition system adalahusa (universal serial bus). Sekali lagipraktisi instrumentasi harus kembaliberadaptasi dengan teknologi yang barudan harus mempelajari chip pendukungbus serial tersebut dan memasukkannya dalam rancangan rangkaian

Halaman 25

Page 2: PEMBUATAN MODUL INTERFACE UNTUK PERSONAL …

Proseding Seminar Pengembangan TeknologiDan Perekayasaan Instrumentasi Nuklir, Serpong 20 Mei 2003

ISSN NO: 1693.3346

digitalnya. Satu-satunya interface yangumum dan masih dipergunakan padaPC adalah port komunikasi RS-232.Walaupun memiliki kecepatan rendah,teknologi ini masih banyakdipergunakan baik dalam sistempengukuran maupun dalam sistemakuisisi data di industri. Variasi interfaceserial ini masih banyak ditemui dalamjaringan industri, seperti RS-485 danRS-422. Oalam makalah ini akandisajikan suatu modul interface yangmenggunakan port serial RS-232 untukberkomunikasi dengan PC, sehinggadengan perangkat lunak yang tepatdapat diperintahkan untuk menghasilkansinyal-sinyal yang diperlukan untukberkomunikasi dengan masukan ataukeluaran digital, cip ADC/DAC,multiplexer, relay, dlsb. Modul sepertiirii juga tersedia di pasaran yangumumnya masih diimpor.

Metode

Oalam merancang modul interface inibeberapa pertimbangan dimasukkanagar pemanfaatanya optimal, antaralain:

. Berharga murah

Mudah penggunaannyaTidak membutuhkan bahasa

pemrograman level rendah(assembly language)

Memiliki perintah yang sederhanaOapat dipergunakan sebagaimasukan dan keluaran

Menggunakan perangkat keras yangminimal

Firmware nya dapat dikembangkanuntuk keperluan khusus

.

.

.

.

.

.

Oalam mewujudkan pertimbangantersebut di atas, modul interface inimenggunakan mikrokontroler seriMCS51 yang sangat populer danbanyak pemakainya. Pemilihan in hanyadidasarkan pada pengalaman kami yangtelah mengenal mikrokontroler ini sejaklama dan tentu ini akan sangatmembantu dalam memanfaatkannyabaik dari perangkat keras maupundalam memprogramnya. Secara blokdiagram kedudukan modul interface ini

digambarkangambar 1.

seperti terlihat pada

MODUL INTERFACE

A

B

C

ADCDAC

RelayMulbplexeretc

Gbr. 1. Blok diagram penggunaan modulinterface

Oalam gambar diatas A, B, dan Cmasing-masing adalah port 8 bit yangdapat dijadikan sebagai masukanataupun keluaran, jadi seluruhnyaterdapat 24 buah masukan/keluaran.Setiap bit pada port A dan B dapatdikendalikan dengan perangkat lunakpada komputer pribadi sehinggapenggunaannya sangat fleksibel. Oesainrangkaian modul interface ini terlihatdalam gambar 2. Modul inimenggunakan jumlah rangkaian terpaduyang minimum. Komponen utamaadalah mikrokontroler i87C51 ataukompatibelnya dan satu buah cip driverRS-232 MAX232. Oengan jumlahkomponen yang minimum ini diharapkanharga modul ini dapat ditekan sangatmurah.

Untuk memudahkan penggunaan modulinterface ini, didefinisikan seperangkatperintah yang sangat mudah diingat.Berikut ini beberapa contoh perintahtersebut:

Halaman 26

Perintah Penggunaannya

0 %SET AO<Cr> 0 Men-set bit 0 pada port A0 %CLRAO<Cr> 0 Me-reset bit 0 pad a port A0 %GETB7<Cr> 0 Membaca bit 7 daTi port B0 %PUTA57<Cr> 0 Mengirim bilangan hexadesimal

57(hex) ke port A

0 %PUTC6A<Cr> 0 Mengirim bilangan hexadesimal6A(hex) ke port C

0 %GETA<Cr> 0 Membaca daTi port A

0 %PULSE A3<Cr> 0 Kirim satu pulsa pada bit 3 padaport A. Bisa digunakan untukmemulai konversi Dada ADC.

Page 3: PEMBUATAN MODUL INTERFACE UNTUK PERSONAL …

Proseding Seminar Pengembangan TeknologiDan Perekayasaan Instrumentasi Nuklir,Serpong 20 Mei 2003

~~

R3 = Xl Xl

5K T 6MHfu I, '"

-L4 C2

ITRJ(

11

WI'

Gbr.2: Skema rangkaian

Perintah terdiri dari string (huruf besar)yang dimulai dengan simbol '%' dandiakhiri dengan carriage return(heksadesimal 00). Perintah ini dikirimdari PC ke modul interface melalui serialport komputer (COM1 atau COM2)dengan baudrate tetap 9600 bps.Baudrate seperti ini tentu dapat denganmudah tersedia pada PC.

Prinsip kerja

Prinsip kerja modul interface inimenggunakan teknik master-slavedalam berkomunikasi dengan PC. Modulbertindak sebagai slave yang menungguperintah dari PC (master), kemudianmenterjemahkan perintah tersebut. Jikaperintahnya benar maka perintah akandijalankan dan memberikan response kePC berupa string "OK" atau sebuah nilaiyang diakhiri dengan string "-OK".Perintah yang salah akan diabaikan,dan PC akan menerima pesan berupastring "Error". Semua komunikasidilakukan dengan menggunakan hurufberkode ASCII.

ISSN NO : 1693 -3346

PI

PM

U18031

PlOP11P"P13P14P15P16P11

~"

39"'" ~38

POOPOIPO]P03P04POSP06P01

ALFJP 30

nlTO "'" IN1UINTITOTlRESErEA/VPRDWR

i87csl

P]O>]1PJ]P]J>]4>]5P]6P]1

]I PCO

~~ ~nlr. ]4

vcr

.ClO

.luF

Pada gambar 3 terlihat state diagramcara bekerja firmware pada modulinterface. Setiap huruf yang dikirim olehPC akan rnemberikan interrupt serialpada mikrokontroler. Huruf yangditerima akan disimpan dalam sebuahbuffer sampai terdapat huruf yangmenandai akhir suatu perintah (carriagereturn DOH), atau jumlah huruf yangditerima melebihi balas, dalam hal initerjadi kesalahan. Jika modul telahmenerima perintah yang benar,firmware akan memeriksa perintah (danparameter) yang diterima denganmembandingkan perintah tersebutdengan isi label perintah yangdiperbolehkan (valid). Selanjutnyaadalah melaksanakan perintah terse butjika benar, atau mengirimkan pesansalah ke PC. Kemudian modul akankembali menunggu perintah selanjutnya.

Ha/aman 27

Ji -LC3Rt - T! l P!T

U3

A T24C081

Iwp vcrMJ

SDA I jAlseLK3 11.2

GND,

vcr

.!!

.?!

.?!

19.

E.

.!!J]

Page 4: PEMBUATAN MODUL INTERFACE UNTUK PERSONAL …

Proseding Seminar Pengembangan TeknologiDan Perekayasaan Instrumentasi Nuklir. Serpong 20 Mei 2003

ISSN NO: 1693 -3346

Benar

Gbr. 2: State diagram

Hasil yang dicapai

Dalam pembuatan ini dilakukanpengujian antara lain:

Men-set dan me-reset setiap bit padaport A dan port BMengirim satu byte data ke port A, portB dan port CMembaca port A, port B, dan port CMembaca masing-masing bit pada portA dan port BMengirim satu pulsa ke setiap bit padaport A

Gambar 3 adalah contoh output yangdihasilkan setelah modul menerimaperintah dari PC:

5V

%CLR AO<Cr%SET AO<Cr>

Gbr.3: Contoh perintah pada bit AOpada port A

Untuk bahan pengujian lainnya modulinterface ini dipergunakan dalampembuatan device programmer untuktarget mikrokontroler AT89C2051.AT89C2051 adalah suatu mikrokontrolerseri MCS51 berukuran 20 pin, memiliki128 byte RAM dan 2K flash programmemory. Untuk menggunakanmikrokontroler kecil ini, program berupa

machine code harus ditanamkan terlebihdahulu ke dalam flash memorytersebut. Modul interface dalampembahasan ini dipergunakan sebagaiinterface PC dengan mikrokontrolertarget tersebut. Aplikasai program dalambahasa pemrograman C++dipergunakan untuk mengirimkan datayang akan dimasukkan ke dalam target.Setelah diisi program kedalam flashmemorynya, target device dapatberfungsi seperti yang diprogramkan.Dalam pembuatan device programmerini tidak diperlukan bahasa assemblysarna sekali, jadi sangat mudahmenggunakannya.

Kesimpulan dan saran

Kami dapat menyimpulkan, bahwapekerjaan kami ini telah dapatmengatasi masalah kesulitan dalammembuat interface untuk komputerpribadi. Kemudahan juga telah diperolehkarena dengan menggunakan modul initidak perlu lagi memprogram dalambahasa bahasa assembly ataupunprogram yang mengakses langsung kealamat I/O pada komputer.

Kemampuan mikrokontroler yangdipergunakan belum dimanfaatkansecara maksimum. Oleh karena itu dimasa mendatang firmware masih dapatditambahkan sehingga modul ini dapatjuga melakukan pencacahan pulsa danmenyimpan datanya pada memori yangtersedia.

Referensi:

-,"MCS51 Programmer's guide", IntelCorp., 1987.-,"8-bit microcontroller with 2K flash",Atmel Corp. 1997

Halaman 28